@vuetify/nightly 3.0.0-beta.3 → 3.0.0-beta.6
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 +43 -2
- package/dist/_component-variables.sass +61 -0
- package/dist/json/attributes.json +261 -205
- package/dist/json/importMap.json +175 -219
- package/dist/json/tags.json +74 -104
- package/dist/json/web-types.json +880 -835
- package/dist/vuetify.css +597 -407
- package/dist/vuetify.d.ts +6770 -2144
- package/dist/vuetify.esm.js +9075 -8454
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +9074 -8453
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +1078 -1040
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.mjs +4 -0
- package/lib/blueprints/index.mjs.map +1 -0
- package/lib/blueprints/md1.mjs +63 -0
- package/lib/blueprints/md1.mjs.map +1 -0
- package/lib/blueprints/md2.mjs +60 -0
- package/lib/blueprints/md2.mjs.map +1 -0
- package/lib/blueprints/md3.mjs +74 -0
- package/lib/blueprints/md3.mjs.map +1 -0
- package/lib/components/VAlert/VAlert.css +5 -5
- package/lib/components/VAlert/VAlert.mjs +8 -2
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/VAlert.sass +0 -2
- package/lib/components/VApp/VApp.css +2 -5
- package/lib/components/VApp/VApp.mjs +3 -4
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/VApp.sass +11 -12
- package/lib/components/VApp/variables.scss +6 -0
- package/lib/components/VAppBar/VAppBar.mjs +4 -3
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBar.sass +0 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +7 -12
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +4 -3
- package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
- package/lib/components/VAppBar/_variables.scss +2 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +54 -21
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +0 -2
- package/lib/components/VAvatar/VAvatar.css +1 -1
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +1 -2
- package/lib/components/VAvatar/_mixins.scss +0 -1
- package/lib/components/VBadge/VBadge.mjs +8 -7
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.sass +0 -1
- package/lib/components/VBadge/_variables.scss +2 -2
- package/lib/components/VBanner/VBanner.css +7 -7
- package/lib/components/VBanner/VBanner.mjs +24 -17
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.sass +6 -8
- package/lib/components/VBanner/VBannerActions.mjs +1 -1
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/index.mjs +0 -2
- package/lib/components/VBanner/index.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.css +4 -11
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +4 -3
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.sass +5 -13
- package/lib/components/VBottomNavigation/_variables.scss +7 -8
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +13 -6
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +30 -19
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +8 -4
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +5 -8
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/_variables.scss +2 -1
- package/lib/components/VBtn/VBtn.css +72 -15
- package/lib/components/VBtn/VBtn.mjs +70 -27
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +70 -13
- package/lib/components/VBtn/_variables.scss +4 -1
- package/lib/components/VBtnGroup/VBtnGroup.sass +0 -1
- package/lib/components/VBtnGroup/_variables.scss +2 -0
- package/lib/components/VBtnToggle/VBtnToggle.sass +0 -1
- package/lib/components/VBtnToggle/_variables.scss +1 -0
- package/lib/components/VCard/VCard.css +86 -69
- package/lib/components/VCard/VCard.mjs +52 -66
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCard.sass +74 -62
- package/lib/components/VCard/VCardActions.mjs +1 -1
- package/lib/components/VCard/VCardActions.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +88 -0
- package/lib/components/VCard/VCardItem.mjs.map +1 -0
- package/lib/components/VCard/_variables.scss +40 -24
- package/lib/components/VCard/index.mjs +1 -5
- package/lib/components/VCard/index.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.mjs +5 -4
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.sass +0 -1
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/_variables.scss +1 -0
- package/lib/components/VCheckbox/VCheckbox.mjs +13 -46
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.sass +0 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +67 -0
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -0
- package/lib/components/VCheckbox/index.mjs +1 -0
- package/lib/components/VCheckbox/index.mjs.map +1 -1
- package/lib/components/VChip/VChip.css +142 -65
- package/lib/components/VChip/VChip.mjs +77 -38
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/VChip.sass +6 -1
- package/lib/components/VChip/_mixins.scss +26 -6
- package/lib/components/VChip/_variables.scss +1 -5
- package/lib/components/VChipGroup/VChipGroup.mjs +5 -4
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.sass +1 -1
- package/lib/components/VChipGroup/_variables.scss +1 -1
- package/lib/components/VCode/VCode.sass +1 -2
- package/lib/components/VCode/_variables.scss +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +16 -10
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -4
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -3
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +4 -3
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +6 -5
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.sass +0 -1
- package/lib/components/VColorPicker/_variables.scss +17 -10
- package/lib/components/VCombobox/VCombobox.mjs +52 -36
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +0 -2
- package/lib/components/VCounter/VCounter.mjs +16 -16
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/VCounter.sass +1 -2
- package/lib/components/VCounter/_variables.scss +2 -1
- package/lib/components/VDialog/VDialog.css +2 -5
- package/lib/components/VDialog/VDialog.mjs +25 -25
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +1 -5
- package/lib/components/VDialog/_variables.scss +0 -1
- package/lib/components/VDivider/VDivider.mjs +16 -17
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/VDivider.sass +0 -1
- package/lib/components/VDivider/_variables.scss +3 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.css +1 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +9 -4
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +7 -7
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/_variables.scss +15 -10
- package/lib/components/VField/VField.css +11 -11
- package/lib/components/VField/VField.mjs +19 -12
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +8 -10
- package/lib/components/VField/VFieldLabel.mjs +8 -9
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/_variables.scss +3 -3
- package/lib/components/VFileInput/VFileInput.css +3 -3
- package/lib/components/VFileInput/VFileInput.mjs +12 -7
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +3 -4
- package/lib/components/VFooter/VFooter.mjs +4 -3
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/VFooter.sass +0 -1
- package/lib/components/VFooter/_variables.scss +2 -1
- package/lib/components/VForm/VForm.mjs +3 -3
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +4 -3
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.css +0 -8
- package/lib/components/VIcon/VIcon.mjs +20 -21
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.sass +0 -9
- package/lib/components/VIcon/_variables.scss +2 -5
- package/lib/components/VIcon/index.mjs.map +1 -1
- package/lib/components/VImg/VImg.sass +0 -1
- package/lib/components/VInput/VInput.mjs +13 -9
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +0 -1
- package/lib/components/VItemGroup/VItem.mjs +3 -0
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.sass +0 -1
- package/lib/components/VKbd/VKbd.sass +0 -1
- package/lib/components/VKbd/_variables.scss +1 -1
- package/lib/components/VLabel/VLabel.mjs +4 -3
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.sass +0 -1
- package/lib/components/VLabel/_variables.scss +1 -0
- package/lib/components/VLazy/VLazy.mjs +5 -3
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VList/VList.css +2 -2
- package/lib/components/VList/VList.mjs +16 -18
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +1 -2
- package/lib/components/VList/VListChildren.mjs +7 -6
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +45 -31
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +84 -58
- package/lib/components/VList/VListItem.mjs +78 -45
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +68 -40
- package/lib/components/VList/VListItemAction.mjs +8 -9
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs +4 -3
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs +4 -3
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/_variables.scss +11 -5
- package/lib/components/VList/index.mjs +2 -5
- package/lib/components/VList/index.mjs.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -3
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VMain/VMain.mjs +4 -3
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/VMain.sass +0 -1
- package/lib/components/VMain/_variables.scss +1 -1
- package/lib/components/VMenu/VMenu.mjs +5 -5
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.sass +0 -1
- package/lib/components/VMessages/VMessages.mjs +5 -3
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/VMessages.sass +0 -1
- package/lib/components/VMessages/_variables.scss +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +10 -4
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +0 -1
- package/lib/components/VNavigationDrawer/_variables.scss +2 -1
- package/lib/components/VNavigationDrawer/touch.mjs +5 -2
- package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
- package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +10 -8
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.sass +0 -1
- package/lib/components/VOverlay/locationStrategies.mjs +267 -78
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +4 -3
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VOverlay/util/point.mjs +3 -3
- package/lib/components/VOverlay/util/point.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +41 -23
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.sass +0 -1
- package/lib/components/VParallax/VParallax.mjs +5 -5
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.mjs +6 -5
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.sass +0 -1
- package/lib/components/VProgressCircular/_variables.scss +2 -0
- package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -3
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.sass +0 -1
- package/lib/components/VProgressLinear/_variables.scss +1 -0
- package/lib/components/VRadioGroup/VRadioGroup.mjs +6 -3
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.sass +5 -3
- package/lib/components/VRadioGroup/_variables.scss +3 -4
- package/lib/components/VRangeSlider/VRangeSlider.mjs +12 -13
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRating/VRating.mjs +6 -5
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/VRating.sass +2 -1
- package/lib/components/VResponsive/VResponsive.mjs +7 -6
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.mjs +61 -22
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +0 -2
- package/lib/components/VSelectionControl/VSelectionControl.css +1 -0
- package/lib/components/VSelectionControl/VSelectionControl.mjs +12 -10
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.sass +1 -1
- package/lib/components/VSelectionControl/_variables.scss +1 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +3 -3
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +1 -6
- package/lib/components/VSelectionControlGroup/_variables.scss +1 -4
- package/lib/components/VSheet/VSheet.mjs +3 -3
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.sass +0 -1
- package/lib/components/VSheet/_variables.scss +3 -2
- package/lib/components/VSlideGroup/VSlideGroup.mjs +47 -49
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.sass +0 -1
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs +7 -3
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlideGroup/_variables.scss +0 -5
- package/lib/components/VSlideGroup/index.mjs +2 -2
- package/lib/components/VSlideGroup/index.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.mjs +7 -9
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.sass +0 -2
- package/lib/components/VSlider/VSliderThumb.mjs +6 -5
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.sass +0 -2
- package/lib/components/VSlider/VSliderTrack.mjs +11 -10
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.sass +0 -2
- package/lib/components/VSlider/slider.mjs +4 -4
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.css +5 -5
- package/lib/components/VSnackbar/VSnackbar.mjs +49 -49
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.sass +0 -1
- package/lib/components/VSnackbar/_variables.scss +2 -0
- package/lib/components/VSwitch/VSwitch.css +7 -0
- package/lib/components/VSwitch/VSwitch.mjs +8 -2
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.sass +6 -1
- package/lib/components/VSwitch/_variables.scss +1 -0
- package/lib/components/VSystemBar/VSystemBar.mjs +5 -13
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.sass +0 -1
- package/lib/components/VSystemBar/_variables.scss +2 -1
- package/lib/components/VTable/VTable.css +1 -0
- package/lib/components/VTable/VTable.mjs +9 -8
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/VTable.sass +1 -1
- package/lib/components/VTable/_variables.scss +2 -0
- package/lib/components/VTabs/VTab.css +3 -1
- package/lib/components/VTabs/VTab.mjs +4 -4
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTab.sass +4 -2
- package/lib/components/VTabs/VTabs.mjs +15 -12
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.sass +0 -1
- package/lib/components/VTabs/_variables.scss +2 -0
- package/lib/components/VTextField/VTextField.mjs +25 -13
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/VTextField.sass +0 -1
- package/lib/components/VTextField/_variables.scss +1 -1
- package/lib/components/VTextarea/VTextarea.mjs +22 -12
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +0 -2
- package/lib/components/VTextarea/_variables.scss +1 -0
- package/lib/components/VTimeline/VTimeline.mjs +24 -25
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.sass +3 -3
- package/lib/components/VTimeline/VTimelineDivider.mjs +41 -38
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +10 -11
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/_variables.scss +11 -6
- package/lib/components/VToolbar/VToolbar.css +15 -6
- package/lib/components/VToolbar/VToolbar.mjs +9 -9
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.sass +15 -7
- package/lib/components/VToolbar/VToolbarItems.mjs +12 -8
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/_variables.scss +6 -2
- package/lib/components/VTooltip/VTooltip.mjs +41 -39
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.sass +0 -1
- package/lib/components/VTooltip/_variables.scss +1 -0
- package/lib/components/VWindow/VWindow.mjs +4 -4
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindow.sass +0 -2
- package/lib/components/VWindow/VWindowItem.mjs +21 -11
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/VWindow/_variables.scss +1 -0
- package/lib/components/index.d.ts +7316 -2666
- package/lib/components/transitions/dialog-transition.mjs +3 -0
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/index.mjs +0 -5
- package/lib/components/transitions/index.mjs.map +1 -1
- package/lib/composables/border.mjs +5 -6
- package/lib/composables/border.mjs.map +1 -1
- package/lib/composables/display.mjs +13 -11
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/form.mjs +6 -6
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/items.mjs +2 -2
- package/lib/composables/items.mjs.map +1 -1
- package/lib/composables/location.mjs +4 -8
- package/lib/composables/location.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +2 -1
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/size.mjs +2 -2
- package/lib/composables/size.mjs.map +1 -1
- package/lib/composables/ssrBoot.mjs +3 -2
- package/lib/composables/ssrBoot.mjs.map +1 -1
- package/lib/composables/stack.mjs +7 -7
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/theme.mjs +15 -6
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/validation.mjs +15 -8
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/variant.mjs +7 -5
- package/lib/composables/variant.mjs.map +1 -1
- package/lib/directives/ripple/VRipple.sass +0 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +29 -7
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.ts +68 -70
- package/lib/styles/generic/_transitions.scss +13 -77
- package/lib/styles/main.css +44 -58
- package/lib/styles/tools/_variant.sass +6 -6
- package/lib/util/anchor.mjs +34 -28
- package/lib/util/anchor.mjs.map +1 -1
- package/lib/util/animation.mjs +2 -2
- package/lib/util/animation.mjs.map +1 -1
- package/lib/util/box.mjs +12 -0
- package/lib/util/box.mjs.map +1 -1
- package/lib/util/getCurrentInstance.mjs +19 -0
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/helpers.mjs +21 -5
- package/lib/util/helpers.mjs.map +1 -1
- package/package.json +16 -10
- package/lib/components/VBanner/VBannerAvatar.mjs +0 -20
- package/lib/components/VBanner/VBannerAvatar.mjs.map +0 -1
- package/lib/components/VBanner/VBannerIcon.mjs +0 -20
- package/lib/components/VBanner/VBannerIcon.mjs.map +0 -1
- package/lib/components/VBreadcrumbs/shared.mjs +0 -2
- package/lib/components/VBreadcrumbs/shared.mjs.map +0 -1
- package/lib/components/VCard/VCardAvatar.mjs +0 -3
- package/lib/components/VCard/VCardAvatar.mjs.map +0 -1
- package/lib/components/VCard/VCardContent.mjs +0 -3
- package/lib/components/VCard/VCardContent.mjs.map +0 -1
- package/lib/components/VCard/VCardHeader.mjs +0 -3
- package/lib/components/VCard/VCardHeader.mjs.map +0 -1
- package/lib/components/VCard/VCardHeaderText.mjs +0 -3
- package/lib/components/VCard/VCardHeaderText.mjs.map +0 -1
- package/lib/components/VCard/VCardImg.mjs +0 -3
- package/lib/components/VCard/VCardImg.mjs.map +0 -1
- package/lib/components/VList/VListItemAvatar.mjs +0 -23
- package/lib/components/VList/VListItemAvatar.mjs.map +0 -1
- package/lib/components/VList/VListItemHeader.mjs +0 -3
- package/lib/components/VList/VListItemHeader.mjs.map +0 -1
- package/lib/components/VList/VListItemIcon.mjs +0 -23
- package/lib/components/VList/VListItemIcon.mjs.map +0 -1
- package/lib/components/VTimeline/shared.mjs +0 -2
- package/lib/components/VTimeline/shared.mjs.map +0 -1
- package/lib/presets/default/index.mjs +0 -71
- package/lib/presets/default/index.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSliderTrack.mjs","names":["VSliderSymbol","useBackgroundColor","useRounded","computed","inject","convertToUnit","defineComponent","VSliderTrack","name","props","start","type","Number","required","stop","emits","setup","slots","slider","Error","
|
|
1
|
+
{"version":3,"file":"VSliderTrack.mjs","names":["VSliderSymbol","useBackgroundColor","useRounded","computed","inject","convertToUnit","defineComponent","useRender","VSliderTrack","name","props","start","type","Number","required","stop","emits","setup","slots","slider","Error","color","horizontalDirection","parsedTicks","rounded","showTicks","tickSize","trackColor","trackFillColor","trackSize","vertical","roundedClasses","backgroundColorClasses","trackFillColorClasses","backgroundColorStyles","trackFillColorStyles","trackColorClasses","trackColorStyles","startDir","value","endDir","backgroundStyles","trackFillWidth","trackFillStyles","computedTicks","ticks","slice","reverse","map","tick","index","directionProperty","directionValue","position","undefined","label","direction"],"sources":["../../../src/components/VSlider/VSliderTrack.tsx"],"sourcesContent":["// Styles\nimport './VSliderTrack.sass'\n\n// Components\nimport { VSliderSymbol } from './slider'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\nimport { useRounded } from '@/composables/rounded'\n\n// Utilities\nimport { computed, inject } from 'vue'\nimport { convertToUnit, defineComponent, useRender } from '@/util'\n\nexport const VSliderTrack = defineComponent({\n name: 'VSliderTrack',\n\n props: {\n start: {\n type: Number,\n required: true,\n },\n stop: {\n type: Number,\n required: true,\n },\n },\n\n emits: {},\n\n setup (props, { slots }) {\n const slider = inject(VSliderSymbol)\n\n if (!slider) throw new Error('[Vuetify] v-slider-track must be inside v-slider or v-range-slider')\n\n const {\n color,\n horizontalDirection,\n parsedTicks,\n rounded,\n showTicks,\n tickSize,\n trackColor,\n trackFillColor,\n trackSize,\n vertical,\n } = slider\n\n const { roundedClasses } = useRounded(rounded)\n\n const {\n backgroundColorClasses: trackFillColorClasses,\n backgroundColorStyles: trackFillColorStyles,\n } = useBackgroundColor(trackFillColor)\n\n const {\n backgroundColorClasses: trackColorClasses,\n backgroundColorStyles: trackColorStyles,\n } = useBackgroundColor(trackColor)\n\n const startDir = computed(() => `inset-${vertical.value ? 'block-end' : 'inline-start'}`)\n const endDir = computed(() => vertical.value ? 'height' : 'width')\n\n const backgroundStyles = computed(() => {\n return {\n [startDir.value]: '0%',\n [endDir.value]: '100%',\n }\n })\n\n const trackFillWidth = computed(() => props.stop - props.start)\n\n const trackFillStyles = computed(() => {\n return {\n [startDir.value]: convertToUnit(props.start, '%'),\n [endDir.value]: convertToUnit(trackFillWidth.value, '%'),\n }\n })\n\n const computedTicks = computed(() => {\n const ticks = vertical.value ? parsedTicks.value.slice().reverse() : parsedTicks.value\n\n return ticks.map((tick, index) => {\n const directionProperty = vertical.value ? 'bottom' : 'margin-inline-start'\n const directionValue = (tick.position > 0 && tick.position < 100) ? convertToUnit(tick.position, '%') : undefined\n return (\n <div\n key={ tick.value }\n class={[\n 'v-slider-track__tick',\n {\n 'v-slider-track__tick--filled': tick.position >= props.start && tick.position <= props.stop,\n },\n ]}\n style={{ [directionProperty]: directionValue }}\n >\n {\n (tick.label || slots['tick-label']) && (\n <div class=\"v-slider-track__tick-label\">\n { slots['tick-label']?.({ tick, index }) ?? tick.label }\n </div>\n )\n }\n </div>\n )\n })\n })\n\n useRender(() => {\n return (\n <div\n class={[\n 'v-slider-track',\n roundedClasses.value,\n ]}\n style={{\n '--v-slider-track-size': convertToUnit(trackSize.value),\n '--v-slider-tick-size': convertToUnit(tickSize.value),\n direction: !vertical.value ? horizontalDirection.value : undefined,\n }}\n >\n <div\n class={[\n 'v-slider-track__background',\n trackColorClasses.value,\n {\n 'v-slider-track__background--opacity': !!color.value || !trackFillColor.value,\n },\n ]}\n style={{\n ...backgroundStyles.value,\n ...trackColorStyles.value,\n }}\n />\n <div\n class={[\n 'v-slider-track__fill',\n trackFillColorClasses.value,\n ]}\n style={{\n ...trackFillStyles.value,\n ...trackFillColorStyles.value,\n }}\n />\n\n { showTicks.value && (\n <div\n class={[\n 'v-slider-track__ticks',\n {\n 'v-slider-track__ticks--always-show': showTicks.value === 'always',\n },\n ]}\n >\n { computedTicks.value }\n </div>\n ) }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSliderTrack = InstanceType<typeof VSliderTrack>\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/* eslint-disable max-statements */
|
|
2
2
|
// Composables
|
|
3
|
-
import {
|
|
3
|
+
import { makeElevationProps } from "../../composables/elevation.mjs";
|
|
4
4
|
import { makeRoundedProps } from "../../composables/rounded.mjs";
|
|
5
|
-
import {
|
|
5
|
+
import { useRtl } from "../../composables/rtl.mjs"; // Utilities
|
|
6
6
|
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { clamp, createRange, propsFactory } from "../../util/index.mjs";
|
|
8
|
+
import { computed, provide, ref, toRef } from 'vue'; // Types
|
|
9
9
|
|
|
10
10
|
export const VSliderSymbol = Symbol.for('vuetify:v-slider');
|
|
11
11
|
export function getOffset(e, el, direction) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slider.mjs","names":["useRtl","makeRoundedProps","makeElevationProps","computed","provide","ref","toRef","clamp","createRange","propsFactory","VSliderSymbol","Symbol","for","getOffset","e","el","direction","vertical","rect","getBoundingClientRect","touch","touches","clientY","top","height","clientX","left","width","getPosition","position","length","changedTouches","makeSliderProps","disabled","Boolean","error","readonly","max","type","Number","String","default","min","step","thumbColor","thumbLabel","undefined","validator","v","thumbSize","showTicks","ticks","Array","Object","tickSize","color","trackColor","trackFillColor","trackSize","includes","reverse","elevation","useSlider","props","handleSliderMouseUp","handleMouseMove","getActiveThumb","isRtl","isReversed","value","horizontalDirection","hd","parseFloat","decimals","trimmedStep","toString","trim","indexOf","parseInt","numTicks","mousePressed","startOffset","trackContainerRef","activeThumbRef","roundValue","clamped","offset","newValue","Math","round","toFixed","parseMouseMove","start","trackStart","trackLength","$el","clickOffset","clickPos","thumbMoved","handleStop","handleStart","focus","contains","target","moveListenerOptions","passive","capture","onMouseMove","onSliderMouseUp","stopPropagation","preventDefault","window","removeEventListener","onSliderTouchend","onSliderTouchstart","addEventListener","onSliderMousedown","val","percentage","isNaN","parsedTicks","Infinity","map","t","isArray","label","keys","key","hasLabels","some","data","rounded"],"sources":["../../../src/components/VSlider/slider.ts"],"sourcesContent":["/* eslint-disable max-statements */\n// Composables\nimport { useRtl } from '@/composables/rtl'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { makeElevationProps } from '@/composables/elevation'\n\n// Utilities\nimport { computed, provide, ref, toRef } from 'vue'\nimport { clamp, createRange, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, InjectionKey, PropType, Ref } from 'vue'\nimport type { VSliderTrack } from './VSliderTrack'\n\ntype Tick = {\n value: number\n position: number\n label?: string\n}\n\ntype SliderProvide = {\n activeThumbRef: Ref<HTMLElement | undefined>\n color: Ref<string | undefined>\n decimals: Ref<number>\n direction: Ref<'vertical' | 'horizontal'>\n disabled: Ref<boolean | undefined>\n elevation: Ref<number | string | undefined>\n min: Ref<number>\n max: Ref<number>\n mousePressed: Ref<boolean>\n numTicks: Ref<number>\n onSliderMousedown: (e: MouseEvent) => void\n onSliderTouchstart: (e: TouchEvent) => void\n parseMouseMove: (e: MouseEvent | TouchEvent) => number\n position: (val: number) => number\n readonly: Ref<boolean | undefined>\n rounded: Ref<boolean | number | string | undefined>\n roundValue: (value: number) => number\n thumbLabel: Ref<boolean | string | undefined>\n showTicks: Ref<boolean | 'always'>\n startOffset: Ref<number>\n step: Ref<number>\n thumbSize: Ref<number>\n thumbColor: Ref<string | undefined>\n trackColor: Ref<string | undefined>\n trackFillColor: Ref<string | undefined>\n trackSize: Ref<number>\n ticks: Ref<number[] | Record<string, string> | undefined>\n tickSize: Ref<number>\n trackContainerRef: Ref<VSliderTrack | undefined>\n vertical: Ref<boolean>\n parsedTicks: Ref<Tick[]>\n hasLabels: Ref<boolean>\n isReversed: Ref<boolean>\n horizontalDirection: Ref<'ltr' | 'rtl'>\n}\n\nexport const VSliderSymbol: InjectionKey<SliderProvide> = Symbol.for('vuetify:v-slider')\n\nexport function getOffset (e: MouseEvent | TouchEvent, el: HTMLElement, direction: string) {\n const vertical = direction === 'vertical'\n const rect = el.getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n return vertical\n ? touch.clientY - (rect.top + rect.height / 2)\n : touch.clientX - (rect.left + rect.width / 2)\n}\n\nfunction getPosition (e: MouseEvent | TouchEvent, position: 'clientX' | 'clientY'): number {\n if ('touches' in e && e.touches.length) return e.touches[0][position]\n else if ('changedTouches' in e && e.changedTouches.length) return e.changedTouches[0][position]\n else return (e as MouseEvent)[position]\n}\n\nexport const makeSliderProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n readonly: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n min: {\n type: [Number, String],\n default: 0,\n },\n step: {\n type: [Number, String],\n default: 0,\n },\n thumbColor: String,\n thumbLabel: {\n type: [Boolean, String] as PropType<boolean | 'always' | undefined>,\n default: undefined,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n thumbSize: {\n type: [Number, String],\n default: 20,\n },\n showTicks: {\n type: [Boolean, String] as PropType<boolean | 'always'>,\n default: false,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n ticks: {\n type: [Array, Object] as PropType<number[] | Record<number, string>>,\n },\n tickSize: {\n type: [Number, String],\n default: 2,\n },\n color: String,\n trackColor: String,\n trackFillColor: String,\n trackSize: {\n type: [Number, String],\n default: 4,\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n reverse: Boolean,\n\n ...makeRoundedProps(),\n ...makeElevationProps({\n elevation: 2,\n }),\n}, 'slider')\n\ntype SliderProps = ExtractPropTypes<ReturnType<typeof makeSliderProps>>\n\nexport const useSlider = ({\n props,\n handleSliderMouseUp,\n handleMouseMove,\n getActiveThumb,\n}: {\n props: SliderProps\n handleSliderMouseUp: (v: number) => void\n handleMouseMove: (v: number) => void\n getActiveThumb: (e: MouseEvent | TouchEvent) => HTMLElement\n}) => {\n const { isRtl } = useRtl()\n const isReversed = computed(() => isRtl.value !== props.reverse)\n const horizontalDirection = computed(() => {\n let hd: 'ltr' | 'rtl' = isRtl.value ? 'rtl' : 'ltr'\n\n if (props.reverse) {\n hd = hd === 'rtl' ? 'ltr' : 'rtl'\n }\n\n return hd\n })\n const min = computed(() => parseFloat(props.min))\n const max = computed(() => parseFloat(props.max))\n const step = computed(() => props.step > 0 ? parseFloat(props.step) : 0)\n const decimals = computed(() => {\n const trimmedStep = step.value.toString().trim()\n return trimmedStep.includes('.')\n ? (trimmedStep.length - trimmedStep.indexOf('.') - 1)\n : 0\n })\n\n const thumbSize = computed(() => parseInt(props.thumbSize, 10))\n const tickSize = computed(() => parseInt(props.tickSize, 10))\n const trackSize = computed(() => parseInt(props.trackSize, 10))\n const numTicks = computed(() => (max.value - min.value) / step.value)\n const disabled = toRef(props, 'disabled')\n const vertical = computed(() => props.direction === 'vertical')\n\n const thumbColor = computed(() => props.error || props.disabled ? undefined : props.thumbColor ?? props.color)\n const trackColor = computed(() => props.error || props.disabled ? undefined : props.trackColor ?? props.color)\n const trackFillColor = computed(() => props.error || props.disabled ? undefined : props.trackFillColor ?? props.color)\n\n const mousePressed = ref(false)\n\n const startOffset = ref(0)\n const trackContainerRef = ref<VSliderTrack | undefined>()\n const activeThumbRef = ref<HTMLElement | undefined>()\n\n function roundValue (value: number) {\n if (step.value <= 0) return value\n\n const clamped = clamp(value, min.value, max.value)\n const offset = min.value % step.value\n const newValue = Math.round((clamped - offset) / step.value) * step.value + offset\n\n return parseFloat(Math.min(newValue, max.value).toFixed(decimals.value))\n }\n\n function parseMouseMove (e: MouseEvent | TouchEvent): number {\n const vertical = props.direction === 'vertical'\n const start = vertical ? 'top' : 'left'\n const length = vertical ? 'height' : 'width'\n const position = vertical ? 'clientY' : 'clientX'\n\n const {\n [start]: trackStart,\n [length]: trackLength,\n } = trackContainerRef.value?.$el.getBoundingClientRect()\n const clickOffset = getPosition(e, position)\n\n // It is possible for left to be NaN, force to number\n let clickPos = Math.min(Math.max((clickOffset - trackStart - startOffset.value) / trackLength, 0), 1) || 0\n\n if (vertical || isReversed.value) clickPos = 1 - clickPos\n\n return roundValue(min.value + clickPos * (max.value - min.value))\n }\n\n let thumbMoved = false\n\n const handleStop = (e: MouseEvent | TouchEvent) => {\n if (!thumbMoved) {\n startOffset.value = 0\n handleSliderMouseUp(parseMouseMove(e))\n }\n\n mousePressed.value = false\n thumbMoved = false\n startOffset.value = 0\n }\n\n const handleStart = (e: MouseEvent | TouchEvent) => {\n activeThumbRef.value = getActiveThumb(e)\n\n if (!activeThumbRef.value) return\n\n activeThumbRef.value.focus()\n mousePressed.value = true\n\n if (activeThumbRef.value.contains(e.target as Node)) {\n thumbMoved = true\n startOffset.value = getOffset(e, activeThumbRef.value, props.direction)\n } else {\n startOffset.value = 0\n handleMouseMove(parseMouseMove(e))\n }\n }\n\n const moveListenerOptions = { passive: true, capture: true }\n\n function onMouseMove (e: MouseEvent | TouchEvent) {\n thumbMoved = true\n handleMouseMove(parseMouseMove(e))\n }\n\n function onSliderMouseUp (e: MouseEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.removeEventListener('mouseup', onSliderMouseUp)\n }\n\n function onSliderTouchend (e: TouchEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.removeEventListener('touchend', onSliderTouchend)\n }\n\n function onSliderTouchstart (e: TouchEvent) {\n handleStart(e)\n\n window.addEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.addEventListener('touchend', onSliderTouchend, { passive: false })\n }\n\n function onSliderMousedown (e: MouseEvent) {\n e.preventDefault()\n\n handleStart(e)\n\n window.addEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.addEventListener('mouseup', onSliderMouseUp, { passive: false })\n }\n\n const position = (val: number) => {\n const percentage = (val - min.value) / (max.value - min.value) * 100\n return clamp(isNaN(percentage) ? 0 : percentage, 0, 100)\n }\n\n const parsedTicks = computed<Tick[]>(() => {\n if (!props.ticks) {\n return numTicks.value !== Infinity ? createRange(numTicks.value + 1).map(t => {\n const value = min.value + (t * step.value)\n return {\n value,\n position: position(value),\n }\n }) : []\n }\n if (Array.isArray(props.ticks)) return props.ticks.map(t => ({ value: t, position: position(t), label: t.toString() }))\n return Object.keys(props.ticks).map(key => ({\n value: parseInt(key, 10),\n position: position(parseInt(key, 10)),\n label: (props.ticks as Record<string, string>)[key],\n }))\n })\n\n const hasLabels = computed(() => parsedTicks.value.some(({ label }) => !!label))\n\n const data: SliderProvide = {\n activeThumbRef,\n color: toRef(props, 'color'),\n decimals,\n disabled,\n direction: toRef(props, 'direction'),\n elevation: toRef(props, 'elevation'),\n hasLabels,\n horizontalDirection,\n isReversed,\n min,\n max,\n mousePressed,\n numTicks,\n onSliderMousedown,\n onSliderTouchstart,\n parsedTicks,\n parseMouseMove,\n position,\n readonly: toRef(props, 'readonly'),\n rounded: toRef(props, 'rounded'),\n roundValue,\n showTicks: toRef(props, 'showTicks'),\n startOffset,\n step,\n thumbSize,\n thumbColor,\n thumbLabel: toRef(props, 'thumbLabel'),\n ticks: toRef(props, 'ticks'),\n tickSize,\n trackColor,\n trackContainerRef,\n trackFillColor,\n trackSize,\n vertical,\n }\n\n provide(VSliderSymbol, data)\n\n return data\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"slider.mjs","names":["makeElevationProps","makeRoundedProps","useRtl","clamp","createRange","propsFactory","computed","provide","ref","toRef","VSliderSymbol","Symbol","for","getOffset","e","el","direction","vertical","rect","getBoundingClientRect","touch","touches","clientY","top","height","clientX","left","width","getPosition","position","length","changedTouches","makeSliderProps","disabled","Boolean","error","readonly","max","type","Number","String","default","min","step","thumbColor","thumbLabel","undefined","validator","v","thumbSize","showTicks","ticks","Array","Object","tickSize","color","trackColor","trackFillColor","trackSize","includes","reverse","elevation","useSlider","props","handleSliderMouseUp","handleMouseMove","getActiveThumb","isRtl","isReversed","value","horizontalDirection","hd","parseFloat","decimals","trimmedStep","toString","trim","indexOf","parseInt","numTicks","mousePressed","startOffset","trackContainerRef","activeThumbRef","roundValue","clamped","offset","newValue","Math","round","toFixed","parseMouseMove","start","trackStart","trackLength","$el","clickOffset","clickPos","thumbMoved","handleStop","handleStart","focus","contains","target","moveListenerOptions","passive","capture","onMouseMove","onSliderMouseUp","stopPropagation","preventDefault","window","removeEventListener","onSliderTouchend","onSliderTouchstart","addEventListener","onSliderMousedown","val","percentage","isNaN","parsedTicks","Infinity","map","t","isArray","label","keys","key","hasLabels","some","data","rounded"],"sources":["../../../src/components/VSlider/slider.ts"],"sourcesContent":["/* eslint-disable max-statements */\n// Composables\nimport { makeElevationProps } from '@/composables/elevation'\nimport { makeRoundedProps } from '@/composables/rounded'\nimport { useRtl } from '@/composables/rtl'\n\n// Utilities\nimport { clamp, createRange, propsFactory } from '@/util'\nimport { computed, provide, ref, toRef } from 'vue'\n\n// Types\nimport type { ExtractPropTypes, InjectionKey, PropType, Ref } from 'vue'\nimport type { VSliderTrack } from './VSliderTrack'\n\ntype Tick = {\n value: number\n position: number\n label?: string\n}\n\ntype SliderProvide = {\n activeThumbRef: Ref<HTMLElement | undefined>\n color: Ref<string | undefined>\n decimals: Ref<number>\n direction: Ref<'vertical' | 'horizontal'>\n disabled: Ref<boolean | undefined>\n elevation: Ref<number | string | undefined>\n min: Ref<number>\n max: Ref<number>\n mousePressed: Ref<boolean>\n numTicks: Ref<number>\n onSliderMousedown: (e: MouseEvent) => void\n onSliderTouchstart: (e: TouchEvent) => void\n parseMouseMove: (e: MouseEvent | TouchEvent) => number\n position: (val: number) => number\n readonly: Ref<boolean | undefined>\n rounded: Ref<boolean | number | string | undefined>\n roundValue: (value: number) => number\n thumbLabel: Ref<boolean | string | undefined>\n showTicks: Ref<boolean | 'always'>\n startOffset: Ref<number>\n step: Ref<number>\n thumbSize: Ref<number>\n thumbColor: Ref<string | undefined>\n trackColor: Ref<string | undefined>\n trackFillColor: Ref<string | undefined>\n trackSize: Ref<number>\n ticks: Ref<number[] | Record<string, string> | undefined>\n tickSize: Ref<number>\n trackContainerRef: Ref<VSliderTrack | undefined>\n vertical: Ref<boolean>\n parsedTicks: Ref<Tick[]>\n hasLabels: Ref<boolean>\n isReversed: Ref<boolean>\n horizontalDirection: Ref<'ltr' | 'rtl'>\n}\n\nexport const VSliderSymbol: InjectionKey<SliderProvide> = Symbol.for('vuetify:v-slider')\n\nexport function getOffset (e: MouseEvent | TouchEvent, el: HTMLElement, direction: string) {\n const vertical = direction === 'vertical'\n const rect = el.getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n return vertical\n ? touch.clientY - (rect.top + rect.height / 2)\n : touch.clientX - (rect.left + rect.width / 2)\n}\n\nfunction getPosition (e: MouseEvent | TouchEvent, position: 'clientX' | 'clientY'): number {\n if ('touches' in e && e.touches.length) return e.touches[0][position]\n else if ('changedTouches' in e && e.changedTouches.length) return e.changedTouches[0][position]\n else return (e as MouseEvent)[position]\n}\n\nexport const makeSliderProps = propsFactory({\n disabled: Boolean,\n error: Boolean,\n readonly: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n min: {\n type: [Number, String],\n default: 0,\n },\n step: {\n type: [Number, String],\n default: 0,\n },\n thumbColor: String,\n thumbLabel: {\n type: [Boolean, String] as PropType<boolean | 'always' | undefined>,\n default: undefined,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n thumbSize: {\n type: [Number, String],\n default: 20,\n },\n showTicks: {\n type: [Boolean, String] as PropType<boolean | 'always'>,\n default: false,\n validator: (v: any) => typeof v === 'boolean' || v === 'always',\n },\n ticks: {\n type: [Array, Object] as PropType<number[] | Record<number, string>>,\n },\n tickSize: {\n type: [Number, String],\n default: 2,\n },\n color: String,\n trackColor: String,\n trackFillColor: String,\n trackSize: {\n type: [Number, String],\n default: 4,\n },\n direction: {\n type: String as PropType<'horizontal' | 'vertical'>,\n default: 'horizontal',\n validator: (v: any) => ['vertical', 'horizontal'].includes(v),\n },\n reverse: Boolean,\n\n ...makeRoundedProps(),\n ...makeElevationProps({\n elevation: 2,\n }),\n}, 'slider')\n\ntype SliderProps = ExtractPropTypes<ReturnType<typeof makeSliderProps>>\n\nexport const useSlider = ({\n props,\n handleSliderMouseUp,\n handleMouseMove,\n getActiveThumb,\n}: {\n props: SliderProps\n handleSliderMouseUp: (v: number) => void\n handleMouseMove: (v: number) => void\n getActiveThumb: (e: MouseEvent | TouchEvent) => HTMLElement\n}) => {\n const { isRtl } = useRtl()\n const isReversed = computed(() => isRtl.value !== props.reverse)\n const horizontalDirection = computed(() => {\n let hd: 'ltr' | 'rtl' = isRtl.value ? 'rtl' : 'ltr'\n\n if (props.reverse) {\n hd = hd === 'rtl' ? 'ltr' : 'rtl'\n }\n\n return hd\n })\n const min = computed(() => parseFloat(props.min))\n const max = computed(() => parseFloat(props.max))\n const step = computed(() => props.step > 0 ? parseFloat(props.step) : 0)\n const decimals = computed(() => {\n const trimmedStep = step.value.toString().trim()\n return trimmedStep.includes('.')\n ? (trimmedStep.length - trimmedStep.indexOf('.') - 1)\n : 0\n })\n\n const thumbSize = computed(() => parseInt(props.thumbSize, 10))\n const tickSize = computed(() => parseInt(props.tickSize, 10))\n const trackSize = computed(() => parseInt(props.trackSize, 10))\n const numTicks = computed(() => (max.value - min.value) / step.value)\n const disabled = toRef(props, 'disabled')\n const vertical = computed(() => props.direction === 'vertical')\n\n const thumbColor = computed(() => props.error || props.disabled ? undefined : props.thumbColor ?? props.color)\n const trackColor = computed(() => props.error || props.disabled ? undefined : props.trackColor ?? props.color)\n const trackFillColor = computed(() => props.error || props.disabled ? undefined : props.trackFillColor ?? props.color)\n\n const mousePressed = ref(false)\n\n const startOffset = ref(0)\n const trackContainerRef = ref<VSliderTrack | undefined>()\n const activeThumbRef = ref<HTMLElement | undefined>()\n\n function roundValue (value: number) {\n if (step.value <= 0) return value\n\n const clamped = clamp(value, min.value, max.value)\n const offset = min.value % step.value\n const newValue = Math.round((clamped - offset) / step.value) * step.value + offset\n\n return parseFloat(Math.min(newValue, max.value).toFixed(decimals.value))\n }\n\n function parseMouseMove (e: MouseEvent | TouchEvent): number {\n const vertical = props.direction === 'vertical'\n const start = vertical ? 'top' : 'left'\n const length = vertical ? 'height' : 'width'\n const position = vertical ? 'clientY' : 'clientX'\n\n const {\n [start]: trackStart,\n [length]: trackLength,\n } = trackContainerRef.value?.$el.getBoundingClientRect()\n const clickOffset = getPosition(e, position)\n\n // It is possible for left to be NaN, force to number\n let clickPos = Math.min(Math.max((clickOffset - trackStart - startOffset.value) / trackLength, 0), 1) || 0\n\n if (vertical || isReversed.value) clickPos = 1 - clickPos\n\n return roundValue(min.value + clickPos * (max.value - min.value))\n }\n\n let thumbMoved = false\n\n const handleStop = (e: MouseEvent | TouchEvent) => {\n if (!thumbMoved) {\n startOffset.value = 0\n handleSliderMouseUp(parseMouseMove(e))\n }\n\n mousePressed.value = false\n thumbMoved = false\n startOffset.value = 0\n }\n\n const handleStart = (e: MouseEvent | TouchEvent) => {\n activeThumbRef.value = getActiveThumb(e)\n\n if (!activeThumbRef.value) return\n\n activeThumbRef.value.focus()\n mousePressed.value = true\n\n if (activeThumbRef.value.contains(e.target as Node)) {\n thumbMoved = true\n startOffset.value = getOffset(e, activeThumbRef.value, props.direction)\n } else {\n startOffset.value = 0\n handleMouseMove(parseMouseMove(e))\n }\n }\n\n const moveListenerOptions = { passive: true, capture: true }\n\n function onMouseMove (e: MouseEvent | TouchEvent) {\n thumbMoved = true\n handleMouseMove(parseMouseMove(e))\n }\n\n function onSliderMouseUp (e: MouseEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.removeEventListener('mouseup', onSliderMouseUp)\n }\n\n function onSliderTouchend (e: TouchEvent) {\n e.stopPropagation()\n e.preventDefault()\n\n handleStop(e)\n\n window.removeEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.removeEventListener('touchend', onSliderTouchend)\n }\n\n function onSliderTouchstart (e: TouchEvent) {\n handleStart(e)\n\n window.addEventListener('touchmove', onMouseMove, moveListenerOptions)\n window.addEventListener('touchend', onSliderTouchend, { passive: false })\n }\n\n function onSliderMousedown (e: MouseEvent) {\n e.preventDefault()\n\n handleStart(e)\n\n window.addEventListener('mousemove', onMouseMove, moveListenerOptions)\n window.addEventListener('mouseup', onSliderMouseUp, { passive: false })\n }\n\n const position = (val: number) => {\n const percentage = (val - min.value) / (max.value - min.value) * 100\n return clamp(isNaN(percentage) ? 0 : percentage, 0, 100)\n }\n\n const parsedTicks = computed<Tick[]>(() => {\n if (!props.ticks) {\n return numTicks.value !== Infinity ? createRange(numTicks.value + 1).map(t => {\n const value = min.value + (t * step.value)\n return {\n value,\n position: position(value),\n }\n }) : []\n }\n if (Array.isArray(props.ticks)) return props.ticks.map(t => ({ value: t, position: position(t), label: t.toString() }))\n return Object.keys(props.ticks).map(key => ({\n value: parseInt(key, 10),\n position: position(parseInt(key, 10)),\n label: (props.ticks as Record<string, string>)[key],\n }))\n })\n\n const hasLabels = computed(() => parsedTicks.value.some(({ label }) => !!label))\n\n const data: SliderProvide = {\n activeThumbRef,\n color: toRef(props, 'color'),\n decimals,\n disabled,\n direction: toRef(props, 'direction'),\n elevation: toRef(props, 'elevation'),\n hasLabels,\n horizontalDirection,\n isReversed,\n min,\n max,\n mousePressed,\n numTicks,\n onSliderMousedown,\n onSliderTouchstart,\n parsedTicks,\n parseMouseMove,\n position,\n readonly: toRef(props, 'readonly'),\n rounded: toRef(props, 'rounded'),\n roundValue,\n showTicks: toRef(props, 'showTicks'),\n startOffset,\n step,\n thumbSize,\n thumbColor,\n thumbLabel: toRef(props, 'thumbLabel'),\n ticks: toRef(props, 'ticks'),\n tickSize,\n trackColor,\n trackContainerRef,\n trackFillColor,\n trackSize,\n vertical,\n }\n\n provide(VSliderSymbol, data)\n\n return data\n}\n"],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
position: relative;
|
|
23
23
|
border-radius: 4px;
|
|
24
24
|
}
|
|
25
|
-
.v-snackbar--variant-plain, .v-snackbar--variant-outlined, .v-snackbar--variant-text, .v-snackbar--variant-
|
|
25
|
+
.v-snackbar--variant-plain, .v-snackbar--variant-outlined, .v-snackbar--variant-text, .v-snackbar--variant-tonal {
|
|
26
26
|
background: transparent;
|
|
27
27
|
color: inherit;
|
|
28
28
|
}
|
|
@@ -35,14 +35,14 @@
|
|
|
35
35
|
.v-snackbar--variant-plain .v-snackbar__overlay {
|
|
36
36
|
display: none;
|
|
37
37
|
}
|
|
38
|
-
.v-snackbar--variant-
|
|
38
|
+
.v-snackbar--variant-elevated, .v-snackbar--variant-flat {
|
|
39
39
|
background: #333333;
|
|
40
40
|
color: rgb(var(--v-theme-on-surface-variant));
|
|
41
41
|
}
|
|
42
|
-
.v-snackbar--variant-
|
|
42
|
+
.v-snackbar--variant-elevated {
|
|
43
43
|
box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
|
|
44
44
|
}
|
|
45
|
-
.v-snackbar--variant-
|
|
45
|
+
.v-snackbar--variant-flat {
|
|
46
46
|
box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
|
|
47
47
|
}
|
|
48
48
|
.v-snackbar--variant-outlined {
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
.v-snackbar--variant-text .v-snackbar__overlay {
|
|
52
52
|
background: currentColor;
|
|
53
53
|
}
|
|
54
|
-
.v-snackbar--variant-
|
|
54
|
+
.v-snackbar--variant-tonal .v-snackbar__underlay {
|
|
55
55
|
background: currentColor;
|
|
56
56
|
opacity: var(--v-activated-opacity);
|
|
57
57
|
border-radius: inherit;
|
|
@@ -5,16 +5,17 @@ import "./VSnackbar.css"; // Components
|
|
|
5
5
|
import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
|
|
6
6
|
import { VOverlay } from "../VOverlay/index.mjs"; // Composables
|
|
7
7
|
|
|
8
|
+
import { genOverlays, makeVariantProps, useVariant } from "../../composables/variant.mjs";
|
|
9
|
+
import { makeLocationProps, useLocation } from "../../composables/location.mjs";
|
|
8
10
|
import { makePositionProps, usePosition } from "../../composables/position.mjs";
|
|
9
|
-
import {
|
|
11
|
+
import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
|
|
10
12
|
import { makeTransitionProps } from "../../composables/transition.mjs";
|
|
11
|
-
import {
|
|
13
|
+
import { useProxiedModel } from "../../composables/proxiedModel.mjs";
|
|
14
|
+
import { useScopeId } from "../../composables/scopeId.mjs";
|
|
15
|
+
import { useForwardRef } from "../../composables/forwardRef.mjs"; // Utilities
|
|
12
16
|
|
|
13
|
-
import { onMounted, watch } from 'vue';
|
|
17
|
+
import { onMounted, ref, watch } from 'vue';
|
|
14
18
|
import { defineComponent, useRender } from "../../util/index.mjs";
|
|
15
|
-
import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
|
|
16
|
-
import { makeLocationProps, useLocation } from "../../composables/location.mjs";
|
|
17
|
-
import { useScopeId } from "../../composables/scopeId.mjs";
|
|
18
19
|
export const VSnackbar = defineComponent({
|
|
19
20
|
name: 'VSnackbar',
|
|
20
21
|
props: {
|
|
@@ -66,6 +67,7 @@ export const VSnackbar = defineComponent({
|
|
|
66
67
|
const {
|
|
67
68
|
roundedClasses
|
|
68
69
|
} = useRounded(props);
|
|
70
|
+
const overlay = ref();
|
|
69
71
|
watch(isActive, startTimeout);
|
|
70
72
|
watch(() => props.timeout, startTimeout);
|
|
71
73
|
onMounted(() => {
|
|
@@ -86,50 +88,48 @@ export const VSnackbar = defineComponent({
|
|
|
86
88
|
window.clearTimeout(activeTimeout);
|
|
87
89
|
}
|
|
88
90
|
|
|
89
|
-
useRender(() => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
variant: 'text',
|
|
122
|
-
ripple: false
|
|
123
|
-
}
|
|
91
|
+
useRender(() => _createVNode(VOverlay, _mergeProps({
|
|
92
|
+
"modelValue": isActive.value,
|
|
93
|
+
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
94
|
+
"ref": overlay,
|
|
95
|
+
"class": ['v-snackbar', {
|
|
96
|
+
'v-snackbar--active': isActive.value,
|
|
97
|
+
'v-snackbar--multi-line': props.multiLine && !props.vertical,
|
|
98
|
+
'v-snackbar--vertical': props.vertical
|
|
99
|
+
}, positionClasses.value],
|
|
100
|
+
"style": [colorStyles.value],
|
|
101
|
+
"contentProps": {
|
|
102
|
+
style: locationStyles.value
|
|
103
|
+
},
|
|
104
|
+
"persistent": true,
|
|
105
|
+
"noClickAnimation": true,
|
|
106
|
+
"scrim": false,
|
|
107
|
+
"scrollStrategy": "none",
|
|
108
|
+
"transition": props.transition
|
|
109
|
+
}, scopeId), {
|
|
110
|
+
default: () => [_createVNode("div", {
|
|
111
|
+
"class": ['v-snackbar__wrapper', colorClasses.value, roundedClasses.value, variantClasses.value],
|
|
112
|
+
"onPointerenter": onPointerenter,
|
|
113
|
+
"onPointerleave": startTimeout
|
|
114
|
+
}, [genOverlays(false, 'v-snackbar'), slots.default && _createVNode("div", {
|
|
115
|
+
"class": ['v-snackbar__content', props.contentClass],
|
|
116
|
+
"role": "status",
|
|
117
|
+
"aria-live": "polite"
|
|
118
|
+
}, [slots.default()]), slots.actions && _createVNode(VDefaultsProvider, {
|
|
119
|
+
"defaults": {
|
|
120
|
+
VBtn: {
|
|
121
|
+
variant: 'text',
|
|
122
|
+
ripple: false
|
|
124
123
|
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
})])]
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
});
|
|
124
|
+
}
|
|
125
|
+
}, {
|
|
126
|
+
default: () => [_createVNode("div", {
|
|
127
|
+
"class": "v-snackbar__actions"
|
|
128
|
+
}, [slots.actions()])]
|
|
129
|
+
})])],
|
|
130
|
+
activator: slots.activator
|
|
131
|
+
}));
|
|
132
|
+
return useForwardRef({}, overlay);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSnackbar.mjs","names":["VDefaultsProvider","VOverlay","
|
|
1
|
+
{"version":3,"file":"VSnackbar.mjs","names":["VDefaultsProvider","VOverlay","genOverlays","makeVariantProps","useVariant","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeTransitionProps","useProxiedModel","useScopeId","useForwardRef","onMounted","ref","watch","defineComponent","useRender","VSnackbar","name","props","app","Boolean","contentClass","type","String","default","multiLine","timeout","Number","vertical","modelValue","location","transition","emits","v","setup","slots","isActive","locationStyles","positionClasses","scopeId","colorClasses","colorStyles","variantClasses","roundedClasses","overlay","startTimeout","value","activeTimeout","window","clearTimeout","setTimeout","onPointerenter","style","actions","VBtn","variant","ripple","activator"],"sources":["../../../src/components/VSnackbar/VSnackbar.tsx"],"sourcesContent":["// Styles\nimport './VSnackbar.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VOverlay } from '@/components/VOverlay'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTransitionProps } from '@/composables/transition'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useScopeId } from '@/composables/scopeId'\nimport { useForwardRef } from '@/composables/forwardRef'\n\n// Utilities\nimport { onMounted, ref, watch } from 'vue'\nimport { defineComponent, useRender } from '@/util'\n\nexport const VSnackbar = defineComponent({\n name: 'VSnackbar',\n\n props: {\n app: Boolean,\n contentClass: {\n type: String,\n default: '',\n },\n multiLine: Boolean,\n timeout: {\n type: [Number, String],\n default: 5000,\n },\n vertical: Boolean,\n\n modelValue: Boolean,\n\n ...makeLocationProps({ location: 'bottom' } as const),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeVariantProps(),\n ...makeTransitionProps({ transition: 'v-snackbar-transition' }),\n },\n\n emits: {\n 'update:modelValue': (v: boolean) => true,\n },\n\n setup (props, { slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { scopeId } = useScopeId()\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { roundedClasses } = useRounded(props)\n\n const overlay = ref<VOverlay>()\n\n watch(isActive, startTimeout)\n watch(() => props.timeout, startTimeout)\n\n onMounted(() => {\n if (isActive.value) startTimeout()\n })\n\n let activeTimeout = -1\n function startTimeout () {\n window.clearTimeout(activeTimeout)\n const timeout = Number(props.timeout)\n\n if (!isActive.value || timeout === -1) return\n\n activeTimeout = window.setTimeout(() => {\n isActive.value = false\n }, timeout)\n }\n\n function onPointerenter () {\n window.clearTimeout(activeTimeout)\n }\n\n useRender(() => (\n <VOverlay\n v-model={ isActive.value }\n ref={ overlay }\n class={[\n 'v-snackbar',\n {\n 'v-snackbar--active': isActive.value,\n 'v-snackbar--multi-line': props.multiLine && !props.vertical,\n 'v-snackbar--vertical': props.vertical,\n },\n positionClasses.value,\n ]}\n style={[colorStyles.value]}\n contentProps={{\n style: locationStyles.value,\n }}\n persistent\n noClickAnimation\n scrim={ false }\n scrollStrategy=\"none\"\n transition={ props.transition }\n { ...scopeId }\n v-slots={{ activator: slots.activator }}\n >\n <div\n class={[\n 'v-snackbar__wrapper',\n colorClasses.value,\n roundedClasses.value,\n variantClasses.value,\n ]}\n onPointerenter={ onPointerenter }\n onPointerleave={ startTimeout }\n >\n { genOverlays(false, 'v-snackbar') }\n\n { slots.default && (\n <div\n class={[\n 'v-snackbar__content',\n props.contentClass,\n ]}\n role=\"status\"\n aria-live=\"polite\"\n >\n { slots.default() }\n </div>\n ) }\n\n { slots.actions && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n variant: 'text',\n ripple: false,\n },\n }}\n >\n <div class=\"v-snackbar__actions\">\n { slots.actions() }\n </div>\n </VDefaultsProvider>\n ) }\n </div>\n </VOverlay>\n ))\n\n return useForwardRef({}, overlay)\n },\n})\n\nexport type VSnackbar = InstanceType<typeof VSnackbar>\n"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
@use '../../styles/settings';
|
|
2
2
|
@use '../../styles/tools';
|
|
3
3
|
|
|
4
|
+
// VSnackbar
|
|
4
5
|
$snackbar-absolute-z-index: 1 !default;
|
|
5
6
|
$snackbar-action-margin: 8px !default;
|
|
6
7
|
$snackbar-background-color: #333333 !default;
|
|
@@ -26,6 +27,7 @@ $snackbar-wrapper-min-width: 344px !default;
|
|
|
26
27
|
$snackbar-wrapper-padding: 0 !default;
|
|
27
28
|
$snackbar-z-index: 10000 !default;
|
|
28
29
|
|
|
30
|
+
// List
|
|
29
31
|
$snackbar-variants: (
|
|
30
32
|
$snackbar-background,
|
|
31
33
|
$snackbar-color,
|
|
@@ -44,6 +44,13 @@
|
|
|
44
44
|
.v-switch--inset .v-switch__thumb {
|
|
45
45
|
box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
|
|
46
46
|
}
|
|
47
|
+
.v-switch:not(.v-switch--loading) .v-icon ~ .v-switch__thumb {
|
|
48
|
+
display: none;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.v-switch--loading .v-selection-control__input > .v-icon {
|
|
52
|
+
display: none;
|
|
53
|
+
}
|
|
47
54
|
|
|
48
55
|
.v-switch .v-selection-control {
|
|
49
56
|
height: var(--v-input-control-height);
|
|
@@ -10,7 +10,7 @@ import { LoaderSlot, useLoader } from "../../composables/loader.mjs";
|
|
|
10
10
|
import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Utility
|
|
11
11
|
|
|
12
12
|
import { computed, ref } from 'vue';
|
|
13
|
-
import { defineComponent, filterInputAttrs, useRender } from "../../util/index.mjs";
|
|
13
|
+
import { defineComponent, filterInputAttrs, getUid, useRender } from "../../util/index.mjs";
|
|
14
14
|
export const VSwitch = defineComponent({
|
|
15
15
|
name: 'VSwitch',
|
|
16
16
|
inheritAttrs: false,
|
|
@@ -41,6 +41,8 @@ export const VSwitch = defineComponent({
|
|
|
41
41
|
const loaderColor = computed(() => {
|
|
42
42
|
return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
|
|
43
43
|
});
|
|
44
|
+
const uid = getUid();
|
|
45
|
+
const id = computed(() => props.id || `switch-${uid}`);
|
|
44
46
|
|
|
45
47
|
function onChange() {
|
|
46
48
|
if (indeterminate.value) {
|
|
@@ -66,9 +68,12 @@ export const VSwitch = defineComponent({
|
|
|
66
68
|
}, {
|
|
67
69
|
'v-switch--indeterminate': indeterminate.value
|
|
68
70
|
}, loaderClasses.value]
|
|
69
|
-
}, inputAttrs, inputProps
|
|
71
|
+
}, inputAttrs, inputProps, {
|
|
72
|
+
"id": id.value
|
|
73
|
+
}), { ...slots,
|
|
70
74
|
default: _ref2 => {
|
|
71
75
|
let {
|
|
76
|
+
id,
|
|
72
77
|
isDisabled,
|
|
73
78
|
isReadonly,
|
|
74
79
|
isValid
|
|
@@ -76,6 +81,7 @@ export const VSwitch = defineComponent({
|
|
|
76
81
|
return _createVNode(VSelectionControl, _mergeProps({
|
|
77
82
|
"ref": control
|
|
78
83
|
}, controlProps, {
|
|
84
|
+
"id": id.value,
|
|
79
85
|
"type": "checkbox",
|
|
80
86
|
"onUpdate:modelValue": onChange,
|
|
81
87
|
"aria-checked": indeterminate.value ? 'mixed' : undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSwitch.mjs","names":["filterControlProps","makeSelectionControlProps","VSelectionControl","filterInputProps","makeVInputProps","VInput","VProgressCircular","LoaderSlot","useLoader","useProxiedModel","computed","ref","defineComponent","filterInputAttrs","useRender","VSwitch","name","inheritAttrs","props","indeterminate","Boolean","inset","flat","loading","type","String","default","emits","val","setup","attrs","slots","loaderClasses","loaderColor","color","onChange","value","inputAttrs","controlAttrs","inputProps","_1","controlProps","_2","control","onClick","input","click","isDisabled","isReadonly","isValid","undefined","textColorClasses","slotProps","loader","isActive"],"sources":["../../../src/components/VSwitch/VSwitch.tsx"],"sourcesContent":["// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, ref } from 'vue'\nimport { defineComponent, filterInputAttrs, useRender } from '@/util'\n\nexport const VSwitch = defineComponent({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const { loaderClasses } = useLoader(props)\n\n const loaderColor = computed(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n const control = ref<VSelectionControl>()\n\n function onClick () {\n control.value?.input?.click()\n }\n\n return (\n <VInput\n class={[\n 'v-switch',\n { 'v-switch--inset': props.inset },\n { 'v-switch--indeterminate': indeterminate.value },\n loaderClasses.value,\n ]}\n { ...inputAttrs }\n { ...inputProps }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n <VSelectionControl\n ref={ control }\n { ...controlProps }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n >\n {{\n ...slots,\n default: () => (<div class=\"v-switch__track\" onClick={ onClick }></div>),\n input: ({ textColorClasses }) => (\n <div\n class={[\n 'v-switch__thumb',\n textColorClasses.value,\n ]}\n >\n { props.loading && (\n <LoaderSlot\n name=\"v-switch\"\n active\n color={ isValid.value === false ? undefined : loaderColor.value }\n >\n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n <VProgressCircular\n active={ slotProps.isActive }\n color={ slotProps.color }\n indeterminate\n size=\"16\"\n width=\"2\"\n />\n )\n )}\n </LoaderSlot>\n ) }\n </div>\n ),\n }}\n </VSelectionControl>\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VSwitch = InstanceType<typeof VSwitch>\n"],"mappings":";AAAA;AACA,uB,CAEA;;SACSA,kB,EAAoBC,yB,EAA2BC,iB;SAC/CC,gB,EAAkBC,e,EAAiBC,M;SACnCC,iB,0CAET;;SACSC,U,EAAYC,S;SACZC,e,8CAET;;AACA,SAASC,QAAT,EAAmBC,GAAnB,QAA8B,KAA9B;SACSC,e,EAAiBC,gB,EAAkBC,S;
|
|
1
|
+
{"version":3,"file":"VSwitch.mjs","names":["filterControlProps","makeSelectionControlProps","VSelectionControl","filterInputProps","makeVInputProps","VInput","VProgressCircular","LoaderSlot","useLoader","useProxiedModel","computed","ref","defineComponent","filterInputAttrs","getUid","useRender","VSwitch","name","inheritAttrs","props","indeterminate","Boolean","inset","flat","loading","type","String","default","emits","val","setup","attrs","slots","loaderClasses","loaderColor","color","uid","id","onChange","value","inputAttrs","controlAttrs","inputProps","_1","controlProps","_2","control","onClick","input","click","isDisabled","isReadonly","isValid","undefined","textColorClasses","slotProps","loader","isActive"],"sources":["../../../src/components/VSwitch/VSwitch.tsx"],"sourcesContent":["// Styles\nimport './VSwitch.sass'\n\n// Components\nimport { filterControlProps, makeSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\nimport { filterInputProps, makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Composables\nimport { LoaderSlot, useLoader } from '@/composables/loader'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utility\nimport { computed, ref } from 'vue'\nimport { defineComponent, filterInputAttrs, getUid, useRender } from '@/util'\n\nexport const VSwitch = defineComponent({\n name: 'VSwitch',\n\n inheritAttrs: false,\n\n props: {\n indeterminate: Boolean,\n inset: Boolean,\n flat: Boolean,\n loading: {\n type: [Boolean, String],\n default: false,\n },\n\n ...makeVInputProps(),\n ...makeSelectionControlProps(),\n },\n\n emits: {\n 'update:indeterminate': (val: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const { loaderClasses } = useLoader(props)\n\n const loaderColor = computed(() => {\n return typeof props.loading === 'string' && props.loading !== ''\n ? props.loading\n : props.color\n })\n\n const uid = getUid()\n const id = computed(() => props.id || `switch-${uid}`)\n\n function onChange () {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n useRender(() => {\n const [inputAttrs, controlAttrs] = filterInputAttrs(attrs)\n const [inputProps, _1] = filterInputProps(props)\n const [controlProps, _2] = filterControlProps(props)\n const control = ref<VSelectionControl>()\n\n function onClick () {\n control.value?.input?.click()\n }\n\n return (\n <VInput\n class={[\n 'v-switch',\n { 'v-switch--inset': props.inset },\n { 'v-switch--indeterminate': indeterminate.value },\n loaderClasses.value,\n ]}\n { ...inputAttrs }\n { ...inputProps }\n id={ id.value }\n >\n {{\n ...slots,\n default: ({\n id,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n <VSelectionControl\n ref={ control }\n { ...controlProps }\n id={ id.value }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n >\n {{\n ...slots,\n default: () => (<div class=\"v-switch__track\" onClick={ onClick }></div>),\n input: ({ textColorClasses }) => (\n <div\n class={[\n 'v-switch__thumb',\n textColorClasses.value,\n ]}\n >\n { props.loading && (\n <LoaderSlot\n name=\"v-switch\"\n active\n color={ isValid.value === false ? undefined : loaderColor.value }\n >\n { slotProps => (\n slots.loader\n ? slots.loader(slotProps)\n : (\n <VProgressCircular\n active={ slotProps.isActive }\n color={ slotProps.color }\n indeterminate\n size=\"16\"\n width=\"2\"\n />\n )\n )}\n </LoaderSlot>\n ) }\n </div>\n ),\n }}\n </VSelectionControl>\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VSwitch = InstanceType<typeof VSwitch>\n"],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
@forward './variables'
|
|
2
1
|
@use 'sass:selector'
|
|
3
2
|
@use '../../styles/settings'
|
|
4
3
|
@use '../../styles/tools'
|
|
@@ -47,6 +46,12 @@
|
|
|
47
46
|
.v-switch--inset &
|
|
48
47
|
@include tools.elevation(0)
|
|
49
48
|
|
|
49
|
+
.v-switch:not(.v-switch--loading) .v-icon ~ &
|
|
50
|
+
display: none
|
|
51
|
+
|
|
52
|
+
.v-switch--loading .v-selection-control__input > .v-icon
|
|
53
|
+
display: none
|
|
54
|
+
|
|
50
55
|
.v-switch
|
|
51
56
|
$switch-thumb-transform: $switch-track-width * .5 - $switch-thumb-width * .5 + $switch-thumb-offset
|
|
52
57
|
|
|
@@ -7,11 +7,10 @@ import { makeLayoutItemProps, useLayoutItem } from "../../composables/layout.mjs
|
|
|
7
7
|
import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
|
|
8
8
|
import { makeTagProps } from "../../composables/tag.mjs";
|
|
9
9
|
import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
|
|
10
|
-
import { provideDefaults } from "../../composables/defaults.mjs";
|
|
11
10
|
import { useBackgroundColor } from "../../composables/color.mjs"; // Utilities
|
|
12
11
|
|
|
13
12
|
import { computed, ref, toRef } from 'vue';
|
|
14
|
-
import { defineComponent } from "../../util/index.mjs";
|
|
13
|
+
import { defineComponent, useRender } from "../../util/index.mjs";
|
|
15
14
|
export const VSystemBar = defineComponent({
|
|
16
15
|
name: 'VSystemBar',
|
|
17
16
|
props: {
|
|
@@ -45,7 +44,7 @@ export const VSystemBar = defineComponent({
|
|
|
45
44
|
const height = computed(() => {
|
|
46
45
|
var _props$height;
|
|
47
46
|
|
|
48
|
-
return (
|
|
47
|
+
return (_props$height = props.height) != null ? _props$height : props.window ? 32 : 24;
|
|
49
48
|
});
|
|
50
49
|
const {
|
|
51
50
|
layoutItemStyles
|
|
@@ -58,20 +57,13 @@ export const VSystemBar = defineComponent({
|
|
|
58
57
|
active: computed(() => true),
|
|
59
58
|
absolute: toRef(props, 'absolute')
|
|
60
59
|
});
|
|
61
|
-
|
|
62
|
-
VBtn: {
|
|
63
|
-
variant: 'text',
|
|
64
|
-
density: 'compact'
|
|
65
|
-
}
|
|
66
|
-
}, {
|
|
67
|
-
scoped: true
|
|
68
|
-
});
|
|
69
|
-
return () => _createVNode(props.tag, {
|
|
60
|
+
useRender(() => _createVNode(props.tag, {
|
|
70
61
|
"class": ['v-system-bar', {
|
|
71
62
|
'v-system-bar--window': props.window
|
|
72
63
|
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value, roundedClasses.value],
|
|
73
64
|
"style": [backgroundColorStyles.value, layoutItemStyles.value]
|
|
74
|
-
}, slots);
|
|
65
|
+
}, slots));
|
|
66
|
+
return {};
|
|
75
67
|
}
|
|
76
68
|
|
|
77
69
|
});
|