vuetify 3.6.0-alpha.2 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_component-variables-labs.sass +2 -1
- package/dist/json/attributes.json +731 -63
- package/dist/json/importMap-labs.json +32 -20
- package/dist/json/importMap.json +138 -138
- package/dist/json/tags.json +184 -2
- package/dist/json/web-types.json +13002 -10923
- package/dist/vuetify-labs.css +2039 -1927
- package/dist/vuetify-labs.d.ts +3575 -1079
- package/dist/vuetify-labs.esm.js +1047 -390
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +1046 -389
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +3026 -2941
- package/dist/vuetify.d.ts +927 -306
- package/dist/vuetify.esm.js +625 -363
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +624 -362
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +728 -714
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.sass +128 -127
- package/lib/components/VApp/VApp.sass +15 -13
- package/lib/components/VAppBar/VAppBar.sass +9 -8
- package/lib/components/VAppBar/index.d.mts +10 -0
- package/lib/components/VAutocomplete/VAutocomplete.mjs +8 -10
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +94 -93
- package/lib/components/VAutocomplete/index.d.mts +36 -0
- package/lib/components/VAvatar/VAvatar.sass +26 -25
- package/lib/components/VBadge/VBadge.sass +61 -60
- package/lib/components/VBanner/VBanner.css +1 -1
- package/lib/components/VBanner/VBanner.sass +92 -91
- package/lib/components/VBanner/index.d.mts +15 -0
- package/lib/components/VBottomNavigation/VBottomNavigation.sass +50 -49
- package/lib/components/VBottomSheet/VBottomSheet.sass +28 -26
- package/lib/components/VBottomSheet/index.d.mts +14 -0
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +41 -40
- package/lib/components/VBtn/VBtn.css +3 -0
- package/lib/components/VBtn/VBtn.mjs +3 -1
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +204 -200
- package/lib/components/VBtn/index.d.mts +10 -0
- package/lib/components/VBtnGroup/VBtnGroup.sass +47 -46
- package/lib/components/VBtnToggle/VBtnToggle.sass +4 -3
- package/lib/components/VBtnToggle/index.d.mts +1 -0
- package/lib/components/VCard/VCard.css +3 -3
- package/lib/components/VCard/VCard.sass +181 -180
- package/lib/components/VCarousel/VCarousel.sass +50 -49
- package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.mts +1 -0
- package/lib/components/VCheckbox/VCheckbox.sass +6 -5
- package/lib/components/VChip/VChip.css +1 -1
- package/lib/components/VChip/VChip.sass +78 -76
- package/lib/components/VChipGroup/VChipGroup.sass +20 -18
- package/lib/components/VChipGroup/index.d.mts +16 -0
- package/lib/components/VCode/VCode.sass +10 -8
- package/lib/components/VColorPicker/VColorPicker.sass +18 -17
- package/lib/components/VColorPicker/VColorPickerCanvas.sass +21 -20
- package/lib/components/VColorPicker/VColorPickerEdit.sass +24 -23
- package/lib/components/VColorPicker/VColorPickerPreview.sass +54 -53
- package/lib/components/VColorPicker/VColorPickerSwatches.sass +29 -28
- package/lib/components/VCombobox/VCombobox.mjs +8 -10
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +94 -93
- package/lib/components/VCombobox/index.d.mts +36 -0
- package/lib/components/VCounter/VCounter.sass +7 -5
- package/lib/components/VDataIterator/index.d.mts +2 -0
- package/lib/components/VDataTable/VDataTable.css +36 -1
- package/lib/components/VDataTable/VDataTable.sass +137 -103
- package/lib/components/VDataTable/VDataTableFooter.css +5 -9
- package/lib/components/VDataTable/VDataTableFooter.sass +26 -25
- package/lib/components/VDataTable/VDataTableHeaders.mjs +66 -7
- package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableRow.mjs +45 -10
- package/lib/components/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableRows.mjs +8 -2
- package/lib/components/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/components/VDataTable/_variables.scss +9 -3
- package/lib/components/VDataTable/index.d.mts +263 -217
- package/lib/components/VDataTable/types.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.mjs +12 -2
- package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.sass +6 -5
- package/lib/components/VDatePicker/VDatePickerControls.sass +56 -55
- package/lib/components/VDatePicker/VDatePickerHeader.sass +58 -56
- package/lib/components/VDatePicker/VDatePickerMonth.sass +53 -51
- package/lib/components/VDatePicker/VDatePickerMonths.sass +18 -16
- package/lib/components/VDatePicker/VDatePickerYears.sass +14 -12
- package/lib/components/VDialog/VDialog.css +7 -3
- package/lib/components/VDialog/VDialog.mjs +6 -2
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +71 -68
- package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs +39 -0
- package/lib/components/VDialog/__test__/VDialog.spec.cy.mjs.map +1 -0
- package/lib/components/VDialog/_variables.scss +4 -3
- package/lib/components/VDialog/index.d.mts +60 -10
- package/lib/components/VDivider/VDivider.sass +49 -48
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +172 -171
- package/lib/components/VField/VField.sass +451 -450
- package/lib/components/VFileInput/VFileInput.mjs +1 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +30 -31
- package/lib/components/VFileInput/index.d.mts +17 -5
- package/lib/components/VFooter/VFooter.sass +17 -16
- package/lib/components/VGrid/VGrid.sass +42 -40
- package/lib/components/VIcon/VIcon.sass +34 -32
- package/lib/components/VImg/VImg.sass +24 -23
- package/lib/components/VInfiniteScroll/VInfiniteScroll.sass +21 -19
- package/lib/components/VInput/VInput.mjs +6 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +103 -102
- package/lib/components/VInput/index.d.mts +6 -0
- package/lib/components/VItemGroup/VItemGroup.sass +7 -5
- package/lib/components/VKbd/VKbd.sass +10 -9
- package/lib/components/VLabel/VLabel.sass +14 -13
- package/lib/components/VLayout/VLayout.mjs +6 -1
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.sass +10 -7
- package/lib/components/VLayout/VLayoutItem.sass +7 -5
- package/lib/components/VLayout/index.d.mts +36 -0
- package/lib/components/VList/VList.mjs +2 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +81 -80
- package/lib/components/VList/VListItem.css +1 -1
- package/lib/components/VList/VListItem.sass +260 -259
- package/lib/components/VLocaleProvider/VLocaleProvider.sass +5 -2
- package/lib/components/VMain/VMain.sass +22 -21
- package/lib/components/VMenu/VMenu.sass +14 -13
- package/lib/components/VMenu/index.d.mts +56 -0
- package/lib/components/VMessages/VMessages.sass +16 -15
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +4 -0
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +14 -5
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +90 -84
- package/lib/components/VNavigationDrawer/index.d.mts +24 -0
- package/lib/components/VNavigationDrawer/touch.mjs +16 -2
- package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.sass +51 -50
- package/lib/components/VOverlay/VOverlay.mjs +2 -2
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.sass +57 -55
- package/lib/components/VOverlay/index.d.mts +27 -13
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.sass +14 -12
- package/lib/components/VParallax/VParallax.sass +8 -5
- package/lib/components/VProgressCircular/VProgressCircular.sass +85 -83
- package/lib/components/VProgressLinear/VProgressLinear.mjs +11 -1
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.sass +170 -169
- package/lib/components/VProgressLinear/index.d.mts +21 -0
- package/lib/components/VRadioGroup/VRadioGroup.sass +12 -10
- package/lib/components/VRangeSlider/index.d.mts +6 -0
- package/lib/components/VRating/VRating.sass +46 -44
- package/lib/components/VResponsive/VResponsive.sass +21 -19
- package/lib/components/VSelect/VSelect.mjs +5 -1
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +50 -49
- package/lib/components/VSelect/index.d.mts +36 -0
- package/lib/components/VSelectionControl/VSelectionControl.sass +87 -86
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +9 -7
- package/lib/components/VSheet/VSheet.sass +10 -9
- package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +174 -173
- package/lib/components/VSlideGroup/VSlideGroup.css +14 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +110 -93
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.sass +54 -40
- package/lib/components/VSlideGroup/helpers.mjs +48 -28
- package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.mts +16 -0
- package/lib/components/VSlider/VSlider.sass +49 -48
- package/lib/components/VSlider/VSliderThumb.sass +129 -128
- package/lib/components/VSlider/VSliderTrack.sass +120 -119
- package/lib/components/VSlider/index.d.mts +6 -0
- package/lib/components/VSnackbar/VSnackbar.css +18 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +34 -9
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.sass +103 -83
- package/lib/components/VSnackbar/index.d.mts +42 -0
- package/lib/components/VStepper/VStepper.sass +37 -36
- package/lib/components/VStepper/VStepperItem.sass +69 -67
- package/lib/components/VSwitch/VSwitch.css +14 -2
- package/lib/components/VSwitch/VSwitch.sass +119 -112
- package/lib/components/VSystemBar/VSystemBar.css +1 -1
- package/lib/components/VSystemBar/VSystemBar.sass +24 -23
- package/lib/components/VTable/VTable.sass +140 -139
- package/lib/components/VTabs/VTab.sass +27 -25
- package/lib/components/VTabs/VTabs.sass +38 -37
- package/lib/components/VTabs/index.d.mts +49 -6
- package/lib/components/VTextField/VTextField.sass +58 -56
- package/lib/components/VTextField/index.d.mts +15 -3
- package/lib/components/VTextarea/VTextarea.sass +43 -42
- package/lib/components/VTextarea/index.d.mts +15 -3
- package/lib/components/VThemeProvider/VThemeProvider.sass +6 -3
- package/lib/components/VTimeline/VTimeline.sass +308 -307
- package/lib/components/VToolbar/VToolbar.sass +90 -89
- package/lib/components/VTooltip/VTooltip.sass +23 -21
- package/lib/components/VTooltip/index.d.mts +56 -0
- package/lib/components/VVirtualScroll/VVirtualScroll.sass +10 -7
- package/lib/components/VWindow/VWindow.css +1 -0
- package/lib/components/VWindow/VWindow.sass +74 -70
- package/lib/components/VWindow/index.d.mts +1 -0
- package/lib/components/index.d.mts +870 -253
- package/lib/composables/directiveComponent.mjs +4 -2
- package/lib/composables/directiveComponent.mjs.map +1 -1
- package/lib/composables/display.mjs +5 -0
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/goto.mjs +40 -3
- package/lib/composables/goto.mjs.map +1 -1
- package/lib/composables/group.mjs +10 -1
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/layout.mjs +3 -1
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/directives/ripple/VRipple.sass +35 -33
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.mts +58 -54
- package/lib/labs/VCalendar/VCalendar.sass +160 -158
- package/lib/labs/VCalendar/VCalendarDay.sass +26 -23
- package/lib/labs/VCalendar/VCalendarHeader.sass +12 -10
- package/lib/labs/VCalendar/VCalendarInterval.sass +36 -34
- package/lib/labs/VCalendar/VCalendarIntervalEvent.sass +9 -6
- package/lib/labs/VCalendar/VCalendarMonthDay.sass +59 -57
- package/lib/labs/VDateInput/VDateInput.mjs +129 -0
- package/lib/labs/VDateInput/VDateInput.mjs.map +1 -0
- package/lib/labs/VDateInput/index.d.mts +1068 -0
- package/lib/labs/VDateInput/index.mjs +2 -0
- package/lib/labs/VDateInput/index.mjs.map +1 -0
- package/lib/labs/VEmptyState/VEmptyState.css +3 -3
- package/lib/labs/VEmptyState/VEmptyState.sass +59 -57
- package/lib/labs/VFab/VFab.css +1 -0
- package/lib/labs/VFab/VFab.mjs +3 -2
- package/lib/labs/VFab/VFab.mjs.map +1 -1
- package/lib/labs/VFab/VFab.sass +62 -60
- package/lib/labs/VFab/index.d.mts +19 -0
- package/lib/labs/VNumberInput/VNumberInput.mjs +79 -24
- package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
- package/lib/labs/VNumberInput/VNumberInput.sass +42 -40
- package/lib/labs/VNumberInput/index.d.mts +56 -29
- package/lib/labs/VPicker/VPicker.sass +49 -48
- package/lib/labs/VPullToRefresh/VPullToRefresh.css +27 -0
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs +117 -0
- package/lib/labs/VPullToRefresh/VPullToRefresh.mjs.map +1 -0
- package/lib/labs/VPullToRefresh/VPullToRefresh.sass +23 -0
- package/lib/labs/VPullToRefresh/index.d.mts +189 -0
- package/lib/labs/VPullToRefresh/index.mjs +2 -0
- package/lib/labs/VPullToRefresh/index.mjs.map +1 -0
- package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs +112 -0
- package/lib/labs/VSnackbarQueue/VSnackbarQueue.mjs.map +1 -0
- package/lib/labs/VSnackbarQueue/index.d.mts +2763 -0
- package/lib/labs/VSnackbarQueue/index.mjs +2 -0
- package/lib/labs/VSnackbarQueue/index.mjs.map +1 -0
- package/lib/labs/VSpeedDial/VSpeedDial.mjs +8 -2
- package/lib/labs/VSpeedDial/VSpeedDial.mjs.map +1 -1
- package/lib/labs/VSpeedDial/VSpeedDial.sass +23 -20
- package/lib/labs/VSpeedDial/index.d.mts +28 -2
- package/lib/labs/VTimePicker/VTimePicker.sass +9 -8
- package/lib/labs/VTimePicker/VTimePickerClock.mjs +1 -3
- package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerClock.sass +114 -113
- package/lib/labs/VTimePicker/VTimePickerControls.sass +90 -90
- package/lib/labs/VTimePicker/_variables.scss +1 -1
- package/lib/labs/VTimePicker/index.d.mts +6 -13
- package/lib/labs/VTreeview/VTreeviewItem.sass +14 -12
- package/lib/labs/VTreeview/{variables.scss → _variables.scss} +0 -2
- package/lib/labs/components.d.mts +5587 -1641
- package/lib/labs/components.mjs +3 -0
- package/lib/labs/components.mjs.map +1 -1
- package/lib/locale/af.mjs +1 -0
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs +1 -0
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs +1 -0
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs +1 -0
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs +1 -0
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs +1 -0
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs +1 -0
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs +1 -0
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs +1 -0
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs +1 -0
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs +1 -0
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs +1 -0
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs +1 -0
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs +1 -0
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs +1 -0
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs +1 -0
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs +1 -0
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs +1 -0
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs +1 -0
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs +1 -0
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.mts +43 -0
- package/lib/locale/it.mjs +1 -0
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs +1 -0
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/km.mjs +1 -0
- package/lib/locale/km.mjs.map +1 -1
- package/lib/locale/ko.mjs +9 -8
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs +1 -0
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs +1 -0
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs +1 -0
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs +1 -0
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +1 -0
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs +1 -0
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs +1 -0
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs +1 -0
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs +1 -0
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs +1 -0
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs +1 -0
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs +1 -0
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs +1 -0
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs +1 -0
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs +1 -0
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs +1 -0
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs +1 -0
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs +1 -0
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs +1 -0
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/styles/elements/_blockquote.sass +6 -4
- package/lib/styles/elements/_global.sass +20 -18
- package/lib/styles/generic/_animations.scss +13 -9
- package/lib/styles/generic/_colors.scss +36 -35
- package/lib/styles/generic/_index.scss +1 -0
- package/lib/styles/generic/_layers.scss +7 -0
- package/lib/styles/generic/_reset.scss +235 -232
- package/lib/styles/generic/_rtl.scss +10 -6
- package/lib/styles/generic/_transitions.scss +244 -241
- package/lib/styles/main.css +78 -78
- package/lib/styles/settings/_variables.scss +22 -14
- package/lib/styles/tools/_index.sass +1 -0
- package/lib/styles/tools/_layer.scss +11 -0
- package/lib/styles/utilities/_display.sass +7 -5
- package/lib/styles/utilities/_elevation.scss +8 -6
- package/lib/styles/utilities/_index.sass +28 -29
- package/lib/styles/utilities/_screenreaders.sass +13 -11
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["VSnackbarQueue"],"sources":["../../../src/labs/VSnackbarQueue/index.ts"],"sourcesContent":["export { VSnackbarQueue } from './VSnackbarQueue'\n"],"mappings":"SAASA,cAAc","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ import "./VSpeedDial.css";
|
|
|
6
6
|
import { VDefaultsProvider } from "../../components/VDefaultsProvider/index.mjs";
|
|
7
7
|
import { makeVMenuProps, VMenu } from "../../components/VMenu/VMenu.mjs"; // Composables
|
|
8
8
|
import { makeComponentProps } from "../../composables/component.mjs";
|
|
9
|
+
import { useProxiedModel } from "../../composables/proxiedModel.mjs";
|
|
9
10
|
import { MaybeTransition } from "../../composables/transition.mjs"; // Utilities
|
|
10
11
|
import { computed, ref } from 'vue';
|
|
11
12
|
import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
@@ -23,10 +24,14 @@ export const makeVSpeedDialProps = propsFactory({
|
|
|
23
24
|
export const VSpeedDial = genericComponent()({
|
|
24
25
|
name: 'VSpeedDial',
|
|
25
26
|
props: makeVSpeedDialProps(),
|
|
27
|
+
emits: {
|
|
28
|
+
'update:modelValue': value => true
|
|
29
|
+
},
|
|
26
30
|
setup(props, _ref) {
|
|
27
31
|
let {
|
|
28
32
|
slots
|
|
29
33
|
} = _ref;
|
|
34
|
+
const model = useProxiedModel(props, 'modelValue');
|
|
30
35
|
const menuRef = ref();
|
|
31
36
|
const location = computed(() => {
|
|
32
37
|
const [y, x = 'center'] = props.location.split(' ');
|
|
@@ -38,6 +43,8 @@ export const VSpeedDial = genericComponent()({
|
|
|
38
43
|
useRender(() => {
|
|
39
44
|
const menuProps = VMenu.filterProps(props);
|
|
40
45
|
return _createVNode(VMenu, _mergeProps(menuProps, {
|
|
46
|
+
"modelValue": model.value,
|
|
47
|
+
"onUpdate:modelValue": $event => model.value = $event,
|
|
41
48
|
"class": props.class,
|
|
42
49
|
"style": props.style,
|
|
43
50
|
"contentClass": ['v-speed-dial__content', locationClasses.value],
|
|
@@ -56,8 +63,7 @@ export const VSpeedDial = genericComponent()({
|
|
|
56
63
|
default: () => [_createVNode(MaybeTransition, {
|
|
57
64
|
"appear": true,
|
|
58
65
|
"group": true,
|
|
59
|
-
"transition": props.transition
|
|
60
|
-
"mode": "out-in"
|
|
66
|
+
"transition": props.transition
|
|
61
67
|
}, {
|
|
62
68
|
default: () => [slots.default?.(slotProps)]
|
|
63
69
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VSpeedDial.mjs","names":["VDefaultsProvider","makeVMenuProps","VMenu","makeComponentProps","MaybeTransition","computed","ref","genericComponent","propsFactory","useRender","makeVSpeedDialProps","offset","minWidth","openDelay","closeDelay","location","transition","VSpeedDial","name","props","setup","_ref","slots","menuRef","y","x","split","locationClasses","
|
|
1
|
+
{"version":3,"file":"VSpeedDial.mjs","names":["VDefaultsProvider","makeVMenuProps","VMenu","makeComponentProps","useProxiedModel","MaybeTransition","computed","ref","genericComponent","propsFactory","useRender","makeVSpeedDialProps","offset","minWidth","openDelay","closeDelay","location","transition","VSpeedDial","name","props","emits","value","setup","_ref","slots","model","menuRef","y","x","split","locationClasses","replace","menuProps","filterProps","_createVNode","_mergeProps","$event","class","style","default","slotProps","VBtn","size"],"sources":["../../../src/labs/VSpeedDial/VSpeedDial.tsx"],"sourcesContent":["// Styles\nimport './VSpeedDial.sass'\n\n// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { makeVMenuProps, VMenu } from '@/components/VMenu/VMenu'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { MaybeTransition } from '@/composables/transition'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { ComputedRef } from 'vue'\nimport type { OverlaySlots } from '@/components/VOverlay/VOverlay'\nimport type { Anchor } from '@/util'\n\nexport const makeVSpeedDialProps = propsFactory({\n ...makeComponentProps(),\n ...makeVMenuProps({\n offset: 8,\n minWidth: 0,\n openDelay: 0,\n closeDelay: 100,\n location: 'top center' as const,\n transition: 'scale-transition',\n }),\n}, 'VSpeedDial')\n\nexport const VSpeedDial = genericComponent<OverlaySlots>()({\n name: 'VSpeedDial',\n\n props: makeVSpeedDialProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n\n const menuRef = ref<VMenu>()\n\n const location = computed(() => {\n const [y, x = 'center'] = props.location.split(' ')\n\n return `${y} ${x}`\n }) as ComputedRef<Anchor>\n\n const locationClasses = computed(() => ({\n [`v-speed-dial__content--${location.value.replace(' ', '-')}`]: true,\n }))\n\n useRender(() => {\n const menuProps = VMenu.filterProps(props)\n\n return (\n <VMenu\n { ...menuProps }\n v-model={ model.value }\n class={ props.class }\n style={ props.style }\n contentClass={[\n 'v-speed-dial__content',\n locationClasses.value,\n ]}\n location={ location.value }\n ref={ menuRef }\n transition=\"fade-transition\"\n >\n {{\n ...slots,\n default: slotProps => (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n size: 'small',\n },\n }}\n >\n <MaybeTransition\n appear\n group\n transition={ props.transition }\n >\n { slots.default?.(slotProps) }\n </MaybeTransition>\n </VDefaultsProvider>\n ),\n }}\n </VMenu>\n )\n })\n\n return {}\n },\n})\n\nexport type VSpeedDial = InstanceType<typeof VSpeedDial>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,iBAAiB;AAAA,SACjBC,cAAc,EAAEC,KAAK,4CAE9B;AAAA,SACSC,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,eAAe,4CAExB;AACA,SAASC,QAAQ,EAAEC,GAAG,QAAQ,KAAK;AAAA,SAC1BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAKA,OAAO,MAAMC,mBAAmB,GAAGF,YAAY,CAAC;EAC9C,GAAGN,kBAAkB,CAAC,CAAC;EACvB,GAAGF,cAAc,CAAC;IAChBW,MAAM,EAAE,CAAC;IACTC,QAAQ,EAAE,CAAC;IACXC,SAAS,EAAE,CAAC;IACZC,UAAU,EAAE,GAAG;IACfC,QAAQ,EAAE,YAAqB;IAC/BC,UAAU,EAAE;EACd,CAAC;AACH,CAAC,EAAE,YAAY,CAAC;AAEhB,OAAO,MAAMC,UAAU,GAAGV,gBAAgB,CAAe,CAAC,CAAC;EACzDW,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAET,mBAAmB,CAAC,CAAC;EAE5BU,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAc,IAAK;EAC3C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAME,KAAK,GAAGtB,eAAe,CAACgB,KAAK,EAAE,YAAY,CAAC;IAElD,MAAMO,OAAO,GAAGpB,GAAG,CAAQ,CAAC;IAE5B,MAAMS,QAAQ,GAAGV,QAAQ,CAAC,MAAM;MAC9B,MAAM,CAACsB,CAAC,EAAEC,CAAC,GAAG,QAAQ,CAAC,GAAGT,KAAK,CAACJ,QAAQ,CAACc,KAAK,CAAC,GAAG,CAAC;MAEnD,OAAQ,GAAEF,CAAE,IAAGC,CAAE,EAAC;IACpB,CAAC,CAAwB;IAEzB,MAAME,eAAe,GAAGzB,QAAQ,CAAC,OAAO;MACtC,CAAE,0BAAyBU,QAAQ,CAACM,KAAK,CAACU,OAAO,CAAC,GAAG,EAAE,GAAG,CAAE,EAAC,GAAG;IAClE,CAAC,CAAC,CAAC;IAEHtB,SAAS,CAAC,MAAM;MACd,MAAMuB,SAAS,GAAG/B,KAAK,CAACgC,WAAW,CAACd,KAAK,CAAC;MAE1C,OAAAe,YAAA,CAAAjC,KAAA,EAAAkC,WAAA,CAESH,SAAS;QAAA,cACJP,KAAK,CAACJ,KAAK;QAAA,uBAAAe,MAAA,IAAXX,KAAK,CAACJ,KAAK,GAAAe,MAAA;QAAA,SACbjB,KAAK,CAACkB,KAAK;QAAA,SACXlB,KAAK,CAACmB,KAAK;QAAA,gBACL,CACZ,uBAAuB,EACvBR,eAAe,CAACT,KAAK,CACtB;QAAA,YACUN,QAAQ,CAACM,KAAK;QAAA,OACnBK,OAAO;QAAA;MAAA;QAIX,GAAGF,KAAK;QACRe,OAAO,EAAEC,SAAS,IAAAN,YAAA,CAAAnC,iBAAA;UAAA,YAEJ;YACR0C,IAAI,EAAE;cACJC,IAAI,EAAE;YACR;UACF;QAAC;UAAAH,OAAA,EAAAA,CAAA,MAAAL,YAAA,CAAA9B,eAAA;YAAA;YAAA;YAAA,cAKce,KAAK,CAACH;UAAU;YAAAuB,OAAA,EAAAA,CAAA,MAE3Bf,KAAK,CAACe,OAAO,GAAGC,SAAS,CAAC;UAAA;QAAA;MAGjC;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,24 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
gap: 8px
|
|
1
|
+
@use '../../styles/tools'
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
&.v-speed-dial__content--right,
|
|
8
|
-
&.v-speed-dial__content--right-center
|
|
9
|
-
flex-direction: row
|
|
3
|
+
@include tools.layer('components')
|
|
4
|
+
.v-speed-dial__content
|
|
5
|
+
gap: 8px
|
|
10
6
|
|
|
11
|
-
&.v-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
&.v-overlay__content
|
|
8
|
+
&.v-speed-dial__content--end,
|
|
9
|
+
&.v-speed-dial__content--end-center,
|
|
10
|
+
&.v-speed-dial__content--right,
|
|
11
|
+
&.v-speed-dial__content--right-center
|
|
12
|
+
flex-direction: row
|
|
16
13
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
&.v-speed-dial__content--left,
|
|
15
|
+
&.v-speed-dial__content--left-center,
|
|
16
|
+
&.v-speed-dial__content--start,
|
|
17
|
+
&.v-speed-dial__content--start-center
|
|
18
|
+
flex-direction: row-reverse
|
|
20
19
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
&.v-speed-dial__content--top,
|
|
21
|
+
&.v-speed-dial__content--top-center
|
|
22
|
+
flex-direction: column-reverse
|
|
23
|
+
|
|
24
|
+
> *
|
|
25
|
+
@for $i from 1 through 10
|
|
26
|
+
&:nth-child(#{$i})
|
|
27
|
+
transition-delay: 0.05s * ($i - 1)
|
|
@@ -139,6 +139,7 @@ declare const VSpeedDial: {
|
|
|
139
139
|
activator?: ((arg: {
|
|
140
140
|
isActive: boolean;
|
|
141
141
|
props: Record<string, any>;
|
|
142
|
+
targetRef: vue.Ref<any>;
|
|
142
143
|
}) => vue.VNodeChild) | undefined;
|
|
143
144
|
} | ((arg: {
|
|
144
145
|
isActive: vue.Ref<boolean>;
|
|
@@ -150,6 +151,7 @@ declare const VSpeedDial: {
|
|
|
150
151
|
activator?: false | ((arg: {
|
|
151
152
|
isActive: boolean;
|
|
152
153
|
props: Record<string, any>;
|
|
154
|
+
targetRef: vue.Ref<any>;
|
|
153
155
|
}) => vue.VNodeChild) | undefined;
|
|
154
156
|
} | undefined;
|
|
155
157
|
} & {
|
|
@@ -159,8 +161,13 @@ declare const VSpeedDial: {
|
|
|
159
161
|
"v-slot:activator"?: false | ((arg: {
|
|
160
162
|
isActive: boolean;
|
|
161
163
|
props: Record<string, any>;
|
|
164
|
+
targetRef: vue.Ref<any>;
|
|
162
165
|
}) => vue.VNodeChild) | undefined;
|
|
163
|
-
}
|
|
166
|
+
} & {
|
|
167
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
168
|
+
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
169
|
+
'update:modelValue': (value: boolean) => boolean;
|
|
170
|
+
}, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
|
|
164
171
|
style: vue.StyleValue;
|
|
165
172
|
disabled: boolean;
|
|
166
173
|
offset: NonNullable<string | number | number[] | undefined>;
|
|
@@ -214,6 +221,7 @@ declare const VSpeedDial: {
|
|
|
214
221
|
activator?: ((arg: {
|
|
215
222
|
isActive: boolean;
|
|
216
223
|
props: Record<string, any>;
|
|
224
|
+
targetRef: vue.Ref<any>;
|
|
217
225
|
}) => vue.VNodeChild) | undefined;
|
|
218
226
|
} | ((arg: {
|
|
219
227
|
isActive: vue.Ref<boolean>;
|
|
@@ -225,6 +233,7 @@ declare const VSpeedDial: {
|
|
|
225
233
|
activator?: false | ((arg: {
|
|
226
234
|
isActive: boolean;
|
|
227
235
|
props: Record<string, any>;
|
|
236
|
+
targetRef: vue.Ref<any>;
|
|
228
237
|
}) => vue.VNodeChild) | undefined;
|
|
229
238
|
} | undefined;
|
|
230
239
|
} & {
|
|
@@ -234,7 +243,10 @@ declare const VSpeedDial: {
|
|
|
234
243
|
"v-slot:activator"?: false | ((arg: {
|
|
235
244
|
isActive: boolean;
|
|
236
245
|
props: Record<string, any>;
|
|
246
|
+
targetRef: vue.Ref<any>;
|
|
237
247
|
}) => vue.VNodeChild) | undefined;
|
|
248
|
+
} & {
|
|
249
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
238
250
|
}, {
|
|
239
251
|
style: vue.StyleValue;
|
|
240
252
|
disabled: boolean;
|
|
@@ -275,6 +287,7 @@ declare const VSpeedDial: {
|
|
|
275
287
|
activator: (arg: {
|
|
276
288
|
isActive: boolean;
|
|
277
289
|
props: Record<string, any>;
|
|
290
|
+
targetRef: vue.Ref<any>;
|
|
278
291
|
}) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
279
292
|
[key: string]: any;
|
|
280
293
|
}>[];
|
|
@@ -339,6 +352,7 @@ declare const VSpeedDial: {
|
|
|
339
352
|
activator?: ((arg: {
|
|
340
353
|
isActive: boolean;
|
|
341
354
|
props: Record<string, any>;
|
|
355
|
+
targetRef: vue.Ref<any>;
|
|
342
356
|
}) => vue.VNodeChild) | undefined;
|
|
343
357
|
} | ((arg: {
|
|
344
358
|
isActive: vue.Ref<boolean>;
|
|
@@ -350,6 +364,7 @@ declare const VSpeedDial: {
|
|
|
350
364
|
activator?: false | ((arg: {
|
|
351
365
|
isActive: boolean;
|
|
352
366
|
props: Record<string, any>;
|
|
367
|
+
targetRef: vue.Ref<any>;
|
|
353
368
|
}) => vue.VNodeChild) | undefined;
|
|
354
369
|
} | undefined;
|
|
355
370
|
} & {
|
|
@@ -359,7 +374,10 @@ declare const VSpeedDial: {
|
|
|
359
374
|
"v-slot:activator"?: false | ((arg: {
|
|
360
375
|
isActive: boolean;
|
|
361
376
|
props: Record<string, any>;
|
|
377
|
+
targetRef: vue.Ref<any>;
|
|
362
378
|
}) => vue.VNodeChild) | undefined;
|
|
379
|
+
} & {
|
|
380
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
363
381
|
}, {}, {}, {}, {}, {
|
|
364
382
|
style: vue.StyleValue;
|
|
365
383
|
disabled: boolean;
|
|
@@ -449,6 +467,7 @@ declare const VSpeedDial: {
|
|
|
449
467
|
activator?: ((arg: {
|
|
450
468
|
isActive: boolean;
|
|
451
469
|
props: Record<string, any>;
|
|
470
|
+
targetRef: vue.Ref<any>;
|
|
452
471
|
}) => vue.VNodeChild) | undefined;
|
|
453
472
|
} | ((arg: {
|
|
454
473
|
isActive: vue.Ref<boolean>;
|
|
@@ -460,6 +479,7 @@ declare const VSpeedDial: {
|
|
|
460
479
|
activator?: false | ((arg: {
|
|
461
480
|
isActive: boolean;
|
|
462
481
|
props: Record<string, any>;
|
|
482
|
+
targetRef: vue.Ref<any>;
|
|
463
483
|
}) => vue.VNodeChild) | undefined;
|
|
464
484
|
} | undefined;
|
|
465
485
|
} & {
|
|
@@ -469,8 +489,13 @@ declare const VSpeedDial: {
|
|
|
469
489
|
"v-slot:activator"?: false | ((arg: {
|
|
470
490
|
isActive: boolean;
|
|
471
491
|
props: Record<string, any>;
|
|
492
|
+
targetRef: vue.Ref<any>;
|
|
472
493
|
}) => vue.VNodeChild) | undefined;
|
|
473
|
-
}
|
|
494
|
+
} & {
|
|
495
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
496
|
+
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
497
|
+
'update:modelValue': (value: boolean) => boolean;
|
|
498
|
+
}, string, {
|
|
474
499
|
style: vue.StyleValue;
|
|
475
500
|
disabled: boolean;
|
|
476
501
|
offset: NonNullable<string | number | number[] | undefined>;
|
|
@@ -510,6 +535,7 @@ declare const VSpeedDial: {
|
|
|
510
535
|
activator: (arg: {
|
|
511
536
|
isActive: boolean;
|
|
512
537
|
props: Record<string, any>;
|
|
538
|
+
targetRef: vue.Ref<any>;
|
|
513
539
|
}) => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
514
540
|
[key: string]: any;
|
|
515
541
|
}>[];
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
@
|
|
2
|
-
@
|
|
1
|
+
@use '../../styles/tools'
|
|
2
|
+
@use './variables' as *
|
|
3
3
|
|
|
4
|
-
.
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
@include tools.layer('components')
|
|
5
|
+
.v-time-picker.v-picker
|
|
6
|
+
padding: $time-picker-padding
|
|
7
|
+
width: $time-picker-width
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
.v-picker-title
|
|
10
|
+
padding: 0
|
|
11
|
+
margin-bottom: 20px
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VTimePickerClock.mjs","names":["useBackgroundColor","useTextColor","computed","ref","toRef","watch","genericComponent","propsFactory","useRender","makeVTimePickerClockProps","allowedValues","Function","ampm","Boolean","color","String","disabled","displayedValue","default","double","format","type","val","max","Number","required","min","scrollable","readonly","rotate","step","modelValue","VTimePickerClock","name","props","emits","change","input","setup","_ref","emit","clockRef","innerClockRef","inputValue","undefined","isDragging","valueOnMouseDown","valueOnMouseUp","textColorClasses","textColorStyles","backgroundColorClasses","backgroundColorStyles","count","roundCount","value","degreesPerUnit","degrees","Math","PI","innerRadiusScale","genChildren","children","push","update","isAllowed","wheel","e","preventDefault","delta","sign","deltaY","isInner","handScale","getPosition","rotateRadians","x","sin","y","cos","angleToValue","angle","insideClick","round","getTransform","i","left","top","euclidean","p0","p1","dx","dy","sqrt","center","atan2","abs","setMouseDownValue","onDragMove","width","getBoundingClientRect","innerWidth","clientX","clientY","touches","coords","handAngle","checksCount","ceil","onMouseDown","window","addEventListener","onMouseUp","stopPropagation","removeEventListener","_createVNode","transform","map","isActive"],"sources":["../../../src/labs/VTimePicker/VTimePickerClock.tsx"],"sourcesContent":["// StylesthisValue\n// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, toRef, watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\ninterface Point {\n x: number\n y: number\n}\n\nexport const makeVTimePickerClockProps = propsFactory({\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n displayedValue: {\n default: null,\n },\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n },\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n modelValue: {\n type: Number,\n },\n}, 'VTimePickerClock')\n\nexport const VTimePickerClock = genericComponent()({\n name: 'VTimePickerClock',\n\n props: makeVTimePickerClockProps(),\n\n emits: {\n change: (val: number) => val,\n input: (val: number) => val,\n },\n\n setup (props, { emit }) {\n const clockRef = ref<HTMLElement | null>(null)\n const innerClockRef = ref<HTMLElement | null>(null)\n const inputValue = ref<number | undefined>(undefined)\n const isDragging = ref(false)\n const valueOnMouseDown = ref(null as number | null)\n const valueOnMouseUp = ref(null as number | null)\n\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n\n const count = computed(() => props.max - props.min + 1)\n const roundCount = computed(() => props.double ? (count.value / 2) : count.value)\n const degreesPerUnit = computed(() => 360 / roundCount.value)\n const degrees = computed(() => degreesPerUnit.value * Math.PI / 180)\n const displayedValue = computed(() => props.modelValue == null ? props.min : props.modelValue)\n const innerRadiusScale = computed(() => 0.62)\n\n const genChildren = computed(() => {\n const children = []\n for (let value = props.min; value <= props.max; value = value + props.step) {\n children.push(value)\n }\n return children\n })\n\n watch(() => props.modelValue, val => {\n inputValue.value = val\n })\n\n function update (value: number) {\n if (inputValue.value !== value) {\n inputValue.value = value\n }\n emit('input', value)\n }\n\n function isAllowed (value: number) {\n return !props.allowedValues || props.allowedValues(value)\n }\n\n function wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = displayedValue.value\n do {\n value = value + delta\n value = (value - props.min + count.value) % count.value + props.min\n } while (!isAllowed(value) && value !== displayedValue.value)\n\n if (value !== props.displayedValue) {\n update(value)\n }\n }\n\n function isInner (value: number) {\n return props.double && (value - props.min >= roundCount.value)\n }\n\n function handScale (value: number) {\n return isInner(value) ? innerRadiusScale.value : 1\n }\n\n function getPosition (value: number) {\n const rotateRadians = props.rotate * Math.PI / 180\n return {\n x: Math.sin((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n y: -Math.cos((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n }\n }\n\n function angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / degreesPerUnit.value) +\n (insideClick ? roundCount.value : 0)\n ) % count.value + props.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - degreesPerUnit.value / 2)) return value\n\n return insideClick ? props.max - roundCount.value + 1 : props.min\n }\n\n function getTransform (i: number) {\n const { x, y } = getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`,\n }\n }\n\n function euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n }\n\n function angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n }\n\n function setMouseDownValue (value: number) {\n if (valueOnMouseDown.value === null) {\n valueOnMouseDown.value = value\n }\n\n valueOnMouseUp.value = value\n update(value)\n }\n\n function onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!isDragging.value && e.type !== 'click') || !clockRef.value) return\n const { width, top, left } = clockRef.value?.getBoundingClientRect()\n const { width: innerWidth }: DOMRect = innerClockRef.value?.getBoundingClientRect() ?? { width: 0 } as DOMRect\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(angle(center, coords) - props.rotate + 360) % 360\n const insideClick = props.double && euclidean(center, coords) < (innerWidth as number + innerWidth * innerRadiusScale.value) / 4\n const checksCount = Math.ceil(15 / degreesPerUnit.value)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = angleToValue(handAngle + i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n\n value = angleToValue(handAngle - i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n }\n }\n\n function onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n window.addEventListener('mousemove', onDragMove)\n window.addEventListener('touchmove', onDragMove)\n window.addEventListener('mouseup', onMouseUp)\n window.addEventListener('touchend', onMouseUp)\n valueOnMouseDown.value = null\n valueOnMouseUp.value = null\n isDragging.value = true\n onDragMove(e)\n }\n\n function onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n window.removeEventListener('mousemove', onDragMove)\n window.removeEventListener('touchmove', onDragMove)\n window.removeEventListener('mouseup', onMouseUp)\n window.removeEventListener('touchend', onMouseUp)\n\n isDragging.value = false\n if (valueOnMouseUp.value !== null && isAllowed(valueOnMouseUp.value)) {\n emit('change', valueOnMouseUp.value)\n }\n }\n\n useRender(() => {\n return (\n <div\n class={[\n {\n 'v-time-picker-clock': true,\n 'v-time-picker-clock--indeterminate': props.modelValue == null,\n 'v-time-picker-clock--readonly': props.readonly,\n },\n ]}\n onMousedown={ onMouseDown }\n onTouchstart={ onMouseDown }\n onWheel={ (e: WheelEvent) => (props.scrollable && wheel(e)) }\n ref={ clockRef }\n >\n <div class=\"v-time-picker-clock__inner\" ref={ innerClockRef }>\n <div\n class={[\n {\n 'v-time-picker-clock__hand': true,\n 'v-time-picker-clock__hand--inner': isInner(props.modelValue as number),\n },\n textColorClasses.value,\n ]}\n style={[\n {\n transform: `rotate(${props.rotate + degreesPerUnit.value * (displayedValue.value - props.min)}deg) scaleY(${handScale(displayedValue.value)})`,\n },\n textColorStyles.value,\n ]}\n />\n\n {\n genChildren.value.map(value => {\n const isActive = value === displayedValue.value\n\n return (\n <div\n class={[\n {\n 'v-time-picker-clock__item': true,\n 'v-time-picker-clock__item--active': isActive,\n 'v-time-picker-clock__item--disabled': props.disabled || !isAllowed(value),\n },\n isActive && backgroundColorClasses.value,\n ]}\n style={[\n getTransform(value),\n isActive && backgroundColorStyles.value,\n ]}\n >\n <span>{ props.format(value) }</span>\n </div>\n )\n })\n }\n </div>\n </div>\n )\n })\n },\n})\n\nexport type VTimePickerClock = InstanceType<typeof VTimePickerClock>\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"VTimePickerClock.mjs","names":["useBackgroundColor","useTextColor","computed","ref","toRef","watch","genericComponent","propsFactory","useRender","makeVTimePickerClockProps","allowedValues","Function","ampm","Boolean","color","String","disabled","displayedValue","double","format","type","default","val","max","Number","required","min","scrollable","readonly","rotate","step","modelValue","VTimePickerClock","name","props","emits","change","input","setup","_ref","emit","clockRef","innerClockRef","inputValue","undefined","isDragging","valueOnMouseDown","valueOnMouseUp","textColorClasses","textColorStyles","backgroundColorClasses","backgroundColorStyles","count","roundCount","value","degreesPerUnit","degrees","Math","PI","innerRadiusScale","genChildren","children","push","update","isAllowed","wheel","e","preventDefault","delta","sign","deltaY","isInner","handScale","getPosition","rotateRadians","x","sin","y","cos","angleToValue","angle","insideClick","round","getTransform","i","left","top","euclidean","p0","p1","dx","dy","sqrt","center","atan2","abs","setMouseDownValue","onDragMove","width","getBoundingClientRect","innerWidth","clientX","clientY","touches","coords","handAngle","checksCount","ceil","onMouseDown","window","addEventListener","onMouseUp","stopPropagation","removeEventListener","_createVNode","transform","map","isActive"],"sources":["../../../src/labs/VTimePicker/VTimePickerClock.tsx"],"sourcesContent":["// StylesthisValue\n// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, toRef, watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\ninterface Point {\n x: number\n y: number\n}\n\nexport const makeVTimePickerClockProps = propsFactory({\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n color: String,\n disabled: Boolean,\n displayedValue: null,\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n },\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n modelValue: {\n type: Number,\n },\n}, 'VTimePickerClock')\n\nexport const VTimePickerClock = genericComponent()({\n name: 'VTimePickerClock',\n\n props: makeVTimePickerClockProps(),\n\n emits: {\n change: (val: number) => val,\n input: (val: number) => val,\n },\n\n setup (props, { emit }) {\n const clockRef = ref<HTMLElement | null>(null)\n const innerClockRef = ref<HTMLElement | null>(null)\n const inputValue = ref<number | undefined>(undefined)\n const isDragging = ref(false)\n const valueOnMouseDown = ref(null as number | null)\n const valueOnMouseUp = ref(null as number | null)\n\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n\n const count = computed(() => props.max - props.min + 1)\n const roundCount = computed(() => props.double ? (count.value / 2) : count.value)\n const degreesPerUnit = computed(() => 360 / roundCount.value)\n const degrees = computed(() => degreesPerUnit.value * Math.PI / 180)\n const displayedValue = computed(() => props.modelValue == null ? props.min : props.modelValue)\n const innerRadiusScale = computed(() => 0.62)\n\n const genChildren = computed(() => {\n const children = []\n for (let value = props.min; value <= props.max; value = value + props.step) {\n children.push(value)\n }\n return children\n })\n\n watch(() => props.modelValue, val => {\n inputValue.value = val\n })\n\n function update (value: number) {\n if (inputValue.value !== value) {\n inputValue.value = value\n }\n emit('input', value)\n }\n\n function isAllowed (value: number) {\n return !props.allowedValues || props.allowedValues(value)\n }\n\n function wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = displayedValue.value\n do {\n value = value + delta\n value = (value - props.min + count.value) % count.value + props.min\n } while (!isAllowed(value) && value !== displayedValue.value)\n\n if (value !== props.displayedValue) {\n update(value)\n }\n }\n\n function isInner (value: number) {\n return props.double && (value - props.min >= roundCount.value)\n }\n\n function handScale (value: number) {\n return isInner(value) ? innerRadiusScale.value : 1\n }\n\n function getPosition (value: number) {\n const rotateRadians = props.rotate * Math.PI / 180\n return {\n x: Math.sin((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n y: -Math.cos((value - props.min) * degrees.value + rotateRadians) * handScale(value),\n }\n }\n\n function angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / degreesPerUnit.value) +\n (insideClick ? roundCount.value : 0)\n ) % count.value + props.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - degreesPerUnit.value / 2)) return value\n\n return insideClick ? props.max - roundCount.value + 1 : props.min\n }\n\n function getTransform (i: number) {\n const { x, y } = getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`,\n }\n }\n\n function euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n }\n\n function angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n }\n\n function setMouseDownValue (value: number) {\n if (valueOnMouseDown.value === null) {\n valueOnMouseDown.value = value\n }\n\n valueOnMouseUp.value = value\n update(value)\n }\n\n function onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!isDragging.value && e.type !== 'click') || !clockRef.value) return\n const { width, top, left } = clockRef.value?.getBoundingClientRect()\n const { width: innerWidth }: DOMRect = innerClockRef.value?.getBoundingClientRect() ?? { width: 0 } as DOMRect\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(angle(center, coords) - props.rotate + 360) % 360\n const insideClick = props.double && euclidean(center, coords) < (innerWidth as number + innerWidth * innerRadiusScale.value) / 4\n const checksCount = Math.ceil(15 / degreesPerUnit.value)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = angleToValue(handAngle + i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n\n value = angleToValue(handAngle - i * degreesPerUnit.value, insideClick)\n if (isAllowed(value)) return setMouseDownValue(value)\n }\n }\n\n function onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n window.addEventListener('mousemove', onDragMove)\n window.addEventListener('touchmove', onDragMove)\n window.addEventListener('mouseup', onMouseUp)\n window.addEventListener('touchend', onMouseUp)\n valueOnMouseDown.value = null\n valueOnMouseUp.value = null\n isDragging.value = true\n onDragMove(e)\n }\n\n function onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n window.removeEventListener('mousemove', onDragMove)\n window.removeEventListener('touchmove', onDragMove)\n window.removeEventListener('mouseup', onMouseUp)\n window.removeEventListener('touchend', onMouseUp)\n\n isDragging.value = false\n if (valueOnMouseUp.value !== null && isAllowed(valueOnMouseUp.value)) {\n emit('change', valueOnMouseUp.value)\n }\n }\n\n useRender(() => {\n return (\n <div\n class={[\n {\n 'v-time-picker-clock': true,\n 'v-time-picker-clock--indeterminate': props.modelValue == null,\n 'v-time-picker-clock--readonly': props.readonly,\n },\n ]}\n onMousedown={ onMouseDown }\n onTouchstart={ onMouseDown }\n onWheel={ (e: WheelEvent) => (props.scrollable && wheel(e)) }\n ref={ clockRef }\n >\n <div class=\"v-time-picker-clock__inner\" ref={ innerClockRef }>\n <div\n class={[\n {\n 'v-time-picker-clock__hand': true,\n 'v-time-picker-clock__hand--inner': isInner(props.modelValue as number),\n },\n textColorClasses.value,\n ]}\n style={[\n {\n transform: `rotate(${props.rotate + degreesPerUnit.value * (displayedValue.value - props.min)}deg) scaleY(${handScale(displayedValue.value)})`,\n },\n textColorStyles.value,\n ]}\n />\n\n {\n genChildren.value.map(value => {\n const isActive = value === displayedValue.value\n\n return (\n <div\n class={[\n {\n 'v-time-picker-clock__item': true,\n 'v-time-picker-clock__item--active': isActive,\n 'v-time-picker-clock__item--disabled': props.disabled || !isAllowed(value),\n },\n isActive && backgroundColorClasses.value,\n ]}\n style={[\n getTransform(value),\n isActive && backgroundColorStyles.value,\n ]}\n >\n <span>{ props.format(value) }</span>\n </div>\n )\n })\n }\n </div>\n </div>\n )\n })\n },\n})\n\nexport type VTimePickerClock = InstanceType<typeof VTimePickerClock>\n"],"mappings":";AAAA;AACA;AACA;;AAEA;AAAA,SACSA,kBAAkB,EAAEC,YAAY,uCAEzC;AACA,SAASC,QAAQ,EAAEC,GAAG,EAAEC,KAAK,EAAEC,KAAK,QAAQ,KAAK;AAAA,SACxCC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAOA,OAAO,MAAMC,yBAAyB,GAAGF,YAAY,CAAC;EACpDG,aAAa,EAAEC,QAAgD;EAC/DC,IAAI,EAAEC,OAAO;EACbC,KAAK,EAAEC,MAAM;EACbC,QAAQ,EAAEH,OAAO;EACjBI,cAAc,EAAE,IAAI;EACpBC,MAAM,EAAEL,OAAO;EACfM,MAAM,EAAE;IACNC,IAAI,EAAET,QAAQ;IACdU,OAAO,EAAGC,GAAoB,IAAKA;EACrC,CAAC;EACDC,GAAG,EAAE;IACHH,IAAI,EAAEI,MAAM;IACZC,QAAQ,EAAE;EACZ,CAAC;EACDC,GAAG,EAAE;IACHN,IAAI,EAAEI,MAAM;IACZC,QAAQ,EAAE;EACZ,CAAC;EACDE,UAAU,EAAEd,OAAO;EACnBe,QAAQ,EAAEf,OAAO;EACjBgB,MAAM,EAAE;IACNT,IAAI,EAAEI,MAAM;IACZH,OAAO,EAAE;EACX,CAAC;EACDS,IAAI,EAAE;IACJV,IAAI,EAAEI,MAAM;IACZH,OAAO,EAAE;EACX,CAAC;EACDU,UAAU,EAAE;IACVX,IAAI,EAAEI;EACR;AACF,CAAC,EAAE,kBAAkB,CAAC;AAEtB,OAAO,MAAMQ,gBAAgB,GAAG1B,gBAAgB,CAAC,CAAC,CAAC;EACjD2B,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAEzB,yBAAyB,CAAC,CAAC;EAElC0B,KAAK,EAAE;IACLC,MAAM,EAAGd,GAAW,IAAKA,GAAG;IAC5Be,KAAK,EAAGf,GAAW,IAAKA;EAC1B,CAAC;EAEDgB,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAY;IAAA,IAAV;MAAEC;IAAK,CAAC,GAAAD,IAAA;IACpB,MAAME,QAAQ,GAAGtC,GAAG,CAAqB,IAAI,CAAC;IAC9C,MAAMuC,aAAa,GAAGvC,GAAG,CAAqB,IAAI,CAAC;IACnD,MAAMwC,UAAU,GAAGxC,GAAG,CAAqByC,SAAS,CAAC;IACrD,MAAMC,UAAU,GAAG1C,GAAG,CAAC,KAAK,CAAC;IAC7B,MAAM2C,gBAAgB,GAAG3C,GAAG,CAAC,IAAqB,CAAC;IACnD,MAAM4C,cAAc,GAAG5C,GAAG,CAAC,IAAqB,CAAC;IAEjD,MAAM;MAAE6C,gBAAgB;MAAEC;IAAgB,CAAC,GAAGhD,YAAY,CAACG,KAAK,CAAC8B,KAAK,EAAE,OAAO,CAAC,CAAC;IACjF,MAAM;MAAEgB,sBAAsB;MAAEC;IAAsB,CAAC,GAAGnD,kBAAkB,CAACI,KAAK,CAAC8B,KAAK,EAAE,OAAO,CAAC,CAAC;IAEnG,MAAMkB,KAAK,GAAGlD,QAAQ,CAAC,MAAMgC,KAAK,CAACX,GAAG,GAAGW,KAAK,CAACR,GAAG,GAAG,CAAC,CAAC;IACvD,MAAM2B,UAAU,GAAGnD,QAAQ,CAAC,MAAMgC,KAAK,CAAChB,MAAM,GAAIkC,KAAK,CAACE,KAAK,GAAG,CAAC,GAAIF,KAAK,CAACE,KAAK,CAAC;IACjF,MAAMC,cAAc,GAAGrD,QAAQ,CAAC,MAAM,GAAG,GAAGmD,UAAU,CAACC,KAAK,CAAC;IAC7D,MAAME,OAAO,GAAGtD,QAAQ,CAAC,MAAMqD,cAAc,CAACD,KAAK,GAAGG,IAAI,CAACC,EAAE,GAAG,GAAG,CAAC;IACpE,MAAMzC,cAAc,GAAGf,QAAQ,CAAC,MAAMgC,KAAK,CAACH,UAAU,IAAI,IAAI,GAAGG,KAAK,CAACR,GAAG,GAAGQ,KAAK,CAACH,UAAU,CAAC;IAC9F,MAAM4B,gBAAgB,GAAGzD,QAAQ,CAAC,MAAM,IAAI,CAAC;IAE7C,MAAM0D,WAAW,GAAG1D,QAAQ,CAAC,MAAM;MACjC,MAAM2D,QAAQ,GAAG,EAAE;MACnB,KAAK,IAAIP,KAAK,GAAGpB,KAAK,CAACR,GAAG,EAAE4B,KAAK,IAAIpB,KAAK,CAACX,GAAG,EAAE+B,KAAK,GAAGA,KAAK,GAAGpB,KAAK,CAACJ,IAAI,EAAE;QAC1E+B,QAAQ,CAACC,IAAI,CAACR,KAAK,CAAC;MACtB;MACA,OAAOO,QAAQ;IACjB,CAAC,CAAC;IAEFxD,KAAK,CAAC,MAAM6B,KAAK,CAACH,UAAU,EAAET,GAAG,IAAI;MACnCqB,UAAU,CAACW,KAAK,GAAGhC,GAAG;IACxB,CAAC,CAAC;IAEF,SAASyC,MAAMA,CAAET,KAAa,EAAE;MAC9B,IAAIX,UAAU,CAACW,KAAK,KAAKA,KAAK,EAAE;QAC9BX,UAAU,CAACW,KAAK,GAAGA,KAAK;MAC1B;MACAd,IAAI,CAAC,OAAO,EAAEc,KAAK,CAAC;IACtB;IAEA,SAASU,SAASA,CAAEV,KAAa,EAAE;MACjC,OAAO,CAACpB,KAAK,CAACxB,aAAa,IAAIwB,KAAK,CAACxB,aAAa,CAAC4C,KAAK,CAAC;IAC3D;IAEA,SAASW,KAAKA,CAAEC,CAAa,EAAE;MAC7BA,CAAC,CAACC,cAAc,CAAC,CAAC;MAElB,MAAMC,KAAK,GAAGX,IAAI,CAACY,IAAI,CAAC,CAACH,CAAC,CAACI,MAAM,IAAI,CAAC,CAAC;MACvC,IAAIhB,KAAK,GAAGrC,cAAc,CAACqC,KAAK;MAChC,GAAG;QACDA,KAAK,GAAGA,KAAK,GAAGc,KAAK;QACrBd,KAAK,GAAG,CAACA,KAAK,GAAGpB,KAAK,CAACR,GAAG,GAAG0B,KAAK,CAACE,KAAK,IAAIF,KAAK,CAACE,KAAK,GAAGpB,KAAK,CAACR,GAAG;MACrE,CAAC,QAAQ,CAACsC,SAAS,CAACV,KAAK,CAAC,IAAIA,KAAK,KAAKrC,cAAc,CAACqC,KAAK;MAE5D,IAAIA,KAAK,KAAKpB,KAAK,CAACjB,cAAc,EAAE;QAClC8C,MAAM,CAACT,KAAK,CAAC;MACf;IACF;IAEA,SAASiB,OAAOA,CAAEjB,KAAa,EAAE;MAC/B,OAAOpB,KAAK,CAAChB,MAAM,IAAKoC,KAAK,GAAGpB,KAAK,CAACR,GAAG,IAAI2B,UAAU,CAACC,KAAM;IAChE;IAEA,SAASkB,SAASA,CAAElB,KAAa,EAAE;MACjC,OAAOiB,OAAO,CAACjB,KAAK,CAAC,GAAGK,gBAAgB,CAACL,KAAK,GAAG,CAAC;IACpD;IAEA,SAASmB,WAAWA,CAAEnB,KAAa,EAAE;MACnC,MAAMoB,aAAa,GAAGxC,KAAK,CAACL,MAAM,GAAG4B,IAAI,CAACC,EAAE,GAAG,GAAG;MAClD,OAAO;QACLiB,CAAC,EAAElB,IAAI,CAACmB,GAAG,CAAC,CAACtB,KAAK,GAAGpB,KAAK,CAACR,GAAG,IAAI8B,OAAO,CAACF,KAAK,GAAGoB,aAAa,CAAC,GAAGF,SAAS,CAAClB,KAAK,CAAC;QACnFuB,CAAC,EAAE,CAACpB,IAAI,CAACqB,GAAG,CAAC,CAACxB,KAAK,GAAGpB,KAAK,CAACR,GAAG,IAAI8B,OAAO,CAACF,KAAK,GAAGoB,aAAa,CAAC,GAAGF,SAAS,CAAClB,KAAK;MACrF,CAAC;IACH;IAEA,SAASyB,YAAYA,CAAEC,KAAa,EAAEC,WAAoB,EAAU;MAClE,MAAM3B,KAAK,GAAG,CACZG,IAAI,CAACyB,KAAK,CAACF,KAAK,GAAGzB,cAAc,CAACD,KAAK,CAAC,IACvC2B,WAAW,GAAG5B,UAAU,CAACC,KAAK,GAAG,CAAC,CAAC,IAClCF,KAAK,CAACE,KAAK,GAAGpB,KAAK,CAACR,GAAG;;MAE3B;MACA,IAAIsD,KAAK,GAAI,GAAG,GAAGzB,cAAc,CAACD,KAAK,GAAG,CAAE,EAAE,OAAOA,KAAK;MAE1D,OAAO2B,WAAW,GAAG/C,KAAK,CAACX,GAAG,GAAG8B,UAAU,CAACC,KAAK,GAAG,CAAC,GAAGpB,KAAK,CAACR,GAAG;IACnE;IAEA,SAASyD,YAAYA,CAAEC,CAAS,EAAE;MAChC,MAAM;QAAET,CAAC;QAAEE;MAAE,CAAC,GAAGJ,WAAW,CAACW,CAAC,CAAC;MAC/B,OAAO;QACLC,IAAI,EAAG,GAAE,EAAE,GAAGV,CAAC,GAAG,EAAG,GAAE;QACvBW,GAAG,EAAG,GAAE,EAAE,GAAGT,CAAC,GAAG,EAAG;MACtB,CAAC;IACH;IAEA,SAASU,SAASA,CAAEC,EAAS,EAAEC,EAAS,EAAE;MACxC,MAAMC,EAAE,GAAGD,EAAE,CAACd,CAAC,GAAGa,EAAE,CAACb,CAAC;MACtB,MAAMgB,EAAE,GAAGF,EAAE,CAACZ,CAAC,GAAGW,EAAE,CAACX,CAAC;MAEtB,OAAOpB,IAAI,CAACmC,IAAI,CAACF,EAAE,GAAGA,EAAE,GAAGC,EAAE,GAAGA,EAAE,CAAC;IACrC;IAEA,SAASX,KAAKA,CAAEa,MAAa,EAAEJ,EAAS,EAAE;MACxC,MAAMnC,KAAK,GAAG,CAAC,GAAGG,IAAI,CAACqC,KAAK,CAACL,EAAE,CAACZ,CAAC,GAAGgB,MAAM,CAAChB,CAAC,GAAGU,SAAS,CAACM,MAAM,EAAEJ,EAAE,CAAC,EAAEA,EAAE,CAACd,CAAC,GAAGkB,MAAM,CAAClB,CAAC,CAAC;MACtF,OAAOlB,IAAI,CAACsC,GAAG,CAACzC,KAAK,GAAG,GAAG,GAAGG,IAAI,CAACC,EAAE,CAAC;IACxC;IAEA,SAASsC,iBAAiBA,CAAE1C,KAAa,EAAE;MACzC,IAAIR,gBAAgB,CAACQ,KAAK,KAAK,IAAI,EAAE;QACnCR,gBAAgB,CAACQ,KAAK,GAAGA,KAAK;MAChC;MAEAP,cAAc,CAACO,KAAK,GAAGA,KAAK;MAC5BS,MAAM,CAACT,KAAK,CAAC;IACf;IAEA,SAAS2C,UAAUA,CAAE/B,CAA0B,EAAE;MAC/CA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClB,IAAK,CAACtB,UAAU,CAACS,KAAK,IAAIY,CAAC,CAAC9C,IAAI,KAAK,OAAO,IAAK,CAACqB,QAAQ,CAACa,KAAK,EAAE;MAClE,MAAM;QAAE4C,KAAK;QAAEZ,GAAG;QAAED;MAAK,CAAC,GAAG5C,QAAQ,CAACa,KAAK,EAAE6C,qBAAqB,CAAC,CAAC;MACpE,MAAM;QAAED,KAAK,EAAEE;MAAoB,CAAC,GAAG1D,aAAa,CAACY,KAAK,EAAE6C,qBAAqB,CAAC,CAAC,IAAI;QAAED,KAAK,EAAE;MAAE,CAAY;MAC9G,MAAM;QAAEG,OAAO;QAAEC;MAAQ,CAAC,GAAG,SAAS,IAAIpC,CAAC,GAAGA,CAAC,CAACqC,OAAO,CAAC,CAAC,CAAC,GAAGrC,CAAC;MAC9D,MAAM2B,MAAM,GAAG;QAAElB,CAAC,EAAEuB,KAAK,GAAG,CAAC;QAAErB,CAAC,EAAE,CAACqB,KAAK,GAAG;MAAE,CAAC;MAC9C,MAAMM,MAAM,GAAG;QAAE7B,CAAC,EAAE0B,OAAO,GAAGhB,IAAI;QAAER,CAAC,EAAES,GAAG,GAAGgB;MAAQ,CAAC;MACtD,MAAMG,SAAS,GAAGhD,IAAI,CAACyB,KAAK,CAACF,KAAK,CAACa,MAAM,EAAEW,MAAM,CAAC,GAAGtE,KAAK,CAACL,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG;MAC9E,MAAMoD,WAAW,GAAG/C,KAAK,CAAChB,MAAM,IAAIqE,SAAS,CAACM,MAAM,EAAEW,MAAM,CAAC,GAAG,CAACJ,UAAU,GAAaA,UAAU,GAAGzC,gBAAgB,CAACL,KAAK,IAAI,CAAC;MAChI,MAAMoD,WAAW,GAAGjD,IAAI,CAACkD,IAAI,CAAC,EAAE,GAAGpD,cAAc,CAACD,KAAK,CAAC;MACxD,IAAIA,KAAK;MAET,KAAK,IAAI8B,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGsB,WAAW,EAAEtB,CAAC,EAAE,EAAE;QACpC9B,KAAK,GAAGyB,YAAY,CAAC0B,SAAS,GAAGrB,CAAC,GAAG7B,cAAc,CAACD,KAAK,EAAE2B,WAAW,CAAC;QACvE,IAAIjB,SAAS,CAACV,KAAK,CAAC,EAAE,OAAO0C,iBAAiB,CAAC1C,KAAK,CAAC;QAErDA,KAAK,GAAGyB,YAAY,CAAC0B,SAAS,GAAGrB,CAAC,GAAG7B,cAAc,CAACD,KAAK,EAAE2B,WAAW,CAAC;QACvE,IAAIjB,SAAS,CAACV,KAAK,CAAC,EAAE,OAAO0C,iBAAiB,CAAC1C,KAAK,CAAC;MACvD;IACF;IAEA,SAASsD,WAAWA,CAAE1C,CAA0B,EAAE;MAChDA,CAAC,CAACC,cAAc,CAAC,CAAC;MAElB0C,MAAM,CAACC,gBAAgB,CAAC,WAAW,EAAEb,UAAU,CAAC;MAChDY,MAAM,CAACC,gBAAgB,CAAC,WAAW,EAAEb,UAAU,CAAC;MAChDY,MAAM,CAACC,gBAAgB,CAAC,SAAS,EAAEC,SAAS,CAAC;MAC7CF,MAAM,CAACC,gBAAgB,CAAC,UAAU,EAAEC,SAAS,CAAC;MAC9CjE,gBAAgB,CAACQ,KAAK,GAAG,IAAI;MAC7BP,cAAc,CAACO,KAAK,GAAG,IAAI;MAC3BT,UAAU,CAACS,KAAK,GAAG,IAAI;MACvB2C,UAAU,CAAC/B,CAAC,CAAC;IACf;IAEA,SAAS6C,SAASA,CAAE7C,CAA0B,EAAE;MAC9CA,CAAC,CAAC8C,eAAe,CAAC,CAAC;MACnBH,MAAM,CAACI,mBAAmB,CAAC,WAAW,EAAEhB,UAAU,CAAC;MACnDY,MAAM,CAACI,mBAAmB,CAAC,WAAW,EAAEhB,UAAU,CAAC;MACnDY,MAAM,CAACI,mBAAmB,CAAC,SAAS,EAAEF,SAAS,CAAC;MAChDF,MAAM,CAACI,mBAAmB,CAAC,UAAU,EAAEF,SAAS,CAAC;MAEjDlE,UAAU,CAACS,KAAK,GAAG,KAAK;MACxB,IAAIP,cAAc,CAACO,KAAK,KAAK,IAAI,IAAIU,SAAS,CAACjB,cAAc,CAACO,KAAK,CAAC,EAAE;QACpEd,IAAI,CAAC,QAAQ,EAAEO,cAAc,CAACO,KAAK,CAAC;MACtC;IACF;IAEA9C,SAAS,CAAC,MAAM;MACd,OAAA0G,YAAA;QAAA,SAEW,CACL;UACE,qBAAqB,EAAE,IAAI;UAC3B,oCAAoC,EAAEhF,KAAK,CAACH,UAAU,IAAI,IAAI;UAC9D,+BAA+B,EAAEG,KAAK,CAACN;QACzC,CAAC,CACF;QAAA,eACagF,WAAW;QAAA,gBACVA,WAAW;QAAA,WACf1C,CAAa,IAAMhC,KAAK,CAACP,UAAU,IAAIsC,KAAK,CAACC,CAAC,CAAE;QAAA,OACrDzB;MAAQ,IAAAyE,YAAA;QAAA;QAAA,OAEgCxE;MAAa,IAAAwE,YAAA;QAAA,SAEhD,CACL;UACE,2BAA2B,EAAE,IAAI;UACjC,kCAAkC,EAAE3C,OAAO,CAACrC,KAAK,CAACH,UAAoB;QACxE,CAAC,EACDiB,gBAAgB,CAACM,KAAK,CACvB;QAAA,SACM,CACL;UACE6D,SAAS,EAAG,UAASjF,KAAK,CAACL,MAAM,GAAG0B,cAAc,CAACD,KAAK,IAAIrC,cAAc,CAACqC,KAAK,GAAGpB,KAAK,CAACR,GAAG,CAAE,eAAc8C,SAAS,CAACvD,cAAc,CAACqC,KAAK,CAAE;QAC9I,CAAC,EACDL,eAAe,CAACK,KAAK;MACtB,UAIDM,WAAW,CAACN,KAAK,CAAC8D,GAAG,CAAC9D,KAAK,IAAI;QAC7B,MAAM+D,QAAQ,GAAG/D,KAAK,KAAKrC,cAAc,CAACqC,KAAK;QAE/C,OAAA4D,YAAA;UAAA,SAEW,CACL;YACE,2BAA2B,EAAE,IAAI;YACjC,mCAAmC,EAAEG,QAAQ;YAC7C,qCAAqC,EAAEnF,KAAK,CAAClB,QAAQ,IAAI,CAACgD,SAAS,CAACV,KAAK;UAC3E,CAAC,EACD+D,QAAQ,IAAInE,sBAAsB,CAACI,KAAK,CACzC;UAAA,SACM,CACL6B,YAAY,CAAC7B,KAAK,CAAC,EACnB+D,QAAQ,IAAIlE,qBAAqB,CAACG,KAAK;QACxC,IAAA4D,YAAA,gBAEOhF,KAAK,CAACf,MAAM,CAACmC,KAAK,CAAC;MAGjC,CAAC,CAAC;IAKZ,CAAC,CAAC;EACJ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,131 +1,132 @@
|
|
|
1
|
-
@
|
|
1
|
+
@use '../../styles/tools'
|
|
2
|
+
@use './variables' as *
|
|
2
3
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
@include tools.layer('components')
|
|
5
|
+
// Theme
|
|
6
|
+
.v-time-picker-clock
|
|
7
|
+
background: rgb(var(--v-theme-background))
|
|
8
|
+
color: rgb(var(--v-theme-on-background))
|
|
9
|
+
|
|
10
|
+
&:after
|
|
11
|
+
color: rgb(var(--v-theme-primary))
|
|
7
12
|
|
|
13
|
+
.v-time-picker-clock__item--active
|
|
14
|
+
background-color: rgb(var(--v-theme-surface-variant))
|
|
15
|
+
color: rgb(var(--v-theme-on-surface-variant))
|
|
8
16
|
|
|
9
|
-
|
|
10
|
-
|
|
17
|
+
.v-time-picker-clock
|
|
18
|
+
margin: 0 auto
|
|
19
|
+
background: rgb(var(--v-theme-surface-light))
|
|
20
|
+
border-radius: 50%
|
|
21
|
+
position: relative
|
|
22
|
+
transition: none
|
|
23
|
+
user-select: none
|
|
24
|
+
height: 256px
|
|
25
|
+
width: 256px
|
|
26
|
+
flex: 1 0 auto
|
|
11
27
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
28
|
+
&__container
|
|
29
|
+
display: flex
|
|
30
|
+
flex-direction: column
|
|
31
|
+
flex-basis: 290px
|
|
32
|
+
justify-content: center
|
|
33
|
+
padding: $time-picker-clock-padding
|
|
15
34
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
35
|
+
&__hand
|
|
36
|
+
background-color: currentColor
|
|
37
|
+
height: $time-picker-clock-hand-height
|
|
38
|
+
width: $time-picker-clock-hand-width
|
|
39
|
+
bottom: 50%
|
|
40
|
+
left: $time-picker-clock-hand-left
|
|
41
|
+
transform-origin: center bottom
|
|
42
|
+
position: absolute
|
|
43
|
+
will-change: transform
|
|
44
|
+
z-index: 1
|
|
45
|
+
|
|
46
|
+
&:before
|
|
47
|
+
background: transparent
|
|
48
|
+
border-width: $time-picker-clock-end-border-width
|
|
49
|
+
border-style: $time-picker-clock-end-border-style
|
|
50
|
+
border-color: $time-picker-clock-end-border-color
|
|
51
|
+
border-radius: 100%
|
|
52
|
+
width: $time-picker-clock-end-size
|
|
53
|
+
height: $time-picker-clock-end-size
|
|
54
|
+
content: ''
|
|
55
|
+
position: absolute
|
|
56
|
+
top: $time-picker-clock-end-top
|
|
57
|
+
left: 50%
|
|
58
|
+
transform: translate(-50%, -50%)
|
|
59
|
+
|
|
60
|
+
&:after
|
|
61
|
+
content: ''
|
|
62
|
+
position: absolute
|
|
63
|
+
height: $time-picker-clock-center-size
|
|
64
|
+
width: $time-picker-clock-center-size
|
|
65
|
+
top: 100%
|
|
66
|
+
left: 50%
|
|
67
|
+
border-radius: 100%
|
|
68
|
+
background-color: currentColor
|
|
69
|
+
transform: translate(-50%, -50%)
|
|
70
|
+
|
|
71
|
+
&--inner:after
|
|
72
|
+
height: $time-picker-clock-inner-hand-height
|
|
73
|
+
|
|
74
|
+
&--readonly
|
|
75
|
+
pointer-events: none
|
|
76
|
+
|
|
77
|
+
.v-time-picker-clock__item--disabled
|
|
78
|
+
opacity: var(--v-disabled-opacity)
|
|
79
|
+
|
|
80
|
+
.v-picker--full-width
|
|
81
|
+
.v-time-picker-clock__container
|
|
82
|
+
max-width: $time-picker-clock-max-width
|
|
83
|
+
|
|
84
|
+
.v-time-picker-clock__inner
|
|
85
|
+
position: absolute
|
|
86
|
+
bottom: $time-picker-clock-inner-offset
|
|
87
|
+
left: $time-picker-clock-inner-offset
|
|
88
|
+
right: $time-picker-clock-inner-offset
|
|
89
|
+
top: $time-picker-clock-inner-offset
|
|
26
90
|
|
|
27
|
-
|
|
91
|
+
.v-time-picker-clock__item
|
|
92
|
+
align-items: center
|
|
93
|
+
border-radius: 100%
|
|
94
|
+
cursor: default
|
|
28
95
|
display: flex
|
|
29
|
-
|
|
30
|
-
flex-basis: 290px
|
|
96
|
+
font-size: $time-picker-number-font-size
|
|
31
97
|
justify-content: center
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
&__hand
|
|
35
|
-
background-color: currentColor
|
|
36
|
-
height: $time-picker-clock-hand-height
|
|
37
|
-
width: $time-picker-clock-hand-width
|
|
38
|
-
bottom: 50%
|
|
39
|
-
left: $time-picker-clock-hand-left
|
|
40
|
-
transform-origin: center bottom
|
|
98
|
+
height: $time-picker-indicator-size
|
|
41
99
|
position: absolute
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
background: transparent
|
|
47
|
-
border-width: $time-picker-clock-end-border-width
|
|
48
|
-
border-style: $time-picker-clock-end-border-style
|
|
49
|
-
border-color: $time-picker-clock-end-border-color
|
|
50
|
-
border-radius: 100%
|
|
51
|
-
width: $time-picker-clock-end-size
|
|
52
|
-
height: $time-picker-clock-end-size
|
|
53
|
-
content: ''
|
|
54
|
-
position: absolute
|
|
55
|
-
top: $time-picker-clock-end-top
|
|
56
|
-
left: 50%
|
|
57
|
-
transform: translate(-50%, -50%)
|
|
100
|
+
text-align: center
|
|
101
|
+
width: $time-picker-indicator-size
|
|
102
|
+
user-select: none
|
|
103
|
+
transform: translate(-50%, -50%)
|
|
58
104
|
|
|
59
|
-
|
|
105
|
+
> span
|
|
106
|
+
z-index: 1
|
|
107
|
+
|
|
108
|
+
&:before, &:after
|
|
60
109
|
content: ''
|
|
110
|
+
border-radius: 100%
|
|
61
111
|
position: absolute
|
|
62
|
-
|
|
63
|
-
width: $time-picker-clock-center-size
|
|
64
|
-
top: 100%
|
|
112
|
+
top: 50%
|
|
65
113
|
left: 50%
|
|
66
|
-
|
|
67
|
-
|
|
114
|
+
height: 14px
|
|
115
|
+
width: 14px
|
|
68
116
|
transform: translate(-50%, -50%)
|
|
69
117
|
|
|
70
|
-
|
|
71
|
-
height: $time-picker-
|
|
72
|
-
|
|
73
|
-
&--readonly
|
|
74
|
-
pointer-events: none
|
|
75
|
-
|
|
76
|
-
.v-time-picker-clock__item--disabled
|
|
77
|
-
opacity: var(--v-disabled-opacity)
|
|
78
|
-
|
|
79
|
-
.v-picker--full-width
|
|
80
|
-
.v-time-picker-clock__container
|
|
81
|
-
max-width: $time-picker-clock-max-width
|
|
82
|
-
|
|
83
|
-
.v-time-picker-clock__inner
|
|
84
|
-
position: absolute
|
|
85
|
-
bottom: $time-picker-clock-inner-offset
|
|
86
|
-
left: $time-picker-clock-inner-offset
|
|
87
|
-
right: $time-picker-clock-inner-offset
|
|
88
|
-
top: $time-picker-clock-inner-offset
|
|
89
|
-
|
|
90
|
-
.v-time-picker-clock__item
|
|
91
|
-
align-items: center
|
|
92
|
-
border-radius: 100%
|
|
93
|
-
cursor: default
|
|
94
|
-
display: flex
|
|
95
|
-
font-size: $time-picker-number-font-size
|
|
96
|
-
justify-content: center
|
|
97
|
-
height: $time-picker-indicator-size
|
|
98
|
-
position: absolute
|
|
99
|
-
text-align: center
|
|
100
|
-
width: $time-picker-indicator-size
|
|
101
|
-
user-select: none
|
|
102
|
-
transform: translate(-50%, -50%)
|
|
103
|
-
|
|
104
|
-
> span
|
|
105
|
-
z-index: 1
|
|
106
|
-
|
|
107
|
-
&:before, &:after
|
|
108
|
-
content: ''
|
|
109
|
-
border-radius: 100%
|
|
110
|
-
position: absolute
|
|
111
|
-
top: 50%
|
|
112
|
-
left: 50%
|
|
113
|
-
height: 14px
|
|
114
|
-
width: 14px
|
|
115
|
-
transform: translate(-50%, -50%)
|
|
116
|
-
|
|
117
|
-
&:after, &:before
|
|
118
|
-
height: $time-picker-indicator-size
|
|
119
|
-
width: $time-picker-indicator-size
|
|
118
|
+
&:after, &:before
|
|
119
|
+
height: $time-picker-indicator-size
|
|
120
|
+
width: $time-picker-indicator-size
|
|
120
121
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
122
|
+
&--active
|
|
123
|
+
cursor: default
|
|
124
|
+
z-index: 2
|
|
124
125
|
|
|
125
|
-
|
|
126
|
-
|
|
126
|
+
&--disabled
|
|
127
|
+
pointer-events: none
|
|
127
128
|
|
|
128
|
-
.v-picker--landscape
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
.v-picker--landscape
|
|
130
|
+
.v-time-picker-clock
|
|
131
|
+
&__container
|
|
132
|
+
flex-direction: row
|