@vuetify/nightly 4.0.0-dev-20230511.0 → 4.0.0-dev-20230512.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/CHANGELOG.md +6 -14
- package/dist/json/attributes.json +564 -256
- package/dist/json/importMap-labs.json +4 -4
- package/dist/json/tags.json +80 -2
- package/dist/json/web-types.json +2399 -606
- package/dist/vuetify-labs.css +45 -42
- package/dist/vuetify-labs.d.ts +26350 -24518
- package/dist/vuetify-labs.esm.js +2485 -2382
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +2485 -2382
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +11 -8
- package/dist/vuetify.d.ts +23046 -23682
- package/dist/vuetify.esm.js +1865 -1748
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +1865 -1748
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +658 -658
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.mts +1 -3
- package/lib/blueprints/md1.d.mts +1 -3
- package/lib/blueprints/md2.d.mts +1 -3
- package/lib/blueprints/md3.d.mts +1 -3
- package/lib/components/VAlert/VAlert.mjs +48 -48
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/index.d.mts +228 -71
- package/lib/components/VApp/VApp.mjs +9 -8
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/index.d.mts +65 -19
- package/lib/components/VAppBar/VAppBar.mjs +23 -22
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +9 -7
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +1 -2
- package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.mts +314 -123
- package/lib/components/VAutocomplete/VAutocomplete.css +0 -4
- package/lib/components/VAutocomplete/VAutocomplete.mjs +36 -39
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +0 -5
- package/lib/components/VAutocomplete/index.d.mts +1264 -2467
- package/lib/components/VAvatar/index.d.mts +70 -30
- package/lib/components/VBadge/VBadge.mjs +33 -32
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/index.d.mts +86 -42
- package/lib/components/VBanner/VBanner.mjs +21 -20
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBannerActions.mjs +7 -6
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/index.d.mts +227 -65
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +35 -34
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.mts +78 -45
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +24 -23
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -5
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -14
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.mts +311 -208
- package/lib/components/VBtn/index.d.mts +112 -53
- package/lib/components/VBtnGroup/index.d.mts +69 -27
- package/lib/components/VBtnToggle/VBtnToggle.mjs +6 -5
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.mts +73 -35
- package/lib/components/VCard/VCard.mjs +38 -37
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +12 -11
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.mts +764 -368
- package/lib/components/VCarousel/VCarousel.mjs +28 -27
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +18 -16
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.mts +600 -103
- package/lib/components/VCheckbox/VCheckbox.mjs +6 -5
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.mts +304 -125
- package/lib/components/VChip/VChip.css +7 -0
- package/lib/components/VChip/VChip.mjs +60 -57
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/VChip.sass +9 -0
- package/lib/components/VChip/index.d.mts +318 -90
- package/lib/components/VChipGroup/VChipGroup.mjs +19 -18
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.mts +204 -53
- package/lib/components/VCode/index.d.mts +63 -17
- package/lib/components/VColorPicker/VColorPicker.mjs +44 -39
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +26 -25
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +17 -16
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +10 -9
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +12 -11
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/index.d.mts +74 -85
- package/lib/components/VColorPicker/util/index.mjs +2 -2
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +39 -42
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.mts +1264 -2488
- package/lib/components/VCounter/VCounter.mjs +16 -15
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/index.d.mts +113 -1817
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +9 -8
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/index.d.mts +67 -20
- package/lib/components/VDialog/VDialog.mjs +18 -17
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.mts +551 -1401
- package/lib/components/VDivider/VDivider.mjs +11 -10
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/index.d.mts +66 -21
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -15
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +6 -5
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -5
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -14
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.mts +317 -125
- package/lib/components/VField/VField.mjs +7 -2
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VFieldLabel.mjs +6 -5
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/index.d.mts +310 -230
- package/lib/components/VFileInput/VFileInput.mjs +35 -34
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.mts +760 -320
- package/lib/components/VFooter/VFooter.mjs +21 -20
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/index.d.mts +70 -29
- package/lib/components/VForm/VForm.mjs +6 -5
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VForm/index.d.mts +568 -52
- package/lib/components/VGrid/VCol.mjs +26 -25
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +16 -11
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +26 -25
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VGrid/index.d.mts +274 -100
- package/lib/components/VHover/VHover.mjs +10 -9
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VHover/index.d.mts +93 -37
- package/lib/components/VIcon/VIcon.mjs +28 -29
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VIcon/index.d.mts +292 -81
- package/lib/components/VImg/VImg.mjs +34 -33
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.mts +118 -53
- package/lib/components/VInput/VInput.mjs +1 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.mts +137 -50
- package/lib/components/VItemGroup/VItem.mjs +1 -1
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs +10 -9
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.mts +414 -111
- package/lib/components/VKbd/index.d.mts +63 -17
- package/lib/components/VLabel/VLabel.mjs +8 -7
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/index.d.mts +64 -18
- package/lib/components/VLayout/VLayout.mjs +6 -5
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs +15 -14
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.mts +131 -42
- package/lib/components/VLazy/VLazy.mjs +21 -20
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VLazy/index.d.mts +67 -27
- package/lib/components/VList/VList.mjs +37 -36
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs +9 -12
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +2 -4
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +44 -43
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItemAction.mjs +8 -7
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs +8 -7
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs +10 -9
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.mts +1069 -617
- package/lib/components/VList/list.mjs +4 -4
- package/lib/components/VList/list.mjs.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +12 -11
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VLocaleProvider/index.d.mts +65 -19
- package/lib/components/VMain/VMain.mjs +9 -8
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/index.d.mts +64 -19
- package/lib/components/VMenu/VMenu.mjs +21 -20
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.mts +479 -1327
- package/lib/components/VMessages/VMessages.mjs +18 -17
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.mts +88 -1799
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +50 -49
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/index.d.mts +115 -60
- package/lib/components/VNavigationDrawer/sticky.mjs +14 -7
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/touch.mjs +4 -4
- package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.mts +120 -75
- package/lib/components/VOverlay/locationStrategies.mjs +5 -3
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +84 -83
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.mts +203 -130
- package/lib/components/VParallax/VParallax.mjs +9 -8
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.d.mts +91 -18
- package/lib/components/VProgressCircular/VProgressCircular.mjs +25 -24
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/index.d.mts +125 -45
- package/lib/components/VProgressLinear/VProgressLinear.mjs +44 -42
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/index.d.mts +97 -57
- package/lib/components/VRadio/VRadio.mjs +8 -7
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadio/index.d.mts +121 -51
- package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -21
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.mts +189 -76
- package/lib/components/VRangeSlider/VRangeSlider.mjs +18 -13
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.mts +192 -80
- package/lib/components/VRating/VRating.mjs +49 -45
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/index.d.mts +94 -54
- package/lib/components/VResponsive/index.d.mts +73 -18
- package/lib/components/VSelect/VSelect.mjs +22 -21
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.mts +1192 -3713
- package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.mts +212 -194
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -10
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/index.d.mts +100 -63
- package/lib/components/VSheet/VSheet.mjs +1 -3
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/index.d.mts +66 -21
- package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs +1 -3
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.mts +181 -64
- package/lib/components/VSlider/VSlider.mjs +18 -13
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +26 -25
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.mjs +13 -12
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.mts +194 -81
- package/lib/components/VSlider/slider.mjs +3 -3
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +20 -19
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.mts +444 -297
- package/lib/components/VSwitch/VSwitch.css +3 -3
- package/lib/components/VSwitch/VSwitch.mjs +13 -12
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.sass +4 -3
- package/lib/components/VSwitch/index.d.mts +206 -86
- package/lib/components/VSystemBar/VSystemBar.mjs +15 -14
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/index.d.mts +69 -27
- package/lib/components/VTable/VTable.mjs +12 -11
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/index.d.mts +95 -26
- package/lib/components/VTabs/VTab.mjs +19 -19
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.mjs +28 -27
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/index.d.mts +175 -115
- package/lib/components/VTextField/VTextField.mjs +1 -1
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.mts +1254 -770
- package/lib/components/VTextarea/VTextarea.mjs +32 -28
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.mts +683 -313
- package/lib/components/VThemeProvider/VThemeProvider.mjs +8 -7
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VThemeProvider/index.d.mts +65 -20
- package/lib/components/VTimeline/VTimeline.mjs +46 -41
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +14 -13
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +23 -22
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.mts +163 -62
- package/lib/components/VToolbar/VToolbar.mjs +8 -4
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarItems.mjs +8 -7
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.mts +265 -82
- package/lib/components/VTooltip/VTooltip.mjs +20 -19
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.mts +442 -297
- package/lib/components/VValidation/VValidation.mjs +1 -3
- package/lib/components/VValidation/VValidation.mjs.map +1 -1
- package/lib/components/VValidation/index.d.mts +358 -50
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +14 -13
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +6 -5
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +110 -82
- package/lib/components/VWindow/VWindow.mjs +3 -3
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +18 -17
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/VWindow/index.d.mts +204 -75
- package/lib/components/index.d.mts +23230 -23871
- package/lib/components/transitions/createTransition.mjs +16 -15
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/dialog-transition.mjs +5 -4
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/index.d.mts +1207 -472
- package/lib/composables/display.mjs +3 -3
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/form.mjs +4 -4
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs.map +1 -1
- package/lib/composables/group.mjs +13 -13
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/hydration.mjs +6 -6
- package/lib/composables/hydration.mjs.map +1 -1
- package/lib/composables/icons.mjs +2 -2
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/intersectionObserver.mjs +2 -2
- package/lib/composables/intersectionObserver.mjs.map +1 -1
- package/lib/composables/layout.mjs +3 -3
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/lazy.mjs +2 -2
- package/lib/composables/lazy.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +5 -4
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/scroll.mjs +6 -6
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/composables/ssrBoot.mjs +2 -2
- package/lib/composables/ssrBoot.mjs.map +1 -1
- package/lib/composables/stack.mjs +5 -4
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/theme.mjs +3 -3
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/transition.mjs +5 -2
- package/lib/composables/transition.mjs.map +1 -1
- package/lib/composables/validation.mjs +3 -3
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/directives/click-outside/index.mjs +1 -1
- package/lib/directives/click-outside/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/index.d.mts +10 -5
- package/lib/labs/VDataTable/VDataTable.mjs +54 -66
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs +64 -63
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +8 -7
- package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs +17 -16
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs +7 -6
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +20 -19
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +54 -59
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +72 -80
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/virtual.mjs +3 -3
- package/lib/labs/VDataTable/composables/virtual.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.mts +2974 -631
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +54 -48
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
- package/lib/labs/VInfiniteScroll/index.d.mts +143 -52
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +18 -17
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/labs/VSkeletonLoader/index.d.mts +77 -31
- package/lib/labs/components.d.mts +3188 -708
- package/lib/labs/date/date.mjs +7 -7
- package/lib/labs/date/date.mjs.map +1 -1
- package/lib/labs/date/index.d.mts +1 -3
- package/lib/locale/adapters/vuetify.mjs +8 -5
- package/lib/locale/adapters/vuetify.mjs.map +1 -1
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/propsFactory.mjs +2 -0
- package/lib/util/propsFactory.mjs.map +1 -1
- package/package.json +3 -3
@@ -20,90 +20,91 @@ import { useLocale, useRtl } from "../../composables/locale.mjs";
|
|
20
20
|
import { useProxiedModel } from "../../composables/proxiedModel.mjs";
|
21
21
|
import { useRefs } from "../../composables/refs.mjs";
|
22
22
|
import { useResizeObserver } from "../../composables/resizeObserver.mjs"; // Utilities
|
23
|
-
import { computed, nextTick,
|
24
|
-
import { createRange, genericComponent, keyValues, useRender } from "../../util/index.mjs"; // Types
|
23
|
+
import { computed, nextTick, shallowRef, toRef } from 'vue';
|
24
|
+
import { createRange, genericComponent, keyValues, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
25
|
+
export const makeVPaginationProps = propsFactory({
|
26
|
+
activeColor: String,
|
27
|
+
start: {
|
28
|
+
type: [Number, String],
|
29
|
+
default: 1
|
30
|
+
},
|
31
|
+
modelValue: {
|
32
|
+
type: Number,
|
33
|
+
default: props => props.start
|
34
|
+
},
|
35
|
+
disabled: Boolean,
|
36
|
+
length: {
|
37
|
+
type: [Number, String],
|
38
|
+
default: 1,
|
39
|
+
validator: val => val % 1 === 0
|
40
|
+
},
|
41
|
+
totalVisible: [Number, String],
|
42
|
+
firstIcon: {
|
43
|
+
type: IconValue,
|
44
|
+
default: '$first'
|
45
|
+
},
|
46
|
+
prevIcon: {
|
47
|
+
type: IconValue,
|
48
|
+
default: '$prev'
|
49
|
+
},
|
50
|
+
nextIcon: {
|
51
|
+
type: IconValue,
|
52
|
+
default: '$next'
|
53
|
+
},
|
54
|
+
lastIcon: {
|
55
|
+
type: IconValue,
|
56
|
+
default: '$last'
|
57
|
+
},
|
58
|
+
ariaLabel: {
|
59
|
+
type: String,
|
60
|
+
default: '$vuetify.pagination.ariaLabel.root'
|
61
|
+
},
|
62
|
+
pageAriaLabel: {
|
63
|
+
type: String,
|
64
|
+
default: '$vuetify.pagination.ariaLabel.page'
|
65
|
+
},
|
66
|
+
currentPageAriaLabel: {
|
67
|
+
type: String,
|
68
|
+
default: '$vuetify.pagination.ariaLabel.currentPage'
|
69
|
+
},
|
70
|
+
firstAriaLabel: {
|
71
|
+
type: String,
|
72
|
+
default: '$vuetify.pagination.ariaLabel.first'
|
73
|
+
},
|
74
|
+
previousAriaLabel: {
|
75
|
+
type: String,
|
76
|
+
default: '$vuetify.pagination.ariaLabel.previous'
|
77
|
+
},
|
78
|
+
nextAriaLabel: {
|
79
|
+
type: String,
|
80
|
+
default: '$vuetify.pagination.ariaLabel.next'
|
81
|
+
},
|
82
|
+
lastAriaLabel: {
|
83
|
+
type: String,
|
84
|
+
default: '$vuetify.pagination.ariaLabel.last'
|
85
|
+
},
|
86
|
+
ellipsis: {
|
87
|
+
type: String,
|
88
|
+
default: '...'
|
89
|
+
},
|
90
|
+
showFirstLastPage: Boolean,
|
91
|
+
...makeBorderProps(),
|
92
|
+
...makeComponentProps(),
|
93
|
+
...makeDensityProps(),
|
94
|
+
...makeElevationProps(),
|
95
|
+
...makeRoundedProps(),
|
96
|
+
...makeSizeProps(),
|
97
|
+
...makeTagProps({
|
98
|
+
tag: 'nav'
|
99
|
+
}),
|
100
|
+
...makeThemeProps(),
|
101
|
+
...makeVariantProps({
|
102
|
+
variant: 'text'
|
103
|
+
})
|
104
|
+
}, 'v-pagination');
|
25
105
|
export const VPagination = genericComponent()({
|
26
106
|
name: 'VPagination',
|
27
|
-
props:
|
28
|
-
activeColor: String,
|
29
|
-
start: {
|
30
|
-
type: [Number, String],
|
31
|
-
default: 1
|
32
|
-
},
|
33
|
-
modelValue: {
|
34
|
-
type: Number,
|
35
|
-
default: props => props.start
|
36
|
-
},
|
37
|
-
disabled: Boolean,
|
38
|
-
length: {
|
39
|
-
type: [Number, String],
|
40
|
-
default: 1,
|
41
|
-
validator: val => val % 1 === 0
|
42
|
-
},
|
43
|
-
totalVisible: [Number, String],
|
44
|
-
firstIcon: {
|
45
|
-
type: IconValue,
|
46
|
-
default: '$first'
|
47
|
-
},
|
48
|
-
prevIcon: {
|
49
|
-
type: IconValue,
|
50
|
-
default: '$prev'
|
51
|
-
},
|
52
|
-
nextIcon: {
|
53
|
-
type: IconValue,
|
54
|
-
default: '$next'
|
55
|
-
},
|
56
|
-
lastIcon: {
|
57
|
-
type: IconValue,
|
58
|
-
default: '$last'
|
59
|
-
},
|
60
|
-
ariaLabel: {
|
61
|
-
type: String,
|
62
|
-
default: '$vuetify.pagination.ariaLabel.root'
|
63
|
-
},
|
64
|
-
pageAriaLabel: {
|
65
|
-
type: String,
|
66
|
-
default: '$vuetify.pagination.ariaLabel.page'
|
67
|
-
},
|
68
|
-
currentPageAriaLabel: {
|
69
|
-
type: String,
|
70
|
-
default: '$vuetify.pagination.ariaLabel.currentPage'
|
71
|
-
},
|
72
|
-
firstAriaLabel: {
|
73
|
-
type: String,
|
74
|
-
default: '$vuetify.pagination.ariaLabel.first'
|
75
|
-
},
|
76
|
-
previousAriaLabel: {
|
77
|
-
type: String,
|
78
|
-
default: '$vuetify.pagination.ariaLabel.previous'
|
79
|
-
},
|
80
|
-
nextAriaLabel: {
|
81
|
-
type: String,
|
82
|
-
default: '$vuetify.pagination.ariaLabel.next'
|
83
|
-
},
|
84
|
-
lastAriaLabel: {
|
85
|
-
type: String,
|
86
|
-
default: '$vuetify.pagination.ariaLabel.last'
|
87
|
-
},
|
88
|
-
ellipsis: {
|
89
|
-
type: String,
|
90
|
-
default: '...'
|
91
|
-
},
|
92
|
-
showFirstLastPage: Boolean,
|
93
|
-
...makeBorderProps(),
|
94
|
-
...makeComponentProps(),
|
95
|
-
...makeDensityProps(),
|
96
|
-
...makeElevationProps(),
|
97
|
-
...makeRoundedProps(),
|
98
|
-
...makeSizeProps(),
|
99
|
-
...makeTagProps({
|
100
|
-
tag: 'nav'
|
101
|
-
}),
|
102
|
-
...makeThemeProps(),
|
103
|
-
...makeVariantProps({
|
104
|
-
variant: 'text'
|
105
|
-
})
|
106
|
-
},
|
107
|
+
props: makeVPaginationProps(),
|
107
108
|
emits: {
|
108
109
|
'update:modelValue': value => true,
|
109
110
|
first: value => true,
|
@@ -130,7 +131,7 @@ export const VPagination = genericComponent()({
|
|
130
131
|
const {
|
131
132
|
width
|
132
133
|
} = useDisplay();
|
133
|
-
const maxButtons =
|
134
|
+
const maxButtons = shallowRef(-1);
|
134
135
|
provideDefaults(undefined, {
|
135
136
|
scoped: true
|
136
137
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VPagination.mjs","names":["VBtn","IconValue","makeBorderProps","makeComponentProps","makeDensityProps","makeElevationProps","makeRoundedProps","makeSizeProps","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","provideDefaults","useDisplay","useLocale","useRtl","useProxiedModel","useRefs","useResizeObserver","computed","nextTick","ref","toRef","createRange","genericComponent","keyValues","useRender","VPagination","name","props","activeColor","String","start","type","Number","default","modelValue","disabled","Boolean","length","validator","val","totalVisible","firstIcon","prevIcon","nextIcon","lastIcon","ariaLabel","pageAriaLabel","currentPageAriaLabel","firstAriaLabel","previousAriaLabel","nextAriaLabel","lastAriaLabel","ellipsis","showFirstLastPage","tag","variant","emits","value","first","prev","next","last","setup","_ref","slots","emit","page","t","n","isRtl","themeClasses","width","maxButtons","undefined","scoped","resizeRef","entries","target","contentRect","firstItem","querySelector","totalWidth","itemWidth","offsetWidth","parseFloat","getComputedStyle","marginRight","getMax","parseInt","minButtons","Math","max","floor","toFixed","range","isNaN","MAX_SAFE_INTEGER","even","middle","left","right","rangeLength","rangeStart","ceil","setValue","e","event","preventDefault","refs","updateRef","VPaginationBtn","color","border","density","size","rounded","elevation","items","map","item","index","isActive","key","icon","ariaCurrent","onClick","controls","prevDisabled","nextDisabled","ariaDisabled","updateFocus","currentIndex","$el","focus","onKeydown","_createVNode","class","style","_mergeProps"],"sources":["../../../src/components/VPagination/VPagination.tsx"],"sourcesContent":["// Styles\nimport './VPagination.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeBorderProps } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useDisplay } from '@/composables'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRefs } from '@/composables/refs'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, ref, toRef } from 'vue'\nimport { createRange, genericComponent, keyValues, useRender } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance } from 'vue'\n\nexport type VPaginationSlots = {\n item: []\n first: []\n next: []\n prev: []\n last: []\n}\n\nexport const VPagination = genericComponent<VPaginationSlots>()({\n name: 'VPagination',\n\n props: {\n activeColor: String,\n start: {\n type: [Number, String],\n default: 1,\n },\n modelValue: {\n type: Number,\n default: (props: any) => props.start,\n },\n disabled: Boolean,\n length: {\n type: [Number, String],\n default: 1,\n validator: (val: number) => val % 1 === 0,\n },\n totalVisible: [Number, String],\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n ariaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.root',\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n firstAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.first',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n lastAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.last',\n },\n ellipsis: {\n type: String,\n default: '...',\n },\n showFirstLastPage: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n },\n\n emits: {\n 'update:modelValue': (value: number) => true,\n first: (value: number) => true,\n prev: (value: number) => true,\n next: (value: number) => true,\n last: (value: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const page = useProxiedModel(props, 'modelValue')\n const { t, n } = useLocale()\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { width } = useDisplay()\n const maxButtons = ref(-1)\n\n provideDefaults(undefined, { scoped: true })\n\n const { resizeRef } = useResizeObserver((entries: ResizeObserverEntry[]) => {\n if (!entries.length) return\n\n const { target, contentRect } = entries[0]\n\n const firstItem = target.querySelector('.v-pagination__list > *') as HTMLElement\n\n if (!firstItem) return\n\n const totalWidth = contentRect.width\n const itemWidth =\n firstItem.offsetWidth +\n parseFloat(getComputedStyle(firstItem).marginRight) * 2\n\n maxButtons.value = getMax(totalWidth, itemWidth)\n })\n\n const length = computed(() => parseInt(props.length, 10))\n const start = computed(() => parseInt(props.start, 10))\n\n const totalVisible = computed(() => {\n if (props.totalVisible) return parseInt(props.totalVisible, 10)\n else if (maxButtons.value >= 0) return maxButtons.value\n return getMax(width.value, 58)\n })\n\n function getMax (totalWidth: number, itemWidth: number) {\n const minButtons = props.showFirstLastPage ? 5 : 3\n return Math.max(0, Math.floor(\n // Round to two decimal places to avoid floating point errors\n +((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2)\n ))\n }\n\n const range = computed(() => {\n if (length.value <= 0 || isNaN(length.value) || length.value > Number.MAX_SAFE_INTEGER) return []\n\n if (totalVisible.value <= 1) return [page.value]\n\n if (length.value <= totalVisible.value) {\n return createRange(length.value, start.value)\n }\n\n const even = totalVisible.value % 2 === 0\n const middle = even ? totalVisible.value / 2 : Math.floor(totalVisible.value / 2)\n const left = even ? middle : middle + 1\n const right = length.value - middle\n\n if (left - page.value >= 0) {\n return [...createRange(Math.max(1, totalVisible.value - 1), start.value), props.ellipsis, length.value]\n } else if (page.value - right >= (even ? 1 : 0)) {\n const rangeLength = totalVisible.value - 1\n const rangeStart = length.value - rangeLength + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart)]\n } else {\n const rangeLength = Math.max(1, totalVisible.value - 3)\n const rangeStart = rangeLength === 1 ? page.value : page.value - Math.ceil(rangeLength / 2) + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart), props.ellipsis, length.value]\n }\n })\n\n // TODO: 'first' | 'prev' | 'next' | 'last' does not work here?\n function setValue (e: Event, value: number, event?: any) {\n e.preventDefault()\n page.value = value\n event && emit(event, value)\n }\n\n const { refs, updateRef } = useRefs<ComponentPublicInstance>()\n\n provideDefaults({\n VPaginationBtn: {\n color: toRef(props, 'color'),\n border: toRef(props, 'border'),\n density: toRef(props, 'density'),\n size: toRef(props, 'size'),\n variant: toRef(props, 'variant'),\n rounded: toRef(props, 'rounded'),\n elevation: toRef(props, 'elevation'),\n },\n })\n\n const items = computed(() => {\n return range.value.map((item, index) => {\n const ref = (e: any) => updateRef(e, index)\n\n if (typeof item === 'string') {\n return {\n isActive: false,\n key: `ellipsis-${index}`,\n page: item,\n props: {\n ref,\n ellipsis: true,\n icon: true,\n disabled: true,\n },\n }\n } else {\n const isActive = item === page.value\n return {\n isActive,\n key: item,\n page: n(item),\n props: {\n ref,\n ellipsis: false,\n icon: true,\n disabled: !!props.disabled || +props.length < 2,\n color: isActive ? props.activeColor : props.color,\n ariaCurrent: isActive,\n ariaLabel: t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),\n onClick: (e: Event) => setValue(e, item),\n },\n }\n }\n })\n })\n\n const controls = computed(() => {\n const prevDisabled = !!props.disabled || page.value <= start.value\n const nextDisabled = !!props.disabled || page.value >= start.value + length.value - 1\n\n return {\n first: props.showFirstLastPage ? {\n icon: isRtl.value ? props.lastIcon : props.firstIcon,\n onClick: (e: Event) => setValue(e, start.value, 'first'),\n disabled: prevDisabled,\n ariaLabel: t(props.firstAriaLabel),\n ariaDisabled: prevDisabled,\n } : undefined,\n prev: {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n onClick: (e: Event) => setValue(e, page.value - 1, 'prev'),\n disabled: prevDisabled,\n ariaLabel: t(props.previousAriaLabel),\n ariaDisabled: prevDisabled,\n },\n next: {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n onClick: (e: Event) => setValue(e, page.value + 1, 'next'),\n disabled: nextDisabled,\n ariaLabel: t(props.nextAriaLabel),\n ariaDisabled: nextDisabled,\n },\n last: props.showFirstLastPage ? {\n icon: isRtl.value ? props.firstIcon : props.lastIcon,\n onClick: (e: Event) => setValue(e, start.value + length.value - 1, 'last'),\n disabled: nextDisabled,\n ariaLabel: t(props.lastAriaLabel),\n ariaDisabled: nextDisabled,\n } : undefined,\n }\n })\n\n function updateFocus () {\n const currentIndex = page.value - start.value\n refs.value[currentIndex]?.$el.focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === keyValues.left && !props.disabled && page.value > +props.start) {\n page.value = page.value - 1\n nextTick(updateFocus)\n } else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {\n page.value = page.value + 1\n nextTick(updateFocus)\n }\n }\n\n useRender(() => (\n <props.tag\n ref={ resizeRef }\n class={[\n 'v-pagination',\n themeClasses.value,\n props.class,\n ]}\n style={ props.style }\n role=\"navigation\"\n aria-label={ t(props.ariaLabel) }\n onKeydown={ onKeydown }\n data-test=\"v-pagination-root\"\n >\n <ul class=\"v-pagination__list\">\n { props.showFirstLastPage && (\n <li key=\"first\" class=\"v-pagination__first\" data-test=\"v-pagination-first\">\n { slots.first ? slots.first(controls.value.first) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.first } />\n )}\n </li>\n )}\n\n <li key=\"prev\" class=\"v-pagination__prev\" data-test=\"v-pagination-prev\">\n { slots.prev ? slots.prev(controls.value.prev) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.prev } />\n )}\n </li>\n\n { items.value.map((item, index) => (\n <li\n key={ item.key }\n class={[\n 'v-pagination__item',\n {\n 'v-pagination__item--is-active': item.isActive,\n },\n ]}\n data-test=\"v-pagination-item\"\n >\n { slots.item ? slots.item(item) : (\n <VBtn _as=\"VPaginationBtn\" { ...item.props }>{ item.page }</VBtn>\n )}\n </li>\n ))}\n\n <li\n key=\"next\"\n class=\"v-pagination__next\"\n data-test=\"v-pagination-next\"\n >\n { slots.next ? slots.next(controls.value.next) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.next } />\n )}\n </li>\n\n { props.showFirstLastPage && (\n <li\n key=\"last\"\n class=\"v-pagination__last\"\n data-test=\"v-pagination-last\"\n >\n { slots.last ? slots.last(controls.value.last) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.last } />\n )}\n </li>\n )}\n </ul>\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VPagination = InstanceType<typeof VPagination>\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"VPagination.mjs","names":["VBtn","IconValue","makeBorderProps","makeComponentProps","makeDensityProps","makeElevationProps","makeRoundedProps","makeSizeProps","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","provideDefaults","useDisplay","useLocale","useRtl","useProxiedModel","useRefs","useResizeObserver","computed","nextTick","shallowRef","toRef","createRange","genericComponent","keyValues","propsFactory","useRender","makeVPaginationProps","activeColor","String","start","type","Number","default","modelValue","props","disabled","Boolean","length","validator","val","totalVisible","firstIcon","prevIcon","nextIcon","lastIcon","ariaLabel","pageAriaLabel","currentPageAriaLabel","firstAriaLabel","previousAriaLabel","nextAriaLabel","lastAriaLabel","ellipsis","showFirstLastPage","tag","variant","VPagination","name","emits","value","first","prev","next","last","setup","_ref","slots","emit","page","t","n","isRtl","themeClasses","width","maxButtons","undefined","scoped","resizeRef","entries","target","contentRect","firstItem","querySelector","totalWidth","itemWidth","offsetWidth","parseFloat","getComputedStyle","marginRight","getMax","parseInt","minButtons","Math","max","floor","toFixed","range","isNaN","MAX_SAFE_INTEGER","even","middle","left","right","rangeLength","rangeStart","ceil","setValue","e","event","preventDefault","refs","updateRef","VPaginationBtn","color","border","density","size","rounded","elevation","items","map","item","index","ref","isActive","key","icon","ariaCurrent","onClick","controls","prevDisabled","nextDisabled","ariaDisabled","updateFocus","currentIndex","$el","focus","onKeydown","_createVNode","class","style","_mergeProps"],"sources":["../../../src/components/VPagination/VPagination.tsx"],"sourcesContent":["// Styles\nimport './VPagination.sass'\n\n// Components\nimport { VBtn } from '../VBtn'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeBorderProps } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeSizeProps } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useDisplay } from '@/composables'\nimport { useLocale, useRtl } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useRefs } from '@/composables/refs'\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, nextTick, shallowRef, toRef } from 'vue'\nimport { createRange, genericComponent, keyValues, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComponentPublicInstance } from 'vue'\n\ntype ItemSlot = {\n isActive: boolean\n key: string | number\n page: string\n props: Record<string, any>\n}\n\ntype ControlSlot = {\n icon: IconValue\n onClick: (e: Event) => void\n disabled: boolean\n ariaLabel: string\n ariaDisabled: boolean\n}\n\nexport type VPaginationSlots = {\n item: [ItemSlot]\n first: [ControlSlot]\n prev: [ControlSlot]\n next: [ControlSlot]\n last: [ControlSlot]\n}\n\nexport const makeVPaginationProps = propsFactory({\n activeColor: String,\n start: {\n type: [Number, String],\n default: 1,\n },\n modelValue: {\n type: Number,\n default: (props: any) => props.start as number,\n },\n disabled: Boolean,\n length: {\n type: [Number, String],\n default: 1,\n validator: (val: number) => val % 1 === 0,\n },\n totalVisible: [Number, String],\n firstIcon: {\n type: IconValue,\n default: '$first',\n },\n prevIcon: {\n type: IconValue,\n default: '$prev',\n },\n nextIcon: {\n type: IconValue,\n default: '$next',\n },\n lastIcon: {\n type: IconValue,\n default: '$last',\n },\n ariaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.root',\n },\n pageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.page',\n },\n currentPageAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.currentPage',\n },\n firstAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.first',\n },\n previousAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.previous',\n },\n nextAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.next',\n },\n lastAriaLabel: {\n type: String,\n default: '$vuetify.pagination.ariaLabel.last',\n },\n ellipsis: {\n type: String,\n default: '...',\n },\n showFirstLastPage: Boolean,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'nav' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'v-pagination')\n\nexport const VPagination = genericComponent<VPaginationSlots>()({\n name: 'VPagination',\n\n props: makeVPaginationProps(),\n\n emits: {\n 'update:modelValue': (value: number) => true,\n first: (value: number) => true,\n prev: (value: number) => true,\n next: (value: number) => true,\n last: (value: number) => true,\n },\n\n setup (props, { slots, emit }) {\n const page = useProxiedModel(props, 'modelValue')\n const { t, n } = useLocale()\n const { isRtl } = useRtl()\n const { themeClasses } = provideTheme(props)\n const { width } = useDisplay()\n const maxButtons = shallowRef(-1)\n\n provideDefaults(undefined, { scoped: true })\n\n const { resizeRef } = useResizeObserver((entries: ResizeObserverEntry[]) => {\n if (!entries.length) return\n\n const { target, contentRect } = entries[0]\n\n const firstItem = target.querySelector('.v-pagination__list > *') as HTMLElement\n\n if (!firstItem) return\n\n const totalWidth = contentRect.width\n const itemWidth =\n firstItem.offsetWidth +\n parseFloat(getComputedStyle(firstItem).marginRight) * 2\n\n maxButtons.value = getMax(totalWidth, itemWidth)\n })\n\n const length = computed(() => parseInt(props.length, 10))\n const start = computed(() => parseInt(props.start, 10))\n\n const totalVisible = computed(() => {\n if (props.totalVisible) return parseInt(props.totalVisible, 10)\n else if (maxButtons.value >= 0) return maxButtons.value\n return getMax(width.value, 58)\n })\n\n function getMax (totalWidth: number, itemWidth: number) {\n const minButtons = props.showFirstLastPage ? 5 : 3\n return Math.max(0, Math.floor(\n // Round to two decimal places to avoid floating point errors\n +((totalWidth - itemWidth * minButtons) / itemWidth).toFixed(2)\n ))\n }\n\n const range = computed(() => {\n if (length.value <= 0 || isNaN(length.value) || length.value > Number.MAX_SAFE_INTEGER) return []\n\n if (totalVisible.value <= 1) return [page.value]\n\n if (length.value <= totalVisible.value) {\n return createRange(length.value, start.value)\n }\n\n const even = totalVisible.value % 2 === 0\n const middle = even ? totalVisible.value / 2 : Math.floor(totalVisible.value / 2)\n const left = even ? middle : middle + 1\n const right = length.value - middle\n\n if (left - page.value >= 0) {\n return [...createRange(Math.max(1, totalVisible.value - 1), start.value), props.ellipsis, length.value]\n } else if (page.value - right >= (even ? 1 : 0)) {\n const rangeLength = totalVisible.value - 1\n const rangeStart = length.value - rangeLength + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart)]\n } else {\n const rangeLength = Math.max(1, totalVisible.value - 3)\n const rangeStart = rangeLength === 1 ? page.value : page.value - Math.ceil(rangeLength / 2) + start.value\n return [start.value, props.ellipsis, ...createRange(rangeLength, rangeStart), props.ellipsis, length.value]\n }\n })\n\n // TODO: 'first' | 'prev' | 'next' | 'last' does not work here?\n function setValue (e: Event, value: number, event?: any) {\n e.preventDefault()\n page.value = value\n event && emit(event, value)\n }\n\n const { refs, updateRef } = useRefs<ComponentPublicInstance>()\n\n provideDefaults({\n VPaginationBtn: {\n color: toRef(props, 'color'),\n border: toRef(props, 'border'),\n density: toRef(props, 'density'),\n size: toRef(props, 'size'),\n variant: toRef(props, 'variant'),\n rounded: toRef(props, 'rounded'),\n elevation: toRef(props, 'elevation'),\n },\n })\n\n const items = computed(() => {\n return range.value.map((item, index) => {\n const ref = (e: any) => updateRef(e, index)\n\n if (typeof item === 'string') {\n return {\n isActive: false,\n key: `ellipsis-${index}`,\n page: item,\n props: {\n ref,\n ellipsis: true,\n icon: true,\n disabled: true,\n },\n }\n } else {\n const isActive = item === page.value\n return {\n isActive,\n key: item,\n page: n(item),\n props: {\n ref,\n ellipsis: false,\n icon: true,\n disabled: !!props.disabled || +props.length < 2,\n color: isActive ? props.activeColor : props.color,\n ariaCurrent: isActive,\n ariaLabel: t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),\n onClick: (e: Event) => setValue(e, item),\n },\n }\n }\n })\n })\n\n const controls = computed(() => {\n const prevDisabled = !!props.disabled || page.value <= start.value\n const nextDisabled = !!props.disabled || page.value >= start.value + length.value - 1\n\n return {\n first: props.showFirstLastPage ? {\n icon: isRtl.value ? props.lastIcon : props.firstIcon,\n onClick: (e: Event) => setValue(e, start.value, 'first'),\n disabled: prevDisabled,\n ariaLabel: t(props.firstAriaLabel),\n ariaDisabled: prevDisabled,\n } : undefined,\n prev: {\n icon: isRtl.value ? props.nextIcon : props.prevIcon,\n onClick: (e: Event) => setValue(e, page.value - 1, 'prev'),\n disabled: prevDisabled,\n ariaLabel: t(props.previousAriaLabel),\n ariaDisabled: prevDisabled,\n },\n next: {\n icon: isRtl.value ? props.prevIcon : props.nextIcon,\n onClick: (e: Event) => setValue(e, page.value + 1, 'next'),\n disabled: nextDisabled,\n ariaLabel: t(props.nextAriaLabel),\n ariaDisabled: nextDisabled,\n },\n last: props.showFirstLastPage ? {\n icon: isRtl.value ? props.firstIcon : props.lastIcon,\n onClick: (e: Event) => setValue(e, start.value + length.value - 1, 'last'),\n disabled: nextDisabled,\n ariaLabel: t(props.lastAriaLabel),\n ariaDisabled: nextDisabled,\n } : undefined,\n }\n })\n\n function updateFocus () {\n const currentIndex = page.value - start.value\n refs.value[currentIndex]?.$el.focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (e.key === keyValues.left && !props.disabled && page.value > +props.start) {\n page.value = page.value - 1\n nextTick(updateFocus)\n } else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {\n page.value = page.value + 1\n nextTick(updateFocus)\n }\n }\n\n useRender(() => (\n <props.tag\n ref={ resizeRef }\n class={[\n 'v-pagination',\n themeClasses.value,\n props.class,\n ]}\n style={ props.style }\n role=\"navigation\"\n aria-label={ t(props.ariaLabel) }\n onKeydown={ onKeydown }\n data-test=\"v-pagination-root\"\n >\n <ul class=\"v-pagination__list\">\n { props.showFirstLastPage && (\n <li key=\"first\" class=\"v-pagination__first\" data-test=\"v-pagination-first\">\n { slots.first ? slots.first(controls.value.first!) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.first } />\n )}\n </li>\n )}\n\n <li key=\"prev\" class=\"v-pagination__prev\" data-test=\"v-pagination-prev\">\n { slots.prev ? slots.prev(controls.value.prev) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.prev } />\n )}\n </li>\n\n { items.value.map((item, index) => (\n <li\n key={ item.key }\n class={[\n 'v-pagination__item',\n {\n 'v-pagination__item--is-active': item.isActive,\n },\n ]}\n data-test=\"v-pagination-item\"\n >\n { slots.item ? slots.item(item) : (\n <VBtn _as=\"VPaginationBtn\" { ...item.props }>{ item.page }</VBtn>\n )}\n </li>\n ))}\n\n <li\n key=\"next\"\n class=\"v-pagination__next\"\n data-test=\"v-pagination-next\"\n >\n { slots.next ? slots.next(controls.value.next) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.next } />\n )}\n </li>\n\n { props.showFirstLastPage && (\n <li\n key=\"last\"\n class=\"v-pagination__last\"\n data-test=\"v-pagination-last\"\n >\n { slots.last ? slots.last(controls.value.last!) : (\n <VBtn _as=\"VPaginationBtn\" { ...controls.value.last } />\n )}\n </li>\n )}\n </ul>\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VPagination = InstanceType<typeof VPagination>\n"],"mappings":"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"}
|