@dimailn/vuetify 2.7.2-alpha26 → 2.7.2-alpha28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/vuetify.js +1185 -1041
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +1 -1
- package/dist/vuetify.min.js +2 -2
- package/es5/components/VAlert/VAlert.js +1 -1
- package/es5/components/VAlert/VAlert.js.map +1 -1
- package/es5/components/VAppBar/VAppBar.js +17 -6
- package/es5/components/VAppBar/VAppBar.js.map +1 -1
- package/es5/components/VBadge/VBadge.js +1 -0
- package/es5/components/VBadge/VBadge.js.map +1 -1
- package/es5/components/VBanner/VBanner.js +11 -12
- package/es5/components/VBanner/VBanner.js.map +1 -1
- package/es5/components/VBottomNavigation/VBottomNavigation.js +8 -7
- package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/es5/components/VBtn/VBtn.js +2 -2
- package/es5/components/VBtn/VBtn.js.map +1 -1
- package/es5/components/VCalendar/VCalendar.js +27 -29
- package/es5/components/VCalendar/VCalendar.js.map +1 -1
- package/es5/components/VCalendar/VCalendarCategory.js +26 -34
- package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
- package/es5/components/VCalendar/VCalendarDaily.js +43 -60
- package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
- package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
- package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
- package/es5/components/VCalendar/VCalendarWeekly.js +26 -35
- package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
- package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
- package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
- package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
- package/es5/components/VCalendar/mixins/times.js.map +1 -1
- package/es5/components/VCarousel/VCarousel.js +10 -9
- package/es5/components/VCarousel/VCarousel.js.map +1 -1
- package/es5/components/VCheckbox/VCheckbox.js +31 -2
- package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
- package/es5/components/VCheckbox/VSimpleCheckbox.js +0 -3
- package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/es5/components/VChip/VChip.js +15 -6
- package/es5/components/VChip/VChip.js.map +1 -1
- package/es5/components/VData/VData.js +1 -0
- package/es5/components/VData/VData.js.map +1 -1
- package/es5/components/VDataIterator/VDataFooter.js +1 -0
- package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
- package/es5/components/VDataIterator/VDataIterator.js +1 -0
- package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
- package/es5/components/VDataTable/VDataTable.js +1 -6
- package/es5/components/VDataTable/VDataTable.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderMobile.js +1 -0
- package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/es5/components/VDataTable/VEditDialog.js +19 -18
- package/es5/components/VDataTable/VEditDialog.js.map +1 -1
- package/es5/components/VDataTable/mixins/header.js +0 -6
- package/es5/components/VDataTable/mixins/header.js.map +1 -1
- package/es5/components/VDatePicker/VDatePicker.js +13 -18
- package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerHeader.js +48 -26
- package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
- package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerTitle.js +4 -3
- package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerYears.js +11 -12
- package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/es5/components/VDatePicker/mixins/date-picker-table.js +16 -13
- package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
- package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
- package/es5/components/VDialog/VDialog.js +1 -0
- package/es5/components/VDialog/VDialog.js.map +1 -1
- package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
- package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
- package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -10
- package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
- package/es5/components/VFileInput/VFileInput.js +1 -0
- package/es5/components/VFileInput/VFileInput.js.map +1 -1
- package/es5/components/VForm/VForm.js +1 -0
- package/es5/components/VForm/VForm.js.map +1 -1
- package/es5/components/VHover/VHover.js +1 -0
- package/es5/components/VHover/VHover.js.map +1 -1
- package/es5/components/VImg/VImg.js +3 -5
- package/es5/components/VImg/VImg.js.map +1 -1
- package/es5/components/VInput/VInput.js +1 -0
- package/es5/components/VInput/VInput.js.map +1 -1
- package/es5/components/VItemGroup/VItem.js +2 -1
- package/es5/components/VItemGroup/VItem.js.map +1 -1
- package/es5/components/VItemGroup/VItemGroup.js +5 -1
- package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
- package/es5/components/VLazy/VLazy.js +8 -15
- package/es5/components/VLazy/VLazy.js.map +1 -1
- package/es5/components/VList/VListGroup.js +3 -11
- package/es5/components/VList/VListGroup.js.map +1 -1
- package/es5/components/VList/VListItem.js +30 -14
- package/es5/components/VList/VListItem.js.map +1 -1
- package/es5/components/VList/VListItemAction.js +23 -9
- package/es5/components/VList/VListItemAction.js.map +1 -1
- package/es5/components/VMenu/VMenu.js +2 -1
- package/es5/components/VMenu/VMenu.js.map +1 -1
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js +1 -7
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/es5/components/VOtpInput/VOtpInput.js +37 -5
- package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
- package/es5/components/VOverflowBtn/VOverflowBtn.js +1 -0
- package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
- package/es5/components/VOverlay/VOverlay.js +1 -0
- package/es5/components/VOverlay/VOverlay.js.map +1 -1
- package/es5/components/VPagination/VPagination.js +1 -3
- package/es5/components/VPagination/VPagination.js.map +1 -1
- package/es5/components/VPicker/VPicker.js +2 -3
- package/es5/components/VPicker/VPicker.js.map +1 -1
- package/es5/components/VProgressCircular/VProgressCircular.js +1 -10
- package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/es5/components/VProgressLinear/VProgressLinear.js +4 -12
- package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/es5/components/VRadioGroup/VRadio.js +1 -0
- package/es5/components/VRadioGroup/VRadio.js.map +1 -1
- package/es5/components/VSelect/VSelect.js +111 -64
- package/es5/components/VSelect/VSelect.js.map +1 -1
- package/es5/components/VSelect/VSelectList.js +28 -19
- package/es5/components/VSelect/VSelectList.js.map +1 -1
- package/es5/components/VSlideGroup/VSlideGroup.js +1 -4
- package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/es5/components/VSlideGroup/VSlideItem.js +2 -1
- package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
- package/es5/components/VSlider/VSlider.js +0 -3
- package/es5/components/VSlider/VSlider.js.map +1 -1
- package/es5/components/VSnackbar/VSnackbar.js +1 -0
- package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
- package/es5/components/VSparkline/VSparkline.js +48 -68
- package/es5/components/VSparkline/VSparkline.js.map +1 -1
- package/es5/components/VSpeedDial/VSpeedDial.js +4 -10
- package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/es5/components/VStepper/VStepper.js +1 -0
- package/es5/components/VStepper/VStepper.js.map +1 -1
- package/es5/components/VStepper/VStepperStep.js +11 -19
- package/es5/components/VStepper/VStepperStep.js.map +1 -1
- package/es5/components/VSwitch/VSwitch.js +1 -3
- package/es5/components/VSwitch/VSwitch.js.map +1 -1
- package/es5/components/VTabs/VTab.js +1 -0
- package/es5/components/VTabs/VTab.js.map +1 -1
- package/es5/components/VTabs/VTabs.js +11 -4
- package/es5/components/VTabs/VTabs.js.map +1 -1
- package/es5/components/VTabs/VTabsItems.js +1 -0
- package/es5/components/VTabs/VTabsItems.js.map +1 -1
- package/es5/components/VTextField/VTextField.js +31 -27
- package/es5/components/VTextField/VTextField.js.map +1 -1
- package/es5/components/VTimePicker/VTimePicker.js +72 -44
- package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
- package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
- package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
- package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
- package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
- package/es5/components/VToolbar/VToolbar.js +1 -3
- package/es5/components/VToolbar/VToolbar.js.map +1 -1
- package/es5/components/VTooltip/VTooltip.js +9 -6
- package/es5/components/VTooltip/VTooltip.js.map +1 -1
- package/es5/components/VTreeview/VTreeview.js +0 -7
- package/es5/components/VTreeview/VTreeview.js.map +1 -1
- package/es5/components/VVirtualScroll/VVirtualScroll.js +0 -3
- package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/es5/components/VWindow/VWindow.js +0 -3
- package/es5/components/VWindow/VWindow.js.map +1 -1
- package/es5/components/VWindow/VWindowItem.js +1 -5
- package/es5/components/VWindow/VWindowItem.js.map +1 -1
- package/es5/framework.js +1 -1
- package/es5/mixins/detachable/index.js +9 -5
- package/es5/mixins/detachable/index.js.map +1 -1
- package/es5/mixins/routable/index.js +5 -2
- package/es5/mixins/routable/index.js.map +1 -1
- package/lib/components/VAlert/VAlert.js +1 -1
- package/lib/components/VAlert/VAlert.js.map +1 -1
- package/lib/components/VAppBar/VAppBar.js +17 -6
- package/lib/components/VAppBar/VAppBar.js.map +1 -1
- package/lib/components/VBadge/VBadge.js +1 -0
- package/lib/components/VBadge/VBadge.js.map +1 -1
- package/lib/components/VBanner/VBanner.js +7 -11
- package/lib/components/VBanner/VBanner.js.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -7
- package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +2 -2
- package/lib/components/VBtn/VBtn.js.map +1 -1
- package/lib/components/VCalendar/VCalendar.js +26 -31
- package/lib/components/VCalendar/VCalendar.js.map +1 -1
- package/lib/components/VCalendar/VCalendarCategory.js +8 -10
- package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
- package/lib/components/VCalendar/VCalendarDaily.js +21 -33
- package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
- package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
- package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
- package/lib/components/VCalendar/VCalendarWeekly.js +17 -30
- package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
- package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
- package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
- package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
- package/lib/components/VCalendar/mixins/times.js.map +1 -1
- package/lib/components/VCarousel/VCarousel.js +12 -11
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.js +14 -1
- package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
- package/lib/components/VCheckbox/VSimpleCheckbox.js +0 -3
- package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/lib/components/VChip/VChip.js +15 -6
- package/lib/components/VChip/VChip.js.map +1 -1
- package/lib/components/VData/VData.js +1 -0
- package/lib/components/VData/VData.js.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.js +1 -0
- package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.js +1 -0
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +2 -7
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderMobile.js +1 -0
- package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/lib/components/VDataTable/VEditDialog.js +15 -14
- package/lib/components/VDataTable/VEditDialog.js.map +1 -1
- package/lib/components/VDataTable/mixins/header.js +0 -5
- package/lib/components/VDataTable/mixins/header.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +11 -16
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js +33 -20
- package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
- package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerTitle.js +4 -3
- package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.js +8 -9
- package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.js +17 -13
- package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
- package/lib/components/VDialog/VDialog.js +1 -0
- package/lib/components/VDialog/VDialog.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
- package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -4
- package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
- package/lib/components/VFileInput/VFileInput.js +1 -0
- package/lib/components/VFileInput/VFileInput.js.map +1 -1
- package/lib/components/VForm/VForm.js +1 -0
- package/lib/components/VForm/VForm.js.map +1 -1
- package/lib/components/VHover/VHover.js +1 -0
- package/lib/components/VHover/VHover.js.map +1 -1
- package/lib/components/VImg/VImg.js +2 -6
- package/lib/components/VImg/VImg.js.map +1 -1
- package/lib/components/VInput/VInput.js +1 -0
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VItemGroup/VItem.js +2 -1
- package/lib/components/VItemGroup/VItem.js.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.js +6 -1
- package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
- package/lib/components/VLazy/VLazy.js +8 -15
- package/lib/components/VLazy/VLazy.js.map +1 -1
- package/lib/components/VList/VListGroup.js +3 -5
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.js +29 -16
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VList/VListItemAction.js +15 -9
- package/lib/components/VList/VListItemAction.js.map +1 -1
- package/lib/components/VMenu/VMenu.js +2 -1
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +1 -6
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +50 -6
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.js +1 -0
- package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.js +1 -0
- package/lib/components/VOverlay/VOverlay.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +1 -3
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VPicker/VPicker.js +3 -3
- package/lib/components/VPicker/VPicker.js.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.js +1 -4
- package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.js +4 -6
- package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/lib/components/VRadioGroup/VRadio.js +1 -0
- package/lib/components/VRadioGroup/VRadio.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +64 -19
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelectList.js +24 -20
- package/lib/components/VSelect/VSelectList.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +1 -4
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideItem.js +2 -1
- package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
- package/lib/components/VSlider/VSlider.js +0 -3
- package/lib/components/VSlider/VSlider.js.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.js +1 -0
- package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
- package/lib/components/VSparkline/VSparkline.js +48 -67
- package/lib/components/VSparkline/VSparkline.js.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.js +3 -9
- package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/lib/components/VStepper/VStepper.js +1 -0
- package/lib/components/VStepper/VStepper.js.map +1 -1
- package/lib/components/VStepper/VStepperStep.js +7 -18
- package/lib/components/VStepper/VStepperStep.js.map +1 -1
- package/lib/components/VSwitch/VSwitch.js +1 -3
- package/lib/components/VSwitch/VSwitch.js.map +1 -1
- package/lib/components/VTabs/VTab.js +1 -0
- package/lib/components/VTabs/VTab.js.map +1 -1
- package/lib/components/VTabs/VTabs.js +14 -4
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTabs/VTabsItems.js +1 -0
- package/lib/components/VTabs/VTabsItems.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +6 -15
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTimePicker/VTimePicker.js +65 -31
- package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
- package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
- package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
- package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
- package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
- package/lib/components/VToolbar/VToolbar.js +1 -3
- package/lib/components/VToolbar/VToolbar.js.map +1 -1
- package/lib/components/VTooltip/VTooltip.js +4 -5
- package/lib/components/VTooltip/VTooltip.js.map +1 -1
- package/lib/components/VTreeview/VTreeview.js +0 -6
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.js +0 -3
- package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/lib/components/VWindow/VWindow.js +0 -3
- package/lib/components/VWindow/VWindow.js.map +1 -1
- package/lib/components/VWindow/VWindowItem.js +2 -6
- package/lib/components/VWindow/VWindowItem.js.map +1 -1
- package/lib/framework.js +1 -1
- package/lib/mixins/detachable/index.js +9 -5
- package/lib/mixins/detachable/index.js.map +1 -1
- package/lib/mixins/routable/index.js +5 -2
- package/lib/mixins/routable/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/VAlert/VAlert.ts +2 -1
- package/src/components/VApp/__tests__/VApp.spec.ts +24 -18
- package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
- package/src/components/VAppBar/VAppBar.ts +12 -3
- package/src/components/VAppBar/__tests__/VAppBar.spec.ts +256 -74
- package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +2 -6
- package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
- package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +3 -4
- package/src/components/VBadge/VBadge.ts +1 -1
- package/src/components/VBanner/VBanner.ts +14 -14
- package/src/components/VBanner/__tests__/VBanner.spec.ts +35 -36
- package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +1 -1
- package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -8
- package/src/components/VBtn/VBtn.ts +2 -2
- package/src/components/VBtn/__tests__/VBtn.spec.ts +1 -1
- package/src/components/VCalendar/VCalendar.ts +29 -27
- package/src/components/VCalendar/VCalendarCategory.ts +9 -8
- package/src/components/VCalendar/VCalendarDaily.ts +18 -28
- package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
- package/src/components/VCalendar/VCalendarWeekly.ts +18 -30
- package/src/components/VCalendar/__tests__/VCalendar.spec.ts +18 -34
- package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +16 -14
- package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
- package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +206 -205
- package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
- package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
- package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
- package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
- package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
- package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
- package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
- package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
- package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
- package/src/components/VCalendar/mixins/times.ts +1 -1
- package/src/components/VCard/__tests__/VCard.spec.ts +46 -28
- package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
- package/src/components/VCarousel/VCarousel.ts +13 -9
- package/src/components/VCheckbox/VCheckbox.ts +19 -1
- package/src/components/VCheckbox/VSimpleCheckbox.ts +0 -3
- package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +157 -152
- package/src/components/VChip/VChip.ts +17 -13
- package/src/components/VChip/__tests__/VChip.spec.ts +50 -50
- package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
- package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +14 -21
- package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +35 -35
- package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +10 -10
- package/src/components/VData/VData.ts +2 -0
- package/src/components/VData/__tests__/VData.spec.ts +69 -90
- package/src/components/VDataIterator/VDataFooter.ts +2 -0
- package/src/components/VDataIterator/VDataIterator.ts +2 -0
- package/src/components/VDataTable/VDataTable.ts +2 -4
- package/src/components/VDataTable/VDataTableHeaderDesktop.ts +5 -0
- package/src/components/VDataTable/VDataTableHeaderMobile.ts +2 -0
- package/src/components/VDataTable/VEditDialog.ts +19 -17
- package/src/components/VDataTable/__tests__/MobileRow.spec.ts +55 -66
- package/src/components/VDataTable/__tests__/Row.spec.ts +64 -73
- package/src/components/VDataTable/__tests__/RowGroup.spec.ts +7 -5
- package/src/components/VDataTable/__tests__/VDataTable.spec.ts +910 -988
- package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +26 -22
- package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +60 -29
- package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +13 -15
- package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
- package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +18 -10
- package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +1 -1
- package/src/components/VDataTable/mixins/header.ts +0 -4
- package/src/components/VDatePicker/VDatePicker.ts +13 -18
- package/src/components/VDatePicker/VDatePickerHeader.ts +44 -32
- package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
- package/src/components/VDatePicker/VDatePickerTitle.ts +7 -5
- package/src/components/VDatePicker/VDatePickerYears.ts +6 -10
- package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +302 -246
- package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +90 -86
- package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
- package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +96 -71
- package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
- package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +48 -28
- package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +25 -22
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +601 -586
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +203 -193
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
- package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +3 -4
- package/src/components/VDatePicker/mixins/date-picker-table.ts +18 -13
- package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
- package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
- package/src/components/VDialog/VDialog.ts +7 -5
- package/src/components/VDivider/__tests__/VDivider.spec.ts +11 -15
- package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
- package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
- package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +0 -1
- package/src/components/VFileInput/VFileInput.ts +2 -0
- package/src/components/VForm/VForm.ts +2 -0
- package/src/components/VGrid/__tests__/VCol.spec.ts +17 -17
- package/src/components/VGrid/__tests__/VContainer.spec.ts +58 -3
- package/src/components/VGrid/__tests__/VFlex.spec.ts +3 -3
- package/src/components/VGrid/__tests__/VGrid.spec.ts +12 -10
- package/src/components/VGrid/__tests__/VLayout.spec.ts +3 -3
- package/src/components/VHover/VHover.ts +2 -0
- package/src/components/VIcon/__tests__/VIcon.spec.ts +176 -70
- package/src/components/VImg/VImg.ts +2 -1
- package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +55 -55
- package/src/components/VInput/VInput.ts +2 -0
- package/src/components/VItemGroup/VItem.ts +4 -0
- package/src/components/VItemGroup/VItemGroup.ts +7 -1
- package/src/components/VItemGroup/__tests__/VItem.spec.ts +22 -37
- package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +96 -124
- package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
- package/src/components/VLabel/__tests__/VLabel.spec.ts +240 -14
- package/src/components/VLazy/VLazy.ts +11 -13
- package/src/components/VLazy/__tests__/VLazy.spec.ts +5 -4
- package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +2 -1
- package/src/components/VList/VListGroup.ts +7 -8
- package/src/components/VList/VListItem.ts +38 -18
- package/src/components/VList/VListItemAction.ts +11 -10
- package/src/components/VList/__tests__/VList.spec.ts +13 -12
- package/src/components/VList/__tests__/VListGroup.spec.ts +59 -51
- package/src/components/VList/__tests__/VListItem.spec.ts +142 -63
- package/src/components/VList/__tests__/VListItemAvatar.spec.ts +5 -2
- package/src/components/VList/__tests__/VListItemGroup.spec.ts +5 -2
- package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
- package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +5 -6
- package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
- package/src/components/VMain/__tests__/VMain.spec.ts +71 -17
- package/src/components/VMenu/VMenu.ts +4 -2
- package/src/components/VMessages/__tests__/VMessages.spec.ts +14 -13
- package/src/components/VNavigationDrawer/VNavigationDrawer.ts +2 -5
- package/src/components/VOtpInput/VOtpInput.ts +39 -4
- package/src/components/VOverflowBtn/VOverflowBtn.ts +2 -0
- package/src/components/VOverlay/VOverlay.ts +2 -0
- package/src/components/VPagination/VPagination.ts +2 -1
- package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
- package/src/components/VPicker/VPicker.ts +8 -10
- package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
- package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
- package/src/components/VProgressCircular/VProgressCircular.ts +0 -1
- package/src/components/VProgressLinear/VProgressLinear.ts +14 -13
- package/src/components/VRadioGroup/VRadio.ts +2 -0
- package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
- package/src/components/VSelect/VSelect.ts +59 -19
- package/src/components/VSelect/VSelectList.ts +20 -16
- package/src/components/VSelect/__tests__/VSelect.spec.ts +166 -125
- package/src/components/VSelect/__tests__/VSelect2.spec.ts +127 -111
- package/src/components/VSelect/__tests__/VSelect3.spec.ts +109 -91
- package/src/components/VSelect/__tests__/VSelect4.spec.ts +79 -68
- package/src/components/VSelect/__tests__/VSelectList.spec.ts +23 -31
- package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
- package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +50 -62
- package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +10 -14
- package/src/components/VSlideGroup/VSlideGroup.ts +2 -4
- package/src/components/VSlideGroup/VSlideItem.ts +2 -0
- package/src/components/VSlider/VSlider.ts +0 -3
- package/src/components/VSnackbar/VSnackbar.ts +1 -1
- package/src/components/VSparkline/VSparkline.ts +54 -92
- package/src/components/VSparkline/__tests__/VSparkline.spec.ts +33 -35
- package/src/components/VSpeedDial/VSpeedDial.ts +6 -8
- package/src/components/VStepper/VStepper.ts +3 -1
- package/src/components/VStepper/VStepperStep.ts +8 -15
- package/src/components/VStepper/__tests__/VStepper.spec.ts +4 -1
- package/src/components/VStepper/__tests__/VStepperContent.spec.ts +104 -110
- package/src/components/VStepper/__tests__/VStepperStep.spec.ts +51 -44
- package/src/components/VSwitch/VSwitch.ts +4 -5
- package/src/components/VSwitch/__tests__/VSwitch.spec.ts +30 -37
- package/src/components/VTabs/VTab.ts +2 -0
- package/src/components/VTabs/VTabs.ts +16 -10
- package/src/components/VTabs/VTabsItems.ts +2 -0
- package/src/components/VTabs/__tests__/VTabs.spec.ts +0 -7
- package/src/components/VTextField/VTextField.ts +9 -12
- package/src/components/VTextField/__tests__/VTextField.spec.ts +342 -246
- package/src/components/VTextarea/__tests__/VTextarea.spec.ts +112 -35
- package/src/components/VTimePicker/VTimePicker.ts +199 -89
- package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
- package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
- package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +153 -140
- package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
- package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +47 -41
- package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +120 -40
- package/src/components/VToolbar/VToolbar.ts +1 -1
- package/src/components/VToolbar/__tests__/VToolbar.spec.ts +49 -25
- package/src/components/VTooltip/VTooltip.ts +4 -4
- package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
- package/src/components/VTreeview/VTreeview.ts +0 -5
- package/src/components/VVirtualScroll/VVirtualScroll.ts +0 -1
- package/src/components/VWindow/VWindow.ts +0 -1
- package/src/components/VWindow/VWindowItem.ts +2 -3
- package/src/mixins/detachable/index.ts +11 -5
- package/src/mixins/routable/index.ts +6 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VBanner/VBanner.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VBanner/VBanner.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, withDirectives, vShow } from 'vue'\n// Styles\nimport './VBanner.sass'\n\n// Extensions\nimport VSheet from '../VSheet'\n\n// Components\nimport VAvatar from '../VAvatar'\nimport VIcon from '../VIcon'\nimport { VExpandTransition } from '../transitions'\n\n// Mixins\nimport Mobile from '../../mixins/mobile'\nimport Toggleable from '../../mixins/toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { convertToUnit, getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n VSheet,\n Mobile,\n Toggleable\n).extend({\n name: 'v-banner',\n\n inheritAttrs: false,\n\n emits: ['update:modelValue', 'click:icon'],\n\n props: {\n app: Boolean,\n icon: String,\n iconColor: String,\n singleLine: Boolean,\n sticky: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n },\n\n computed: {\n classes (): object {\n return {\n ...VSheet.computed.classes.call(this),\n 'v-banner--has-icon': this.hasIcon,\n 'v-banner--is-mobile': this.isMobile,\n 'v-banner--single-line': this.singleLine,\n 'v-banner--sticky': this.isSticky,\n }\n },\n hasIcon (): boolean {\n return Boolean(this.icon || this.$slots.icon || this.$slots.icon)\n },\n isSticky (): boolean {\n return this.sticky || this.app\n },\n styles (): object {\n const styles: Record<string, any> = { ...VSheet.computed.styles.call(this) }\n\n if (this.isSticky) {\n const top = !this.app\n ? 0\n : (this.$vuetify.application.bar + this.$vuetify.application.top)\n\n styles.top = convertToUnit(top)\n styles.position = 'sticky'\n styles.zIndex = 1\n }\n\n return styles\n },\n },\n\n methods: {\n /** @public */\n toggle () {\n this.isActive = !this.isActive\n },\n iconClick (e: MouseEvent) {\n this.$emit('click:icon', e)\n },\n genIcon () {\n if (!this.hasIcon) return undefined\n\n let content\n\n if (this.icon) {\n content = h(VIcon, {\n color: this.iconColor,\n size: 28\n }, () => [this.icon])\n } else {\n content = getSlot(this, 'icon')\n }\n\n return h(VAvatar, {\n class: 'v-banner__icon',\n color: this.color,\n size: 40,\n onClick: this.iconClick,\n }, () => [content])\n },\n genText () {\n return h('div', {\n class: 'v-banner__text',\n }, getSlot(this))\n },\n genActions () {\n const children = getSlot(this, 'actions', {\n dismiss: () => this.isActive = false,\n })\n\n if (!children) return undefined\n\n return h('div', {\n class: 'v-banner__actions',\n }, children)\n },\n genContent () {\n return h('div', {\n class: 'v-banner__content',\n }, [\n this.genIcon(),\n this.genText(),\n ])\n },\n genWrapper () {\n return h('div', {\n class: 'v-banner__wrapper',\n }, [\n this.genContent(),\n this.genActions(),\n ])\n },\n },\n\n render (): VNode {\n const data = {\n class: ['v-banner', this.classes],\n ...this.$attrs,\n style: this.styles,\n }\n\n return h(VExpandTransition, {}, () => [\n withDirectives(\n h(\n 'div',\n this.outlined ? data : this.setBackgroundColor(this.color, data),\n [this.genWrapper()],\n ),\n [[vShow, this.isActive]],\n ),\n ])\n },\n})\n"],"sourceRoot":"","file":"VBanner.js"}
|
|
@@ -14,7 +14,7 @@ import { factory as ToggleableFactory } from '../../mixins/toggleable'; // Utili
|
|
|
14
14
|
import mixins from '../../util/mixins';
|
|
15
15
|
import { breaking } from '../../util/console';
|
|
16
16
|
import { getSlot } from '../../util/helpers';
|
|
17
|
-
export default mixins(Applicationable('bottom', ['height', '
|
|
17
|
+
export default mixins(Applicationable('bottom', ['height', 'modelValue']), Colorable, Measurable, ToggleableFactory(), Proxyable, Scrollable, Themeable
|
|
18
18
|
/* @vue/component */
|
|
19
19
|
).extend({
|
|
20
20
|
name: 'v-bottom-navigation',
|
|
@@ -31,7 +31,7 @@ export default mixins(Applicationable('bottom', ['height', 'inputValue']), Color
|
|
|
31
31
|
},
|
|
32
32
|
hideOnScroll: Boolean,
|
|
33
33
|
horizontal: Boolean,
|
|
34
|
-
|
|
34
|
+
modelValue: {
|
|
35
35
|
type: Boolean,
|
|
36
36
|
default: true
|
|
37
37
|
},
|
|
@@ -42,16 +42,17 @@ export default mixins(Applicationable('bottom', ['height', 'inputValue']), Color
|
|
|
42
42
|
default: 'div'
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
|
+
emits: ['update:modelValue', 'change'],
|
|
45
46
|
|
|
46
47
|
data() {
|
|
47
48
|
return {
|
|
48
|
-
isActive: this.
|
|
49
|
+
isActive: this.modelValue
|
|
49
50
|
};
|
|
50
51
|
},
|
|
51
52
|
|
|
52
53
|
computed: {
|
|
53
54
|
canScroll() {
|
|
54
|
-
return Scrollable.computed.canScroll.call(this) && (this.hideOnScroll || !this.
|
|
55
|
+
return Scrollable.computed.canScroll.call(this) && (this.hideOnScroll || !this.modelValue);
|
|
55
56
|
},
|
|
56
57
|
|
|
57
58
|
classes() {
|
|
@@ -86,7 +87,7 @@ export default mixins(Applicationable('bottom', ['height', 'inputValue']), Color
|
|
|
86
87
|
thresholdMet() {
|
|
87
88
|
if (this.hideOnScroll) {
|
|
88
89
|
this.isActive = !this.isScrollingUp || this.currentScroll > this.computedScrollThreshold;
|
|
89
|
-
this.$emit('update:
|
|
90
|
+
this.$emit('update:modelValue', this.isActive);
|
|
90
91
|
}
|
|
91
92
|
|
|
92
93
|
if (this.currentThreshold < this.computedScrollThreshold) return;
|
|
@@ -108,9 +109,9 @@ export default mixins(Applicationable('bottom', ['height', 'inputValue']), Color
|
|
|
108
109
|
class: ['v-bottom-navigation', this.classes],
|
|
109
110
|
style: this.styles,
|
|
110
111
|
activeClass: this.activeClass,
|
|
111
|
-
mandatory: Boolean(this.mandatory || this.
|
|
112
|
+
mandatory: Boolean(this.mandatory || this.modelValue !== undefined),
|
|
112
113
|
tag: this.tag,
|
|
113
|
-
|
|
114
|
+
modelValue: this.internalValue,
|
|
114
115
|
onChange: this.updateValue
|
|
115
116
|
});
|
|
116
117
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VBottomNavigation/VBottomNavigation.ts"],"names":[],"mappings":"AAAA,SAAQ,CAAR,QAAgB,KAAhB,C,CACA;;AACA,OAAO,kEAAP,C,CAEA;;AACA,OAAO,eAAP,MAA4B,8BAA5B;AACA,OAAO,WAAP,MAAwB,2BAAxB;AACA,OAAO,SAAP,MAAsB,wBAAtB;AACA,OAAO,UAAP,MAAuB,yBAAvB;AACA,OAAO,SAAP,MAAsB,wBAAtB;AACA,OAAO,UAAP,MAAuB,yBAAvB;AACA,OAAO,SAAP,MAAsB,wBAAtB;AACA,SAAS,OAAO,IAAI,iBAApB,QAA6C,yBAA7C,C,CAEA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AACA,SAAS,QAAT,QAAyB,oBAAzB;AACA,SAAS,OAAT,QAAwB,oBAAxB;AAKA,eAAe,MAAM,CACnB,eAAe,CAAC,QAAD,EAAW,CACxB,QADwB,EAExB,YAFwB,CAAX,CADI,EAKnB,SALmB,EAMnB,UANmB,EAOnB,iBAAiB,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VBottomNavigation/VBottomNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VBottomNavigation.sass'\n\n// Mixins\nimport Applicationable from '../../mixins/applicationable'\nimport ButtonGroup from '../../mixins/button-group'\nimport Colorable from '../../mixins/colorable'\nimport Measurable from '../../mixins/measurable'\nimport Proxyable from '../../mixins/proxyable'\nimport Scrollable from '../../mixins/scrollable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { breaking } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nexport default mixins(\n Applicationable('bottom', [\n 'height',\n 'modelValue',\n ]),\n Colorable,\n Measurable,\n ToggleableFactory(),\n Proxyable,\n Scrollable,\n Themeable\n /* @vue/component */\n).extend({\n name: 'v-bottom-navigation',\n\n props: {\n activeClass: {\n type: String,\n default: 'v-btn--active',\n },\n backgroundColor: String,\n grow: Boolean,\n height: {\n type: [Number, String],\n default: 56,\n },\n hideOnScroll: Boolean,\n horizontal: Boolean,\n modelValue: {\n type: Boolean,\n default: true,\n },\n mandatory: Boolean,\n shift: Boolean,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n emits: ['update:modelValue', 'change'],\n\n data () {\n return {\n isActive: this.modelValue,\n }\n },\n\n computed: {\n canScroll (): boolean {\n return (\n Scrollable.computed.canScroll.call(this) &&\n (\n this.hideOnScroll ||\n !this.modelValue\n )\n )\n },\n classes (): object {\n return {\n 'v-bottom-navigation--absolute': this.absolute,\n 'v-bottom-navigation--grow': this.grow,\n 'v-bottom-navigation--fixed': !this.absolute && (this.app || this.fixed),\n 'v-bottom-navigation--horizontal': this.horizontal,\n 'v-bottom-navigation--shift': this.shift,\n }\n },\n styles (): object {\n return {\n ...this.measurableStyles,\n transform: this.isActive ? 'none' : 'translateY(100%)',\n }\n },\n },\n\n watch: {\n canScroll: 'onScroll',\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('active')) {\n breaking('active.sync', 'value or v-model', this)\n }\n },\n\n methods: {\n thresholdMet () {\n if (this.hideOnScroll) {\n this.isActive = !this.isScrollingUp ||\n this.currentScroll > this.computedScrollThreshold\n\n this.$emit('update:modelValue', this.isActive)\n }\n\n if (this.currentThreshold < this.computedScrollThreshold) return\n\n this.savedScroll = this.currentScroll\n },\n updateApplication (): number {\n return this.$el\n ? this.$el.clientHeight\n : 0\n },\n updateValue (val: any) {\n this.$emit('change', val)\n },\n },\n\n render (): VNode {\n const data = this.setBackgroundColor(this.backgroundColor, {\n class: ['v-bottom-navigation', this.classes],\n style: this.styles,\n activeClass: this.activeClass,\n mandatory: Boolean(\n this.mandatory ||\n this.modelValue !== undefined\n ),\n tag: this.tag,\n modelValue: this.internalValue,\n onChange: this.updateValue\n })\n\n if (this.canScroll) {\n data.directives = data.directives || []\n\n data.directives.push({\n arg: this.scrollTarget,\n name: 'scroll',\n value: this.onScroll,\n })\n }\n\n return h(ButtonGroup, this.setTextColor(this.color, data), getSlot(this))\n },\n})\n"],"sourceRoot":"","file":"VBottomNavigation.js"}
|
|
@@ -16,7 +16,7 @@ import { breaking } from '../../util/console';
|
|
|
16
16
|
import { getSlot } from '../../util/helpers'; // Types
|
|
17
17
|
|
|
18
18
|
import { withDirectives, h } from 'vue';
|
|
19
|
-
const baseMixins = mixins(VSheet, Routable, Positionable, Sizeable, GroupableFactory('btnToggle'), ToggleableFactory(
|
|
19
|
+
const baseMixins = mixins(VSheet, Routable, Positionable, Sizeable, GroupableFactory('btnToggle'), ToggleableFactory()
|
|
20
20
|
/* @vue/component */
|
|
21
21
|
);
|
|
22
22
|
export default baseMixins.extend({
|
|
@@ -46,7 +46,7 @@ export default baseMixins.extend({
|
|
|
46
46
|
},
|
|
47
47
|
value: null
|
|
48
48
|
},
|
|
49
|
-
emits: ['click'],
|
|
49
|
+
emits: ['click', 'change', 'update:modelValue'],
|
|
50
50
|
data: () => ({
|
|
51
51
|
proxyClass: 'v-btn--active'
|
|
52
52
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VBtn/VBtn.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,wCAAP,C,CAEA;;AACA,OAAO,MAAP,MAAmB,WAAnB,C,CAEA;;AACA,OAAO,iBAAP,MAA8B,sBAA9B,C,CAEA;;AACA,SAAS,OAAO,IAAI,gBAApB,QAA4C,wBAA5C;AACA,SAAS,OAAO,IAAI,iBAApB,QAA6C,yBAA7C;AAEA,OAAO,YAAP,MAAyB,2BAAzB;AACA,OAAO,QAAP,MAAqB,uBAArB;AACA,OAAO,QAAP,MAAqB,uBAArB,C,CAEA;;AACA,OAAO,MAAP,MAAmC,mBAAnC;AACA,SAAS,QAAT,QAAyB,oBAAzB;AACA,SAAS,OAAT,QAAwB,oBAAxB,C,CAEA;;AACA,SAAgB,cAAhB,EAAgC,CAAhC,QAAyC,KAAzC;AAIA,MAAM,UAAU,GAAG,MAAM,CACvB,MADuB,EAEvB,QAFuB,EAGvB,YAHuB,EAIvB,QAJuB,EAKvB,gBAAgB,CAAC,WAAD,CALO,EAMvB,iBAAiB,CAAC,YAAD;AACjB;AAPuB,CAAzB;AAaA,eAAe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,OADyB;AAE/B,EAAA,KAAK,EAAE;AACL,IAAA,WAAW,EAAE;AACX,MAAA,IAAI,EAAE;AADK,KADR;AAIL,IAAA,KAAK,EAAE,OAJF;AAKL,IAAA,SAAS,EAAE,OALN;AAML,IAAA,GAAG,EAAE,OANA;AAOL,IAAA,IAAI,EAAE,OAPD;AAQL,IAAA,OAAO,EAAE,OARJ;AASL,IAAA,QAAQ,EAAE,OATL;AAUL,IAAA,KAAK,EAAE,OAVF;AAWL,IAAA,kBAAkB,EAAE,OAXf;AAYL,IAAA,OAAO,EAAE,OAZJ;AAaL,IAAA,GAAG,EAAE;AACH,MAAA,IAAI,EAAE,MADH;AAEH,MAAA,OAAO,EAAE;AAFN,KAbA;AAiBL,IAAA,IAAI,EAAE,OAjBD;AAkBL,IAAA,IAAI,EAAE,OAlBD;AAmBL,IAAA,IAAI,EAAE;AACJ,MAAA,IAAI,EAAE,MADF;AAEJ,MAAA,OAAO,EAAE;AAFL,KAnBD;AAuBL,IAAA,KAAK,EAAE;AAvBF,GAFwB;AA4B/B,EAAA,KAAK,EAAE,CAAC,OAAD,CA5BwB;AA8B/B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,UAAU,EAAE;AADD,GAAP,CA9ByB;AAkC/B,EAAA,QAAQ,EAAE;AACR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,iBAAS,IADJ;AAEL,WAAG,QAAQ,CAAC,QAAT,CAAkB,OAAlB,CAA0B,IAA1B,CAA+B,IAA/B,CAFE;AAGL,2BAAmB,KAAK,QAHnB;AAIL,wBAAgB,KAAK,KAJhB;AAKL,yBAAiB,KAAK,MALjB;AAML,2BAAmB,KAAK,QANnB;AAOL,8BAAsB,KAAK,UAPtB;AAQL,sBAAc,KAAK,GARd;AASL,wBAAgB,KAAK,KAThB;AAUL,yBAAiB,KAAK,KAVjB;AAWL,uBAAe,KAAK,IAXf;AAYL,uBAAe,KAAK,IAZf;AAaL,0BAAkB,KAAK,OAblB;AAcL,2BAAmB,KAAK,QAdnB;AAeL,wBAAgB,KAAK,KAfhB;AAgBL,wBAAgB,KAAK,KAhBhB;AAiBL,wBAAgB,KAAK,OAjBhB;AAkBL,0BAAkB,KAAK,OAlBlB;AAmBL,yBAAiB,KAAK,EAnBjB;AAoBL,uBAAe,KAAK,IApBf;AAqBL,uBAAe,KAAK,IArBf;AAsBL,sBAAc,KAAK,GAtBd;AAuBL,WAAG,KAAK,YAvBH;AAwBL,WAAG,KAAK,YAxBH;AAyBL,WAAG,KAAK,gBAzBH;AA0BL,WAAG,KAAK;AA1BH,OAAP;AA4BD,KA9BO;;AA+BR,IAAA,iBAAiB,GAAA;AACf,UAAI,KAAK,QAAT,EAAmB,OAAO,SAAP;AAEnB,aAAO,KAAK,SAAZ;AACD,KAnCO;;AAoCR,IAAA,cAAc,GAAA;;;AACZ,YAAM,aAAa,GAAG,KAAK,IAAL,IAAa,KAAK,GAAlB,GAAwB;AAAE,QAAA,MAAM,EAAE;AAAV,OAAxB,GAA2C,IAAjE;AACA,UAAI,KAAK,QAAT,EAAmB,OAAO,KAAP,CAAnB,KACK,OAAO,CAAA,EAAA,GAAA,KAAK,MAAL,MAAW,IAAX,IAAW,EAAA,KAAA,KAAA,CAAX,GAAW,EAAX,GAAe,aAAtB;AACN,KAxCO;;AAyCR,IAAA,KAAK,GAAA;AACH,aAAO,CAAC,KAAK,IAAN,IAAc,CAAC,KAAK,KAApB,IAA6B,CAAC,KAAK,QAAnC,IAA+C,CAAC,KAAK,IAA5D;AACD,KA3CO;;AA4CR,IAAA,UAAU,GAAA;AACR,aAAO,OAAO,CACZ,CAAC,KAAK,IAAN,IACA,CAAC,KAAK,IADN,IAEA,CAAC,KAAK,QAFN,IAGA,CAAC,KAAK,SAHN,IAIA,CAAC,KAAK,QAJN,IAKA,CAAC,KAAK,KALN,KAMC,KAAK,SAAL,IAAkB,IAAlB,IAA0B,MAAM,CAAC,KAAK,SAAN,CAAN,GAAyB,CANpD,CADY,CAAd;AASD,KAtDO;;AAuDR,IAAA,OAAO,GAAA;AACL,aAAO,OAAO,CACZ,KAAK,IAAL,IACA,KAAK,GAFO,CAAd;AAID,KA5DO;;AA6DR,IAAA,MAAM,GAAA;AACJ,aAAO,EACL,GAAG,KAAK;AADH,OAAP;AAGD;;AAjEO,GAlCqB;;AAsG/B,EAAA,OAAO,GAAA;AACL,UAAM,aAAa,GAAG,CACpB,CAAC,MAAD,EAAS,MAAT,CADoB,EAEpB,CAAC,SAAD,EAAY,UAAZ,CAFoB,EAGpB,CAAC,OAAD,EAAU,SAAV,CAHoB,CAAtB;AAMA;;AACA,IAAA,aAAa,CAAC,OAAd,CAAsB,CAAC,CAAC,QAAD,EAAW,WAAX,CAAD,KAA4B;AAChD,UAAI,KAAK,MAAL,CAAY,cAAZ,CAA2B,QAA3B,CAAJ,EAA0C,QAAQ,CAAC,QAAD,EAAW,WAAX,EAAwB,IAAxB,CAAR;AAC3C,KAFD;AAGD,GAjH8B;;AAmH/B,EAAA,OAAO,EAAE;AACP,IAAA,KAAK,CAAE,CAAF,EAAe;AAClB;AACA,OAAC,KAAK,kBAAN,IAA4B,CAAC,KAAK,GAAlC,IAAyC,CAAC,CAAC,MAA3C,IAAqD,KAAK,GAAL,CAAS,IAAT,EAArD;AACA,WAAK,KAAL,CAAW,OAAX,EAAoB,CAApB;AACA,WAAK,WAAL,CAAiB,OAAjB,EAA0B,CAA1B;AAEA,WAAK,SAAL,IAAkB,KAAK,MAAL,EAAlB;AACD,KARM;;AASP,IAAA,UAAU,GAAA;AACR,aAAO,CAAC,CAAC,MAAD,EAAS;AACf,QAAA,KAAK,EAAE;AADQ,OAAT,EAEL,OAAO,CAAC,IAAD,CAFF,CAAR;AAGD,KAbM;;AAcP,IAAA,SAAS,GAAA;AACP,aAAO,CAAC,CAAC,MAAD,EAAS;AACf,QAAA,KAAK,EAAE;AADQ,OAAT,EAEL,OAAO,CAAC,IAAD,EAAO,QAAP,CAAP,IAA2B,CAAC,CAAC,CAAC,iBAAD,EAAoB;AAClD,QAAA,aAAa,EAAE,IADmC;AAElD,QAAA,IAAI,EAAE,EAF4C;AAGlD,QAAA,KAAK,EAAE;AAH2C,OAApB,CAAF,CAFtB,CAAR;AAOD;;AAtBM,GAnHsB;;AA4I/B,EAAA,MAAM,GAAA;AACJ,UAAM,QAAQ,GAAG,CACf,KAAK,UAAL,EADe,EAEf,KAAK,OAAL,IAAgB,KAAK,SAAL,EAFD,CAAjB;AAIA,UAAM;AAAE,MAAA,GAAF;AAAO,MAAA,IAAI,EAAE,QAAb;AAAuB,MAAA;AAAvB,QAAsC,KAAK,iBAAL,EAA5C;AACA,UAAM,QAAQ,GAAG,KAAK,KAAL,GACb,KAAK,kBADQ,GAEb,KAAK,YAFT,CANI,CAUJ;;AACA,UAAM,aAAa,GAAG,EACpB,GAAG,KAAK,OADY;AAEpB,SAAG,QAAQ,CAAC;AAFQ,KAAtB;;AAKA,QAAI,GAAG,KAAK,QAAZ,EAAsB;AACpB,MAAA,QAAQ,CAAC,IAAT,GAAgB,KAAK,IAArB;AACA,MAAA,QAAQ,CAAC,QAAT,GAAoB,KAAK,QAAzB;AACD;;AACD,IAAA,QAAQ,CAAC,KAAT,GAAiB,CAAC,QAAD,EAAW,QAAX,EAAqB,QAArB,CAA8B,OAAO,KAAK,KAA1C,IACb,KAAK,KADQ,GAEb,IAAI,CAAC,SAAL,CAAe,KAAK,KAApB,CAFJ;AAIA,UAAM,IAAI,GAAG,EACX,GAAG,QADQ;AAEX,MAAA,KAAK,EAAE,aAFI;AAGX,MAAA,KAAK,EAAE,KAAK;AAHD,KAAb,CAxBI,CA8BJ;;AACA,UAAM,SAAS,GAAG,KAAK,QAAL,GAAgB,IAAhB,GAAuB,QAAQ,CAAC,KAAK,KAAN,EAAa,IAAb,CAAjD;AAEA,UAAM,KAAK,GAAG,OAAO,GAAP,KAAe,QAAf,GACV,CAAC,CAAC,GAAD,EAAM,SAAN,EAAiB,QAAjB,CADS,GAEV,CAAC,CAAC,GAAD,EAAM,SAAN,EAAiB,MAAM,QAAvB,CAFL;AAIA,WAAO,cAAc,CACnB,KADmB,EAEnB,UAFmB,CAArB;AAID;;AArL8B,CAAlB,CAAf","sourcesContent":["// Styles\nimport './VBtn.sass'\n\n// Extensions\nimport VSheet from '../VSheet'\n\n// Components\nimport VProgressCircular from '../VProgressCircular'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\nimport Elevatable from '../../mixins/elevatable'\nimport Positionable from '../../mixins/positionable'\nimport Routable from '../../mixins/routable'\nimport Sizeable from '../../mixins/sizeable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { breaking } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, withDirectives, h } from 'vue'\nimport { PropValidator, PropType } from 'vue/types/options'\nimport { RippleOptions } from '../../directives/ripple'\n\nconst baseMixins = mixins(\n VSheet,\n Routable,\n Positionable,\n Sizeable,\n GroupableFactory('btnToggle'),\n ToggleableFactory('inputValue')\n /* @vue/component */\n)\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n}\n\nexport default baseMixins.extend({\n name: 'v-btn',\n props: {\n activeClass: {\n type: String,\n } as any as PropValidator<string>,\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n icon: Boolean,\n loading: Boolean,\n outlined: Boolean,\n plain: Boolean,\n retainFocusOnClick: Boolean,\n rounded: Boolean,\n tag: {\n type: String,\n default: 'button',\n },\n text: Boolean,\n tile: Boolean,\n type: {\n type: String,\n default: 'button',\n },\n value: null as any as PropType<any>,\n },\n\n emits: ['click'],\n\n data: () => ({\n proxyClass: 'v-btn--active',\n }),\n\n computed: {\n classes (): any {\n return {\n 'v-btn': true,\n ...Routable.computed.classes.call(this),\n 'v-btn--absolute': this.absolute,\n 'v-btn--block': this.block,\n 'v-btn--bottom': this.bottom,\n 'v-btn--disabled': this.disabled,\n 'v-btn--is-elevated': this.isElevated,\n 'v-btn--fab': this.fab,\n 'v-btn--fixed': this.fixed,\n 'v-btn--has-bg': this.hasBg,\n 'v-btn--icon': this.icon,\n 'v-btn--left': this.left,\n 'v-btn--loading': this.loading,\n 'v-btn--outlined': this.outlined,\n 'v-btn--plain': this.plain,\n 'v-btn--right': this.right,\n 'v-btn--round': this.isRound,\n 'v-btn--rounded': this.rounded,\n 'v-btn--router': this.to,\n 'v-btn--text': this.text,\n 'v-btn--tile': this.tile,\n 'v-btn--top': this.top,\n ...this.themeClasses,\n ...this.groupClasses,\n ...this.elevationClasses,\n ...this.sizeableClasses,\n }\n },\n computedElevation (): string | number | undefined {\n if (this.disabled) return undefined\n\n return this.elevation\n },\n computedRipple (): RippleOptions | boolean {\n const defaultRipple = this.icon || this.fab ? { circle: true } : true\n if (this.disabled) return false\n else return this.ripple ?? defaultRipple\n },\n hasBg (): boolean {\n return !this.text && !this.plain && !this.outlined && !this.icon\n },\n isElevated (): boolean {\n return Boolean(\n !this.icon &&\n !this.text &&\n !this.outlined &&\n !this.depressed &&\n !this.disabled &&\n !this.plain &&\n (this.elevation == null || Number(this.elevation) > 0)\n )\n },\n isRound (): boolean {\n return Boolean(\n this.icon ||\n this.fab\n )\n },\n styles (): object {\n return {\n ...this.measurableStyles,\n }\n },\n },\n\n created () {\n const breakingProps = [\n ['flat', 'text'],\n ['outline', 'outlined'],\n ['round', 'rounded'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n methods: {\n click (e: MouseEvent): void {\n // TODO: Remove this in v3\n !this.retainFocusOnClick && !this.fab && e.detail && this.$el.blur()\n this.$emit('click', e)\n this.$emitLegacy('click', e)\n\n this.btnToggle && this.toggle()\n },\n genContent (): VNode {\n return h('span', {\n class: 'v-btn__content',\n }, getSlot(this))\n },\n genLoader (): VNode {\n return h('span', {\n class: 'v-btn__loader',\n }, getSlot(this, 'loader') || [h(VProgressCircular, {\n indeterminate: true,\n size: 23,\n width: 2,\n })])\n },\n },\n\n render (): VNode {\n const children = [\n this.genContent(),\n this.loading && this.genLoader(),\n ]\n const { tag, data: linkData, directives } = this.generateRouteLink()\n const setColor = this.hasBg\n ? this.setBackgroundColor\n : this.setTextColor\n\n // Merge component classes with routable classes\n const mergedClasses = {\n ...this.classes,\n ...linkData.class,\n }\n\n if (tag === 'button') {\n linkData.type = this.type\n linkData.disabled = this.disabled\n }\n linkData.value = ['string', 'number'].includes(typeof this.value)\n ? this.value\n : JSON.stringify(this.value)\n\n const data = {\n ...linkData,\n class: mergedClasses,\n style: this.styles,\n }\n\n // Apply color styling but preserve Vue's automatic attribute inheritance\n const finalData = this.disabled ? data : setColor(this.color, data)\n\n const vnode = typeof tag === 'string'\n ? h(tag, finalData, children)\n : h(tag, finalData, () => children)\n\n return withDirectives(\n vnode,\n directives\n )\n },\n})\n"],"sourceRoot":"","file":"VBtn.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VBtn/VBtn.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VBtn.sass'\n\n// Extensions\nimport VSheet from '../VSheet'\n\n// Components\nimport VProgressCircular from '../VProgressCircular'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\nimport Elevatable from '../../mixins/elevatable'\nimport Positionable from '../../mixins/positionable'\nimport Routable from '../../mixins/routable'\nimport Sizeable from '../../mixins/sizeable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { breaking } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, withDirectives, h } from 'vue'\nimport { PropValidator, PropType } from 'vue/types/options'\nimport { RippleOptions } from '../../directives/ripple'\n\nconst baseMixins = mixins(\n VSheet,\n Routable,\n Positionable,\n Sizeable,\n GroupableFactory('btnToggle'),\n ToggleableFactory()\n /* @vue/component */\n)\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n}\n\nexport default baseMixins.extend({\n name: 'v-btn',\n props: {\n activeClass: {\n type: String,\n } as any as PropValidator<string>,\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n icon: Boolean,\n loading: Boolean,\n outlined: Boolean,\n plain: Boolean,\n retainFocusOnClick: Boolean,\n rounded: Boolean,\n tag: {\n type: String,\n default: 'button',\n },\n text: Boolean,\n tile: Boolean,\n type: {\n type: String,\n default: 'button',\n },\n value: null as any as PropType<any>,\n },\n\n emits: ['click', 'change', 'update:modelValue'],\n\n data: () => ({\n proxyClass: 'v-btn--active',\n }),\n\n computed: {\n classes (): any {\n return {\n 'v-btn': true,\n ...Routable.computed.classes.call(this),\n 'v-btn--absolute': this.absolute,\n 'v-btn--block': this.block,\n 'v-btn--bottom': this.bottom,\n 'v-btn--disabled': this.disabled,\n 'v-btn--is-elevated': this.isElevated,\n 'v-btn--fab': this.fab,\n 'v-btn--fixed': this.fixed,\n 'v-btn--has-bg': this.hasBg,\n 'v-btn--icon': this.icon,\n 'v-btn--left': this.left,\n 'v-btn--loading': this.loading,\n 'v-btn--outlined': this.outlined,\n 'v-btn--plain': this.plain,\n 'v-btn--right': this.right,\n 'v-btn--round': this.isRound,\n 'v-btn--rounded': this.rounded,\n 'v-btn--router': this.to,\n 'v-btn--text': this.text,\n 'v-btn--tile': this.tile,\n 'v-btn--top': this.top,\n ...this.themeClasses,\n ...this.groupClasses,\n ...this.elevationClasses,\n ...this.sizeableClasses,\n }\n },\n computedElevation (): string | number | undefined {\n if (this.disabled) return undefined\n\n return this.elevation\n },\n computedRipple (): RippleOptions | boolean {\n const defaultRipple = this.icon || this.fab ? { circle: true } : true\n if (this.disabled) return false\n else return this.ripple ?? defaultRipple\n },\n hasBg (): boolean {\n return !this.text && !this.plain && !this.outlined && !this.icon\n },\n isElevated (): boolean {\n return Boolean(\n !this.icon &&\n !this.text &&\n !this.outlined &&\n !this.depressed &&\n !this.disabled &&\n !this.plain &&\n (this.elevation == null || Number(this.elevation) > 0)\n )\n },\n isRound (): boolean {\n return Boolean(\n this.icon ||\n this.fab\n )\n },\n styles (): object {\n return {\n ...this.measurableStyles,\n }\n },\n },\n\n created () {\n const breakingProps = [\n ['flat', 'text'],\n ['outline', 'outlined'],\n ['round', 'rounded'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n methods: {\n click (e: MouseEvent): void {\n // TODO: Remove this in v3\n !this.retainFocusOnClick && !this.fab && e.detail && this.$el.blur()\n this.$emit('click', e)\n this.$emitLegacy('click', e)\n\n this.btnToggle && this.toggle()\n },\n genContent (): VNode {\n return h('span', {\n class: 'v-btn__content',\n }, getSlot(this))\n },\n genLoader (): VNode {\n return h('span', {\n class: 'v-btn__loader',\n }, getSlot(this, 'loader') || [h(VProgressCircular, {\n indeterminate: true,\n size: 23,\n width: 2,\n })])\n },\n },\n\n render (): VNode {\n const children = [\n this.genContent(),\n this.loading && this.genLoader(),\n ]\n const { tag, data: linkData, directives } = this.generateRouteLink()\n const setColor = this.hasBg\n ? this.setBackgroundColor\n : this.setTextColor\n\n // Merge component classes with routable classes\n const mergedClasses = {\n ...this.classes,\n ...linkData.class,\n }\n\n if (tag === 'button') {\n linkData.type = this.type\n linkData.disabled = this.disabled\n }\n linkData.value = ['string', 'number'].includes(typeof this.value)\n ? this.value\n : JSON.stringify(this.value)\n\n const data = {\n ...linkData,\n class: mergedClasses,\n style: this.styles,\n }\n\n // Apply color styling but preserve Vue's automatic attribute inheritance\n const finalData = this.disabled ? data : setColor(this.color, data)\n\n const vnode = typeof tag === 'string'\n ? h(tag, finalData, children)\n : h(tag, finalData, () => children)\n\n return withDirectives(\n vnode,\n directives\n )\n },\n})\n"],"sourceRoot":"","file":"VBtn.js"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { h } from 'vue'; // Styles
|
|
1
|
+
import { h, defineComponent, withDirectives } from 'vue'; // Styles
|
|
2
2
|
// import '../../stylus/components/_calendar-daily.styl'
|
|
3
|
-
//
|
|
3
|
+
// Directives
|
|
4
4
|
|
|
5
|
-
import
|
|
5
|
+
import Resize from '../../directives/resize'; // Mixins
|
|
6
6
|
|
|
7
7
|
import CalendarWithEvents from './mixins/calendar-with-events'; // Util
|
|
8
8
|
|
|
@@ -24,6 +24,7 @@ export default defineComponent({
|
|
|
24
24
|
...props.intervals,
|
|
25
25
|
...props.category
|
|
26
26
|
},
|
|
27
|
+
emits: ['change', 'update:modelValue', 'moved', 'click:date'],
|
|
27
28
|
data: () => ({
|
|
28
29
|
lastStart: null,
|
|
29
30
|
lastEnd: null
|
|
@@ -232,11 +233,11 @@ export default defineComponent({
|
|
|
232
233
|
updateRelative(moved, this.times.now);
|
|
233
234
|
|
|
234
235
|
if (this.value instanceof Date) {
|
|
235
|
-
this.$emit('
|
|
236
|
+
this.$emit('update:modelValue', timestampToDate(moved));
|
|
236
237
|
} else if (typeof this.value === 'number') {
|
|
237
|
-
this.$emit('
|
|
238
|
+
this.$emit('update:modelValue', timestampToDate(moved).getTime());
|
|
238
239
|
} else {
|
|
239
|
-
this.$emit('
|
|
240
|
+
this.$emit('update:modelValue', moved.date);
|
|
240
241
|
}
|
|
241
242
|
|
|
242
243
|
this.$emit('moved', moved);
|
|
@@ -251,7 +252,7 @@ export default defineComponent({
|
|
|
251
252
|
},
|
|
252
253
|
|
|
253
254
|
timeToY(time, clamp = true) {
|
|
254
|
-
const c = this.$
|
|
255
|
+
const c = this.$refs.calendarChild;
|
|
255
256
|
|
|
256
257
|
if (c && c.timeToY) {
|
|
257
258
|
return c.timeToY(time, clamp);
|
|
@@ -261,7 +262,7 @@ export default defineComponent({
|
|
|
261
262
|
},
|
|
262
263
|
|
|
263
264
|
timeDelta(time) {
|
|
264
|
-
const c = this.$
|
|
265
|
+
const c = this.$refs.calendarChild;
|
|
265
266
|
|
|
266
267
|
if (c && c.timeDelta) {
|
|
267
268
|
return c.timeDelta(time);
|
|
@@ -271,7 +272,7 @@ export default defineComponent({
|
|
|
271
272
|
},
|
|
272
273
|
|
|
273
274
|
minutesToPixels(minutes) {
|
|
274
|
-
const c = this.$
|
|
275
|
+
const c = this.$refs.calendarChild;
|
|
275
276
|
|
|
276
277
|
if (c && c.minutesToPixels) {
|
|
277
278
|
return c.minutesToPixels(minutes);
|
|
@@ -281,7 +282,7 @@ export default defineComponent({
|
|
|
281
282
|
},
|
|
282
283
|
|
|
283
284
|
scrollToTime(time) {
|
|
284
|
-
const c = this.$
|
|
285
|
+
const c = this.$refs.calendarChild;
|
|
285
286
|
|
|
286
287
|
if (c && c.scrollToTime) {
|
|
287
288
|
return c.scrollToTime(time);
|
|
@@ -367,37 +368,31 @@ export default defineComponent({
|
|
|
367
368
|
component,
|
|
368
369
|
weekdays,
|
|
369
370
|
categories
|
|
370
|
-
} = this.renderProps;
|
|
371
|
-
|
|
371
|
+
} = this.renderProps; // Only pass categories prop to VCalendarCategory component
|
|
372
|
+
|
|
373
|
+
const props = {
|
|
374
|
+
ref: 'calendarChild',
|
|
372
375
|
class: ['v-calendar', {
|
|
373
376
|
'v-calendar-events': !this.noEvents
|
|
374
377
|
}],
|
|
375
|
-
...this.$props,
|
|
376
378
|
start: start.date,
|
|
377
379
|
end: end.date,
|
|
378
380
|
maxDays,
|
|
379
381
|
weekdays,
|
|
380
|
-
categories,
|
|
381
382
|
role: 'grid',
|
|
382
|
-
directives: [{
|
|
383
|
-
modifiers: {
|
|
384
|
-
quiet: true
|
|
385
|
-
},
|
|
386
|
-
name: 'resize',
|
|
387
|
-
value: this.updateEventVisibility
|
|
388
|
-
}],
|
|
389
|
-
...this.$listeners,
|
|
390
383
|
'onClick:date': (day, e) => {
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
384
|
+
this.$emit('update:modelValue', day.date);
|
|
385
|
+
this.$emit('click:date', day, e);
|
|
386
|
+
}
|
|
387
|
+
}; // Only add categories prop for VCalendarCategory component
|
|
394
388
|
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
389
|
+
if (component.name === 'v-calendar-category') {
|
|
390
|
+
props.categories = categories;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
return withDirectives(h(component, props, this.getScopedSlots()), [[Resize, this.updateEventVisibility, '', {
|
|
394
|
+
quiet: true
|
|
395
|
+
}]]);
|
|
401
396
|
}
|
|
402
397
|
|
|
403
398
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VCalendar/VCalendar.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\n// import '../../stylus/components/_calendar-daily.styl'\n\n// Types\nimport { VNode, Component, defineComponent } from 'vue'\n\n// Mixins\nimport CalendarWithEvents from './mixins/calendar-with-events'\n\n// Util\nimport props from './util/props'\nimport {\n DAYS_IN_MONTH_MAX,\n DAY_MIN,\n DAYS_IN_WEEK,\n parseTimestamp,\n validateTimestamp,\n relativeDays,\n nextDay,\n prevDay,\n copyTimestamp,\n updateFormatted,\n updateWeekday,\n updateRelative,\n getStartOfMonth,\n getEndOfMonth,\n VTime,\n VTimestampInput,\n timestampToDate,\n} from './util/timestamp'\n\n// Calendars\nimport VCalendarMonthly from './VCalendarMonthly'\nimport VCalendarDaily from './VCalendarDaily'\nimport VCalendarWeekly from './VCalendarWeekly'\nimport VCalendarCategory from './VCalendarCategory'\nimport { CalendarTimestamp, CalendarFormatter, CalendarCategory } from 'vuetify/types'\nimport { getParsedCategories } from './util/parser'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: string | Component\n maxDays: number\n weekdays: number[]\n categories: CalendarCategory[]\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar',\n extends: CalendarWithEvents,\n\n props: {\n ...props.calendar,\n ...props.weeks,\n ...props.intervals,\n ...props.category,\n },\n\n data: () => ({\n lastStart: null as CalendarTimestamp | null,\n lastEnd: null as CalendarTimestamp | null,\n }),\n\n computed: {\n parsedValue (): CalendarTimestamp {\n return (validateTimestamp(this.value)\n ? parseTimestamp(this.value, true)\n : (this.parsedStart || this.times.today))\n },\n parsedCategoryDays (): number {\n return parseInt(this.categoryDays) || 1\n },\n renderProps (): VCalendarRenderProps {\n const around = this.parsedValue\n let component: any = null\n let maxDays = this.maxDays\n let weekdays = this.parsedWeekdays\n let categories = this.parsedCategories\n let start = around\n let end = around\n switch (this.type) {\n case 'month':\n component = VCalendarMonthly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = this.getStartOfWeek(around)\n end = this.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n weekdays = [start.weekday]\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n weekdays = [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'category':\n const days = this.parsedCategoryDays\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n weekdays = []\n\n for (let i = 0; i < days; i++) {\n weekdays.push((start.weekday + i) % 7)\n }\n\n categories = this.getCategoryList(categories)\n break\n default:\n throw new Error(this.type + ' is not a valid Calendar type')\n }\n\n return { component, start, end, maxDays, weekdays, categories }\n },\n eventWeekdays (): number[] {\n return this.renderProps.weekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n title (): string {\n const { start, end } = this.renderProps\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return this.monthShortFormatter(start, true) + ' ' + start.year + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return this.monthShortFormatter(start, true) + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n } else {\n return this.monthLongFormatter(start, false) + ' ' + start.year\n }\n },\n monthLongFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n },\n monthShortFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n\n watch: {\n renderProps: 'checkChange',\n },\n\n mounted () {\n this.updateEventVisibility()\n this.checkChange()\n },\n\n updated () {\n window.requestAnimationFrame(this.updateEventVisibility)\n },\n\n methods: {\n checkChange (): void {\n const { lastStart, lastEnd } = this\n const { start, end } = this.renderProps\n if (!lastStart || !lastEnd ||\n start.date !== lastStart.date ||\n end.date !== lastEnd.date) {\n this.lastStart = start\n this.lastEnd = end\n this.$emit('change', { start, end })\n }\n },\n move (amount = 1): void {\n const moved = copyTimestamp(this.parsedValue)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (this.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, this.parsedCategoryDays)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, this.times.now)\n\n if (this.value instanceof Date) {\n this.$emit('input', timestampToDate(moved))\n } else if (typeof this.value === 'number') {\n this.$emit('input', timestampToDate(moved).getTime())\n } else {\n this.$emit('input', moved.date)\n }\n\n this.$emit('moved', moved)\n },\n next (amount = 1): void {\n this.move(amount)\n },\n prev (amount = 1): void {\n this.move(-amount)\n },\n timeToY (time: VTime, clamp = true): number | false {\n const c = this.$children[0] as any\n\n if (c && c.timeToY) {\n return c.timeToY(time, clamp)\n } else {\n return false\n }\n },\n timeDelta (time: VTime): number | false {\n const c = this.$children[0] as any\n\n if (c && c.timeDelta) {\n return c.timeDelta(time)\n } else {\n return false\n }\n },\n minutesToPixels (minutes: number): number {\n const c = this.$children[0] as any\n\n if (c && c.minutesToPixels) {\n return c.minutesToPixels(minutes)\n } else {\n return -1\n }\n },\n scrollToTime (time: VTime): boolean {\n const c = this.$children[0] as any\n\n if (c && c.scrollToTime) {\n return c.scrollToTime(time)\n } else {\n return false\n }\n },\n parseTimestamp (input: VTimestampInput, required?: false): CalendarTimestamp | null {\n return parseTimestamp(input, required, this.times.now)\n },\n timestampToDate (timestamp: CalendarTimestamp): Date {\n return timestampToDate(timestamp)\n },\n getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!this.noEvents) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!this.categoryHideDynamic || !this.categoryShowAll) {\n let categoryLength = categories.length\n\n this.parsedEvents.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = this.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!this.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!this.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n },\n },\n\n render (): VNode {\n const { start, end, maxDays, component, weekdays, categories } = this.renderProps\n\n return h(component, {\n class: ['v-calendar', {\n 'v-calendar-events': !this.noEvents,\n }],\n ...this.$props,\n start: start.date,\n end: end.date,\n maxDays,\n weekdays,\n categories,\n role: 'grid',\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.updateEventVisibility,\n }],\n ...this.$listeners,\n 'onClick:date': (day: CalendarTimestamp, e?: MouseEvent) => {\n if (this.$listeners.input) {\n this.$emit('input', day.date)\n }\n if (this.$listeners['click:date']) {\n this.$emit('click:date', day, e)\n }\n },\n scopedSlots: this.getScopedSlots(),\n })\n },\n})\n"],"sourceRoot":"","file":"VCalendar.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VCalendar/VCalendar.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent, VNode, Component, withDirectives } from 'vue'\n// Styles\n// import '../../stylus/components/_calendar-daily.styl'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Mixins\nimport CalendarWithEvents from './mixins/calendar-with-events'\n\n// Util\nimport props from './util/props'\nimport {\n DAYS_IN_MONTH_MAX,\n DAY_MIN,\n DAYS_IN_WEEK,\n parseTimestamp,\n validateTimestamp,\n relativeDays,\n nextDay,\n prevDay,\n copyTimestamp,\n updateFormatted,\n updateWeekday,\n updateRelative,\n getStartOfMonth,\n getEndOfMonth,\n VTime,\n VTimestampInput,\n timestampToDate,\n} from './util/timestamp'\n\n// Calendars\nimport VCalendarMonthly from './VCalendarMonthly'\nimport VCalendarDaily from './VCalendarDaily'\nimport VCalendarWeekly from './VCalendarWeekly'\nimport VCalendarCategory from './VCalendarCategory'\nimport { CalendarTimestamp, CalendarFormatter, CalendarCategory } from 'vuetify/types'\nimport { getParsedCategories } from './util/parser'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: string | Component\n maxDays: number\n weekdays: number[]\n categories: CalendarCategory[]\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar',\n\n\n extends: CalendarWithEvents,\n\n props: {\n ...props.calendar,\n ...props.weeks,\n ...props.intervals,\n ...props.category,\n },\n\n emits: ['change', 'update:modelValue', 'moved', 'click:date'],\n\n data: () => ({\n lastStart: null as CalendarTimestamp | null,\n lastEnd: null as CalendarTimestamp | null,\n }),\n\n computed: {\n parsedValue (): CalendarTimestamp {\n return (validateTimestamp(this.value)\n ? parseTimestamp(this.value, true)\n : (this.parsedStart || this.times.today))\n },\n parsedCategoryDays (): number {\n return parseInt(this.categoryDays) || 1\n },\n renderProps (): VCalendarRenderProps {\n const around = this.parsedValue\n let component: any = null\n let maxDays = this.maxDays\n let weekdays = this.parsedWeekdays\n let categories = this.parsedCategories\n let start = around\n let end = around\n switch (this.type) {\n case 'month':\n component = VCalendarMonthly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = this.getStartOfWeek(around)\n end = this.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n weekdays = [start.weekday]\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n weekdays = [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'category':\n const days = this.parsedCategoryDays\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n weekdays = []\n\n for (let i = 0; i < days; i++) {\n weekdays.push((start.weekday + i) % 7)\n }\n\n categories = this.getCategoryList(categories)\n break\n default:\n throw new Error(this.type + ' is not a valid Calendar type')\n }\n\n return { component, start, end, maxDays, weekdays, categories }\n },\n eventWeekdays (): number[] {\n return this.renderProps.weekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n title (): string {\n const { start, end } = this.renderProps\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return this.monthShortFormatter(start, true) + ' ' + start.year + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return this.monthShortFormatter(start, true) + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n } else {\n return this.monthLongFormatter(start, false) + ' ' + start.year\n }\n },\n monthLongFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n },\n monthShortFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n\n watch: {\n renderProps: 'checkChange',\n },\n\n mounted () {\n this.updateEventVisibility()\n this.checkChange()\n },\n\n updated () {\n window.requestAnimationFrame(this.updateEventVisibility)\n },\n\n methods: {\n checkChange (): void {\n const { lastStart, lastEnd } = this\n const { start, end } = this.renderProps\n if (!lastStart || !lastEnd ||\n start.date !== lastStart.date ||\n end.date !== lastEnd.date) {\n this.lastStart = start\n this.lastEnd = end\n this.$emit('change', { start, end })\n }\n },\n move (amount = 1): void {\n const moved = copyTimestamp(this.parsedValue)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (this.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, this.parsedCategoryDays)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, this.times.now)\n\n if (this.value instanceof Date) {\n this.$emit('update:modelValue', timestampToDate(moved))\n } else if (typeof this.value === 'number') {\n this.$emit('update:modelValue', timestampToDate(moved).getTime())\n } else {\n this.$emit('update:modelValue', moved.date)\n }\n\n this.$emit('moved', moved)\n },\n next (amount = 1): void {\n this.move(amount)\n },\n prev (amount = 1): void {\n this.move(-amount)\n },\n timeToY (time: VTime, clamp = true): number | false {\n const c = this.$refs.calendarChild as any\n\n if (c && c.timeToY) {\n return c.timeToY(time, clamp)\n } else {\n return false\n }\n },\n timeDelta (time: VTime): number | false {\n const c = this.$refs.calendarChild as any\n\n if (c && c.timeDelta) {\n return c.timeDelta(time)\n } else {\n return false\n }\n },\n minutesToPixels (minutes: number): number {\n const c = this.$refs.calendarChild as any\n\n if (c && c.minutesToPixels) {\n return c.minutesToPixels(minutes)\n } else {\n return -1\n }\n },\n scrollToTime (time: VTime): boolean {\n const c = this.$refs.calendarChild as any\n\n if (c && c.scrollToTime) {\n return c.scrollToTime(time)\n } else {\n return false\n }\n },\n parseTimestamp (input: VTimestampInput, required?: false): CalendarTimestamp | null {\n return parseTimestamp(input, required, this.times.now)\n },\n timestampToDate (timestamp: CalendarTimestamp): Date {\n return timestampToDate(timestamp)\n },\n getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!this.noEvents) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!this.categoryHideDynamic || !this.categoryShowAll) {\n let categoryLength = categories.length\n\n this.parsedEvents.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = this.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!this.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!this.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n },\n },\n\n render (): VNode {\n const { start, end, maxDays, component, weekdays, categories } = this.renderProps\n\n // Only pass categories prop to VCalendarCategory component\n const props: any = {\n ref: 'calendarChild',\n class: ['v-calendar', {\n 'v-calendar-events': !this.noEvents,\n }],\n start: start.date,\n end: end.date,\n maxDays,\n weekdays,\n role: 'grid',\n 'onClick:date': (day: CalendarTimestamp, e?: MouseEvent) => {\n this.$emit('update:modelValue', day.date)\n this.$emit('click:date', day, e)\n },\n }\n\n // Only add categories prop for VCalendarCategory component\n if (component.name === 'v-calendar-category') {\n props.categories = categories\n }\n\n return withDirectives(h(component, props, this.getScopedSlots()), [\n [Resize, this.updateEventVisibility, '', { quiet: true }],\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendar.js"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
// Styles
|
|
2
|
-
import "../../../src/components/VCalendar/VCalendarCategory.sass"; // Types
|
|
1
|
+
import { h, defineComponent } from 'vue'; // Styles
|
|
3
2
|
|
|
4
|
-
import
|
|
3
|
+
import "../../../src/components/VCalendar/VCalendarCategory.sass"; // Mixins
|
|
5
4
|
|
|
6
5
|
import VCalendarDaily from './VCalendarDaily'; // Util
|
|
7
6
|
|
|
@@ -55,7 +54,7 @@ export default defineComponent({
|
|
|
55
54
|
const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category;
|
|
56
55
|
return h('div', {
|
|
57
56
|
class: 'v-calendar-category__column-header',
|
|
58
|
-
|
|
57
|
+
...this.getDefaultMouseEventHandlers(':day-category', e => {
|
|
59
58
|
return this.getCategoryScope(this.getSlotScope(day), scope.category);
|
|
60
59
|
})
|
|
61
60
|
}, [getSlot(this, 'category', scope) || this.genDayHeaderCategoryTitle(headerTitle), getSlot(this, 'day-header', scope)]);
|
|
@@ -81,9 +80,8 @@ export default defineComponent({
|
|
|
81
80
|
const category = this.parsedCategories[categoryIndex];
|
|
82
81
|
return h('div', {
|
|
83
82
|
key: day.date + '-' + categoryIndex,
|
|
84
|
-
class: 'v-calendar-daily__day',
|
|
85
|
-
|
|
86
|
-
on: this.getDefaultMouseEventHandlers(':time', e => {
|
|
83
|
+
class: ['v-calendar-daily__day', this.getRelativeClasses(day)],
|
|
84
|
+
...this.getDefaultMouseEventHandlers(':time', e => {
|
|
87
85
|
return this.getSlotScope(this.getTimestampAtEvent(e, day));
|
|
88
86
|
})
|
|
89
87
|
}, [...this.genDayIntervals(index, category), ...this.genDayBody(day, category)]);
|
|
@@ -106,7 +104,7 @@ export default defineComponent({
|
|
|
106
104
|
})
|
|
107
105
|
}
|
|
108
106
|
};
|
|
109
|
-
const children = getSlot(this, 'interval',
|
|
107
|
+
const children = getSlot(this, 'interval', this.getCategoryScope(this.getSlotScope(interval), category));
|
|
110
108
|
return h('div', data, children);
|
|
111
109
|
},
|
|
112
110
|
|
|
@@ -121,11 +119,11 @@ export default defineComponent({
|
|
|
121
119
|
genDayBodyCategory(day, category) {
|
|
122
120
|
const data = {
|
|
123
121
|
class: 'v-calendar-category__column',
|
|
124
|
-
|
|
122
|
+
...this.getDefaultMouseEventHandlers(':time-category', e => {
|
|
125
123
|
return this.getCategoryScope(this.getSlotScope(this.getTimestampAtEvent(e, day)), category);
|
|
126
124
|
})
|
|
127
125
|
};
|
|
128
|
-
const children = getSlot(this, 'day-body',
|
|
126
|
+
const children = getSlot(this, 'day-body', this.getCategoryScope(this.getSlotScope(day), category));
|
|
129
127
|
return h('div', data, children);
|
|
130
128
|
}
|
|
131
129
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VCalendar/VCalendarCategory.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VCalendar/VCalendarCategory.ts"],"names":[],"mappings":"AAAA,SAAS,CAAT,EAAY,eAAZ,QAAmC,KAAnC,C,CAEA;;AACA,OAAO,0DAAP,C,CAKA;;AACA,OAAO,cAAP,MAA2B,kBAA3B,C,CAEA;;AACA,SAAS,aAAT,EAAwB,OAAxB,QAAuC,oBAAvC;AAEA,OAAO,KAAP,MAAkB,cAAlB;AACA,SAAS,mBAAT,QAAoC,eAApC;AAEA;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,qBADuB;AAE7B,EAAA,OAAO,EAAE,cAFoB;AAI7B,EAAA,KAAK,EAAE,KAAK,CAAC,QAJgB;AAM7B,EAAA,QAAQ,EAAE;AACR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,4BAAoB,IADf;AAEL,+BAAuB,IAFlB;AAGL,WAAG,KAAK;AAHH,OAAP;AAKD,KAPO;;AAQR,IAAA,gBAAgB,GAAA;AACd,aAAO,mBAAmB,CAAC,KAAK,UAAN,EAAkB,KAAK,YAAvB,CAA1B;AACD;;AAVO,GANmB;AAkB7B,EAAA,OAAO,EAAE;AACP,IAAA,YAAY,CAAE,GAAF,EAA0B,KAA1B,EAAuC;AACjD,YAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE;AADI,OAAb;AAGA,YAAM,KAAK,GAAG;AACZ,QAAA,IAAI,EAAE,KAAK,IADC;AACK,WAAG,GADR;AACa,QAAA;AADb,OAAd;AAIA,YAAM,QAAQ,GAAG,KAAK,gBAAL,CAAsB,GAAtB,CAA0B,QAAQ,IAAG;AACpD,eAAO,KAAK,oBAAL,CAA0B,GAA1B,EAA+B,KAAK,gBAAL,CAAsB,KAAtB,EAA6B,QAA7B,CAA/B,CAAP;AACD,OAFgB,CAAjB;AAIA,aAAO,CAAC,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,QAAd,CAAF,CAAP;AACD,KAdM;;AAeP,IAAA,gBAAgB,CAAE,KAAF,EAAc,QAAd,EAAwC;AACtD,YAAM,GAAG,GAAG,OAAO,QAAP,KAAoB,QAApB,IAAgC,QAAhC,IACR,QAAQ,CAAC,YAAT,KAA0B,KAAK,kBADvB,GAC4C,IAD5C,GACmD,QAD/D;AAEA,aAAO,EACL,GAAG,KADE;AAEL,QAAA,QAAQ,EAAE;AAFL,OAAP;AAID,KAtBM;;AAuBP,IAAA,oBAAoB,CAAE,GAAF,EAA0B,KAA1B,EAAoC;AACtD,YAAM,WAAW,GAAG,OAAO,KAAK,CAAC,QAAb,KAA0B,QAA1B,GAAqC,KAAK,CAAC,QAAN,CAAe,YAApD,GAAmE,KAAK,CAAC,QAA7F;AACA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,oCADO;AAEd,WAAG,KAAK,4BAAL,CAAkC,eAAlC,EAAmD,CAAC,IAAG;AACxD,iBAAO,KAAK,gBAAL,CAAsB,KAAK,YAAL,CAAkB,GAAlB,CAAtB,EAA8C,KAAK,CAAC,QAApD,CAAP;AACD,SAFE;AAFW,OAAR,EAKL,CACD,OAAO,CAAC,IAAD,EAAO,UAAP,EAAmB,KAAnB,CAAP,IAAoC,KAAK,yBAAL,CAA+B,WAA/B,CADnC,EAED,OAAO,CAAC,IAAD,EAAO,YAAP,EAAqB,KAArB,CAFN,CALK,CAAR;AASD,KAlCM;;AAmCP,IAAA,yBAAyB,CAAE,YAAF,EAA6B;AACpD,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,YAAY,KAAK,IAAjB,GAAwB,KAAK,kBAA7B,GAAkD,YAF7C,CAAR;AAGD,KAvCM;;AAwCP,IAAA,OAAO,GAAA;AACL,YAAM,IAAI,GAAY,EAAtB;AACA,WAAK,IAAL,CAAU,OAAV,CAAkB,CAAC,CAAD,EAAI,CAAJ,KAAS;AACzB,cAAM,GAAG,GAAG,IAAI,KAAJ,CAAU,KAAK,gBAAL,CAAsB,MAAtB,IAAgC,CAA1C,CAAZ;AACA,QAAA,GAAG,CAAC,IAAJ,CAAS,CAAT;AACA,QAAA,IAAI,CAAC,IAAL,CAAU,GAAG,GAAG,CAAC,GAAJ,CAAQ,CAAC,CAAD,EAAI,CAAJ,KAAU,KAAK,MAAL,CAAY,CAAZ,EAAe,CAAf,EAAkB,CAAlB,CAAlB,CAAb;AACD,OAJD;AAKA,aAAO,IAAP;AACD,KAhDM;;AAiDP,IAAA,MAAM,CAAE,GAAF,EAA0B,KAA1B,EAAyC,aAAzC,EAA8D;AAClE,YAAM,QAAQ,GAAG,KAAK,gBAAL,CAAsB,aAAtB,CAAjB;AACA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,GAAG,CAAC,IAAJ,GAAW,GAAX,GAAiB,aADR;AAEd,QAAA,KAAK,EAAE,CAAC,uBAAD,EAA0B,KAAK,kBAAL,CAAwB,GAAxB,CAA1B,CAFO;AAGd,WAAG,KAAK,4BAAL,CAAkC,OAAlC,EAA2C,CAAC,IAAG;AAChD,iBAAO,KAAK,YAAL,CAAkB,KAAK,mBAAL,CAAyB,CAAzB,EAA4B,GAA5B,CAAlB,CAAP;AACD,SAFE;AAHW,OAAR,EAML,CACD,GAAG,KAAK,eAAL,CAAqB,KAArB,EAA4B,QAA5B,CADF,EAED,GAAG,KAAK,UAAL,CAAgB,GAAhB,EAAqB,QAArB,CAFF,CANK,CAAR;AAUD,KA7DM;;AA8DP,IAAA,eAAe,CAAE,KAAF,EAAiB,QAAjB,EAA2C;AACxD,aAAO,KAAK,SAAL,CAAe,KAAf,EAAsB,GAAtB,CAA0B,CAAC,IAAI,KAAK,cAAL,CAAoB,CAApB,EAAuB,QAAvB,CAA/B,CAAP;AACD,KAhEM;;AAiEP,IAAA,cAAc,CAAE,QAAF,EAA+B,QAA/B,EAAyD;AACrE,YAAM,MAAM,GAAuB,aAAa,CAAC,KAAK,cAAN,CAAhD;AACA,YAAM,MAAM,GAAG,KAAK,aAAL,IAAsB,KAAK,oBAA1C;AAEA,YAAM,IAAI,GAAG;AACX,QAAA,GAAG,EAAE,QAAQ,CAAC,IADH;AAEX,QAAA,KAAK,EAAE,gCAFI;AAGX,QAAA,KAAK,EAAE;AACL,UAAA,MADK;AAEL,aAAG,MAAM,CAAC,EAAE,GAAG,QAAL;AAAe,YAAA;AAAf,WAAD;AAFJ;AAHI,OAAb;AASA,YAAM,QAAQ,GAAG,OAAO,CAAC,IAAD,EAAO,UAAP,EACtB,KAAK,gBAAL,CAAsB,KAAK,YAAL,CAAkB,QAAlB,CAAtB,EAAmD,QAAnD,CADsB,CAAxB;AAIA,aAAO,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,QAAd,CAAR;AACD,KAnFM;;AAoFP,IAAA,UAAU,CAAE,GAAF,EAA0B,QAA1B,EAAoD;AAC5D,YAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE;AADI,OAAb;AAIA,YAAM,QAAQ,GAAG,CAAC,KAAK,kBAAL,CAAwB,GAAxB,EAA6B,QAA7B,CAAD,CAAjB;AAEA,aAAO,CAAC,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,QAAd,CAAF,CAAP;AACD,KA5FM;;AA6FP,IAAA,kBAAkB,CAAE,GAAF,EAA0B,QAA1B,EAAoD;AACpE,YAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE,6BADI;AAEX,WAAG,KAAK,4BAAL,CAAkC,gBAAlC,EAAoD,CAAC,IAAG;AACzD,iBAAO,KAAK,gBAAL,CAAsB,KAAK,YAAL,CAAkB,KAAK,mBAAL,CAAyB,CAAzB,EAA4B,GAA5B,CAAlB,CAAtB,EAA2E,QAA3E,CAAP;AACD,SAFE;AAFQ,OAAb;AAOA,YAAM,QAAQ,GAAG,OAAO,CAAC,IAAD,EAAO,UAAP,EAAmB,KAAK,gBAAL,CAAsB,KAAK,YAAL,CAAkB,GAAlB,CAAtB,EAA8C,QAA9C,CAAnB,CAAxB;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,QAAd,CAAR;AACD;;AAxGM;AAlBoB,CAAD,CAA9B","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VCalendarCategory.sass'\n\n// Types\nimport { VNode } from 'vue'\n\n// Mixins\nimport VCalendarDaily from './VCalendarDaily'\n\n// Util\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { CalendarCategory, CalendarTimestamp } from 'types'\nimport props from './util/props'\nimport { getParsedCategories } from './util/parser'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-category',\n extends: VCalendarDaily,\n\n props: props.category,\n\n computed: {\n classes (): object {\n return {\n 'v-calendar-daily': true,\n 'v-calendar-category': true,\n ...this.themeClasses,\n }\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n methods: {\n genDayHeader (day: CalendarTimestamp, index: number): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n const scope = {\n week: this.days, ...day, index,\n }\n\n const children = this.parsedCategories.map(category => {\n return this.genDayHeaderCategory(day, this.getCategoryScope(scope, category))\n })\n\n return [h('div', data, children)]\n },\n getCategoryScope (scope: any, category: CalendarCategory) {\n const cat = typeof category === 'object' && category &&\n category.categoryName === this.categoryForInvalid ? null : category\n return {\n ...scope,\n category: cat,\n }\n },\n genDayHeaderCategory (day: CalendarTimestamp, scope: any): VNode {\n const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category\n return h('div', {\n class: 'v-calendar-category__column-header',\n ...this.getDefaultMouseEventHandlers(':day-category', e => {\n return this.getCategoryScope(this.getSlotScope(day), scope.category)\n }),\n }, [\n getSlot(this, 'category', scope) || this.genDayHeaderCategoryTitle(headerTitle),\n getSlot(this, 'day-header', scope),\n ])\n },\n genDayHeaderCategoryTitle (categoryName: string | null) {\n return h('div', {\n class: 'v-calendar-category__category',\n }, categoryName === null ? this.categoryForInvalid : categoryName)\n },\n genDays (): VNode[] {\n const days: VNode[] = []\n this.days.forEach((d, j) => {\n const day = new Array(this.parsedCategories.length || 1)\n day.fill(d)\n days.push(...day.map((v, i) => this.genDay(v, j, i)))\n })\n return days\n },\n genDay (day: CalendarTimestamp, index: number, categoryIndex: number): VNode {\n const category = this.parsedCategories[categoryIndex]\n return h('div', {\n key: day.date + '-' + categoryIndex,\n class: ['v-calendar-daily__day', this.getRelativeClasses(day)],\n ...this.getDefaultMouseEventHandlers(':time', e => {\n return this.getSlotScope(this.getTimestampAtEvent(e, day))\n }),\n }, [\n ...this.genDayIntervals(index, category),\n ...this.genDayBody(day, category),\n ])\n },\n genDayIntervals (index: number, category: CalendarCategory): VNode[] {\n return this.intervals[index].map(v => this.genDayInterval(v, category))\n },\n genDayInterval (interval: CalendarTimestamp, category: CalendarCategory): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const styler = this.intervalStyle || this.intervalStyleDefault\n\n const data = {\n key: interval.time,\n class: 'v-calendar-daily__day-interval',\n style: {\n height,\n ...styler({ ...interval, category }),\n },\n }\n\n const children = getSlot(this, 'interval',\n this.getCategoryScope(this.getSlotScope(interval), category)\n )\n\n return h('div', data, children)\n },\n genDayBody (day: CalendarTimestamp, category: CalendarCategory): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n\n const children = [this.genDayBodyCategory(day, category)]\n\n return [h('div', data, children)]\n },\n genDayBodyCategory (day: CalendarTimestamp, category: CalendarCategory): VNode {\n const data = {\n class: 'v-calendar-category__column',\n ...this.getDefaultMouseEventHandlers(':time-category', e => {\n return this.getCategoryScope(this.getSlotScope(this.getTimestampAtEvent(e, day)), category)\n }),\n }\n\n const children = getSlot(this, 'day-body', this.getCategoryScope(this.getSlotScope(day), category))\n\n return h('div', data, children)\n },\n },\n})\n"],"sourceRoot":"","file":"VCalendarCategory.js"}
|