@vuetify/nightly 3.8.6-master.2025-05-23 → 3.8.6-master.2025-05-26
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 +9 -3
- package/dist/json/attributes.json +2828 -2828
- package/dist/json/importMap-labs.json +24 -24
- package/dist/json/importMap.json +190 -190
- package/dist/json/web-types.json +5204 -5204
- package/dist/vuetify-labs.cjs +876 -873
- package/dist/vuetify-labs.css +5138 -5138
- package/dist/vuetify-labs.d.ts +69 -69
- package/dist/vuetify-labs.esm.js +877 -874
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +876 -873
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +763 -760
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +5182 -5182
- package/dist/vuetify.d.ts +69 -69
- package/dist/vuetify.esm.js +764 -761
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +763 -760
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +960 -960
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.js +11 -11
- package/lib/components/VAlert/VAlert.js.map +1 -1
- package/lib/components/VApp/VApp.js +5 -5
- package/lib/components/VApp/VApp.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +9 -9
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VAvatar/VAvatar.js +4 -4
- package/lib/components/VAvatar/VAvatar.js.map +1 -1
- package/lib/components/VBadge/VBadge.js +3 -3
- package/lib/components/VBadge/VBadge.js.map +1 -1
- package/lib/components/VBanner/VBanner.js +6 -6
- package/lib/components/VBanner/VBanner.js.map +1 -1
- package/lib/components/VBanner/VBannerActions.js +4 -4
- package/lib/components/VBanner/VBannerActions.js.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.js +6 -6
- package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js +5 -5
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.js +4 -4
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +5 -5
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +7 -7
- package/lib/components/VBtn/VBtn.js.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.js +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.js.map +1 -1
- package/lib/components/VCard/VCard.js +5 -5
- package/lib/components/VCard/VCard.js.map +1 -1
- package/lib/components/VCard/VCardActions.js +4 -4
- package/lib/components/VCard/VCardActions.js.map +1 -1
- package/lib/components/VCard/VCardItem.js +9 -9
- package/lib/components/VCard/VCardItem.js.map +1 -1
- package/lib/components/VCard/VCardSubtitle.js +4 -4
- package/lib/components/VCard/VCardSubtitle.js.map +1 -1
- package/lib/components/VCard/VCardText.js +4 -4
- package/lib/components/VCard/VCardText.js.map +1 -1
- package/lib/components/VCarousel/VCarousel.js +4 -4
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VChip/VChip.js +11 -11
- package/lib/components/VChip/VChip.js.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.js +3 -3
- package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.js +9 -9
- package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.js +6 -6
- package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.js +11 -11
- package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.js +10 -10
- package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.js +9 -9
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VConfirmEdit/VConfirmEdit.js +3 -3
- package/lib/components/VConfirmEdit/VConfirmEdit.js.map +1 -1
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.js +3 -3
- package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.js.map +1 -1
- package/lib/components/VCounter/VCounter.js +5 -5
- package/lib/components/VCounter/VCounter.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.js +5 -5
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +4 -4
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableColumn.js +5 -5
- package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
- package/lib/components/VDataTable/VDataTableFooter.js +6 -6
- package/lib/components/VDataTable/VDataTableFooter.js.map +1 -1
- package/lib/components/VDataTable/VDataTableGroupHeaderRow.js +7 -7
- package/lib/components/VDataTable/VDataTableGroupHeaderRow.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js +11 -11
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRow.js +6 -6
- package/lib/components/VDataTable/VDataTableRow.js.map +1 -1
- package/lib/components/VDataTable/VDataTableRows.js +7 -7
- package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.js +4 -4
- package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.js +14 -14
- package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +3 -3
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerControls.js +5 -5
- package/lib/components/VDatePicker/VDatePickerControls.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js +8 -8
- package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.js +10 -10
- package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonths.js +5 -5
- package/lib/components/VDatePicker/VDatePickerMonths.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.js +5 -5
- package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/lib/components/VDialog/__test__/VDialog.spec.browser.js +5 -5
- package/lib/components/VDialog/__test__/VDialog.spec.browser.js.map +1 -1
- package/lib/components/VDivider/VDivider.js +10 -10
- package/lib/components/VDivider/VDivider.js.map +1 -1
- package/lib/components/VEmptyState/VEmptyState.js +14 -14
- package/lib/components/VEmptyState/VEmptyState.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.js +6 -6
- package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.js +5 -5
- package/lib/components/VExpansionPanel/VExpansionPanelText.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.js +10 -10
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.js +4 -4
- package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
- package/lib/components/VFab/VFab.js +7 -7
- package/lib/components/VFab/VFab.js.map +1 -1
- package/lib/components/VField/VField.js +20 -18
- package/lib/components/VField/VField.js.map +1 -1
- package/lib/components/VField/VFieldLabel.js +4 -4
- package/lib/components/VField/VFieldLabel.js.map +1 -1
- package/lib/components/VFileInput/VFileInput.js +5 -5
- package/lib/components/VFileInput/VFileInput.js.map +1 -1
- package/lib/components/VFooter/VFooter.js +4 -4
- package/lib/components/VFooter/VFooter.js.map +1 -1
- package/lib/components/VForm/VForm.js +4 -4
- package/lib/components/VForm/VForm.js.map +1 -1
- package/lib/components/VGrid/VContainer.js +4 -4
- package/lib/components/VGrid/VContainer.js.map +1 -1
- package/lib/components/VIcon/VIcon.js +5 -5
- package/lib/components/VIcon/VIcon.js.map +1 -1
- package/lib/components/VImg/VImg.js +19 -19
- package/lib/components/VImg/VImg.js.map +1 -1
- package/lib/components/VInfiniteScroll/VInfiniteScroll.js +10 -10
- package/lib/components/VInfiniteScroll/VInfiniteScroll.js.map +1 -1
- package/lib/components/VInput/InputIcon.d.ts +1 -1
- package/lib/components/VInput/InputIcon.js +5 -4
- package/lib/components/VInput/InputIcon.js.map +1 -1
- package/lib/components/VInput/VInput.js +9 -9
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.js +3 -3
- package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
- package/lib/components/VLabel/VLabel.js +5 -5
- package/lib/components/VLabel/VLabel.js.map +1 -1
- package/lib/components/VLayout/VLayout.js +4 -4
- package/lib/components/VLayout/VLayout.js.map +1 -1
- package/lib/components/VLayout/VLayoutItem.js +4 -4
- package/lib/components/VLayout/VLayoutItem.js.map +1 -1
- package/lib/components/VLazy/VLazy.js +6 -6
- package/lib/components/VLazy/VLazy.js.map +1 -1
- package/lib/components/VList/VList.js +4 -4
- package/lib/components/VList/VList.js.map +1 -1
- package/lib/components/VList/VListGroup.js +5 -5
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.js +11 -11
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VList/VListItemAction.js +4 -4
- package/lib/components/VList/VListItemAction.js.map +1 -1
- package/lib/components/VList/VListItemMedia.js +4 -4
- package/lib/components/VList/VListItemMedia.js.map +1 -1
- package/lib/components/VList/VListItemSubtitle.js +4 -4
- package/lib/components/VList/VListItemSubtitle.js.map +1 -1
- package/lib/components/VList/VListSubheader.js +6 -6
- package/lib/components/VList/VListSubheader.js.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.js +4 -4
- package/lib/components/VLocaleProvider/VLocaleProvider.js.map +1 -1
- package/lib/components/VMain/VMain.js +5 -5
- package/lib/components/VMain/VMain.js.map +1 -1
- package/lib/components/VMessages/VMessages.js +4 -4
- package/lib/components/VMessages/VMessages.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +7 -7
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.js +8 -8
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +7 -7
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.js +8 -8
- package/lib/components/VOverlay/VOverlay.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +11 -11
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VParallax/VParallax.js +4 -4
- package/lib/components/VParallax/VParallax.js.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.js +12 -12
- package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.js +26 -26
- package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.js +2 -2
- package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.js +5 -5
- package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
- package/lib/components/VRating/VRating.js +14 -14
- package/lib/components/VRating/VRating.js.map +1 -1
- package/lib/components/VResponsive/VResponsive.js +9 -9
- package/lib/components/VResponsive/VResponsive.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +7 -7
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.js +11 -11
- package/lib/components/VSelectionControl/VSelectionControl.js.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js +5 -5
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js.map +1 -1
- package/lib/components/VSheet/VSheet.js +3 -3
- package/lib/components/VSheet/VSheet.js.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +12 -12
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VSlider/VSlider.js +4 -4
- package/lib/components/VSlider/VSlider.js.map +1 -1
- package/lib/components/VSlider/VSliderThumb.js +19 -19
- package/lib/components/VSlider/VSliderThumb.js.map +1 -1
- package/lib/components/VSlider/VSliderTrack.js +23 -23
- package/lib/components/VSlider/VSliderTrack.js.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.js +4 -4
- package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
- package/lib/components/VSnackbarQueue/VSnackbarQueue.js +3 -3
- package/lib/components/VSnackbarQueue/VSnackbarQueue.js.map +1 -1
- package/lib/components/VSparkline/VBarline.js +12 -12
- package/lib/components/VSparkline/VBarline.js.map +1 -1
- package/lib/components/VSparkline/VTrendline.js +8 -8
- package/lib/components/VSparkline/VTrendline.js.map +1 -1
- package/lib/components/VStepper/VStepper.js +2 -2
- package/lib/components/VStepper/VStepper.js.map +1 -1
- package/lib/components/VStepper/VStepperActions.js +2 -2
- package/lib/components/VStepper/VStepperActions.js.map +1 -1
- package/lib/components/VStepper/VStepperItem.js +10 -10
- package/lib/components/VStepper/VStepperItem.js.map +1 -1
- package/lib/components/VSwitch/VSwitch.js +10 -10
- package/lib/components/VSwitch/VSwitch.js.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.js +4 -4
- package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
- package/lib/components/VTable/VTable.js +8 -8
- package/lib/components/VTable/VTable.js.map +1 -1
- package/lib/components/VTabs/VTab.js +4 -4
- package/lib/components/VTabs/VTab.js.map +1 -1
- package/lib/components/VTabs/VTabs.js +2 -2
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +12 -12
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.js +10 -10
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/components/VThemeProvider/VThemeProvider.js +3 -3
- package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
- package/lib/components/VTimeline/VTimeline.js +5 -5
- package/lib/components/VTimeline/VTimeline.js.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.js +17 -17
- package/lib/components/VTimeline/VTimelineDivider.js.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.js +9 -9
- package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
- package/lib/components/VToolbar/VToolbar.js +13 -13
- package/lib/components/VToolbar/VToolbar.js.map +1 -1
- package/lib/components/VToolbar/VToolbarItems.js +4 -4
- package/lib/components/VToolbar/VToolbarItems.js.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.js +4 -4
- package/lib/components/VToolbar/VToolbarTitle.js.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.js +13 -13
- package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScrollItem.js +3 -3
- package/lib/components/VVirtualScroll/VVirtualScrollItem.js.map +1 -1
- package/lib/components/VWindow/VWindow.js +13 -13
- package/lib/components/VWindow/VWindow.js.map +1 -1
- package/lib/components/VWindow/VWindowItem.js +6 -6
- package/lib/components/VWindow/VWindowItem.js.map +1 -1
- package/lib/composables/filter.js +8 -8
- package/lib/composables/filter.js.map +1 -1
- package/lib/composables/icons.js +6 -6
- package/lib/composables/icons.js.map +1 -1
- package/lib/composables/loader.js +3 -3
- package/lib/composables/loader.js.map +1 -1
- package/lib/composables/variant.js +5 -5
- package/lib/composables/variant.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +69 -69
- package/lib/framework.js +1 -1
- package/lib/labs/VCalendar/VCalendar.js +15 -15
- package/lib/labs/VCalendar/VCalendar.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarDay.js +4 -4
- package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarHeader.js +4 -4
- package/lib/labs/VCalendar/VCalendarHeader.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarInterval.js +10 -10
- package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js +2 -2
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarMonthDay.js +6 -6
- package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
- package/lib/labs/VColorInput/VColorInput.js +3 -3
- package/lib/labs/VColorInput/VColorInput.js.map +1 -1
- package/lib/labs/VDateInput/VDateInput.js +2 -2
- package/lib/labs/VDateInput/VDateInput.js.map +1 -1
- package/lib/labs/VFileUpload/VFileUpload.js +9 -9
- package/lib/labs/VFileUpload/VFileUpload.js.map +1 -1
- package/lib/labs/VFileUpload/VFileUploadItem.js +3 -3
- package/lib/labs/VFileUpload/VFileUploadItem.js.map +1 -1
- package/lib/labs/VIconBtn/VIconBtn.js +7 -7
- package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
- package/lib/labs/VPicker/VPicker.js +7 -7
- package/lib/labs/VPicker/VPicker.js.map +1 -1
- package/lib/labs/VPullToRefresh/VPullToRefresh.js +13 -13
- package/lib/labs/VPullToRefresh/VPullToRefresh.js.map +1 -1
- package/lib/labs/VStepperVertical/VStepperVertical.js +2 -2
- package/lib/labs/VStepperVertical/VStepperVertical.js.map +1 -1
- package/lib/labs/VStepperVertical/VStepperVerticalItem.js +5 -5
- package/lib/labs/VStepperVertical/VStepperVerticalItem.js.map +1 -1
- package/lib/labs/VTimePicker/VTimePicker.js +2 -2
- package/lib/labs/VTimePicker/VTimePicker.js.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerClock.js +15 -15
- package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerControls.js +24 -24
- package/lib/labs/VTimePicker/VTimePickerControls.js.map +1 -1
- package/lib/labs/VTreeview/VTreeviewChildren.js +2 -2
- package/lib/labs/VTreeview/VTreeviewChildren.js.map +1 -1
- package/lib/labs/VTreeview/VTreeviewGroup.js +2 -2
- package/lib/labs/VTreeview/VTreeviewGroup.js.map +1 -1
- package/lib/labs/VTreeview/VTreeviewItem.js +3 -3
- package/lib/labs/VTreeview/VTreeviewItem.js.map +1 -1
- package/package.json +2 -2
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Fragment as _Fragment, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
|
1
|
+
import { Fragment as _Fragment, createVNode as _createVNode, createElementVNode as _createElementVNode, mergeProps as _mergeProps } from "vue";
|
2
2
|
// Styles
|
3
3
|
import "./VStepperVerticalItem.css";
|
4
4
|
|
@@ -93,7 +93,7 @@ export const VStepperVerticalItem = genericComponent()({
|
|
93
93
|
"hide-actions": false,
|
94
94
|
"value": step.value
|
95
95
|
}), {
|
96
|
-
title: () =>
|
96
|
+
title: () => _createElementVNode(_Fragment, null, [_createVNode(VAvatar, {
|
97
97
|
"key": "stepper-avatar",
|
98
98
|
"class": "v-stepper-vertical-item__avatar",
|
99
99
|
"color": hasColor ? props.color : undefined,
|
@@ -103,12 +103,12 @@ export const VStepperVerticalItem = genericComponent()({
|
|
103
103
|
default: () => [slots.icon?.(slotProps.value) ?? (icon.value ? _createVNode(VIcon, {
|
104
104
|
"icon": icon.value
|
105
105
|
}, null) : step.value)]
|
106
|
-
}),
|
106
|
+
}), _createElementVNode("div", null, [_createElementVNode("div", {
|
107
107
|
"class": "v-stepper-vertical-item__title"
|
108
|
-
}, [slots.title?.(slotProps.value) ?? props.title]),
|
108
|
+
}, [slots.title?.(slotProps.value) ?? props.title]), _createElementVNode("div", {
|
109
109
|
"class": "v-stepper-vertical-item__subtitle"
|
110
110
|
}, [slots.subtitle?.(slotProps.value) ?? props.subtitle])])]),
|
111
|
-
text: () =>
|
111
|
+
text: () => _createElementVNode(_Fragment, null, [slots.default?.(slotProps.value) ?? props.text, hasActions && _createVNode(VDefaultsProvider, {
|
112
112
|
"defaults": {
|
113
113
|
VStepperVerticalActions: {
|
114
114
|
disabled: disabled.value,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VStepperVerticalItem.js","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type StepperVerticalItemActionSlot<T = any> = StepperItemSlot<T> & {\n next: () => void\n prev: () => void\n}\n\nexport type VStepperVerticalItemSlots<T = any> = {\n default: StepperItemSlot<T>\n icon: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n title: StepperItemSlot<T>\n text: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n actions: StepperVerticalItemActionSlot<T>\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n } satisfies StepperItemSlot))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n } satisfies StepperVerticalItemActionSlot))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VStepperVerticalItem.js","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_createElementVNode","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type StepperVerticalItemActionSlot<T = any> = StepperItemSlot<T> & {\n next: () => void\n prev: () => void\n}\n\nexport type VStepperVerticalItemSlots<T = any> = {\n default: StepperItemSlot<T>\n icon: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n title: StepperItemSlot<T>\n text: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n actions: StepperVerticalItemActionSlot<T>\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n } satisfies StepperItemSlot))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n } satisfies StepperVerticalItemActionSlot))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
|
2
2
|
// Styles
|
3
3
|
import "./VTimePicker.css";
|
4
4
|
|
@@ -228,7 +228,7 @@ export const VTimePicker = genericComponent()({
|
|
228
228
|
"class": ['v-time-picker', props.class],
|
229
229
|
"style": props.style
|
230
230
|
}), {
|
231
|
-
title: () => slots.title?.() ??
|
231
|
+
title: () => slots.title?.() ?? _createElementVNode("div", {
|
232
232
|
"class": "v-time-picker__title"
|
233
233
|
}, [t(props.title)]),
|
234
234
|
header: () => _createVNode(VTimePickerControls, _mergeProps(timePickerControlsProps, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTimePicker.js","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","useProxiedModel","computed","onMounted","ref","watch","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","viewMode","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","onChange","emitChange","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType<VTimePickerViewMode>,\n default: 'hour',\n },\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n viewMode={ viewMode.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n viewMode.value === 'hour'\n ? isAllowedHourCb.value\n : (viewMode.value === 'minute'\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ viewMode.value === 'hour' && !isAmPm.value }\n format={ viewMode.value === 'hour'\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VTimePicker.js","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","useProxiedModel","computed","onMounted","ref","watch","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","viewMode","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","onChange","emitChange","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","_createElementVNode","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType<VTimePickerViewMode>,\n default: 'hour',\n },\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n viewMode={ viewMode.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n viewMode.value === 'hour'\n ? isAllowedHourCb.value\n : (viewMode.value === 'minute'\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ viewMode.value === 'hour' && !isAmPm.value }\n format={ viewMode.value === 'hour'\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, createElementVNode as _createElementVNode } from "vue";
|
2
2
|
// Styles
|
3
3
|
import "./VTimePickerClock.css";
|
4
4
|
|
@@ -208,37 +208,37 @@ export const VTimePickerClock = genericComponent()({
|
|
208
208
|
}
|
209
209
|
}
|
210
210
|
useRender(() => {
|
211
|
-
return
|
212
|
-
"class": [{
|
211
|
+
return _createElementVNode("div", {
|
212
|
+
"class": _normalizeClass([{
|
213
213
|
'v-time-picker-clock': true,
|
214
214
|
'v-time-picker-clock--indeterminate': props.modelValue == null,
|
215
215
|
'v-time-picker-clock--readonly': props.readonly
|
216
|
-
}],
|
216
|
+
}]),
|
217
217
|
"onMousedown": onMouseDown,
|
218
218
|
"onTouchstart": onMouseDown,
|
219
219
|
"onWheel": wheel,
|
220
220
|
"ref": clockRef
|
221
|
-
}, [
|
221
|
+
}, [_createElementVNode("div", {
|
222
222
|
"class": "v-time-picker-clock__inner",
|
223
223
|
"ref": innerClockRef
|
224
|
-
}, [
|
225
|
-
"class": [{
|
224
|
+
}, [_createElementVNode("div", {
|
225
|
+
"class": _normalizeClass([{
|
226
226
|
'v-time-picker-clock__hand': true,
|
227
227
|
'v-time-picker-clock__hand--inner': isInner(props.modelValue)
|
228
|
-
}, textColorClasses.value],
|
229
|
-
"style": [{
|
228
|
+
}, textColorClasses.value]),
|
229
|
+
"style": _normalizeStyle([{
|
230
230
|
transform: `rotate(${props.rotate + degreesPerUnit.value * (displayedValue.value - props.min)}deg) scaleY(${handScale(displayedValue.value)})`
|
231
|
-
}, textColorStyles.value]
|
231
|
+
}, textColorStyles.value])
|
232
232
|
}, null), genChildren.value.map(value => {
|
233
233
|
const isActive = value === displayedValue.value;
|
234
|
-
return
|
235
|
-
"class": [{
|
234
|
+
return _createElementVNode("div", {
|
235
|
+
"class": _normalizeClass([{
|
236
236
|
'v-time-picker-clock__item': true,
|
237
237
|
'v-time-picker-clock__item--active': isActive,
|
238
238
|
'v-time-picker-clock__item--disabled': props.disabled || !isAllowed(value)
|
239
|
-
}, isActive && backgroundColorClasses.value],
|
240
|
-
"style": [getTransform(value), isActive && backgroundColorStyles.value]
|
241
|
-
}, [
|
239
|
+
}, isActive && backgroundColorClasses.value]),
|
240
|
+
"style": _normalizeStyle([getTransform(value), isActive && backgroundColorStyles.value])
|
241
|
+
}, [_createElementVNode("span", null, [props.format(value)])]);
|
242
242
|
})])]);
|
243
243
|
});
|
244
244
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTimePickerClock.js","names":["useBackgroundColor","useTextColor","computed","ref","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":["// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, 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) => true,\n input: (val: number) => true,\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(() => props.color)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => 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 if (!props.scrollable || props.disabled) return\n\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: `${Math.round(50 + x * 50)}%`,\n top: `${Math.round(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 if (props.disabled) return\n\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={ wheel }\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.js","names":["useBackgroundColor","useTextColor","computed","ref","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","_createElementVNode","_normalizeClass","_normalizeStyle","transform","map","isActive"],"sources":["../../../src/labs/VTimePicker/VTimePickerClock.tsx"],"sourcesContent":["// Styles\nimport './VTimePickerClock.sass'\n\n// Composables\nimport { useBackgroundColor, useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, 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) => true,\n input: (val: number) => true,\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(() => props.color)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(() => 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 if (!props.scrollable || props.disabled) return\n\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: `${Math.round(50 + x * 50)}%`,\n top: `${Math.round(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 if (props.disabled) return\n\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={ wheel }\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,4 +1,4 @@
|
|
1
|
-
import { createVNode as _createVNode, createTextVNode as _createTextVNode } from "vue";
|
1
|
+
import { normalizeClass as _normalizeClass, createVNode as _createVNode, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode } from "vue";
|
2
2
|
// Styles
|
3
3
|
import "./VTimePickerControls.css";
|
4
4
|
|
@@ -42,46 +42,46 @@ export const VTimePickerControls = genericComponent()({
|
|
42
42
|
if (props.ampm) {
|
43
43
|
hour = hour ? (hour - 1) % 12 + 1 : 12;
|
44
44
|
}
|
45
|
-
return
|
45
|
+
return _createElementVNode("div", {
|
46
46
|
"class": "v-time-picker-controls"
|
47
|
-
}, [
|
48
|
-
"class": {
|
47
|
+
}, [_createElementVNode("div", {
|
48
|
+
"class": _normalizeClass({
|
49
49
|
'v-time-picker-controls__time': true,
|
50
50
|
'v-time-picker-controls__time--with-seconds': props.useSeconds
|
51
|
-
}
|
51
|
+
})
|
52
52
|
}, [_createVNode(VBtn, {
|
53
53
|
"active": props.viewMode === 'hour',
|
54
54
|
"color": props.viewMode === 'hour' ? props.color : undefined,
|
55
55
|
"disabled": props.disabled,
|
56
56
|
"variant": "tonal",
|
57
|
-
"class": {
|
57
|
+
"class": _normalizeClass({
|
58
58
|
'v-time-picker-controls__time__btn': true,
|
59
59
|
'v-time-picker-controls__time--with-ampm__btn': props.ampm,
|
60
60
|
'v-time-picker-controls__time--with-seconds__btn': props.useSeconds
|
61
|
-
},
|
61
|
+
}),
|
62
62
|
"text": props.hour == null ? '--' : pad(`${hour}`),
|
63
63
|
"onClick": () => emit('update:viewMode', 'hour')
|
64
|
-
}, null),
|
65
|
-
"class": ['v-time-picker-controls__time__separator', {
|
64
|
+
}, null), _createElementVNode("span", {
|
65
|
+
"class": _normalizeClass(['v-time-picker-controls__time__separator', {
|
66
66
|
'v-time-picker-controls--with-seconds__time__separator': props.useSeconds
|
67
|
-
}]
|
67
|
+
}])
|
68
68
|
}, [_createTextVNode(":")]), _createVNode(VBtn, {
|
69
69
|
"active": props.viewMode === 'minute',
|
70
70
|
"color": props.viewMode === 'minute' ? props.color : undefined,
|
71
|
-
"class": {
|
71
|
+
"class": _normalizeClass({
|
72
72
|
'v-time-picker-controls__time__btn': true,
|
73
73
|
'v-time-picker-controls__time__btn__active': props.viewMode === 'minute',
|
74
74
|
'v-time-picker-controls__time--with-ampm__btn': props.ampm,
|
75
75
|
'v-time-picker-controls__time--with-seconds__btn': props.useSeconds
|
76
|
-
},
|
76
|
+
}),
|
77
77
|
"disabled": props.disabled,
|
78
78
|
"variant": "tonal",
|
79
79
|
"text": props.minute == null ? '--' : pad(props.minute),
|
80
80
|
"onClick": () => emit('update:viewMode', 'minute')
|
81
|
-
}, null), props.useSeconds &&
|
82
|
-
"class": ['v-time-picker-controls__time__separator', {
|
81
|
+
}, null), props.useSeconds && _createElementVNode("span", {
|
82
|
+
"class": _normalizeClass(['v-time-picker-controls__time__separator', {
|
83
83
|
'v-time-picker-controls--with-seconds__time__separator': props.useSeconds
|
84
|
-
}],
|
84
|
+
}]),
|
85
85
|
"key": "secondsDivider"
|
86
86
|
}, [_createTextVNode(":")]), props.useSeconds && _createVNode(VBtn, {
|
87
87
|
"key": "secondsVal",
|
@@ -89,25 +89,25 @@ export const VTimePickerControls = genericComponent()({
|
|
89
89
|
"color": props.viewMode === 'second' ? props.color : undefined,
|
90
90
|
"variant": "tonal",
|
91
91
|
"onClick": () => emit('update:viewMode', 'second'),
|
92
|
-
"class": {
|
92
|
+
"class": _normalizeClass({
|
93
93
|
'v-time-picker-controls__time__btn': true,
|
94
94
|
'v-time-picker-controls__time__btn__active': props.viewMode === 'second',
|
95
95
|
'v-time-picker-controls__time--with-seconds__btn': props.useSeconds
|
96
|
-
},
|
96
|
+
}),
|
97
97
|
"disabled": props.disabled,
|
98
98
|
"text": props.second == null ? '--' : pad(props.second)
|
99
|
-
}, null), props.ampm && props.ampmInTitle &&
|
100
|
-
"class": ['v-time-picker-controls__ampm', {
|
99
|
+
}, null), props.ampm && props.ampmInTitle && _createElementVNode("div", {
|
100
|
+
"class": _normalizeClass(['v-time-picker-controls__ampm', {
|
101
101
|
'v-time-picker-controls__ampm--readonly': props.ampmReadonly
|
102
|
-
}]
|
102
|
+
}])
|
103
103
|
}, [_createVNode(VBtn, {
|
104
104
|
"active": props.period === 'am',
|
105
105
|
"color": props.period === 'am' ? props.color : undefined,
|
106
|
-
"class": {
|
106
|
+
"class": _normalizeClass({
|
107
107
|
'v-time-picker-controls__ampm__am': true,
|
108
108
|
'v-time-picker-controls__ampm__btn': true,
|
109
109
|
'v-time-picker-controls__ampm__btn__active': props.period === 'am'
|
110
|
-
},
|
110
|
+
}),
|
111
111
|
"disabled": props.disabled,
|
112
112
|
"text": t('$vuetify.timePicker.am'),
|
113
113
|
"variant": props.disabled && props.period === 'am' ? 'elevated' : 'tonal',
|
@@ -115,11 +115,11 @@ export const VTimePickerControls = genericComponent()({
|
|
115
115
|
}, null), _createVNode(VBtn, {
|
116
116
|
"active": props.period === 'pm',
|
117
117
|
"color": props.period === 'pm' ? props.color : undefined,
|
118
|
-
"class": {
|
118
|
+
"class": _normalizeClass({
|
119
119
|
'v-time-picker-controls__ampm__pm': true,
|
120
120
|
'v-time-picker-controls__ampm__btn': true,
|
121
121
|
'v-time-picker-controls__ampm__btn__active': props.period === 'pm'
|
122
|
-
},
|
122
|
+
}),
|
123
123
|
"disabled": props.disabled,
|
124
124
|
"text": t('$vuetify.timePicker.pm'),
|
125
125
|
"variant": props.disabled && props.period === 'pm' ? 'elevated' : 'tonal',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VTimePickerControls.js","names":["pad","VBtn","useLocale","genericComponent","propsFactory","useRender","makeVTimePickerControlsProps","ampm","Boolean","ampmInTitle","ampmReadonly","color","String","disabled","hour","Number","minute","second","period","readonly","useSeconds","value","viewMode","VTimePickerControls","name","props","emits","data","setup","_ref","emit","slots","t","_createVNode","undefined","onClick","_createTextVNode"],"sources":["../../../src/labs/VTimePicker/VTimePickerControls.tsx"],"sourcesContent":["// Styles\nimport './VTimePickerControls.sass'\n\n// Components\nimport { pad } from './util'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\ntype Period = 'am' | 'pm'\n\nexport const makeVTimePickerControlsProps = propsFactory({\n ampm: Boolean,\n ampmInTitle: Boolean,\n ampmReadonly: Boolean,\n color: String,\n disabled: Boolean,\n hour: Number,\n minute: Number,\n second: Number,\n period: String as PropType<Period>,\n readonly: Boolean,\n useSeconds: Boolean,\n value: Number,\n viewMode: String as PropType<VTimePickerViewMode>,\n}, 'VTimePickerControls')\n\nexport const VTimePickerControls = genericComponent()({\n name: 'VTimePickerControls',\n\n props: makeVTimePickerControlsProps(),\n\n emits: {\n 'update:period': (data: Period) => true,\n 'update:viewMode': (data: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n useRender(() => {\n let hour = props.hour\n if (props.ampm) {\n hour = hour ? ((hour - 1) % 12 + 1) : 12\n }\n return (\n <div class=\"v-time-picker-controls\">\n <div\n class={{\n 'v-time-picker-controls__time': true,\n 'v-time-picker-controls__time--with-seconds': props.useSeconds,\n }}\n >\n <VBtn\n active={ props.viewMode === 'hour' }\n color={ props.viewMode === 'hour' ? props.color : undefined }\n disabled={ props.disabled }\n variant=\"tonal\"\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time--with-ampm__btn': props.ampm,\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n text={ props.hour == null ? '--' : pad(`${hour}`) }\n onClick={ () => emit('update:viewMode', 'hour') }\n />\n\n <span\n class={[\n 'v-time-picker-controls__time__separator',\n { 'v-time-picker-controls--with-seconds__time__separator': props.useSeconds },\n ]}\n >:</span>\n\n <VBtn\n active={ props.viewMode === 'minute' }\n color={ props.viewMode === 'minute' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time__btn__active': props.viewMode === 'minute',\n 'v-time-picker-controls__time--with-ampm__btn': props.ampm,\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n disabled={ props.disabled }\n variant=\"tonal\"\n text={ props.minute == null ? '--' : pad(props.minute) }\n onClick={ () => emit('update:viewMode', 'minute') }\n />\n\n {\n props.useSeconds && (\n <span\n class={[\n 'v-time-picker-controls__time__separator',\n { 'v-time-picker-controls--with-seconds__time__separator': props.useSeconds },\n ]}\n key=\"secondsDivider\"\n >:</span>\n )\n }\n\n {\n props.useSeconds && (\n <VBtn\n key=\"secondsVal\"\n active={ props.viewMode === 'second' }\n color={ props.viewMode === 'second' ? props.color : undefined }\n variant=\"tonal\"\n onClick={ () => emit('update:viewMode', 'second') }\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time__btn__active': props.viewMode === 'second',\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n disabled={ props.disabled }\n text={ props.second == null ? '--' : pad(props.second) }\n />\n )\n }\n\n {\n props.ampm && props.ampmInTitle && (\n <div\n class={['v-time-picker-controls__ampm', {\n 'v-time-picker-controls__ampm--readonly': props.ampmReadonly,\n }]}\n >\n <VBtn\n active={ props.period === 'am' }\n color={ props.period === 'am' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__ampm__am': true,\n 'v-time-picker-controls__ampm__btn': true,\n 'v-time-picker-controls__ampm__btn__active': props.period === 'am',\n }}\n disabled={ props.disabled }\n text={ t('$vuetify.timePicker.am') }\n variant={ props.disabled && props.period === 'am' ? 'elevated' : 'tonal' }\n onClick={ () => props.period !== 'am' ? emit('update:period', 'am') : null }\n />\n\n <VBtn\n active={ props.period === 'pm' }\n color={ props.period === 'pm' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__ampm__pm': true,\n 'v-time-picker-controls__ampm__btn': true,\n 'v-time-picker-controls__ampm__btn__active': props.period === 'pm',\n }}\n disabled={ props.disabled }\n text={ t('$vuetify.timePicker.pm') }\n variant={ props.disabled && props.period === 'pm' ? 'elevated' : 'tonal' }\n onClick={ () => props.period !== 'pm' ? emit('update:period', 'pm') : null }\n />\n </div>\n )\n }\n </div>\n </div>\n )\n })\n\n return {}\n },\n\n})\n\nexport type VTimePickerControls = InstanceType<typeof VTimePickerControls>\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"VTimePickerControls.js","names":["pad","VBtn","useLocale","genericComponent","propsFactory","useRender","makeVTimePickerControlsProps","ampm","Boolean","ampmInTitle","ampmReadonly","color","String","disabled","hour","Number","minute","second","period","readonly","useSeconds","value","viewMode","VTimePickerControls","name","props","emits","data","setup","_ref","emit","slots","t","_createElementVNode","_normalizeClass","_createVNode","undefined","onClick","_createTextVNode"],"sources":["../../../src/labs/VTimePicker/VTimePickerControls.tsx"],"sourcesContent":["// Styles\nimport './VTimePickerControls.sass'\n\n// Components\nimport { pad } from './util'\nimport { VBtn } from '@/components/VBtn'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\ntype Period = 'am' | 'pm'\n\nexport const makeVTimePickerControlsProps = propsFactory({\n ampm: Boolean,\n ampmInTitle: Boolean,\n ampmReadonly: Boolean,\n color: String,\n disabled: Boolean,\n hour: Number,\n minute: Number,\n second: Number,\n period: String as PropType<Period>,\n readonly: Boolean,\n useSeconds: Boolean,\n value: Number,\n viewMode: String as PropType<VTimePickerViewMode>,\n}, 'VTimePickerControls')\n\nexport const VTimePickerControls = genericComponent()({\n name: 'VTimePickerControls',\n\n props: makeVTimePickerControlsProps(),\n\n emits: {\n 'update:period': (data: Period) => true,\n 'update:viewMode': (data: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n\n useRender(() => {\n let hour = props.hour\n if (props.ampm) {\n hour = hour ? ((hour - 1) % 12 + 1) : 12\n }\n return (\n <div class=\"v-time-picker-controls\">\n <div\n class={{\n 'v-time-picker-controls__time': true,\n 'v-time-picker-controls__time--with-seconds': props.useSeconds,\n }}\n >\n <VBtn\n active={ props.viewMode === 'hour' }\n color={ props.viewMode === 'hour' ? props.color : undefined }\n disabled={ props.disabled }\n variant=\"tonal\"\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time--with-ampm__btn': props.ampm,\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n text={ props.hour == null ? '--' : pad(`${hour}`) }\n onClick={ () => emit('update:viewMode', 'hour') }\n />\n\n <span\n class={[\n 'v-time-picker-controls__time__separator',\n { 'v-time-picker-controls--with-seconds__time__separator': props.useSeconds },\n ]}\n >:</span>\n\n <VBtn\n active={ props.viewMode === 'minute' }\n color={ props.viewMode === 'minute' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time__btn__active': props.viewMode === 'minute',\n 'v-time-picker-controls__time--with-ampm__btn': props.ampm,\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n disabled={ props.disabled }\n variant=\"tonal\"\n text={ props.minute == null ? '--' : pad(props.minute) }\n onClick={ () => emit('update:viewMode', 'minute') }\n />\n\n {\n props.useSeconds && (\n <span\n class={[\n 'v-time-picker-controls__time__separator',\n { 'v-time-picker-controls--with-seconds__time__separator': props.useSeconds },\n ]}\n key=\"secondsDivider\"\n >:</span>\n )\n }\n\n {\n props.useSeconds && (\n <VBtn\n key=\"secondsVal\"\n active={ props.viewMode === 'second' }\n color={ props.viewMode === 'second' ? props.color : undefined }\n variant=\"tonal\"\n onClick={ () => emit('update:viewMode', 'second') }\n class={{\n 'v-time-picker-controls__time__btn': true,\n 'v-time-picker-controls__time__btn__active': props.viewMode === 'second',\n 'v-time-picker-controls__time--with-seconds__btn': props.useSeconds,\n }}\n disabled={ props.disabled }\n text={ props.second == null ? '--' : pad(props.second) }\n />\n )\n }\n\n {\n props.ampm && props.ampmInTitle && (\n <div\n class={['v-time-picker-controls__ampm', {\n 'v-time-picker-controls__ampm--readonly': props.ampmReadonly,\n }]}\n >\n <VBtn\n active={ props.period === 'am' }\n color={ props.period === 'am' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__ampm__am': true,\n 'v-time-picker-controls__ampm__btn': true,\n 'v-time-picker-controls__ampm__btn__active': props.period === 'am',\n }}\n disabled={ props.disabled }\n text={ t('$vuetify.timePicker.am') }\n variant={ props.disabled && props.period === 'am' ? 'elevated' : 'tonal' }\n onClick={ () => props.period !== 'am' ? emit('update:period', 'am') : null }\n />\n\n <VBtn\n active={ props.period === 'pm' }\n color={ props.period === 'pm' ? props.color : undefined }\n class={{\n 'v-time-picker-controls__ampm__pm': true,\n 'v-time-picker-controls__ampm__btn': true,\n 'v-time-picker-controls__ampm__btn__active': props.period === 'pm',\n }}\n disabled={ props.disabled }\n text={ t('$vuetify.timePicker.pm') }\n variant={ props.disabled && props.period === 'pm' ? 'elevated' : 'tonal' }\n onClick={ () => props.period !== 'pm' ? emit('update:period', 'pm') : null }\n />\n </div>\n )\n }\n </div>\n </div>\n )\n })\n\n return {}\n },\n\n})\n\nexport type VTimePickerControls = InstanceType<typeof VTimePickerControls>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,GAAG;AAAA,SACHC,IAAI,0CAEb;AAAA,SACSC,SAAS,uCAElB;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,+BAElD;AAKA,OAAO,MAAMC,4BAA4B,GAAGF,YAAY,CAAC;EACvDG,IAAI,EAAEC,OAAO;EACbC,WAAW,EAAED,OAAO;EACpBE,YAAY,EAAEF,OAAO;EACrBG,KAAK,EAAEC,MAAM;EACbC,QAAQ,EAAEL,OAAO;EACjBM,IAAI,EAAEC,MAAM;EACZC,MAAM,EAAED,MAAM;EACdE,MAAM,EAAEF,MAAM;EACdG,MAAM,EAAEN,MAA0B;EAClCO,QAAQ,EAAEX,OAAO;EACjBY,UAAU,EAAEZ,OAAO;EACnBa,KAAK,EAAEN,MAAM;EACbO,QAAQ,EAAEV;AACZ,CAAC,EAAE,qBAAqB,CAAC;AAEzB,OAAO,MAAMW,mBAAmB,GAAGpB,gBAAgB,CAAC,CAAC,CAAC;EACpDqB,IAAI,EAAE,qBAAqB;EAE3BC,KAAK,EAAEnB,4BAA4B,CAAC,CAAC;EAErCoB,KAAK,EAAE;IACL,eAAe,EAAGC,IAAY,IAAK,IAAI;IACvC,iBAAiB,EAAGA,IAAyB,IAAK;EACpD,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAmB;IAAA,IAAjB;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC3B,MAAM;MAAEG;IAAE,CAAC,GAAG9B,SAAS,CAAC,CAAC;IAEzBG,SAAS,CAAC,MAAM;MACd,IAAIS,IAAI,GAAGW,KAAK,CAACX,IAAI;MACrB,IAAIW,KAAK,CAAClB,IAAI,EAAE;QACdO,IAAI,GAAGA,IAAI,GAAI,CAACA,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAI,EAAE;MAC1C;MACA,OAAAmB,mBAAA;QAAA;MAAA,IAAAA,mBAAA;QAAA,SAAAC,eAAA,CAGa;UACL,8BAA8B,EAAE,IAAI;UACpC,4CAA4C,EAAET,KAAK,CAACL;QACtD,CAAC;MAAA,IAAAe,YAAA,CAAAlC,IAAA;QAAA,UAGUwB,KAAK,CAACH,QAAQ,KAAK,MAAM;QAAA,SAC1BG,KAAK,CAACH,QAAQ,KAAK,MAAM,GAAGG,KAAK,CAACd,KAAK,GAAGyB,SAAS;QAAA,YAChDX,KAAK,CAACZ,QAAQ;QAAA;QAAA,SAAAqB,eAAA,CAElB;UACL,mCAAmC,EAAE,IAAI;UACzC,8CAA8C,EAAET,KAAK,CAAClB,IAAI;UAC1D,iDAAiD,EAAEkB,KAAK,CAACL;QAC3D,CAAC;QAAA,QACMK,KAAK,CAACX,IAAI,IAAI,IAAI,GAAG,IAAI,GAAGd,GAAG,CAAC,GAAGc,IAAI,EAAE,CAAC;QAAA,WACvCuB,CAAA,KAAMP,IAAI,CAAC,iBAAiB,EAAE,MAAM;MAAC,UAAAG,mBAAA;QAAA,SAAAC,eAAA,CAIxC,CACL,yCAAyC,EACzC;UAAE,uDAAuD,EAAET,KAAK,CAACL;QAAW,CAAC,CAC9E;MAAA,IAAAkB,gBAAA,SAAAH,YAAA,CAAAlC,IAAA;QAAA,UAIQwB,KAAK,CAACH,QAAQ,KAAK,QAAQ;QAAA,SAC5BG,KAAK,CAACH,QAAQ,KAAK,QAAQ,GAAGG,KAAK,CAACd,KAAK,GAAGyB,SAAS;QAAA,SAAAF,eAAA,CACtD;UACL,mCAAmC,EAAE,IAAI;UACzC,2CAA2C,EAAET,KAAK,CAACH,QAAQ,KAAK,QAAQ;UACxE,8CAA8C,EAAEG,KAAK,CAAClB,IAAI;UAC1D,iDAAiD,EAAEkB,KAAK,CAACL;QAC3D,CAAC;QAAA,YACUK,KAAK,CAACZ,QAAQ;QAAA;QAAA,QAElBY,KAAK,CAACT,MAAM,IAAI,IAAI,GAAG,IAAI,GAAGhB,GAAG,CAACyB,KAAK,CAACT,MAAM,CAAC;QAAA,WAC5CqB,CAAA,KAAMP,IAAI,CAAC,iBAAiB,EAAE,QAAQ;MAAC,UAIjDL,KAAK,CAACL,UAAU,IAAAa,mBAAA;QAAA,SAAAC,eAAA,CAEL,CACL,yCAAyC,EACzC;UAAE,uDAAuD,EAAET,KAAK,CAACL;QAAW,CAAC,CAC9E;QAAA;MAAA,IAAAkB,gBAAA,OAGJ,EAIDb,KAAK,CAACL,UAAU,IAAAe,YAAA,CAAAlC,IAAA;QAAA;QAAA,UAGHwB,KAAK,CAACH,QAAQ,KAAK,QAAQ;QAAA,SAC5BG,KAAK,CAACH,QAAQ,KAAK,QAAQ,GAAGG,KAAK,CAACd,KAAK,GAAGyB,SAAS;QAAA;QAAA,WAEnDC,CAAA,KAAMP,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC;QAAA,SAAAI,eAAA,CAC1C;UACL,mCAAmC,EAAE,IAAI;UACzC,2CAA2C,EAAET,KAAK,CAACH,QAAQ,KAAK,QAAQ;UACxE,iDAAiD,EAAEG,KAAK,CAACL;QAC3D,CAAC;QAAA,YACUK,KAAK,CAACZ,QAAQ;QAAA,QAClBY,KAAK,CAACR,MAAM,IAAI,IAAI,GAAG,IAAI,GAAGjB,GAAG,CAACyB,KAAK,CAACR,MAAM;MAAC,QAEzD,EAIDQ,KAAK,CAAClB,IAAI,IAAIkB,KAAK,CAAChB,WAAW,IAAAwB,mBAAA;QAAA,SAAAC,eAAA,CAEpB,CAAC,8BAA8B,EAAE;UACtC,wCAAwC,EAAET,KAAK,CAACf;QAClD,CAAC,CAAC;MAAA,IAAAyB,YAAA,CAAAlC,IAAA;QAAA,UAGSwB,KAAK,CAACP,MAAM,KAAK,IAAI;QAAA,SACtBO,KAAK,CAACP,MAAM,KAAK,IAAI,GAAGO,KAAK,CAACd,KAAK,GAAGyB,SAAS;QAAA,SAAAF,eAAA,CAChD;UACL,kCAAkC,EAAE,IAAI;UACxC,mCAAmC,EAAE,IAAI;UACzC,2CAA2C,EAAET,KAAK,CAACP,MAAM,KAAK;QAChE,CAAC;QAAA,YACUO,KAAK,CAACZ,QAAQ;QAAA,QAClBmB,CAAC,CAAC,wBAAwB,CAAC;QAAA,WACxBP,KAAK,CAACZ,QAAQ,IAAIY,KAAK,CAACP,MAAM,KAAK,IAAI,GAAG,UAAU,GAAG,OAAO;QAAA,WAC9DmB,CAAA,KAAMZ,KAAK,CAACP,MAAM,KAAK,IAAI,GAAGY,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG;MAAI,UAAAK,YAAA,CAAAlC,IAAA;QAAA,UAIjEwB,KAAK,CAACP,MAAM,KAAK,IAAI;QAAA,SACtBO,KAAK,CAACP,MAAM,KAAK,IAAI,GAAGO,KAAK,CAACd,KAAK,GAAGyB,SAAS;QAAA,SAAAF,eAAA,CAChD;UACL,kCAAkC,EAAE,IAAI;UACxC,mCAAmC,EAAE,IAAI;UACzC,2CAA2C,EAAET,KAAK,CAACP,MAAM,KAAK;QAChE,CAAC;QAAA,YACUO,KAAK,CAACZ,QAAQ;QAAA,QAClBmB,CAAC,CAAC,wBAAwB,CAAC;QAAA,WACxBP,KAAK,CAACZ,QAAQ,IAAIY,KAAK,CAACP,MAAM,KAAK,IAAI,GAAG,UAAU,GAAG,OAAO;QAAA,WAC9DmB,CAAA,KAAMZ,KAAK,CAACP,MAAM,KAAK,IAAI,GAAGY,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG;MAAI,UAG/E;IAKX,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AAEF,CAAC,CAAC","ignoreList":[]}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Fragment as _Fragment, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
|
1
|
+
import { Fragment as _Fragment, createVNode as _createVNode, createElementVNode as _createElementVNode, mergeProps as _mergeProps } from "vue";
|
2
2
|
// Components
|
3
3
|
import { VTreeviewGroup } from "./VTreeviewGroup.js";
|
4
4
|
import { VTreeviewItem } from "./VTreeviewItem.js";
|
@@ -63,7 +63,7 @@ export const VTreeviewChildren = genericComponent()({
|
|
63
63
|
} = item;
|
64
64
|
const loading = isLoading.has(item.value);
|
65
65
|
const slotsWithItem = {
|
66
|
-
prepend: slotProps =>
|
66
|
+
prepend: slotProps => _createElementVNode(_Fragment, null, [props.selectable && (!children || children && !['leaf', 'single-leaf'].includes(props.selectStrategy)) && _createElementVNode("div", null, [_createVNode(VCheckboxBtn, {
|
67
67
|
"key": item.value,
|
68
68
|
"modelValue": slotProps.isSelected,
|
69
69
|
"disabled": props.disabled,
|