vuetify 3.3.1 → 3.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/json/attributes.json +48 -52
- package/dist/json/tags.json +0 -1
- package/dist/json/web-types.json +630 -762
- package/dist/vuetify-labs.css +49 -36
- package/dist/vuetify-labs.d.ts +1844 -1613
- package/dist/vuetify-labs.esm.js +5486 -5305
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +5485 -5304
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +30 -8
- package/dist/vuetify.d.ts +1767 -1633
- package/dist/vuetify.esm.js +5134 -4883
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +5133 -4882
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1001 -988
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.mts +33 -33
- package/lib/blueprints/md1.d.mts +33 -33
- package/lib/blueprints/md2.d.mts +33 -33
- package/lib/blueprints/md3.d.mts +33 -33
- package/lib/components/VAlert/VAlert.mjs +6 -6
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/index.d.mts +1 -1
- package/lib/components/VApp/VApp.mjs +4 -4
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBar.mjs +9 -6
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +25 -9
- package/lib/components/VAutocomplete/VAutocomplete.mjs +27 -22
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.mts +88 -88
- package/lib/components/VAvatar/VAvatar.mjs +4 -4
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.mjs +6 -6
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.mjs +7 -10
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBannerActions.mjs +2 -2
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/VBannerText.mjs +1 -0
- package/lib/components/VBanner/VBannerText.mjs.map +1 -1
- package/lib/components/VBanner/index.d.mts +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +8 -8
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +6 -9
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +2 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +3 -3
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.mjs +7 -7
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.mts +24 -8
- package/lib/components/VBtnGroup/VBtnGroup.mjs +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.mjs +2 -2
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VCard/VCard.mjs +8 -8
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +4 -4
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/VCardSubtitle.mjs +1 -0
- package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
- package/lib/components/VCard/VCardText.mjs +1 -0
- package/lib/components/VCard/VCardText.mjs.map +1 -1
- package/lib/components/VCard/VCardTitle.mjs +1 -0
- package/lib/components/VCard/VCardTitle.mjs.map +1 -1
- package/lib/components/VCard/index.d.mts +45 -29
- package/lib/components/VCarousel/VCarousel.mjs +4 -7
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.mjs +11 -4
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +4 -4
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.mts +57 -51
- package/lib/components/VChip/VChip.mjs +8 -8
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.mts +48 -32
- package/lib/components/VChipGroup/VChipGroup.mjs +4 -7
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VCode/index.mjs +3 -0
- package/lib/components/VCode/index.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +10 -12
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +2 -5
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +3 -3
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +3 -3
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +29 -20
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +88 -88
- package/lib/components/VCounter/VCounter.mjs +2 -2
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +4 -4
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/index.d.mts +7 -9
- package/lib/components/VDialog/VDialog.mjs +7 -7
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.mts +66 -66
- package/lib/components/VDivider/VDivider.mjs +3 -3
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +5 -5
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +6 -6
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +57 -25
- package/lib/components/VField/VField.css +1 -0
- package/lib/components/VField/VField.mjs +8 -8
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +1 -0
- package/lib/components/VField/VFieldLabel.mjs +1 -1
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/index.d.mts +5 -5
- package/lib/components/VFileInput/VFileInput.mjs +5 -5
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.mts +60 -60
- package/lib/components/VFooter/VFooter.mjs +4 -4
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VForm/VForm.mjs +3 -3
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs +2 -2
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +3 -3
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +2 -2
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VGrid/VSpacer.mjs +1 -0
- package/lib/components/VGrid/VSpacer.mjs.map +1 -1
- package/lib/components/VHover/VHover.mjs +1 -1
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.mjs +6 -6
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VImg/VImg.mjs +5 -4
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VInput/InputIcon.mjs +3 -2
- package/lib/components/VInput/InputIcon.mjs.map +1 -1
- package/lib/components/VInput/VInput.mjs +8 -4
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.mts +10 -10
- package/lib/components/VItemGroup/VItem.mjs +2 -2
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VKbd/index.mjs +3 -0
- package/lib/components/VKbd/index.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.mjs +1 -1
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.mjs +3 -3
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLazy/VLazy.mjs +3 -3
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VList/VList.css +1 -0
- package/lib/components/VList/VList.mjs +5 -4
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +1 -0
- package/lib/components/VList/VListChildren.mjs +3 -3
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +8 -8
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListImg.mjs +1 -0
- package/lib/components/VList/VListImg.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +18 -0
- package/lib/components/VList/VListItem.mjs +10 -10
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +12 -0
- package/lib/components/VList/VListItemAction.mjs +1 -1
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs +1 -1
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListItemSubtitle.mjs +1 -0
- package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
- package/lib/components/VList/VListItemTitle.mjs +1 -0
- package/lib/components/VList/VListItemTitle.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs +3 -3
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +48 -32
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VMain/VMain.mjs +3 -3
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.mjs +35 -9
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +113 -113
- package/lib/components/VMenu/shared.mjs +2 -0
- package/lib/components/VMenu/shared.mjs.map +1 -1
- package/lib/components/VMessages/VMessages.mjs +3 -3
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +17 -13
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +18 -18
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.mts +21 -21
- package/lib/components/VOverlay/locationStrategies.mjs +5 -5
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/scrollStrategies.mjs +3 -3
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +34 -44
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VOverlay/util/point.mjs +2 -0
- package/lib/components/VOverlay/util/point.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +9 -9
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VParallax/VParallax.mjs +3 -6
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.mjs +5 -5
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.mjs +6 -6
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VRadio/VRadio.mjs +3 -3
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadio/index.d.mts +4 -4
- package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.mts +32 -32
- package/lib/components/VRangeSlider/VRangeSlider.mjs +4 -4
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.mts +8 -8
- package/lib/components/VRating/VRating.mjs +6 -9
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.css +1 -0
- package/lib/components/VResponsive/VResponsive.mjs +1 -1
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.sass +1 -0
- package/lib/components/VSelect/VSelect.mjs +24 -19
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +88 -88
- package/lib/components/VSelectionControl/VSelectionControl.mjs +7 -7
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.mts +2 -2
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +6 -6
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.mjs +4 -4
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs +2 -2
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.mjs +6 -6
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +8 -8
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.mjs +3 -3
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.mts +8 -8
- package/lib/components/VSlider/slider.mjs +4 -7
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +7 -7
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.mts +77 -77
- package/lib/components/VStepper/index.mjs +3 -2
- package/lib/components/VStepper/index.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.mjs +6 -6
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.mts +41 -41
- package/lib/components/VSystemBar/VSystemBar.mjs +4 -4
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VTable/VTable.mjs +1 -1
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTabs/VTab.mjs +3 -3
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.css +1 -0
- package/lib/components/VTabs/VTabs.mjs +7 -7
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.sass +1 -0
- package/lib/components/VTabs/index.d.mts +24 -8
- package/lib/components/VTabs/shared.mjs +2 -0
- package/lib/components/VTabs/shared.mjs.map +1 -1
- package/lib/components/VTextField/VTextField.mjs +6 -6
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.mts +72 -72
- package/lib/components/VTextarea/VTextarea.css +7 -7
- package/lib/components/VTextarea/VTextarea.mjs +8 -11
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +9 -9
- package/lib/components/VTextarea/index.d.mts +60 -60
- package/lib/components/VThemeProvider/VThemeProvider.mjs +1 -1
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.mjs +4 -4
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +5 -5
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +4 -7
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.mjs +8 -8
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarItems.mjs +4 -4
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.mts +1 -1
- package/lib/components/VTooltip/VTooltip.mjs +6 -6
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.mts +113 -113
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +15 -93
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +9 -4
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +9 -9
- package/lib/components/VWindow/VWindow.mjs +6 -6
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +5 -5
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/index.d.mts +1970 -1838
- package/lib/components/transitions/createTransition.mjs +5 -8
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/dialog-transition.mjs +1 -3
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/index.d.mts +117 -117
- package/lib/composables/defaults.mjs +5 -0
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/display.mjs +1 -1
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/filter.mjs +2 -4
- package/lib/composables/filter.mjs.map +1 -1
- package/lib/composables/focus.mjs +1 -1
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs +2 -0
- package/lib/composables/forwardRefs.mjs.map +1 -1
- package/lib/composables/hydration.mjs +1 -1
- package/lib/composables/hydration.mjs.map +1 -1
- package/lib/composables/icons.mjs +7 -1
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/lazy.mjs +1 -3
- package/lib/composables/lazy.mjs.map +1 -1
- package/lib/composables/locale.mjs +2 -1
- package/lib/composables/locale.mjs.map +1 -1
- package/lib/composables/mutationObserver.mjs +2 -5
- package/lib/composables/mutationObserver.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +2 -2
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +1 -0
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +3 -3
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/refs.mjs +4 -1
- package/lib/composables/refs.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs +4 -4
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/composables/router.mjs +1 -4
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/scopeId.mjs +1 -0
- package/lib/composables/scopeId.mjs.map +1 -1
- package/lib/composables/theme.mjs +1 -1
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/toggleScope.mjs +4 -0
- package/lib/composables/toggleScope.mjs.map +1 -1
- package/lib/composables/touch.mjs +1 -0
- package/lib/composables/touch.mjs.map +1 -1
- package/lib/composables/validation.mjs +2 -2
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/virtual.mjs +108 -0
- package/lib/composables/virtual.mjs.map +1 -0
- package/lib/directives/click-outside/index.mjs +2 -1
- package/lib/directives/click-outside/index.mjs.map +1 -1
- package/lib/directives/intersect/index.mjs +1 -1
- package/lib/directives/intersect/index.mjs.map +1 -1
- package/lib/directives/resize/index.mjs +2 -0
- package/lib/directives/resize/index.mjs.map +1 -1
- package/lib/directives/scroll/index.mjs +2 -0
- package/lib/directives/scroll/index.mjs.map +1 -1
- package/lib/directives/touch/index.mjs +1 -2
- package/lib/directives/touch/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +7 -2
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +4 -6
- package/lib/framework.mjs.map +1 -1
- package/lib/iconsets/fa.mjs +1 -1
- package/lib/iconsets/fa.mjs.map +1 -1
- package/lib/iconsets/fa4.mjs +4 -3
- package/lib/iconsets/fa4.mjs.map +1 -1
- package/lib/iconsets/md.mjs +4 -3
- package/lib/iconsets/md.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.mjs +36 -36
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/iconsets/mdi.mjs +4 -3
- package/lib/iconsets/mdi.mjs.map +1 -1
- package/lib/index.d.mts +35 -33
- package/lib/labs/VBottomSheet/VBottomSheet.mjs +1 -1
- package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +1 -1
- package/lib/labs/VBottomSheet/index.d.mts +21 -21
- package/lib/labs/VDataIterator/VDataIterator.mjs +7 -7
- package/lib/labs/VDataIterator/VDataIterator.mjs.map +1 -1
- package/lib/labs/VDataIterator/composables/items.mjs +2 -2
- package/lib/labs/VDataIterator/composables/items.mjs.map +1 -1
- package/lib/labs/VDataIterator/index.d.mts +28 -27
- package/lib/labs/VDataTable/VDataTable.css +5 -14
- package/lib/labs/VDataTable/VDataTable.mjs +8 -8
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTable.sass +7 -15
- package/lib/labs/VDataTable/VDataTableColumn.mjs +2 -1
- package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs +3 -3
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +5 -5
- package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs +8 -8
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +20 -16
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +7 -7
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +34 -22
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/expand.mjs +4 -4
- package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/group.mjs +1 -1
- package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/headers.mjs +2 -2
- package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/items.mjs +5 -8
- package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/paginate.mjs +1 -1
- package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/select.mjs +4 -3
- package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/sort.mjs +4 -9
- package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.mts +182 -83
- package/lib/labs/VDataTable/types.mjs.map +1 -1
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +4 -4
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/labs/components.d.mts +213 -114
- package/lib/labs/date/date.mjs.map +1 -1
- package/lib/labs/entry-bundler.mjs +3 -1
- package/lib/labs/entry-bundler.mjs.map +1 -1
- package/lib/locale/adapters/vue-i18n.d.mts +1 -1
- package/lib/locale/adapters/vue-i18n.mjs +5 -1
- package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
- package/lib/locale/adapters/vuetify.mjs +1 -3
- package/lib/locale/adapters/vuetify.mjs.map +1 -1
- package/lib/util/anchor.mjs +1 -0
- package/lib/util/anchor.mjs.map +1 -1
- package/lib/util/animation.mjs +1 -0
- package/lib/util/animation.mjs.map +1 -1
- package/lib/util/bindProps.mjs +49 -0
- package/lib/util/bindProps.mjs.map +1 -0
- package/lib/util/color/APCA.mjs +1 -0
- package/lib/util/color/APCA.mjs.map +1 -1
- package/lib/util/color/transformCIELAB.mjs +2 -0
- package/lib/util/color/transformCIELAB.mjs.map +1 -1
- package/lib/util/color/transformSRGB.mjs +3 -1
- package/lib/util/color/transformSRGB.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +2 -2
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/console.mjs +1 -0
- package/lib/util/console.mjs.map +1 -1
- package/lib/util/createSimpleFunctional.mjs +2 -1
- package/lib/util/createSimpleFunctional.mjs.map +1 -1
- package/lib/util/defineComponent.mjs +5 -5
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/getCurrentInstance.mjs +1 -2
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -3
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/index.mjs +1 -0
- package/lib/util/index.mjs.map +1 -1
- package/lib/util/injectSelf.mjs +2 -1
- package/lib/util/injectSelf.mjs.map +1 -1
- package/lib/util/propsFactory.mjs +1 -0
- package/lib/util/propsFactory.mjs.map +1 -1
- package/package.json +4 -4
- package/lib/labs/VDataTable/composables/virtual.mjs +0 -77
- package/lib/labs/VDataTable/composables/virtual.mjs.map +0 -1
|
@@ -84,8 +84,8 @@ type DataTableHeader = {
|
|
|
84
84
|
colspan?: number;
|
|
85
85
|
rowspan?: number;
|
|
86
86
|
fixed?: boolean;
|
|
87
|
-
align?: 'start' | 'end';
|
|
88
|
-
width?: number;
|
|
87
|
+
align?: 'start' | 'end' | 'center';
|
|
88
|
+
width?: number | string;
|
|
89
89
|
minWidth?: string;
|
|
90
90
|
maxWidth?: string;
|
|
91
91
|
sortable?: boolean;
|
|
@@ -97,6 +97,7 @@ type InternalDataTableHeader = DataTableHeader & {
|
|
|
97
97
|
lastFixed?: boolean;
|
|
98
98
|
};
|
|
99
99
|
interface DataTableItem<T = any> extends GroupableItem<T>, SelectableItem {
|
|
100
|
+
index: number;
|
|
100
101
|
columns: {
|
|
101
102
|
[key: string]: any;
|
|
102
103
|
};
|
|
@@ -114,6 +115,21 @@ type FilterKeyFunctions = Record<string, FilterFunction>;
|
|
|
114
115
|
type FilterKeys = string | string[];
|
|
115
116
|
type FilterMode = 'some' | 'every' | 'union' | 'intersection';
|
|
116
117
|
|
|
118
|
+
type ExpandProps = {
|
|
119
|
+
expandOnClick: boolean;
|
|
120
|
+
expanded: readonly string[];
|
|
121
|
+
'onUpdate:expanded': ((value: any[]) => void) | undefined;
|
|
122
|
+
};
|
|
123
|
+
declare function provideExpanded(props: ExpandProps): {
|
|
124
|
+
expand: (item: DataTableItem, value: boolean) => void;
|
|
125
|
+
expanded: Ref<Set<string>> & {
|
|
126
|
+
readonly externalValue: readonly string[];
|
|
127
|
+
};
|
|
128
|
+
expandOnClick: Ref<boolean>;
|
|
129
|
+
isExpanded: (item: DataTableItem) => boolean;
|
|
130
|
+
toggleExpand: (item: DataTableItem) => void;
|
|
131
|
+
};
|
|
132
|
+
|
|
117
133
|
declare function providePagination(options: {
|
|
118
134
|
page: Ref<number>;
|
|
119
135
|
itemsPerPage: Ref<number>;
|
|
@@ -131,21 +147,6 @@ declare function providePagination(options: {
|
|
|
131
147
|
setItemsPerPage: (value: number) => void;
|
|
132
148
|
};
|
|
133
149
|
|
|
134
|
-
type ExpandProps = {
|
|
135
|
-
expandOnClick: boolean;
|
|
136
|
-
expanded: readonly string[];
|
|
137
|
-
'onUpdate:expanded': ((value: any[]) => void) | undefined;
|
|
138
|
-
};
|
|
139
|
-
declare function provideExpanded(props: ExpandProps): {
|
|
140
|
-
expand: (item: DataTableItem, value: boolean) => void;
|
|
141
|
-
expanded: Ref<Set<string>> & {
|
|
142
|
-
readonly externalValue: readonly string[];
|
|
143
|
-
};
|
|
144
|
-
expandOnClick: Ref<boolean>;
|
|
145
|
-
isExpanded: (item: DataTableItem) => boolean;
|
|
146
|
-
toggleExpand: (item: DataTableItem) => void;
|
|
147
|
-
};
|
|
148
|
-
|
|
149
150
|
interface DataIteratorItem<T = any> extends GroupableItem<T>, SelectableItem {
|
|
150
151
|
value: unknown;
|
|
151
152
|
}
|
|
@@ -194,9 +195,9 @@ declare const VDataIterator: {
|
|
|
194
195
|
multiSort?: boolean | undefined;
|
|
195
196
|
mustSort?: boolean | undefined;
|
|
196
197
|
groupBy?: readonly SortItem[] | undefined;
|
|
197
|
-
itemsPerPage?: NonNullable<string | number> | undefined;
|
|
198
198
|
expandOnClick?: boolean | undefined;
|
|
199
199
|
showExpand?: boolean | undefined;
|
|
200
|
+
itemsPerPage?: NonNullable<string | number> | undefined;
|
|
200
201
|
search?: string | undefined;
|
|
201
202
|
key?: string | number | symbol | undefined;
|
|
202
203
|
class?: any;
|
|
@@ -263,9 +264,9 @@ declare const VDataIterator: {
|
|
|
263
264
|
customKeySort?: Record<string, DataTableCompareFunction> | undefined;
|
|
264
265
|
"onUpdate:sortBy"?: ((value: any) => any) | undefined;
|
|
265
266
|
"onUpdate:groupBy"?: ((value: any) => any) | undefined;
|
|
267
|
+
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
266
268
|
"onUpdate:page"?: ((value: number) => any) | undefined;
|
|
267
269
|
"onUpdate:itemsPerPage"?: ((value: number) => any) | undefined;
|
|
268
|
-
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
269
270
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
|
270
271
|
"v-slot:footer"?: false | ((arg: VDataIteratorSlotProps) => vue.VNodeChild) | undefined;
|
|
271
272
|
};
|
|
@@ -312,9 +313,9 @@ declare const VDataIterator: {
|
|
|
312
313
|
multiSort: boolean;
|
|
313
314
|
mustSort: boolean;
|
|
314
315
|
groupBy: readonly SortItem[];
|
|
315
|
-
itemsPerPage: NonNullable<string | number>;
|
|
316
316
|
expandOnClick: boolean;
|
|
317
317
|
showExpand: boolean;
|
|
318
|
+
itemsPerPage: NonNullable<string | number>;
|
|
318
319
|
} & {
|
|
319
320
|
search?: string | undefined;
|
|
320
321
|
class?: any;
|
|
@@ -344,9 +345,9 @@ declare const VDataIterator: {
|
|
|
344
345
|
"onUpdate:modelValue"?: ((value: any[]) => any) | undefined;
|
|
345
346
|
"onUpdate:sortBy"?: ((value: any) => any) | undefined;
|
|
346
347
|
"onUpdate:groupBy"?: ((value: any) => any) | undefined;
|
|
348
|
+
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
347
349
|
"onUpdate:page"?: ((value: number) => any) | undefined;
|
|
348
350
|
"onUpdate:itemsPerPage"?: ((value: number) => any) | undefined;
|
|
349
|
-
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
350
351
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
|
351
352
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
352
353
|
'update:modelValue': (value: any[]) => boolean;
|
|
@@ -375,9 +376,9 @@ declare const VDataIterator: {
|
|
|
375
376
|
multiSort: boolean;
|
|
376
377
|
mustSort: boolean;
|
|
377
378
|
groupBy: readonly SortItem[];
|
|
378
|
-
itemsPerPage: NonNullable<string | number>;
|
|
379
379
|
expandOnClick: boolean;
|
|
380
380
|
showExpand: boolean;
|
|
381
|
+
itemsPerPage: NonNullable<string | number>;
|
|
381
382
|
}, {}, string, vue.SlotsType<Partial<{
|
|
382
383
|
default: (arg: VDataIteratorSlotProps) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
383
384
|
[key: string]: any;
|
|
@@ -430,9 +431,9 @@ declare const VDataIterator: {
|
|
|
430
431
|
multiSort: boolean;
|
|
431
432
|
mustSort: boolean;
|
|
432
433
|
groupBy: readonly SortItem[];
|
|
433
|
-
itemsPerPage: NonNullable<string | number>;
|
|
434
434
|
expandOnClick: boolean;
|
|
435
435
|
showExpand: boolean;
|
|
436
|
+
itemsPerPage: NonNullable<string | number>;
|
|
436
437
|
} & {
|
|
437
438
|
search?: string | undefined;
|
|
438
439
|
class?: any;
|
|
@@ -462,9 +463,9 @@ declare const VDataIterator: {
|
|
|
462
463
|
"onUpdate:modelValue"?: ((value: any[]) => any) | undefined;
|
|
463
464
|
"onUpdate:sortBy"?: ((value: any) => any) | undefined;
|
|
464
465
|
"onUpdate:groupBy"?: ((value: any) => any) | undefined;
|
|
466
|
+
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
465
467
|
"onUpdate:page"?: ((value: number) => any) | undefined;
|
|
466
468
|
"onUpdate:itemsPerPage"?: ((value: number) => any) | undefined;
|
|
467
|
-
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
468
469
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
|
469
470
|
} & vue.ShallowUnwrapRef<{}> & {} & vue.ComponentCustomProperties & {};
|
|
470
471
|
__isFragment?: undefined;
|
|
@@ -489,9 +490,9 @@ declare const VDataIterator: {
|
|
|
489
490
|
multiSort: boolean;
|
|
490
491
|
mustSort: boolean;
|
|
491
492
|
groupBy: readonly SortItem[];
|
|
492
|
-
itemsPerPage: NonNullable<string | number>;
|
|
493
493
|
expandOnClick: boolean;
|
|
494
494
|
showExpand: boolean;
|
|
495
|
+
itemsPerPage: NonNullable<string | number>;
|
|
495
496
|
} & {
|
|
496
497
|
search?: string | undefined;
|
|
497
498
|
class?: any;
|
|
@@ -521,9 +522,9 @@ declare const VDataIterator: {
|
|
|
521
522
|
"onUpdate:modelValue"?: ((value: any[]) => any) | undefined;
|
|
522
523
|
"onUpdate:sortBy"?: ((value: any) => any) | undefined;
|
|
523
524
|
"onUpdate:groupBy"?: ((value: any) => any) | undefined;
|
|
525
|
+
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
524
526
|
"onUpdate:page"?: ((value: number) => any) | undefined;
|
|
525
527
|
"onUpdate:itemsPerPage"?: ((value: number) => any) | undefined;
|
|
526
|
-
"onUpdate:expanded"?: ((value: any) => any) | undefined;
|
|
527
528
|
"onUpdate:options"?: ((value: any) => any) | undefined;
|
|
528
529
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
529
530
|
'update:modelValue': (value: any[]) => boolean;
|
|
@@ -552,9 +553,9 @@ declare const VDataIterator: {
|
|
|
552
553
|
multiSort: boolean;
|
|
553
554
|
mustSort: boolean;
|
|
554
555
|
groupBy: readonly SortItem[];
|
|
555
|
-
itemsPerPage: NonNullable<string | number>;
|
|
556
556
|
expandOnClick: boolean;
|
|
557
557
|
showExpand: boolean;
|
|
558
|
+
itemsPerPage: NonNullable<string | number>;
|
|
558
559
|
}, {}, string, vue.SlotsType<Partial<{
|
|
559
560
|
default: (arg: VDataIteratorSlotProps) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
560
561
|
[key: string]: any;
|
|
@@ -90,12 +90,6 @@
|
|
|
90
90
|
opacity: 0.3;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
.v-data-table__progress th {
|
|
94
|
-
position: relative;
|
|
95
|
-
border: none !important;
|
|
96
|
-
height: auto !important;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
93
|
.v-data-table-group-header-row__column {
|
|
100
94
|
padding-left: calc(var(--v-data-table-group-header-row-depth) * 16px) !important;
|
|
101
95
|
}
|
|
@@ -119,16 +113,13 @@
|
|
|
119
113
|
height: 20px;
|
|
120
114
|
}
|
|
121
115
|
|
|
122
|
-
.v-data-table-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
position: absolute;
|
|
127
|
-
right: 0;
|
|
128
|
-
width: 100%;
|
|
129
|
-
z-index: 1;
|
|
116
|
+
.v-data-table-progress > th {
|
|
117
|
+
border: none !important;
|
|
118
|
+
height: auto !important;
|
|
119
|
+
padding: 0 !important;
|
|
130
120
|
}
|
|
131
121
|
|
|
122
|
+
.v-data-table-rows-loading,
|
|
132
123
|
.v-data-table-rows-no-data {
|
|
133
124
|
text-align: center;
|
|
134
125
|
}
|
|
@@ -7,16 +7,16 @@ import { makeVDataTableFooterProps, VDataTableFooter } from "./VDataTableFooter.
|
|
|
7
7
|
import { makeVDataTableHeadersProps, VDataTableHeaders } from "./VDataTableHeaders.mjs";
|
|
8
8
|
import { makeVDataTableRowsProps, VDataTableRows } from "./VDataTableRows.mjs";
|
|
9
9
|
import { makeVTableProps, VTable } from "../../components/VTable/VTable.mjs"; // Composables
|
|
10
|
+
import { makeDataTableExpandProps, provideExpanded } from "./composables/expand.mjs";
|
|
10
11
|
import { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from "./composables/group.mjs";
|
|
11
12
|
import { createHeaders, makeDataTableHeaderProps } from "./composables/headers.mjs";
|
|
13
|
+
import { makeDataTableItemsProps, useDataTableItems } from "./composables/items.mjs";
|
|
14
|
+
import { useOptions } from "./composables/options.mjs";
|
|
12
15
|
import { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from "./composables/paginate.mjs";
|
|
13
|
-
import { createSort, makeDataTableSortProps, provideSort, useSortedItems } from "./composables/sort.mjs";
|
|
14
|
-
import { makeDataTableExpandProps, provideExpanded } from "./composables/expand.mjs";
|
|
15
|
-
import { makeDataTableItemProps, useDataTableItems } from "./composables/items.mjs";
|
|
16
16
|
import { makeDataTableSelectProps, provideSelection } from "./composables/select.mjs";
|
|
17
|
-
import {
|
|
17
|
+
import { createSort, makeDataTableSortProps, provideSort, useSortedItems } from "./composables/sort.mjs";
|
|
18
18
|
import { provideDefaults } from "../../composables/defaults.mjs";
|
|
19
|
-
import {
|
|
19
|
+
import { makeFilterProps, useFilter } from "../../composables/filter.mjs"; // Utilities
|
|
20
20
|
import { computed, toRef } from 'vue';
|
|
21
21
|
import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
22
22
|
export const makeDataTableProps = propsFactory({
|
|
@@ -26,18 +26,18 @@ export const makeDataTableProps = propsFactory({
|
|
|
26
26
|
...makeDataTableExpandProps(),
|
|
27
27
|
...makeDataTableGroupProps(),
|
|
28
28
|
...makeDataTableHeaderProps(),
|
|
29
|
-
...
|
|
29
|
+
...makeDataTableItemsProps(),
|
|
30
30
|
...makeDataTableSelectProps(),
|
|
31
31
|
...makeDataTableSortProps(),
|
|
32
32
|
...makeVDataTableHeadersProps(),
|
|
33
33
|
...makeVTableProps()
|
|
34
|
-
}, '
|
|
34
|
+
}, 'DataTable');
|
|
35
35
|
export const makeVDataTableProps = propsFactory({
|
|
36
36
|
...makeDataTablePaginateProps(),
|
|
37
37
|
...makeDataTableProps(),
|
|
38
38
|
...makeFilterProps(),
|
|
39
39
|
...makeVDataTableFooterProps()
|
|
40
|
-
}, '
|
|
40
|
+
}, 'VDataTable');
|
|
41
41
|
export const VDataTable = genericComponent()({
|
|
42
42
|
name: 'VDataTable',
|
|
43
43
|
props: makeVDataTableProps(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDataTable.mjs","names":["makeVDataTableFooterProps","VDataTableFooter","makeVDataTableHeadersProps","VDataTableHeaders","makeVDataTableRowsProps","VDataTableRows","makeVTableProps","VTable","createGroupBy","makeDataTableGroupProps","provideGroupBy","useGroupedItems","createHeaders","makeDataTableHeaderProps","createPagination","makeDataTablePaginateProps","providePagination","usePaginatedItems","createSort","makeDataTableSortProps","provideSort","useSortedItems","makeDataTableExpandProps","provideExpanded","makeDataTableItemProps","useDataTableItems","makeDataTableSelectProps","provideSelection","makeFilterProps","useFilter","provideDefaults","useOptions","computed","toRef","genericComponent","propsFactory","useRender","makeDataTableProps","width","String","Number","search","makeVDataTableProps","VDataTable","name","props","emits","value","setup","_ref","emit","slots","groupBy","sortBy","multiSort","mustSort","page","itemsPerPage","columns","headers","showSelect","showExpand","items","filteredItems","transform","item","toggleSort","sortByWithGroups","opened","extractRows","isGroupOpen","toggleGroup","sortedItems","flatItems","itemsLength","length","startIndex","stopIndex","pageCount","setItemsPerPage","paginatedItems","paginatedItemsWithoutGroups","isSelected","select","selectAll","toggleSelect","someSelected","allSelected","allItems","currentPage","isExpanded","toggleExpand","hideNoData","noDataText","loading","loadingText","slotProps","groupedItems","dataTableFooterProps","filterProps","dataTableHeadersProps","dataTableRowsProps","tableProps","_createVNode","_mergeProps","class","style","top","default","_Fragment","colgroup","thead","body","tbody","tfoot","bottom","prepend"],"sources":["../../../src/labs/VDataTable/VDataTable.tsx"],"sourcesContent":["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { makeDataTableItemProps, useDataTableItems } from './composables/items'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useOptions } from './composables/options'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { UnwrapRef } from 'vue'\nimport type { Group } from './composables/group'\nimport type { DataTableItem, InternalDataTableHeader } from './types'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\n\nexport type VDataTableSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef<ReturnType<typeof provideSort>['sortBy']>\n pageCount: number\n toggleSort: ReturnType<typeof provideSort>['toggleSort']\n setItemsPerPage: ReturnType<typeof providePagination>['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType<typeof provideSelection>['isSelected']\n select: ReturnType<typeof provideSelection>['select']\n selectAll: ReturnType<typeof provideSelection>['selectAll']\n toggleSelect: ReturnType<typeof provideSelection>['toggleSelect']\n isExpanded: ReturnType<typeof provideExpanded>['isExpanded']\n toggleExpand: ReturnType<typeof provideExpanded>['toggleExpand']\n isGroupOpen: ReturnType<typeof provideGroupBy>['isGroupOpen']\n toggleGroup: ReturnType<typeof provideGroupBy>['toggleGroup']\n items: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem | Group<DataTableItem>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n default: VDataTableSlotProps\n colgroup: VDataTableSlotProps\n top: VDataTableSlotProps\n body: VDataTableSlotProps\n tbody: VDataTableSlotProps\n thead: VDataTableSlotProps\n tfoot: VDataTableSlotProps\n bottom: VDataTableSlotProps\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeVDataTableHeadersProps(),\n ...makeVTableProps(),\n}, 'data-table')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'v-data-table')\n\nexport const VDataTable = genericComponent<VDataTableSlots>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const { groupBy } = createGroupBy(props)\n const { sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n\n const { columns, headers } = createHeaders(props, {\n groupBy,\n showSelect: toRef(props, 'showSelect'),\n showExpand: toRef(props, 'showExpand'),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, items, search, { transform: item => item.columns })\n\n const { toggleSort } = provideSort({ sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups)\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened)\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(props, 'hideNoData'),\n noDataText: toRef(props, 'noDataText'),\n loading: toRef(props, 'loading'),\n loadingText: toRef(props, 'loadingText'),\n },\n })\n\n const slotProps = computed<VDataTableSlotProps>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const [dataTableFooterProps] = VDataTableFooter.filterProps(props)\n const [dataTableHeadersProps] = VDataTableHeaders.filterProps(props)\n const [dataTableRowsProps] = VDataTableRows.filterProps(props)\n const [tableProps] = VTable.filterProps(props)\n\n return (\n <VTable\n class={[\n 'v-data-table',\n {\n 'v-data-table--show-select': props.showSelect,\n 'v-data-table--loading': props.loading,\n },\n props.class,\n ]}\n style={ props.style }\n { ...tableProps }\n >\n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n <thead>\n <VDataTableHeaders\n { ...dataTableHeadersProps }\n v-slots={ slots }\n />\n </thead>\n { slots.thead?.(slotProps.value) }\n <tbody>\n { slots.body ? slots.body(slotProps.value) : (\n <VDataTableRows\n { ...dataTableRowsProps }\n items={ paginatedItems.value }\n v-slots={ slots }\n />\n )}\n </tbody>\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n </>\n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : (\n <>\n <VDataTableFooter\n { ...dataTableFooterProps }\n v-slots={{\n prepend: slots['footer.prepend'],\n }}\n />\n </>\n ),\n }}\n </VTable>\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType<typeof VDataTable>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VDataTable.mjs","names":["makeVDataTableFooterProps","VDataTableFooter","makeVDataTableHeadersProps","VDataTableHeaders","makeVDataTableRowsProps","VDataTableRows","makeVTableProps","VTable","makeDataTableExpandProps","provideExpanded","createGroupBy","makeDataTableGroupProps","provideGroupBy","useGroupedItems","createHeaders","makeDataTableHeaderProps","makeDataTableItemsProps","useDataTableItems","useOptions","createPagination","makeDataTablePaginateProps","providePagination","usePaginatedItems","makeDataTableSelectProps","provideSelection","createSort","makeDataTableSortProps","provideSort","useSortedItems","provideDefaults","makeFilterProps","useFilter","computed","toRef","genericComponent","propsFactory","useRender","makeDataTableProps","width","String","Number","search","makeVDataTableProps","VDataTable","name","props","emits","value","setup","_ref","emit","slots","groupBy","sortBy","multiSort","mustSort","page","itemsPerPage","columns","headers","showSelect","showExpand","items","filteredItems","transform","item","toggleSort","sortByWithGroups","opened","extractRows","isGroupOpen","toggleGroup","sortedItems","flatItems","itemsLength","length","startIndex","stopIndex","pageCount","setItemsPerPage","paginatedItems","paginatedItemsWithoutGroups","isSelected","select","selectAll","toggleSelect","someSelected","allSelected","allItems","currentPage","isExpanded","toggleExpand","hideNoData","noDataText","loading","loadingText","slotProps","groupedItems","dataTableFooterProps","filterProps","dataTableHeadersProps","dataTableRowsProps","tableProps","_createVNode","_mergeProps","class","style","top","default","_Fragment","colgroup","thead","body","tbody","tfoot","bottom","prepend"],"sources":["../../../src/labs/VDataTable/VDataTable.tsx"],"sourcesContent":["// Styles\nimport './VDataTable.sass'\n\n// Components\nimport { makeVDataTableFooterProps, VDataTableFooter } from './VDataTableFooter'\nimport { makeVDataTableHeadersProps, VDataTableHeaders } from './VDataTableHeaders'\nimport { makeVDataTableRowsProps, VDataTableRows } from './VDataTableRows'\nimport { makeVTableProps, VTable } from '@/components/VTable/VTable'\n\n// Composables\nimport { makeDataTableExpandProps, provideExpanded } from './composables/expand'\nimport { createGroupBy, makeDataTableGroupProps, provideGroupBy, useGroupedItems } from './composables/group'\nimport { createHeaders, makeDataTableHeaderProps } from './composables/headers'\nimport { makeDataTableItemsProps, useDataTableItems } from './composables/items'\nimport { useOptions } from './composables/options'\nimport { createPagination, makeDataTablePaginateProps, providePagination, usePaginatedItems } from './composables/paginate'\nimport { makeDataTableSelectProps, provideSelection } from './composables/select'\nimport { createSort, makeDataTableSortProps, provideSort, useSortedItems } from './composables/sort'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeFilterProps, useFilter } from '@/composables/filter'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { UnwrapRef } from 'vue'\nimport type { Group } from './composables/group'\nimport type { DataTableItem, InternalDataTableHeader } from './types'\nimport type { VDataTableHeadersSlots } from './VDataTableHeaders'\nimport type { VDataTableRowsSlots } from './VDataTableRows'\n\nexport type VDataTableSlotProps = {\n page: number\n itemsPerPage: number\n sortBy: UnwrapRef<ReturnType<typeof provideSort>['sortBy']>\n pageCount: number\n toggleSort: ReturnType<typeof provideSort>['toggleSort']\n setItemsPerPage: ReturnType<typeof providePagination>['setItemsPerPage']\n someSelected: boolean\n allSelected: boolean\n isSelected: ReturnType<typeof provideSelection>['isSelected']\n select: ReturnType<typeof provideSelection>['select']\n selectAll: ReturnType<typeof provideSelection>['selectAll']\n toggleSelect: ReturnType<typeof provideSelection>['toggleSelect']\n isExpanded: ReturnType<typeof provideExpanded>['isExpanded']\n toggleExpand: ReturnType<typeof provideExpanded>['toggleExpand']\n isGroupOpen: ReturnType<typeof provideGroupBy>['isGroupOpen']\n toggleGroup: ReturnType<typeof provideGroupBy>['toggleGroup']\n items: readonly DataTableItem[]\n groupedItems: readonly (DataTableItem | Group<DataTableItem>)[]\n columns: InternalDataTableHeader[]\n headers: InternalDataTableHeader[][]\n}\n\nexport type VDataTableSlots = VDataTableRowsSlots & VDataTableHeadersSlots & {\n default: VDataTableSlotProps\n colgroup: VDataTableSlotProps\n top: VDataTableSlotProps\n body: VDataTableSlotProps\n tbody: VDataTableSlotProps\n thead: VDataTableSlotProps\n tfoot: VDataTableSlotProps\n bottom: VDataTableSlotProps\n 'footer.prepend': never\n}\n\nexport const makeDataTableProps = propsFactory({\n ...makeVDataTableRowsProps(),\n\n width: [String, Number],\n search: String,\n\n ...makeDataTableExpandProps(),\n ...makeDataTableGroupProps(),\n ...makeDataTableHeaderProps(),\n ...makeDataTableItemsProps(),\n ...makeDataTableSelectProps(),\n ...makeDataTableSortProps(),\n ...makeVDataTableHeadersProps(),\n ...makeVTableProps(),\n}, 'DataTable')\n\nexport const makeVDataTableProps = propsFactory({\n ...makeDataTablePaginateProps(),\n ...makeDataTableProps(),\n ...makeFilterProps(),\n ...makeVDataTableFooterProps(),\n}, 'VDataTable')\n\nexport const VDataTable = genericComponent<VDataTableSlots>()({\n name: 'VDataTable',\n\n props: makeVDataTableProps(),\n\n emits: {\n 'update:modelValue': (value: any[]) => true,\n 'update:page': (value: number) => true,\n 'update:itemsPerPage': (value: number) => true,\n 'update:sortBy': (value: any) => true,\n 'update:options': (value: any) => true,\n 'update:groupBy': (value: any) => true,\n 'update:expanded': (value: any) => true,\n },\n\n setup (props, { emit, slots }) {\n const { groupBy } = createGroupBy(props)\n const { sortBy, multiSort, mustSort } = createSort(props)\n const { page, itemsPerPage } = createPagination(props)\n\n const { columns, headers } = createHeaders(props, {\n groupBy,\n showSelect: toRef(props, 'showSelect'),\n showExpand: toRef(props, 'showExpand'),\n })\n\n const { items } = useDataTableItems(props, columns)\n\n const search = toRef(props, 'search')\n const { filteredItems } = useFilter(props, items, search, { transform: item => item.columns })\n\n const { toggleSort } = provideSort({ sortBy, multiSort, mustSort, page })\n const { sortByWithGroups, opened, extractRows, isGroupOpen, toggleGroup } = provideGroupBy({ groupBy, sortBy })\n\n const { sortedItems } = useSortedItems(props, filteredItems, sortByWithGroups)\n const { flatItems } = useGroupedItems(sortedItems, groupBy, opened)\n const itemsLength = computed(() => flatItems.value.length)\n\n const { startIndex, stopIndex, pageCount, setItemsPerPage } = providePagination({ page, itemsPerPage, itemsLength })\n const { paginatedItems } = usePaginatedItems({ items: flatItems, startIndex, stopIndex, itemsPerPage })\n\n const paginatedItemsWithoutGroups = computed(() => extractRows(paginatedItems.value))\n\n const {\n isSelected,\n select,\n selectAll,\n toggleSelect,\n someSelected,\n allSelected,\n } = provideSelection(props, { allItems: items, currentPage: paginatedItemsWithoutGroups })\n\n const { isExpanded, toggleExpand } = provideExpanded(props)\n\n useOptions({\n page,\n itemsPerPage,\n sortBy,\n groupBy,\n search,\n })\n\n provideDefaults({\n VDataTableRows: {\n hideNoData: toRef(props, 'hideNoData'),\n noDataText: toRef(props, 'noDataText'),\n loading: toRef(props, 'loading'),\n loadingText: toRef(props, 'loadingText'),\n },\n })\n\n const slotProps = computed<VDataTableSlotProps>(() => ({\n page: page.value,\n itemsPerPage: itemsPerPage.value,\n sortBy: sortBy.value,\n pageCount: pageCount.value,\n toggleSort,\n setItemsPerPage,\n someSelected: someSelected.value,\n allSelected: allSelected.value,\n isSelected,\n select,\n selectAll,\n toggleSelect,\n isExpanded,\n toggleExpand,\n isGroupOpen,\n toggleGroup,\n items: paginatedItemsWithoutGroups.value,\n groupedItems: paginatedItems.value,\n columns: columns.value,\n headers: headers.value,\n }))\n\n useRender(() => {\n const [dataTableFooterProps] = VDataTableFooter.filterProps(props)\n const [dataTableHeadersProps] = VDataTableHeaders.filterProps(props)\n const [dataTableRowsProps] = VDataTableRows.filterProps(props)\n const [tableProps] = VTable.filterProps(props)\n\n return (\n <VTable\n class={[\n 'v-data-table',\n {\n 'v-data-table--show-select': props.showSelect,\n 'v-data-table--loading': props.loading,\n },\n props.class,\n ]}\n style={ props.style }\n { ...tableProps }\n >\n {{\n top: () => slots.top?.(slotProps.value),\n default: () => slots.default ? slots.default(slotProps.value) : (\n <>\n { slots.colgroup?.(slotProps.value) }\n <thead>\n <VDataTableHeaders\n { ...dataTableHeadersProps }\n v-slots={ slots }\n />\n </thead>\n { slots.thead?.(slotProps.value) }\n <tbody>\n { slots.body ? slots.body(slotProps.value) : (\n <VDataTableRows\n { ...dataTableRowsProps }\n items={ paginatedItems.value }\n v-slots={ slots }\n />\n )}\n </tbody>\n { slots.tbody?.(slotProps.value) }\n { slots.tfoot?.(slotProps.value) }\n </>\n ),\n bottom: () => slots.bottom ? slots.bottom(slotProps.value) : (\n <>\n <VDataTableFooter\n { ...dataTableFooterProps }\n v-slots={{\n prepend: slots['footer.prepend'],\n }}\n />\n </>\n ),\n }}\n </VTable>\n )\n })\n\n return {}\n },\n})\n\nexport type VDataTable = InstanceType<typeof VDataTable>\n"],"mappings":"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"}
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
.v-data-table-header__content
|
|
34
34
|
flex-direction: row-reverse
|
|
35
|
-
|
|
35
|
+
|
|
36
36
|
&.v-data-table-column--align-center
|
|
37
37
|
text-align: center
|
|
38
38
|
|
|
@@ -76,12 +76,6 @@
|
|
|
76
76
|
.v-data-table__td
|
|
77
77
|
opacity: 0.3
|
|
78
78
|
|
|
79
|
-
.v-data-table__progress
|
|
80
|
-
th
|
|
81
|
-
position: relative
|
|
82
|
-
border: none !important
|
|
83
|
-
height: auto !important
|
|
84
|
-
|
|
85
79
|
.v-data-table-group-header-row__column
|
|
86
80
|
padding-left: calc(var(--v-data-table-group-header-row-depth) * 16px) !important
|
|
87
81
|
|
|
@@ -102,14 +96,12 @@
|
|
|
102
96
|
width: $data-table-header-sort-badge-size
|
|
103
97
|
height: $data-table-header-sort-badge-size
|
|
104
98
|
|
|
105
|
-
.v-data-table-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
right: 0
|
|
111
|
-
width: 100%
|
|
112
|
-
z-index: 1
|
|
99
|
+
.v-data-table-progress
|
|
100
|
+
> th
|
|
101
|
+
border: none !important
|
|
102
|
+
height: auto !important
|
|
103
|
+
padding: 0 !important
|
|
113
104
|
|
|
105
|
+
.v-data-table-rows-loading,
|
|
114
106
|
.v-data-table-rows-no-data
|
|
115
107
|
text-align: center
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
|
|
2
|
-
|
|
2
|
+
// Utilities
|
|
3
|
+
import { convertToUnit, defineFunctionalComponent } from "../../util/index.mjs"; // Types
|
|
3
4
|
export const VDataTableColumn = defineFunctionalComponent({
|
|
4
5
|
align: {
|
|
5
6
|
type: String,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDataTableColumn.mjs","names":["convertToUnit","defineFunctionalComponent","VDataTableColumn","align","type","String","default","fixed","Boolean","fixedOffset","Number","height","lastFixed","noPadding","tag","width","props","_ref","slots","attrs","Tag","_createVNode","_mergeProps","left"],"sources":["../../../src/labs/VDataTable/VDataTableColumn.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"VDataTableColumn.mjs","names":["convertToUnit","defineFunctionalComponent","VDataTableColumn","align","type","String","default","fixed","Boolean","fixedOffset","Number","height","lastFixed","noPadding","tag","width","props","_ref","slots","attrs","Tag","_createVNode","_mergeProps","left"],"sources":["../../../src/labs/VDataTable/VDataTableColumn.tsx"],"sourcesContent":["// Utilities\nimport { convertToUnit, defineFunctionalComponent } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const VDataTableColumn = defineFunctionalComponent({\n align: {\n type: String as PropType<'start' | 'center' | 'end'>,\n default: 'start',\n },\n fixed: Boolean,\n fixedOffset: [Number, String],\n height: [Number, String],\n lastFixed: Boolean,\n noPadding: Boolean,\n tag: String,\n width: [Number, String],\n}, (props, { slots, attrs }) => {\n const Tag = props.tag ?? 'td'\n return (\n <Tag\n class={[\n 'v-data-table__td',\n {\n 'v-data-table-column--fixed': props.fixed,\n 'v-data-table-column--last-fixed': props.lastFixed,\n 'v-data-table-column--no-padding': props.noPadding,\n },\n `v-data-table-column--align-${props.align}`,\n ]}\n style={{\n height: convertToUnit(props.height),\n width: convertToUnit(props.width),\n left: convertToUnit(props.fixedOffset || null),\n }}\n { ...attrs }\n >\n { slots.default?.() }\n </Tag>\n )\n})\n"],"mappings":";AAAA;AAAA,SACSA,aAAa,EAAEC,yBAAyB,gCAEjD;AAGA,OAAO,MAAMC,gBAAgB,GAAGD,yBAAyB,CAAC;EACxDE,KAAK,EAAE;IACLC,IAAI,EAAEC,MAA8C;IACpDC,OAAO,EAAE;EACX,CAAC;EACDC,KAAK,EAAEC,OAAO;EACdC,WAAW,EAAE,CAACC,MAAM,EAAEL,MAAM,CAAC;EAC7BM,MAAM,EAAE,CAACD,MAAM,EAAEL,MAAM,CAAC;EACxBO,SAAS,EAAEJ,OAAO;EAClBK,SAAS,EAAEL,OAAO;EAClBM,GAAG,EAAET,MAAM;EACXU,KAAK,EAAE,CAACL,MAAM,EAAEL,MAAM;AACxB,CAAC,EAAE,CAACW,KAAK,EAAAC,IAAA,KAAuB;EAAA,IAArB;IAAEC,KAAK;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACzB,MAAMG,GAAG,GAAGJ,KAAK,CAACF,GAAG,IAAI,IAAI;EAC7B,OAAAO,YAAA,CAAAD,GAAA,EAAAE,WAAA;IAAA,SAEW,CACL,kBAAkB,EAClB;MACE,4BAA4B,EAAEN,KAAK,CAACT,KAAK;MACzC,iCAAiC,EAAES,KAAK,CAACJ,SAAS;MAClD,iCAAiC,EAAEI,KAAK,CAACH;IAC3C,CAAC,EACA,8BAA6BG,KAAK,CAACb,KAAM,EAAC,CAC5C;IAAA,SACM;MACLQ,MAAM,EAAEX,aAAa,CAACgB,KAAK,CAACL,MAAM,CAAC;MACnCI,KAAK,EAAEf,aAAa,CAACgB,KAAK,CAACD,KAAK,CAAC;MACjCQ,IAAI,EAAEvB,aAAa,CAACgB,KAAK,CAACP,WAAW,IAAI,IAAI;IAC/C;EAAC,GACIU,KAAK;IAAAb,OAAA,EAAAA,CAAA,MAERY,KAAK,CAACZ,OAAO,IAAI;EAAA;AAGzB,CAAC,CAAC"}
|
|
@@ -5,8 +5,8 @@ import "./VDataTableFooter.css";
|
|
|
5
5
|
// Components
|
|
6
6
|
import { VBtn } from "../../components/VBtn/index.mjs";
|
|
7
7
|
import { VSelect } from "../../components/VSelect/index.mjs"; // Composables
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { usePagination } from "./composables/paginate.mjs";
|
|
9
|
+
import { useLocale } from "../../composables/locale.mjs"; // Utilities
|
|
10
10
|
import { computed } from 'vue';
|
|
11
11
|
import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
|
|
12
12
|
export const makeVDataTableFooterProps = propsFactory({
|
|
@@ -70,7 +70,7 @@ export const makeVDataTableFooterProps = propsFactory({
|
|
|
70
70
|
}]
|
|
71
71
|
},
|
|
72
72
|
showCurrentPage: Boolean
|
|
73
|
-
}, '
|
|
73
|
+
}, 'VDataTableFooter');
|
|
74
74
|
export const VDataTableFooter = genericComponent()({
|
|
75
75
|
name: 'VDataTableFooter',
|
|
76
76
|
props: makeVDataTableFooterProps(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDataTableFooter.mjs","names":["VBtn","VSelect","
|
|
1
|
+
{"version":3,"file":"VDataTableFooter.mjs","names":["VBtn","VSelect","usePagination","useLocale","computed","genericComponent","propsFactory","makeVDataTableFooterProps","prevIcon","type","String","default","nextIcon","firstIcon","lastIcon","itemsPerPageText","pageText","firstPageLabel","prevPageLabel","nextPageLabel","lastPageLabel","itemsPerPageOptions","Array","value","title","showCurrentPage","Boolean","VDataTableFooter","name","props","setup","_ref","slots","t","page","pageCount","startIndex","stopIndex","itemsLength","itemsPerPage","setItemsPerPage","map","option","_createVNode","prepend","v","Number","onClick","Math","max","min"],"sources":["../../../src/labs/VDataTable/VDataTableFooter.tsx"],"sourcesContent":["// Styles\nimport './VDataTableFooter.sass'\n\n// Components\nimport { VBtn } from '@/components/VBtn'\nimport { VSelect } from '@/components/VSelect'\n\n// Composables\nimport { usePagination } from './composables/paginate'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nexport const makeVDataTableFooterProps = propsFactory({\n prevIcon: {\n type: String,\n default: '$prev',\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n firstIcon: {\n type: String,\n default: '$first',\n },\n lastIcon: {\n type: String,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n firstPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.firstPage',\n },\n prevPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.prevPage',\n },\n nextPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.nextPage',\n },\n lastPageLabel: {\n type: String,\n default: '$vuetify.dataFooter.lastPage',\n },\n itemsPerPageOptions: {\n type: Array as PropType<readonly { title: string, value: number }[]>,\n default: () => ([\n { value: 10, title: '10' },\n { value: 25, title: '25' },\n { value: 50, title: '50' },\n { value: 100, title: '100' },\n { value: -1, title: '$vuetify.dataFooter.itemsPerPageAll' },\n ]),\n },\n showCurrentPage: Boolean,\n}, 'VDataTableFooter')\n\nexport const VDataTableFooter = genericComponent<{ prepend: never }>()({\n name: 'VDataTableFooter',\n\n props: makeVDataTableFooterProps(),\n\n setup (props, { slots }) {\n const { t } = useLocale()\n const { page, pageCount, startIndex, stopIndex, itemsLength, itemsPerPage, setItemsPerPage } = usePagination()\n\n const itemsPerPageOptions = computed(() => (\n props.itemsPerPageOptions.map(option => ({\n ...option,\n title: t(option.title),\n }))\n ))\n\n return () => (\n <div\n class=\"v-data-table-footer\"\n >\n { slots.prepend?.() }\n <div class=\"v-data-table-footer__items-per-page\">\n <span>{ t(props.itemsPerPageText) }</span>\n <VSelect\n items={ itemsPerPageOptions.value }\n modelValue={ itemsPerPage.value }\n onUpdate:modelValue={ v => setItemsPerPage(Number(v)) }\n density=\"compact\"\n variant=\"outlined\"\n hide-details\n />\n </div>\n <div class=\"v-data-table-footer__info\">\n <div>\n { t(props.pageText, !itemsLength.value ? 0 : startIndex.value + 1, stopIndex.value, itemsLength.value) }\n </div>\n </div>\n <div class=\"v-data-table-footer__pagination\">\n <VBtn\n icon={ props.firstIcon }\n variant=\"plain\"\n onClick={ () => page.value = 1 }\n disabled={ page.value === 1 }\n aria-label={ t(props.firstPageLabel) }\n />\n <VBtn\n icon={ props.prevIcon }\n variant=\"plain\"\n onClick={ () => page.value = Math.max(1, page.value - 1) }\n disabled={ page.value === 1 }\n aria-label={ t(props.prevPageLabel) }\n />\n { props.showCurrentPage && (\n <span key=\"page\" class=\"v-data-table-footer__page\">{ page.value }</span>\n )}\n <VBtn\n icon={ props.nextIcon }\n variant=\"plain\"\n onClick={ () => page.value = Math.min(pageCount.value, page.value + 1) }\n disabled={ page.value === pageCount.value }\n aria-label={ t(props.nextPageLabel) }\n />\n <VBtn\n icon={ props.lastIcon }\n variant=\"plain\"\n onClick={ () => page.value = pageCount.value }\n disabled={ page.value === pageCount.value }\n aria-label={ t(props.lastPageLabel) }\n />\n </div>\n </div>\n )\n },\n})\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { createTextVNode as _createTextVNode, createVNode as _createVNode } from "vue";
|
|
2
2
|
// Components
|
|
3
|
+
import { VDataTableColumn } from "./VDataTableColumn.mjs";
|
|
3
4
|
import { VBtn } from "../../components/VBtn/index.mjs";
|
|
4
|
-
import { VCheckboxBtn } from "../../components/VCheckbox/index.mjs";
|
|
5
|
-
import {
|
|
5
|
+
import { VCheckboxBtn } from "../../components/VCheckbox/index.mjs"; // Composables
|
|
6
|
+
import { useGroupBy } from "./composables/group.mjs";
|
|
6
7
|
import { useHeaders } from "./composables/headers.mjs";
|
|
7
|
-
import { useSelection } from "./composables/select.mjs";
|
|
8
|
-
import { useGroupBy } from "./composables/group.mjs"; // Utilities
|
|
8
|
+
import { useSelection } from "./composables/select.mjs"; // Utilities
|
|
9
9
|
import { computed } from 'vue';
|
|
10
10
|
import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
|
|
11
11
|
export const makeVDataTableGroupHeaderRowProps = propsFactory({
|
|
@@ -13,7 +13,7 @@ export const makeVDataTableGroupHeaderRowProps = propsFactory({
|
|
|
13
13
|
type: Object,
|
|
14
14
|
required: true
|
|
15
15
|
}
|
|
16
|
-
}, '
|
|
16
|
+
}, 'VDataTableGroupHeaderRow');
|
|
17
17
|
export const VDataTableGroupHeaderRow = genericComponent()({
|
|
18
18
|
name: 'VDataTableGroupHeaderRow',
|
|
19
19
|
props: makeVDataTableGroupHeaderRowProps(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VDataTableGroupHeaderRow.mjs","names":["VBtn","VCheckboxBtn","
|
|
1
|
+
{"version":3,"file":"VDataTableGroupHeaderRow.mjs","names":["VDataTableColumn","VBtn","VCheckboxBtn","useGroupBy","useHeaders","useSelection","computed","genericComponent","propsFactory","makeVDataTableGroupHeaderRowProps","item","type","Object","required","VDataTableGroupHeaderRow","name","props","setup","_ref","slots","isGroupOpen","toggleGroup","extractRows","isSelected","isSomeSelected","select","columns","rows","_createVNode","depth","value","map","column","key","icon","onClick","count","length","default","_createTextVNode","modelValue","indeterminate","selectGroup","v"],"sources":["../../../src/labs/VDataTable/VDataTableGroupHeaderRow.tsx"],"sourcesContent":["// Components\nimport { VDataTableColumn } from './VDataTableColumn'\nimport { VBtn } from '@/components/VBtn'\nimport { VCheckboxBtn } from '@/components/VCheckbox'\n\n// Composables\nimport { useGroupBy } from './composables/group'\nimport { useHeaders } from './composables/headers'\nimport { useSelection } from './composables/select'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { Group } from './composables/group'\n\nexport type VDataTableGroupHeaderRowSlots = {\n 'data-table-group': { item: Group, count: number, props: Record<string, unknown> }\n 'data-table-select': { props: Record<string, unknown> }\n}\n\nexport const makeVDataTableGroupHeaderRowProps = propsFactory({\n item: {\n type: Object as PropType<Group>,\n required: true,\n },\n}, 'VDataTableGroupHeaderRow')\n\nexport const VDataTableGroupHeaderRow = genericComponent<VDataTableGroupHeaderRowSlots>()({\n name: 'VDataTableGroupHeaderRow',\n\n props: makeVDataTableGroupHeaderRowProps(),\n\n setup (props, { slots }) {\n const { isGroupOpen, toggleGroup, extractRows } = useGroupBy()\n const { isSelected, isSomeSelected, select } = useSelection()\n const { columns } = useHeaders()\n\n const rows = computed(() => {\n return extractRows([props.item])\n })\n\n return () => (\n <tr\n class=\"v-data-table-group-header-row\"\n style={{\n '--v-data-table-group-header-row-depth': props.item.depth,\n }}\n >\n { columns.value.map(column => {\n if (column.key === 'data-table-group') {\n const icon = isGroupOpen(props.item) ? '$expand' : '$next'\n const onClick = () => toggleGroup(props.item)\n\n return slots['data-table-group']?.({ item: props.item, count: rows.value.length, props: { icon, onClick } }) ?? (\n <VDataTableColumn class=\"v-data-table-group-header-row__column\">\n <VBtn\n size=\"small\"\n variant=\"text\"\n icon={ icon }\n onClick={ onClick }\n />\n <span>{ props.item.value }</span>\n <span>({ rows.value.length })</span>\n </VDataTableColumn>\n )\n }\n\n if (column.key === 'data-table-select') {\n const modelValue = isSelected(rows.value)\n const indeterminate = isSomeSelected(rows.value) && !modelValue\n const selectGroup = (v: boolean) => select(rows.value, v)\n return slots['data-table-select']?.({ props: { modelValue, indeterminate, 'onUpdate:modelValue': selectGroup } }) ?? (\n <td>\n <VCheckboxBtn\n modelValue={ modelValue }\n indeterminate={ indeterminate }\n onUpdate:modelValue={ selectGroup }\n />\n </td>\n )\n }\n\n return <td />\n })}\n </tr>\n )\n },\n})\n"],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { resolveDirective as _resolveDirective, Fragment as _Fragment, createVNode as _createVNode } from "vue";
|
|
2
2
|
// Components
|
|
3
|
-
import { VCheckboxBtn } from "../../components/VCheckbox/index.mjs";
|
|
4
3
|
import { VDataTableColumn } from "./VDataTableColumn.mjs";
|
|
4
|
+
import { VCheckboxBtn } from "../../components/VCheckbox/index.mjs";
|
|
5
5
|
import { VIcon } from "../../components/VIcon/index.mjs"; // Composables
|
|
6
|
-
import { IconValue } from "../../composables/icons.mjs";
|
|
7
|
-
import { LoaderSlot, makeLoaderProps, useLoader } from "../../composables/loader.mjs";
|
|
8
|
-
import { useBackgroundColor } from "../../composables/color.mjs";
|
|
9
6
|
import { useHeaders } from "./composables/headers.mjs";
|
|
10
7
|
import { useSelection } from "./composables/select.mjs";
|
|
11
|
-
import { useSort } from "./composables/sort.mjs";
|
|
8
|
+
import { useSort } from "./composables/sort.mjs";
|
|
9
|
+
import { useBackgroundColor } from "../../composables/color.mjs";
|
|
10
|
+
import { IconValue } from "../../composables/icons.mjs";
|
|
11
|
+
import { LoaderSlot, makeLoaderProps, useLoader } from "../../composables/loader.mjs"; // Utilities
|
|
12
12
|
import { computed } from 'vue';
|
|
13
13
|
import { convertToUnit, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
14
14
|
export const makeVDataTableHeadersProps = propsFactory({
|
|
@@ -24,7 +24,7 @@ export const makeVDataTableHeadersProps = propsFactory({
|
|
|
24
24
|
default: '$sortDesc'
|
|
25
25
|
},
|
|
26
26
|
...makeLoaderProps()
|
|
27
|
-
}, '
|
|
27
|
+
}, 'VDataTableHeaders');
|
|
28
28
|
export const VDataTableHeaders = genericComponent()({
|
|
29
29
|
name: 'VDataTableHeaders',
|
|
30
30
|
props: makeVDataTableHeadersProps(),
|
|
@@ -148,11 +148,11 @@ export const VDataTableHeaders = genericComponent()({
|
|
|
148
148
|
"x": x,
|
|
149
149
|
"y": y
|
|
150
150
|
}, null))])), props.loading && _createVNode("tr", {
|
|
151
|
-
"class": "v-data-
|
|
151
|
+
"class": "v-data-table-progress"
|
|
152
152
|
}, [_createVNode("th", {
|
|
153
153
|
"colspan": columns.value.length
|
|
154
154
|
}, [_createVNode(LoaderSlot, {
|
|
155
|
-
"name": "v-data-table-
|
|
155
|
+
"name": "v-data-table-progress",
|
|
156
156
|
"active": true,
|
|
157
157
|
"color": typeof props.loading === 'boolean' ? undefined : props.loading,
|
|
158
158
|
"indeterminate": true
|