@dimailn/vuetify 2.7.2-alpha25 → 2.7.2-alpha27
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 +1436 -1164
- 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 -0
- 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/VAppBar/VAppBarNavIcon.js +5 -1
- package/es5/components/VAppBar/VAppBarNavIcon.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 +23 -15
- 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/VBreadcrumbs/VBreadcrumbs.js +18 -6
- package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/es5/components/VBtn/VBtn.js +6 -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 +20 -13
- package/es5/components/VCarousel/VCarousel.js.map +1 -1
- package/es5/components/VCarousel/VCarouselItem.js +7 -3
- package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
- package/es5/components/VCheckbox/VCheckbox.js +34 -1
- 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 +14 -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 +6 -1
- 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 +22 -13
- package/es5/components/VDataTable/VDataTable.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeader.js +2 -6
- package/es5/components/VDataTable/VDataTableHeader.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 +23 -18
- package/es5/components/VDataTable/VEditDialog.js.map +1 -1
- package/es5/components/VDataTable/mixins/header.js +5 -7
- 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 +50 -22
- 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 +16 -7
- 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 +21 -16
- 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 +17 -12
- 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/VExpansionPanelContent.js +11 -9
- package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
- package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +16 -19
- 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 +9 -7
- package/es5/components/VImg/VImg.js.map +1 -1
- package/es5/components/VInput/VInput.js +11 -4
- 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 +30 -20
- package/es5/components/VList/VListGroup.js.map +1 -1
- package/es5/components/VList/VListItem.js +31 -13
- 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 +1 -0
- package/es5/components/VMenu/VMenu.js.map +1 -1
- package/es5/components/VMessages/VMessages.js +5 -1
- package/es5/components/VMessages/VMessages.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 +1 -5
- package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
- package/es5/components/VOverflowBtn/VOverflowBtn.js +4 -1
- 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 +4 -4
- package/es5/components/VPagination/VPagination.js.map +1 -1
- package/es5/components/VPicker/VPicker.js +7 -4
- 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 +11 -2
- package/es5/components/VRadioGroup/VRadio.js.map +1 -1
- package/es5/components/VSelect/VSelect.js +115 -64
- package/es5/components/VSelect/VSelect.js.map +1 -1
- package/es5/components/VSelect/VSelectList.js +30 -26
- package/es5/components/VSelect/VSelectList.js.map +1 -1
- package/es5/components/VSlideGroup/VSlideGroup.js +27 -22
- 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 +16 -15
- 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/VStepperContent.js +3 -1
- package/es5/components/VStepper/VStepperContent.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 +11 -9
- 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 +17 -6
- 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 +34 -26
- 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 -4
- package/es5/components/VTooltip/VTooltip.js.map +1 -1
- package/es5/components/VTreeview/VTreeviewNode.js +11 -3
- package/es5/components/VTreeview/VTreeviewNode.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/components/transitions/createTransition.js +8 -2
- package/es5/components/transitions/createTransition.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/picker/index.js +13 -3
- package/es5/mixins/picker/index.js.map +1 -1
- package/lib/components/VAlert/VAlert.js +1 -0
- 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/VAppBar/VAppBarNavIcon.js +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.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 +9 -13
- 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/VBreadcrumbs/VBreadcrumbs.js +2 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +4 -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 +15 -14
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.js +1 -1
- package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.js +15 -2
- 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 +14 -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 +2 -1
- 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 +7 -12
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeader.js +3 -6
- package/lib/components/VDataTable/VDataTableHeader.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 +16 -15
- package/lib/components/VDataTable/VEditDialog.js.map +1 -1
- package/lib/components/VDataTable/mixins/header.js +1 -6
- 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 +6 -5
- 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 +18 -14
- 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 +3 -2
- 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/VExpansionPanelContent.js +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +3 -6
- 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 +4 -8
- package/lib/components/VImg/VImg.js.map +1 -1
- package/lib/components/VInput/VInput.js +3 -2
- 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 +8 -10
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.js +28 -15
- 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 +1 -0
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VMessages/VMessages.js +1 -1
- package/lib/components/VMessages/VMessages.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 +2 -6
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.js +2 -1
- 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 +2 -4
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VPicker/VPicker.js +4 -4
- 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 +3 -2
- package/lib/components/VRadioGroup/VRadio.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +66 -21
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelectList.js +15 -17
- package/lib/components/VSelect/VSelectList.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +4 -7
- 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 +1 -4
- 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/VStepperContent.js +1 -1
- package/lib/components/VStepper/VStepperContent.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 +2 -4
- 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 +16 -6
- 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 +7 -16
- 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 +2 -3
- package/lib/components/VTooltip/VTooltip.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewNode.js +3 -3
- package/lib/components/VTreeview/VTreeviewNode.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/components/transitions/createTransition.js +2 -2
- package/lib/components/transitions/createTransition.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/picker/index.js +5 -3
- package/lib/mixins/picker/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/VAlert/VAlert.ts +2 -0
- package/src/components/VAppBar/VAppBar.ts +12 -3
- package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
- package/src/components/VBadge/VBadge.ts +1 -1
- package/src/components/VBanner/VBanner.ts +17 -17
- package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -8
- package/src/components/VBreadcrumbs/VBreadcrumbs.ts +2 -2
- package/src/components/VBtn/VBtn.ts +8 -2
- 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/VCarousel/VCarousel.ts +16 -12
- package/src/components/VCarousel/VCarouselItem.ts +1 -1
- package/src/components/VCheckbox/VCheckbox.ts +20 -2
- package/src/components/VCheckbox/VSimpleCheckbox.ts +0 -3
- package/src/components/VChip/VChip.ts +16 -13
- package/src/components/VData/VData.ts +2 -0
- package/src/components/VDataIterator/VDataFooter.ts +3 -1
- package/src/components/VDataIterator/VDataIterator.ts +2 -0
- package/src/components/VDataTable/VDataTable.ts +7 -9
- package/src/components/VDataTable/VDataTableHeader.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 +20 -18
- package/src/components/VDataTable/mixins/header.ts +1 -5
- 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 +9 -7
- 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 +19 -14
- 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 +9 -7
- package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
- package/src/components/VExpansionPanel/VExpansionPanelContent.ts +1 -1
- package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +2 -3
- package/src/components/VFileInput/VFileInput.ts +2 -0
- package/src/components/VForm/VForm.ts +2 -0
- package/src/components/VHover/VHover.ts +2 -0
- package/src/components/VImg/VImg.ts +4 -3
- package/src/components/VInput/VInput.ts +4 -2
- package/src/components/VItemGroup/VItem.ts +4 -0
- package/src/components/VItemGroup/VItemGroup.ts +7 -1
- package/src/components/VLazy/VLazy.ts +11 -13
- package/src/components/VList/VListGroup.ts +12 -13
- package/src/components/VList/VListItem.ts +36 -19
- package/src/components/VList/VListItemAction.ts +11 -10
- package/src/components/VMenu/VMenu.ts +3 -1
- package/src/components/VMessages/VMessages.ts +1 -1
- package/src/components/VNavigationDrawer/VNavigationDrawer.ts +2 -5
- package/src/components/VOtpInput/VOtpInput.ts +2 -3
- package/src/components/VOverflowBtn/VOverflowBtn.ts +3 -1
- package/src/components/VOverlay/VOverlay.ts +2 -0
- package/src/components/VPagination/VPagination.ts +3 -2
- package/src/components/VPicker/VPicker.ts +9 -11
- package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
- package/src/components/VProgressCircular/VProgressCircular.ts +0 -1
- package/src/components/VProgressLinear/VProgressLinear.ts +14 -13
- package/src/components/VRadioGroup/VRadio.ts +4 -2
- package/src/components/VSelect/VSelect.ts +61 -21
- package/src/components/VSelect/VSelectList.ts +16 -12
- package/src/components/VSlideGroup/VSlideGroup.ts +5 -7
- package/src/components/VSlideGroup/VSlideItem.ts +2 -0
- package/src/components/VSlider/VSlider.ts +1 -4
- package/src/components/VSnackbar/VSnackbar.ts +1 -1
- package/src/components/VSparkline/VSparkline.ts +54 -92
- package/src/components/VSpeedDial/VSpeedDial.ts +6 -8
- package/src/components/VStepper/VStepper.ts +3 -1
- package/src/components/VStepper/VStepperContent.ts +1 -1
- package/src/components/VStepper/VStepperStep.ts +8 -15
- package/src/components/VSwitch/VSwitch.ts +5 -6
- package/src/components/VTabs/VTab.ts +2 -0
- package/src/components/VTabs/VTabs.ts +18 -12
- package/src/components/VTabs/VTabsItems.ts +2 -0
- package/src/components/VTextField/VTextField.ts +10 -13
- 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 +160 -40
- package/src/components/VToolbar/VToolbar.ts +1 -1
- package/src/components/VTooltip/VTooltip.ts +2 -2
- package/src/components/VTreeview/VTreeviewNode.ts +3 -3
- 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/components/transitions/createTransition.ts +2 -2
- package/src/mixins/detachable/index.ts +11 -5
- package/src/mixins/picker/index.ts +4 -4
|
@@ -36,12 +36,11 @@ export default mixins(Colorable, Themeable
|
|
|
36
36
|
type: Number,
|
|
37
37
|
default: 1
|
|
38
38
|
},
|
|
39
|
-
|
|
39
|
+
modelValue: Number
|
|
40
40
|
},
|
|
41
41
|
|
|
42
42
|
data() {
|
|
43
43
|
return {
|
|
44
|
-
inputValue: this.value,
|
|
45
44
|
isDragging: false,
|
|
46
45
|
valueOnMouseDown: null,
|
|
47
46
|
valueOnMouseUp: null
|
|
@@ -62,7 +61,7 @@ export default mixins(Colorable, Themeable
|
|
|
62
61
|
},
|
|
63
62
|
|
|
64
63
|
displayedValue() {
|
|
65
|
-
return this.
|
|
64
|
+
return this.modelValue == null ? this.min : this.modelValue;
|
|
66
65
|
},
|
|
67
66
|
|
|
68
67
|
innerRadiusScale() {
|
|
@@ -73,12 +72,6 @@ export default mixins(Colorable, Themeable
|
|
|
73
72
|
return this.double ? this.count / 2 : this.count;
|
|
74
73
|
}
|
|
75
74
|
|
|
76
|
-
},
|
|
77
|
-
watch: {
|
|
78
|
-
value(value) {
|
|
79
|
-
this.inputValue = value;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
75
|
},
|
|
83
76
|
methods: {
|
|
84
77
|
wheel(e) {
|
|
@@ -112,17 +105,14 @@ export default mixins(Colorable, Themeable
|
|
|
112
105
|
const children = [];
|
|
113
106
|
|
|
114
107
|
for (let value = this.min; value <= this.max; value = value + this.step) {
|
|
115
|
-
const color = value === this.
|
|
108
|
+
const color = value === this.modelValue && (this.color || 'accent');
|
|
116
109
|
children.push(h('span', this.setBackgroundColor(color, {
|
|
117
|
-
class: 'v-time-picker-clock__item',
|
|
118
|
-
class: {
|
|
110
|
+
class: ['v-time-picker-clock__item', {
|
|
119
111
|
'v-time-picker-clock__item--active': value === this.displayedValue,
|
|
120
112
|
'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value)
|
|
121
|
-
},
|
|
113
|
+
}],
|
|
122
114
|
style: this.getTransform(value),
|
|
123
|
-
|
|
124
|
-
innerHTML: `<span>${this.format(value)}</span>`
|
|
125
|
-
}
|
|
115
|
+
innerHTML: `<span>${this.format(value)}</span>`
|
|
126
116
|
})));
|
|
127
117
|
}
|
|
128
118
|
|
|
@@ -132,12 +122,11 @@ export default mixins(Colorable, Themeable
|
|
|
132
122
|
genHand() {
|
|
133
123
|
const scale = `scaleY(${this.handScale(this.displayedValue)})`;
|
|
134
124
|
const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min);
|
|
135
|
-
const color = this.
|
|
125
|
+
const color = this.modelValue != null && (this.color || 'accent');
|
|
136
126
|
return h('div', this.setBackgroundColor(color, {
|
|
137
|
-
class: 'v-time-picker-clock__hand',
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
},
|
|
127
|
+
class: ['v-time-picker-clock__hand', {
|
|
128
|
+
'v-time-picker-clock__hand--inner': this.isInner(this.modelValue)
|
|
129
|
+
}],
|
|
141
130
|
style: {
|
|
142
131
|
transform: `rotate(${angle}deg) ${scale}`
|
|
143
132
|
}
|
|
@@ -233,9 +222,8 @@ export default mixins(Colorable, Themeable
|
|
|
233
222
|
},
|
|
234
223
|
|
|
235
224
|
update(value) {
|
|
236
|
-
if (this.
|
|
237
|
-
this
|
|
238
|
-
this.$emit('input', value);
|
|
225
|
+
if (this.modelValue !== value) {
|
|
226
|
+
this.$emit('update:modelValue', value);
|
|
239
227
|
}
|
|
240
228
|
},
|
|
241
229
|
|
|
@@ -254,25 +242,22 @@ export default mixins(Colorable, Themeable
|
|
|
254
242
|
|
|
255
243
|
render() {
|
|
256
244
|
const data = {
|
|
257
|
-
class: 'v-time-picker-clock',
|
|
258
|
-
|
|
259
|
-
'v-time-picker-clock--indeterminate': this.value == null,
|
|
245
|
+
class: ['v-time-picker-clock', {
|
|
246
|
+
'v-time-picker-clock--indeterminate': this.modelValue == null,
|
|
260
247
|
...this.themeClasses
|
|
261
|
-
},
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
touchmove: this.onDragMove
|
|
270
|
-
},
|
|
248
|
+
}],
|
|
249
|
+
onMousedown: this.readonly || this.disabled ? undefined : this.onMouseDown,
|
|
250
|
+
onMouseup: this.readonly || this.disabled ? undefined : this.onMouseUp,
|
|
251
|
+
onMouseleave: this.readonly || this.disabled ? undefined : e => this.isDragging && this.onMouseUp(e),
|
|
252
|
+
onTouchstart: this.readonly || this.disabled ? undefined : this.onMouseDown,
|
|
253
|
+
onTouchend: this.readonly || this.disabled ? undefined : this.onMouseUp,
|
|
254
|
+
onMousemove: this.readonly || this.disabled ? undefined : this.onDragMove,
|
|
255
|
+
onTouchmove: this.readonly || this.disabled ? undefined : this.onDragMove,
|
|
271
256
|
ref: 'clock'
|
|
272
257
|
};
|
|
273
258
|
|
|
274
|
-
if (this.scrollable &&
|
|
275
|
-
data.
|
|
259
|
+
if (this.scrollable && !this.readonly && !this.disabled) {
|
|
260
|
+
data.onWheel = this.wheel;
|
|
276
261
|
}
|
|
277
262
|
|
|
278
263
|
return h('div', data, [h('div', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\nimport './VTimePickerClock.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport Vue, { VNode, PropType, VNodeData } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ninterface Point {\n x: number\n y: number\n}\n\ninterface options extends Vue {\n $refs: {\n clock: HTMLElement\n innerClock: HTMLElement\n }\n}\n\nexport default mixins<options &\n/* eslint-disable indent */\n ExtractVue<[\n typeof Colorable,\n typeof Themeable\n ]>\n/* eslint-enable indent */\n>(\n Colorable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-time-picker-clock',\n\n props: {\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n disabled: Boolean,\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n } as PropValidator<(val: string | number) => string | number>,\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n value: Number,\n },\n\n data () {\n return {\n inputValue: this.value,\n isDragging: false,\n valueOnMouseDown: null as number | null,\n valueOnMouseUp: null as number | null,\n }\n },\n\n computed: {\n count (): number {\n return this.max - this.min + 1\n },\n degreesPerUnit (): number {\n return 360 / this.roundCount\n },\n degrees (): number {\n return this.degreesPerUnit * Math.PI / 180\n },\n displayedValue (): number {\n return this.value == null ? this.min : this.value\n },\n innerRadiusScale (): number {\n return 0.62\n },\n roundCount (): number {\n return this.double ? (this.count / 2) : this.count\n },\n },\n\n watch: {\n value (value) {\n this.inputValue = value\n },\n },\n\n methods: {\n wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = this.displayedValue\n do {\n value = value + delta\n value = (value - this.min + this.count) % this.count + this.min\n } while (!this.isAllowed(value) && value !== this.displayedValue)\n\n if (value !== this.displayedValue) {\n this.update(value)\n }\n },\n isInner (value: number) {\n return this.double && (value - this.min >= this.roundCount)\n },\n handScale (value: number) {\n return this.isInner(value) ? this.innerRadiusScale : 1\n },\n isAllowed (value: number) {\n return !this.allowedValues || this.allowedValues(value)\n },\n genValues () {\n const children: VNode[] = []\n\n for (let value = this.min; value <= this.max; value = value + this.step) {\n const color = value === this.value && (this.color || 'accent')\n children.push(h('span', this.setBackgroundColor(color, {\n class: 'v-time-picker-clock__item',\n class: {\n 'v-time-picker-clock__item--active': value === this.displayedValue,\n 'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value),\n },\n style: this.getTransform(value),\n domProps: { innerHTML: `<span>${this.format(value)}</span>` },\n })))\n }\n\n return children\n },\n genHand () {\n const scale = `scaleY(${this.handScale(this.displayedValue)})`\n const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min)\n const color = (this.value != null) && (this.color || 'accent')\n return h('div', this.setBackgroundColor(color, {\n class: 'v-time-picker-clock__hand',\n class: {\n 'v-time-picker-clock__hand--inner': this.isInner(this.value),\n },\n style: {\n transform: `rotate(${angle}deg) ${scale}`,\n },\n }))\n },\n getTransform (i: number) {\n const { x, y } = this.getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`,\n }\n },\n getPosition (value: number) {\n const rotateRadians = this.rotate * Math.PI / 180\n return {\n x: Math.sin((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n y: -Math.cos((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n }\n },\n onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n this.valueOnMouseDown = null\n this.valueOnMouseUp = null\n this.isDragging = true\n this.onDragMove(e)\n },\n onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n\n this.isDragging = false\n if (this.valueOnMouseUp !== null && this.isAllowed(this.valueOnMouseUp)) {\n this.$emit('change', this.valueOnMouseUp)\n }\n },\n onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!this.isDragging && e.type !== 'click') || !this.$refs.clock) return\n\n const { width, top, left } = this.$refs.clock.getBoundingClientRect()\n const { width: innerWidth } = this.$refs.innerClock.getBoundingClientRect()\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(this.angle(center, coords) - this.rotate + 360) % 360\n const insideClick = this.double && this.euclidean(center, coords) < (innerWidth + innerWidth * this.innerRadiusScale) / 4\n const checksCount = Math.ceil(15 / this.degreesPerUnit)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = this.angleToValue(handAngle + i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n\n value = this.angleToValue(handAngle - i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n }\n },\n angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / this.degreesPerUnit) +\n (insideClick ? this.roundCount : 0)\n ) % this.count + this.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - this.degreesPerUnit / 2)) return value\n\n return insideClick ? this.max - this.roundCount + 1 : this.min\n },\n setMouseDownValue (value: number) {\n if (this.valueOnMouseDown === null) {\n this.valueOnMouseDown = value\n }\n\n this.valueOnMouseUp = value\n this.update(value)\n },\n update (value: number) {\n if (this.inputValue !== value) {\n this.inputValue = value\n this.$emit('input', value)\n }\n },\n euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n },\n angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n },\n },\n\n render (): VNode {\n const data: VNodeData = {\n class: 'v-time-picker-clock',\n class: {\n 'v-time-picker-clock--indeterminate': this.value == null,\n ...this.themeClasses,\n },\n on: (this.readonly || this.disabled) ? undefined : {\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n mouseleave: (e: MouseEvent) => (this.isDragging && this.onMouseUp(e)),\n touchstart: this.onMouseDown,\n touchend: this.onMouseUp,\n mousemove: this.onDragMove,\n touchmove: this.onDragMove,\n },\n ref: 'clock',\n }\n\n if (this.scrollable && data.on) {\n data.on.wheel = this.wheel\n }\n\n return h('div', data, [\n h('div', {\n class: 'v-time-picker-clock__inner',\n ref: 'innerClock',\n }, [\n this.genHand(),\n this.genValues(),\n ]),\n ])\n },\n})\n"],"sourceRoot":"","file":"VTimePickerClock.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, VNode, PropType, VNodeData } from 'vue'\nimport './VTimePickerClock.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport mixins, { ExtractVue } from '../../util/mixins'\n\ninterface Point {\n x: number\n y: number\n}\n\ninterface options {\n $refs: {\n clock: HTMLElement\n innerClock: HTMLElement\n }\n}\n\nexport default mixins<options &\n/* eslint-disable indent */\n ExtractVue<[\n typeof Colorable,\n typeof Themeable\n ]>\n/* eslint-enable indent */\n>(\n Colorable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-time-picker-clock',\n\n props: {\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n disabled: Boolean,\n double: Boolean,\n format: {\n type: Function as PropType<(val: string | number) => string | number>,\n default: (val: string | number) => val,\n },\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n modelValue: Number,\n },\n\n data () {\n return {\n isDragging: false,\n valueOnMouseDown: null as number | null,\n valueOnMouseUp: null as number | null,\n }\n },\n\n computed: {\n count (): number {\n return this.max - this.min + 1\n },\n degreesPerUnit (): number {\n return 360 / this.roundCount\n },\n degrees (): number {\n return this.degreesPerUnit * Math.PI / 180\n },\n displayedValue (): number {\n return this.modelValue == null ? this.min : this.modelValue\n },\n innerRadiusScale (): number {\n return 0.62\n },\n roundCount (): number {\n return this.double ? (this.count / 2) : this.count\n },\n },\n\n\n methods: {\n wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = this.displayedValue\n do {\n value = value + delta\n value = (value - this.min + this.count) % this.count + this.min\n } while (!this.isAllowed(value) && value !== this.displayedValue)\n\n if (value !== this.displayedValue) {\n this.update(value)\n }\n },\n isInner (value: number) {\n return this.double && (value - this.min >= this.roundCount)\n },\n handScale (value: number) {\n return this.isInner(value) ? this.innerRadiusScale : 1\n },\n isAllowed (value: number) {\n return !this.allowedValues || this.allowedValues(value)\n },\n genValues () {\n const children: VNode[] = []\n\n for (let value = this.min; value <= this.max; value = value + this.step) {\n const color = value === this.modelValue && (this.color || 'accent')\n children.push(h('span', this.setBackgroundColor(color, {\n class: [\n 'v-time-picker-clock__item',\n {\n 'v-time-picker-clock__item--active': value === this.displayedValue,\n 'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value),\n },\n ],\n style: this.getTransform(value),\n innerHTML: `<span>${this.format(value)}</span>`,\n })))\n }\n\n return children\n },\n genHand () {\n const scale = `scaleY(${this.handScale(this.displayedValue)})`\n const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min)\n const color = (this.modelValue != null) && (this.color || 'accent')\n return h('div', this.setBackgroundColor(color, {\n class: [\n 'v-time-picker-clock__hand',\n {\n 'v-time-picker-clock__hand--inner': this.isInner(this.modelValue),\n },\n ],\n style: {\n transform: `rotate(${angle}deg) ${scale}`,\n },\n }))\n },\n getTransform (i: number) {\n const { x, y } = this.getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`,\n }\n },\n getPosition (value: number) {\n const rotateRadians = this.rotate * Math.PI / 180\n return {\n x: Math.sin((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n y: -Math.cos((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n }\n },\n onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n this.valueOnMouseDown = null\n this.valueOnMouseUp = null\n this.isDragging = true\n this.onDragMove(e)\n },\n onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n\n this.isDragging = false\n if (this.valueOnMouseUp !== null && this.isAllowed(this.valueOnMouseUp)) {\n this.$emit('change', this.valueOnMouseUp)\n }\n },\n onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!this.isDragging && e.type !== 'click') || !this.$refs.clock) return\n\n const { width, top, left } = this.$refs.clock.getBoundingClientRect()\n const { width: innerWidth } = this.$refs.innerClock.getBoundingClientRect()\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(this.angle(center, coords) - this.rotate + 360) % 360\n const insideClick = this.double && this.euclidean(center, coords) < (innerWidth + innerWidth * this.innerRadiusScale) / 4\n const checksCount = Math.ceil(15 / this.degreesPerUnit)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = this.angleToValue(handAngle + i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n\n value = this.angleToValue(handAngle - i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n }\n },\n angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / this.degreesPerUnit) +\n (insideClick ? this.roundCount : 0)\n ) % this.count + this.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - this.degreesPerUnit / 2)) return value\n\n return insideClick ? this.max - this.roundCount + 1 : this.min\n },\n setMouseDownValue (value: number) {\n if (this.valueOnMouseDown === null) {\n this.valueOnMouseDown = value\n }\n\n this.valueOnMouseUp = value\n this.update(value)\n },\n update (value: number) {\n if (this.modelValue !== value) {\n this.$emit('update:modelValue', value)\n }\n },\n euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n },\n angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n },\n },\n\n render (): VNode {\n const data: VNodeData = {\n class: [\n 'v-time-picker-clock',\n {\n 'v-time-picker-clock--indeterminate': this.modelValue == null,\n ...this.themeClasses,\n },\n ],\n onMousedown: (this.readonly || this.disabled) ? undefined : this.onMouseDown,\n onMouseup: (this.readonly || this.disabled) ? undefined : this.onMouseUp,\n onMouseleave: (this.readonly || this.disabled) ? undefined : (e: MouseEvent) => (this.isDragging && this.onMouseUp(e)),\n onTouchstart: (this.readonly || this.disabled) ? undefined : this.onMouseDown,\n onTouchend: (this.readonly || this.disabled) ? undefined : this.onMouseUp,\n onMousemove: (this.readonly || this.disabled) ? undefined : this.onDragMove,\n onTouchmove: (this.readonly || this.disabled) ? undefined : this.onDragMove,\n ref: 'clock',\n }\n\n if (this.scrollable && !this.readonly && !this.disabled) {\n data.onWheel = this.wheel\n }\n\n return h('div', data, [\n h('div', {\n class: 'v-time-picker-clock__inner',\n ref: 'innerClock',\n }, [\n this.genHand(),\n this.genValues(),\n ]),\n ])\n },\n})\n"],"sourceRoot":"","file":"VTimePickerClock.js"}
|
|
@@ -3,7 +3,7 @@ import "../../../src/components/VTimePicker/VTimePickerTitle.sass"; // Mixins
|
|
|
3
3
|
|
|
4
4
|
import PickerButton from '../../mixins/picker-button'; // Utils
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import pad from '../VDatePicker/util/pad';
|
|
7
7
|
import mixins from '../../util/mixins';
|
|
8
8
|
import { SelectingTimes } from './SelectingTimes';
|
|
9
9
|
export default mixins(PickerButton
|
|
@@ -25,6 +25,7 @@ export default mixins(PickerButton
|
|
|
25
25
|
useSeconds: Boolean,
|
|
26
26
|
selecting: Number
|
|
27
27
|
},
|
|
28
|
+
emits: ['update:selecting', 'update:period'],
|
|
28
29
|
methods: {
|
|
29
30
|
genTime() {
|
|
30
31
|
let hour = this.hour;
|
|
@@ -50,8 +51,8 @@ export default mixins(PickerButton
|
|
|
50
51
|
|
|
51
52
|
genAmPm() {
|
|
52
53
|
return h('div', {
|
|
53
|
-
class: 'v-time-picker-title__ampm',
|
|
54
54
|
class: {
|
|
55
|
+
'v-time-picker-title__ampm': true,
|
|
55
56
|
'v-time-picker-title__ampm--readonly': this.ampmReadonly
|
|
56
57
|
}
|
|
57
58
|
}, [!this.ampmReadonly || this.period === 'am' ? this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly) : null, !this.ampmReadonly || this.period === 'pm' ? this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly) : null]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerTitle.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerTitle.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, VNode, PropType, defineComponent } from 'vue'\nimport './VTimePickerTitle.sass'\n\n// Mixins\nimport PickerButton from '../../mixins/picker-button'\n\n// Utils\nimport pad from '../VDatePicker/util/pad'\nimport mixins from '../../util/mixins'\n\nimport { SelectingTimes } from './SelectingTimes'\n\nexport default mixins(\n PickerButton\n/* @vue/component */\n).extend({\n name: 'v-time-picker-title',\n\n props: {\n ampm: Boolean,\n ampmReadonly: Boolean,\n disabled: Boolean,\n hour: Number,\n minute: Number,\n second: Number,\n period: {\n type: String as PropType<'am' | 'pm'>,\n validator: period => period === 'am' || period === 'pm',\n },\n readonly: Boolean,\n useSeconds: Boolean,\n selecting: Number,\n },\n\n emits: ['update:selecting', 'update:period'],\n\n methods: {\n genTime () {\n let hour = this.hour\n if (this.ampm) {\n hour = hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n const displayedHour = this.hour == null ? '--' : this.ampm ? String(hour) : pad(hour)\n const displayedMinute = this.minute == null ? '--' : pad(this.minute)\n const titleContent = [\n this.genPickerButton('selecting', SelectingTimes.Hour, displayedHour, this.disabled),\n h('span', ':'),\n this.genPickerButton('selecting', SelectingTimes.Minute, displayedMinute, this.disabled),\n ]\n\n if (this.useSeconds) {\n const displayedSecond = this.second == null ? '--' : pad(this.second)\n titleContent.push(h('span', ':'))\n titleContent.push(this.genPickerButton('selecting', SelectingTimes.Second, displayedSecond, this.disabled))\n }\n return h('div', {\n class: 'v-time-picker-title__time',\n }, titleContent)\n },\n genAmPm () {\n return h('div', {\n class: {\n 'v-time-picker-title__ampm': true,\n 'v-time-picker-title__ampm--readonly': this.ampmReadonly,\n },\n }, [\n (!this.ampmReadonly || this.period === 'am') ? this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly) : null,\n (!this.ampmReadonly || this.period === 'pm') ? this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly) : null,\n ])\n },\n },\n\n render (): VNode {\n const children = [this.genTime()]\n\n this.ampm && children.push(this.genAmPm())\n\n return h('div', {\n class: 'v-time-picker-title',\n }, children)\n },\n})\n"],"sourceRoot":"","file":"VTimePickerTitle.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VToolbar/VToolbar.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VToolbar/VToolbar.ts"],"names":[],"mappings":"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","sourcesContent":["import { h } from 'vue'\n// Styles\nimport './VToolbar.sass'\n\n// Extensions\nimport VSheet from '../VSheet/VSheet'\n\n// Components\nimport VImg, { srcObject } from '../VImg/VImg'\n\n// Utilities\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { breaking } from '../../util/console'\n\n// Types\nimport { VNode, PropType, defineComponent } from 'vue'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-toolbar',\n extends: VSheet,\n\n props: {\n absolute: Boolean,\n bottom: Boolean,\n collapse: Boolean,\n dense: Boolean,\n extended: Boolean,\n extensionHeight: {\n default: 48,\n type: [Number, String],\n },\n flat: Boolean,\n floating: Boolean,\n prominent: Boolean,\n short: Boolean,\n src: {\n type: [String, Object] as PropType<string | srcObject>,\n default: '',\n },\n tag: {\n type: String,\n default: 'header',\n },\n },\n\n data: () => ({\n isExtended: false,\n }),\n\n computed: {\n computedHeight (): number {\n const height = this.computedContentHeight\n\n if (!this.isExtended) return height\n\n const extensionHeight = parseInt(this.extensionHeight)\n\n return this.isCollapsed\n ? height\n : height + (!isNaN(extensionHeight) ? extensionHeight : 0)\n },\n computedContentHeight (): number {\n if (this.height) return parseInt(this.height)\n if (this.isProminent && this.dense) return 96\n if (this.isProminent && this.short) return 112\n if (this.isProminent) return 128\n if (this.dense) return 48\n if (this.short || this.$vuetify.breakpoint.smAndDown) return 56\n return 64\n },\n classes (): object {\n return {\n ...VSheet.computed.classes.call(this),\n 'v-toolbar': true,\n 'v-toolbar--absolute': this.absolute,\n 'v-toolbar--bottom': this.bottom,\n 'v-toolbar--collapse': this.collapse,\n 'v-toolbar--collapsed': this.isCollapsed,\n 'v-toolbar--dense': this.dense,\n 'v-toolbar--extended': this.isExtended,\n 'v-toolbar--flat': this.flat,\n 'v-toolbar--floating': this.floating,\n 'v-toolbar--prominent': this.isProminent,\n }\n },\n isCollapsed (): boolean {\n return this.collapse\n },\n isProminent (): boolean {\n return this.prominent\n },\n styles (): object {\n return {\n ...this.measurableStyles,\n height: convertToUnit(this.computedHeight),\n }\n },\n },\n\n created () {\n const breakingProps = [\n ['app', '<v-app-bar app>'],\n ['manual-scroll', '<v-app-bar :value=\"false\">'],\n ['clipped-left', '<v-app-bar clipped-left>'],\n ['clipped-right', '<v-app-bar clipped-right>'],\n ['inverted-scroll', '<v-app-bar inverted-scroll>'],\n ['scroll-off-screen', '<v-app-bar scroll-off-screen>'],\n ['scroll-target', '<v-app-bar scroll-target>'],\n ['scroll-threshold', '<v-app-bar scroll-threshold>'],\n ['card', '<v-app-bar flat>'],\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 genBackground () {\n const props = {\n height: convertToUnit(this.computedHeight),\n src: this.src,\n }\n\n const image = this.$slots.img\n ? this.$slots.img({ props })\n : h(VImg, props)\n\n return h('div', {\n class: 'v-toolbar__image',\n }, [image])\n },\n genContent () {\n return h('div', {\n class: 'v-toolbar__content',\n style: {\n height: convertToUnit(this.computedContentHeight),\n },\n }, getSlot(this))\n },\n genExtension () {\n return h('div', {\n class: 'v-toolbar__extension',\n style: {\n height: convertToUnit(this.extensionHeight),\n },\n }, getSlot(this, 'extension'))\n },\n },\n\n render (): VNode {\n this.isExtended = this.extended || !!this.$slots.extension\n\n const children = [this.genContent()]\n const data = this.setBackgroundColor(this.color, {\n class: this.classes,\n style: this.styles\n })\n\n if (this.isExtended) children.push(this.genExtension())\n if (this.src || this.$slots.img) children.unshift(this.genBackground())\n\n return h(this.tag, {...this.attrs$, ...data}, children)\n }\n})\n"],"sourceRoot":"","file":"VToolbar.js"}
|
|
@@ -181,18 +181,17 @@ export default mixins(Colorable, Delayable, Dependent, Menuable).extend({
|
|
|
181
181
|
if (!this.computedTransition) return content;
|
|
182
182
|
return h(Transition, {
|
|
183
183
|
name: this.computedTransition
|
|
184
|
-
}, [content]);
|
|
184
|
+
}, () => [content]);
|
|
185
185
|
},
|
|
186
186
|
|
|
187
187
|
genContent() {
|
|
188
|
-
return withDirectives(h('div', this.setBackgroundColor(this.color, {
|
|
188
|
+
return withDirectives(h('div', this.setBackgroundColor(this.color, { ...this.getScopeIdAttrs(),
|
|
189
189
|
class: ['v-tooltip__content', {
|
|
190
190
|
[this.contentClass]: true,
|
|
191
191
|
menuable__content__active: this.isActive,
|
|
192
192
|
'v-tooltip__content--fixed': this.activatorFixed
|
|
193
193
|
}],
|
|
194
194
|
style: this.styles,
|
|
195
|
-
attrs: this.getScopeIdAttrs(),
|
|
196
195
|
ref: 'content'
|
|
197
196
|
}), this.getContentSlot()), [[vShow, this.isContentActive]]);
|
|
198
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VTooltip/VTooltip.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, Transition, vShow, withDirectives, VNode } from 'vue'\nimport './VTooltip.sass'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Colorable from '../../mixins/colorable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\n\n// Helpers\nimport { convertToUnit, keyCodes, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(Colorable, Delayable, Dependent, Menuable).extend({\n name: 'v-tooltip',\n\n props: {\n closeDelay: {\n type: [Number, String],\n default: 0,\n },\n disabled: Boolean,\n openDelay: {\n type: [Number, String],\n default: 0,\n },\n openOnHover: {\n type: Boolean,\n default: true,\n },\n openOnFocus: {\n type: Boolean,\n default: true,\n },\n tag: {\n type: String,\n default: 'span',\n },\n transition: String,\n },\n\n data: () => ({\n calculatedMinWidth: 0,\n closeDependents: false,\n }),\n\n computed: {\n calculatedLeft (): string {\n const { activator, content } = this.dimensions\n const unknown = !this.bottom && !this.left && !this.top && !this.right\n const activatorLeft = this.attach !== false ? activator.offsetLeft : activator.left\n let left = 0\n\n if (this.top || this.bottom || unknown) {\n left = (\n activatorLeft +\n (activator.width / 2) -\n (content.width / 2)\n )\n } else if (this.left || this.right) {\n left = (\n activatorLeft +\n (this.right ? activator.width : -content.width) +\n (this.right ? 10 : -10)\n )\n }\n\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return `${this.calcXOverflow(left, this.dimensions.content.width)}px`\n },\n calculatedTop (): string {\n const { activator, content } = this.dimensions\n const activatorTop = this.attach !== false ? activator.offsetTop : activator.top\n let top = 0\n\n if (this.top || this.bottom) {\n top = (\n activatorTop +\n (this.bottom ? activator.height : -content.height) +\n (this.bottom ? 10 : -10)\n )\n } else if (this.left || this.right) {\n top = (\n activatorTop +\n (activator.height / 2) -\n (content.height / 2)\n )\n }\n\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n if (this.attach === false) top += this.pageYOffset\n\n return `${this.calcYOverflow(top)}px`\n },\n classes (): object {\n return {\n 'v-tooltip--top': this.top,\n 'v-tooltip--right': this.right,\n 'v-tooltip--bottom': this.bottom,\n 'v-tooltip--left': this.left,\n 'v-tooltip--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }\n },\n computedTransition (): string {\n if (this.transition) return this.transition\n\n return this.isActive ? 'scale-transition' : 'fade-transition'\n },\n offsetY (): boolean {\n return this.top || this.bottom\n },\n offsetX (): boolean {\n return this.left || this.right\n },\n styles (): object {\n return {\n left: this.calculatedLeft,\n maxWidth: convertToUnit(this.maxWidth),\n minWidth: convertToUnit(this.minWidth),\n top: this.calculatedTop,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.modelValue && this.callActivate()\n })\n },\n\n mounted () {\n if (getSlotType(this, 'activator', true) === 'v-slot') {\n consoleError(`v-tooltip's activator slot must be bound, try '<template #activator=\"data\"><v-btn v-on=\"data.on>'`, this)\n }\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(this.startTransition)\n },\n deactivate () {\n this.runDelay('close')\n },\n genActivatorListeners () {\n const listeners = Activatable.methods.genActivatorListeners.call(this)\n\n if (this.openOnFocus) {\n listeners.focus = (e: Event) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.blur = (e: Event) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n listeners.keydown = (e: KeyboardEvent) => {\n if (e.keyCode === keyCodes.esc) {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n return listeners\n },\n genActivatorAttributes () {\n return {\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genTransition () {\n const content = this.genContent()\n\n if (!this.computedTransition) return content\n\n return h(Transition, {\n name: this.computedTransition,\n }, [content])\n },\n genContent () {\n return withDirectives(\n h(\n 'div',\n this.setBackgroundColor(this.color, {\n class: ['v-tooltip__content', {\n [this.contentClass]: true,\n menuable__content__active: this.isActive,\n 'v-tooltip__content--fixed': this.activatorFixed,\n }],\n style: this.styles,\n attrs: this.getScopeIdAttrs(),\n ref: 'content',\n }),\n this.getContentSlot()\n ),\n [\n [vShow, this.isContentActive]\n ]\n )\n },\n },\n\n render (): VNode {\n return h(this.tag, {\n class: ['v-tooltip', this.classes],\n }, [\n this.showLazyContent(() => [this.genTransition()]),\n this.genActivator(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VTooltip.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VTooltip/VTooltip.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, Transition, vShow, withDirectives, VNode } from 'vue'\nimport './VTooltip.sass'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Colorable from '../../mixins/colorable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\n\n// Helpers\nimport { convertToUnit, keyCodes, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(Colorable, Delayable, Dependent, Menuable).extend({\n name: 'v-tooltip',\n\n props: {\n closeDelay: {\n type: [Number, String],\n default: 0,\n },\n disabled: Boolean,\n openDelay: {\n type: [Number, String],\n default: 0,\n },\n openOnHover: {\n type: Boolean,\n default: true,\n },\n openOnFocus: {\n type: Boolean,\n default: true,\n },\n tag: {\n type: String,\n default: 'span',\n },\n transition: String,\n },\n\n data: () => ({\n calculatedMinWidth: 0,\n closeDependents: false,\n }),\n\n computed: {\n calculatedLeft (): string {\n const { activator, content } = this.dimensions\n const unknown = !this.bottom && !this.left && !this.top && !this.right\n const activatorLeft = this.attach !== false ? activator.offsetLeft : activator.left\n let left = 0\n\n if (this.top || this.bottom || unknown) {\n left = (\n activatorLeft +\n (activator.width / 2) -\n (content.width / 2)\n )\n } else if (this.left || this.right) {\n left = (\n activatorLeft +\n (this.right ? activator.width : -content.width) +\n (this.right ? 10 : -10)\n )\n }\n\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return `${this.calcXOverflow(left, this.dimensions.content.width)}px`\n },\n calculatedTop (): string {\n const { activator, content } = this.dimensions\n const activatorTop = this.attach !== false ? activator.offsetTop : activator.top\n let top = 0\n\n if (this.top || this.bottom) {\n top = (\n activatorTop +\n (this.bottom ? activator.height : -content.height) +\n (this.bottom ? 10 : -10)\n )\n } else if (this.left || this.right) {\n top = (\n activatorTop +\n (activator.height / 2) -\n (content.height / 2)\n )\n }\n\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n if (this.attach === false) top += this.pageYOffset\n\n return `${this.calcYOverflow(top)}px`\n },\n classes (): object {\n return {\n 'v-tooltip--top': this.top,\n 'v-tooltip--right': this.right,\n 'v-tooltip--bottom': this.bottom,\n 'v-tooltip--left': this.left,\n 'v-tooltip--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }\n },\n computedTransition (): string {\n if (this.transition) return this.transition\n\n return this.isActive ? 'scale-transition' : 'fade-transition'\n },\n offsetY (): boolean {\n return this.top || this.bottom\n },\n offsetX (): boolean {\n return this.left || this.right\n },\n styles (): object {\n return {\n left: this.calculatedLeft,\n maxWidth: convertToUnit(this.maxWidth),\n minWidth: convertToUnit(this.minWidth),\n top: this.calculatedTop,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.modelValue && this.callActivate()\n })\n },\n\n mounted () {\n if (getSlotType(this, 'activator', true) === 'v-slot') {\n consoleError(`v-tooltip's activator slot must be bound, try '<template #activator=\"data\"><v-btn v-on=\"data.on>'`, this)\n }\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(this.startTransition)\n },\n deactivate () {\n this.runDelay('close')\n },\n genActivatorListeners () {\n const listeners = Activatable.methods.genActivatorListeners.call(this)\n\n if (this.openOnFocus) {\n listeners.focus = (e: Event) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.blur = (e: Event) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n listeners.keydown = (e: KeyboardEvent) => {\n if (e.keyCode === keyCodes.esc) {\n this.getActivator(e)\n this.runDelay('close')\n }\n }\n\n return listeners\n },\n genActivatorAttributes () {\n return {\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genTransition () {\n const content = this.genContent()\n\n if (!this.computedTransition) return content\n\n return h(Transition, {\n name: this.computedTransition,\n }, () => [content])\n },\n genContent () {\n return withDirectives(\n h(\n 'div',\n this.setBackgroundColor(this.color, {\n ...this.getScopeIdAttrs(),\n class: ['v-tooltip__content', {\n [this.contentClass]: true,\n menuable__content__active: this.isActive,\n 'v-tooltip__content--fixed': this.activatorFixed,\n }],\n style: this.styles,\n ref: 'content',\n }),\n this.getContentSlot()\n ),\n [\n [vShow, this.isContentActive]\n ]\n )\n },\n },\n\n render (): VNode {\n return h(this.tag, {\n class: ['v-tooltip', this.classes],\n }, [\n this.showLazyContent(() => [this.genTransition()]),\n this.genActivator(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VTooltip.js"}
|
|
@@ -208,7 +208,7 @@ const VTreeviewNode = baseMixins.extend({
|
|
|
208
208
|
if (this.isLoading) return;
|
|
209
209
|
this.checkChildren().then(() => this.open());
|
|
210
210
|
}
|
|
211
|
-
}, [this.isLoading ? this.loadingIcon : this.expandIcon]);
|
|
211
|
+
}, () => [this.isLoading ? this.loadingIcon : this.expandIcon]);
|
|
212
212
|
},
|
|
213
213
|
|
|
214
214
|
genCheckbox() {
|
|
@@ -229,7 +229,7 @@ const VTreeviewNode = baseMixins.extend({
|
|
|
229
229
|
});
|
|
230
230
|
});
|
|
231
231
|
}
|
|
232
|
-
}, [this.computedIcon]);
|
|
232
|
+
}, () => [this.computedIcon]);
|
|
233
233
|
},
|
|
234
234
|
|
|
235
235
|
genLevel(level) {
|
|
@@ -304,7 +304,7 @@ const VTreeviewNode = baseMixins.extend({
|
|
|
304
304
|
},
|
|
305
305
|
|
|
306
306
|
genTransition() {
|
|
307
|
-
return h(VExpandTransition, [this.genChildrenWrapper()]);
|
|
307
|
+
return h(VExpandTransition, {}, () => [this.genChildrenWrapper()]);
|
|
308
308
|
}
|
|
309
309
|
|
|
310
310
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VTreeview/VTreeviewNode.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Components\nimport { VExpandTransition } from '../transitions'\nimport { VIcon } from '../VIcon'\nimport VTreeview from './VTreeview'\n\n// Mixins\nimport { inject as RegistrableInject } from '../../mixins/registrable'\nimport Colorable from '../../mixins/colorable'\n\n// Utils\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { getObjectValueByPath, createRange } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeChildren, PropType } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ntype VTreeViewInstance = InstanceType<typeof VTreeview>\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject('treeview')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n treeview: VTreeViewInstance\n}\n\nexport const VTreeviewNodeProps = {\n activatable: Boolean,\n activeClass: {\n type: String,\n default: 'v-treeview-node--active',\n },\n color: {\n type: String,\n default: 'primary',\n },\n disablePerNode: Boolean,\n expandIcon: {\n type: String,\n default: '$subgroup',\n },\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n itemChildren: {\n type: String,\n default: 'children',\n },\n itemDisabled: {\n type: String,\n default: 'disabled',\n },\n itemKey: {\n type: String,\n default: 'id',\n },\n itemText: {\n type: String,\n default: 'name',\n },\n loadChildren: Function as PropType<(item: any) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n openOnClick: Boolean,\n rounded: Boolean,\n selectable: Boolean,\n selectedColor: {\n type: String,\n default: 'accent',\n },\n shaped: Boolean,\n transition: Boolean,\n selectionType: {\n type: String as PropType<'leaf' | 'independent'>,\n default: 'leaf',\n validator: (v: string) => ['leaf', 'independent'].includes(v),\n },\n}\n\n/* @vue/component */\nconst VTreeviewNode = baseMixins.extend({\n name: 'v-treeview-node',\n\n inject: {\n treeview: {\n default: null,\n },\n },\n\n props: {\n level: Number,\n item: {\n type: Object,\n default: () => null,\n } as PropValidator<Record<string, unknown> | null>,\n parentIsDisabled: Boolean,\n ...VTreeviewNodeProps,\n },\n\n data: () => ({\n hasLoaded: false,\n isActive: false, // Node is selected (row)\n isIndeterminate: false, // Node has at least one selected child\n isLoading: false,\n isOpen: false, // Node is open/expanded\n isSelected: false, // Node is selected (checkbox)\n }),\n\n computed: {\n disabled (): boolean {\n return (\n getObjectValueByPath(this.item, this.itemDisabled) ||\n (!this.disablePerNode && (this.parentIsDisabled && this.selectionType === 'leaf'))\n )\n },\n key (): string {\n return getObjectValueByPath(this.item, this.itemKey)\n },\n children (): any[] | null {\n const children = getObjectValueByPath(this.item, this.itemChildren)\n return children && children.filter((child: any) => !this.treeview.isExcluded(getObjectValueByPath(child, this.itemKey)))\n },\n text (): string {\n return getObjectValueByPath(this.item, this.itemText)\n },\n scopedProps (): object {\n return {\n item: this.item,\n leaf: !this.children,\n selected: this.isSelected,\n indeterminate: this.isIndeterminate,\n active: this.isActive,\n open: this.isOpen,\n }\n },\n computedIcon (): string {\n if (this.isIndeterminate) return this.indeterminateIcon\n else if (this.isSelected) return this.onIcon\n else return this.offIcon\n },\n hasChildren (): boolean {\n return !!this.children && (!!this.children.length || !!this.loadChildren)\n },\n },\n\n created () {\n this.treeview.register(this)\n },\n\n beforeUnmount () {\n this.treeview.unregister(this)\n },\n\n methods: {\n checkChildren (): Promise<void> {\n return new Promise<void>(resolve => {\n // TODO: Potential issue with always trying\n // to load children if response is empty?\n if (!this.children || this.children.length || !this.loadChildren || this.hasLoaded) return resolve()\n\n this.isLoading = true\n resolve(this.loadChildren(this.item))\n }).then(() => {\n this.isLoading = false\n this.hasLoaded = true\n })\n },\n open () {\n this.isOpen = !this.isOpen\n this.treeview.updateOpen(this.key, this.isOpen)\n this.treeview.emitOpen()\n },\n genLabel () {\n const children = []\n\n if (this.$slots.label) children.push(this.$slots.label(this.scopedProps))\n else children.push(this.text)\n\n return h('div', {\n slot: 'label',\n class: 'v-treeview-node__label',\n }, children)\n },\n genPrependSlot () {\n if (!this.$slots.prepend) return null\n\n return h('div', {\n class: 'v-treeview-node__prepend',\n }, this.$slots.prepend(this.scopedProps))\n },\n genAppendSlot () {\n if (!this.$slots.append) return null\n\n return h('div', {\n class: 'v-treeview-node__append',\n }, this.$slots.append(this.scopedProps))\n },\n genContent () {\n const children = [\n this.genPrependSlot(),\n this.genLabel(),\n this.genAppendSlot(),\n ]\n\n return h('div', {\n class: 'v-treeview-node__content',\n }, children)\n },\n genToggle () {\n return h(VIcon, {\n class: ['v-treeview-node__toggle', {\n 'v-treeview-node__toggle--open': this.isOpen,\n 'v-treeview-node__toggle--loading': this.isLoading,\n }],\n slot: 'prepend',\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => this.open())\n }\n }, [this.isLoading ? this.loadingIcon : this.expandIcon])\n },\n genCheckbox () {\n return h(VIcon, {\n class: 'v-treeview-node__checkbox',\n color: this.isSelected || this.isIndeterminate ? this.selectedColor : undefined,\n disabled: this.disabled,\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => {\n // We nextTick here so that items watch in VTreeview has a chance to run first\n this.$nextTick(() => {\n this.isSelected = !this.isSelected\n this.isIndeterminate = false\n\n this.treeview.updateSelected(this.key, this.isSelected)\n this.treeview.emitSelected()\n })\n })\n },\n }, [this.computedIcon])\n },\n genLevel (level: number) {\n return createRange(level).map(() => h('div', {\n class: 'v-treeview-node__level',\n }))\n },\n genNode () {\n const children = [this.genContent()]\n\n if (this.selectable) children.unshift(this.genCheckbox())\n\n if (this.hasChildren) {\n children.unshift(this.genToggle())\n } else {\n children.unshift(...this.genLevel(1))\n }\n\n children.unshift(...this.genLevel(this.level))\n\n return h('div', this.setTextColor(this.isActive && this.color, {\n class: ['v-treeview-node__root', {\n [this.activeClass]: this.isActive,\n }],\n onClick: () => {\n if (this.openOnClick && this.hasChildren) {\n this.checkChildren().then(this.open)\n } else if (this.activatable && !this.disabled) {\n this.isActive = !this.isActive\n this.treeview.updateActive(this.key, this.isActive)\n this.treeview.emitActive()\n }\n }\n }), children)\n },\n genChild (item: any, parentIsDisabled: boolean) {\n return h(VTreeviewNode, {\n key: getObjectValueByPath(item, this.itemKey),\n activatable: this.activatable,\n activeClass: this.activeClass,\n item,\n selectable: this.selectable,\n selectedColor: this.selectedColor,\n color: this.color,\n disablePerNode: this.disablePerNode,\n expandIcon: this.expandIcon,\n indeterminateIcon: this.indeterminateIcon,\n offIcon: this.offIcon,\n onIcon: this.onIcon,\n loadingIcon: this.loadingIcon,\n itemKey: this.itemKey,\n itemText: this.itemText,\n itemDisabled: this.itemDisabled,\n itemChildren: this.itemChildren,\n loadChildren: this.loadChildren,\n transition: this.transition,\n openOnClick: this.openOnClick,\n rounded: this.rounded,\n shaped: this.shaped,\n level: this.level + 1,\n selectionType: this.selectionType,\n parentIsDisabled,\n }, this.$slots)\n },\n genChildrenWrapper () {\n if (!this.isOpen || !this.children) return null\n\n const children = [this.children.map(c => this.genChild(c, this.disabled))]\n\n return h('div', {\n class: 'v-treeview-node__children',\n }, children)\n },\n genTransition () {\n return h(VExpandTransition, [this.genChildrenWrapper()])\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = [this.genNode()]\n\n if (this.transition) children.push(this.genTransition())\n else children.push(this.genChildrenWrapper())\n\n return h('div', {\n class: ['v-treeview-node', {\n 'v-treeview-node--leaf': !this.hasChildren,\n 'v-treeview-node--click': this.openOnClick,\n 'v-treeview-node--disabled': this.disabled,\n 'v-treeview-node--rounded': this.rounded,\n 'v-treeview-node--shaped': this.shaped,\n 'v-treeview-node--selected': this.isSelected,\n }],\n 'aria-expanded': String(this.isOpen),\n }, children)\n },\n})\n\nexport default VTreeviewNode\n"],"sourceRoot":"","file":"VTreeviewNode.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VTreeview/VTreeviewNode.ts"],"names":[],"mappings":"AAAA,SAAQ,CAAR,QAAgB,KAAhB,C,CACA;;AACA,SAAS,iBAAT,QAAkC,gBAAlC;AACA,SAAS,KAAT,QAAsB,UAAtB,C,CAGA;;AACA,SAAS,MAAM,IAAI,iBAAnB,QAA4C,0BAA5C;AACA,OAAO,SAAP,MAAsB,wBAAtB,C,CAEA;;AACA,OAAO,MAAP,MAAmC,mBAAnC;AACA,SAAS,oBAAT,EAA+B,WAA/B,QAAkD,oBAAlD;AAQA,MAAM,UAAU,GAAG,MAAM,CACvB,SADuB,EAEvB,iBAAiB,CAAC,UAAD,CAFM,CAAzB;AASA,OAAO,MAAM,kBAAkB,GAAG;AAChC,EAAA,WAAW,EAAE,OADmB;AAEhC,EAAA,WAAW,EAAE;AACX,IAAA,IAAI,EAAE,MADK;AAEX,IAAA,OAAO,EAAE;AAFE,GAFmB;AAMhC,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,MADD;AAEL,IAAA,OAAO,EAAE;AAFJ,GANyB;AAUhC,EAAA,cAAc,EAAE,OAVgB;AAWhC,EAAA,UAAU,EAAE;AACV,IAAA,IAAI,EAAE,MADI;AAEV,IAAA,OAAO,EAAE;AAFC,GAXoB;AAehC,EAAA,iBAAiB,EAAE;AACjB,IAAA,IAAI,EAAE,MADW;AAEjB,IAAA,OAAO,EAAE;AAFQ,GAfa;AAmBhC,EAAA,YAAY,EAAE;AACZ,IAAA,IAAI,EAAE,MADM;AAEZ,IAAA,OAAO,EAAE;AAFG,GAnBkB;AAuBhC,EAAA,YAAY,EAAE;AACZ,IAAA,IAAI,EAAE,MADM;AAEZ,IAAA,OAAO,EAAE;AAFG,GAvBkB;AA2BhC,EAAA,OAAO,EAAE;AACP,IAAA,IAAI,EAAE,MADC;AAEP,IAAA,OAAO,EAAE;AAFF,GA3BuB;AA+BhC,EAAA,QAAQ,EAAE;AACR,IAAA,IAAI,EAAE,MADE;AAER,IAAA,OAAO,EAAE;AAFD,GA/BsB;AAmChC,EAAA,YAAY,EAAE,QAnCkB;AAoChC,EAAA,WAAW,EAAE;AACX,IAAA,IAAI,EAAE,MADK;AAEX,IAAA,OAAO,EAAE;AAFE,GApCmB;AAwChC,EAAA,OAAO,EAAE;AACP,IAAA,IAAI,EAAE,MADC;AAEP,IAAA,OAAO,EAAE;AAFF,GAxCuB;AA4ChC,EAAA,MAAM,EAAE;AACN,IAAA,IAAI,EAAE,MADA;AAEN,IAAA,OAAO,EAAE;AAFH,GA5CwB;AAgDhC,EAAA,WAAW,EAAE,OAhDmB;AAiDhC,EAAA,OAAO,EAAE,OAjDuB;AAkDhC,EAAA,UAAU,EAAE,OAlDoB;AAmDhC,EAAA,aAAa,EAAE;AACb,IAAA,IAAI,EAAE,MADO;AAEb,IAAA,OAAO,EAAE;AAFI,GAnDiB;AAuDhC,EAAA,MAAM,EAAE,OAvDwB;AAwDhC,EAAA,UAAU,EAAE,OAxDoB;AAyDhC,EAAA,aAAa,EAAE;AACb,IAAA,IAAI,EAAE,MADO;AAEb,IAAA,OAAO,EAAE,MAFI;AAGb,IAAA,SAAS,EAAG,CAAD,IAAe,CAAC,MAAD,EAAS,aAAT,EAAwB,QAAxB,CAAiC,CAAjC;AAHb;AAzDiB,CAA3B;AAgEP;;AACA,MAAM,aAAa,GAAG,UAAU,CAAC,MAAX,CAAkB;AACtC,EAAA,IAAI,EAAE,iBADgC;AAGtC,EAAA,MAAM,EAAE;AACN,IAAA,QAAQ,EAAE;AACR,MAAA,OAAO,EAAE;AADD;AADJ,GAH8B;AAStC,EAAA,KAAK,EAAE;AACL,IAAA,KAAK,EAAE,MADF;AAEL,IAAA,IAAI,EAAE;AACJ,MAAA,IAAI,EAAE,MADF;AAEJ,MAAA,OAAO,EAAE,MAAM;AAFX,KAFD;AAML,IAAA,gBAAgB,EAAE,OANb;AAOL,OAAG;AAPE,GAT+B;AAmBtC,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,SAAS,EAAE,KADA;AAEX,IAAA,QAAQ,EAAE,KAFC;AAGX,IAAA,eAAe,EAAE,KAHN;AAIX,IAAA,SAAS,EAAE,KAJA;AAKX,IAAA,MAAM,EAAE,KALG;AAMX,IAAA,UAAU,EAAE,KAND,CAMQ;;AANR,GAAP,CAnBgC;AA4BtC,EAAA,QAAQ,EAAE;AACR,IAAA,QAAQ,GAAA;AACN,aACE,oBAAoB,CAAC,KAAK,IAAN,EAAY,KAAK,YAAjB,CAApB,IACC,CAAC,KAAK,cAAN,IAAyB,KAAK,gBAAL,IAAyB,KAAK,aAAL,KAAuB,MAF5E;AAID,KANO;;AAOR,IAAA,GAAG,GAAA;AACD,aAAO,oBAAoB,CAAC,KAAK,IAAN,EAAY,KAAK,OAAjB,CAA3B;AACD,KATO;;AAUR,IAAA,QAAQ,GAAA;AACN,YAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,IAAN,EAAY,KAAK,YAAjB,CAArC;AACA,aAAO,QAAQ,IAAI,QAAQ,CAAC,MAAT,CAAiB,KAAD,IAAgB,CAAC,KAAK,QAAL,CAAc,UAAd,CAAyB,oBAAoB,CAAC,KAAD,EAAQ,KAAK,OAAb,CAA7C,CAAjC,CAAnB;AACD,KAbO;;AAcR,IAAA,IAAI,GAAA;AACF,aAAO,oBAAoB,CAAC,KAAK,IAAN,EAAY,KAAK,QAAjB,CAA3B;AACD,KAhBO;;AAiBR,IAAA,WAAW,GAAA;AACT,aAAO;AACL,QAAA,IAAI,EAAE,KAAK,IADN;AAEL,QAAA,IAAI,EAAE,CAAC,KAAK,QAFP;AAGL,QAAA,QAAQ,EAAE,KAAK,UAHV;AAIL,QAAA,aAAa,EAAE,KAAK,eAJf;AAKL,QAAA,MAAM,EAAE,KAAK,QALR;AAML,QAAA,IAAI,EAAE,KAAK;AANN,OAAP;AAQD,KA1BO;;AA2BR,IAAA,YAAY,GAAA;AACV,UAAI,KAAK,eAAT,EAA0B,OAAO,KAAK,iBAAZ,CAA1B,KACK,IAAI,KAAK,UAAT,EAAqB,OAAO,KAAK,MAAZ,CAArB,KACA,OAAO,KAAK,OAAZ;AACN,KA/BO;;AAgCR,IAAA,WAAW,GAAA;AACT,aAAO,CAAC,CAAC,KAAK,QAAP,KAAoB,CAAC,CAAC,KAAK,QAAL,CAAc,MAAhB,IAA0B,CAAC,CAAC,KAAK,YAArD,CAAP;AACD;;AAlCO,GA5B4B;;AAiEtC,EAAA,OAAO,GAAA;AACL,SAAK,QAAL,CAAc,QAAd,CAAuB,IAAvB;AACD,GAnEqC;;AAqEtC,EAAA,aAAa,GAAA;AACX,SAAK,QAAL,CAAc,UAAd,CAAyB,IAAzB;AACD,GAvEqC;;AAyEtC,EAAA,OAAO,EAAE;AACP,IAAA,aAAa,GAAA;AACX,aAAO,IAAI,OAAJ,CAAkB,OAAO,IAAG;AACjC;AACA;AACA,YAAI,CAAC,KAAK,QAAN,IAAkB,KAAK,QAAL,CAAc,MAAhC,IAA0C,CAAC,KAAK,YAAhD,IAAgE,KAAK,SAAzE,EAAoF,OAAO,OAAO,EAAd;AAEpF,aAAK,SAAL,GAAiB,IAAjB;AACA,QAAA,OAAO,CAAC,KAAK,YAAL,CAAkB,KAAK,IAAvB,CAAD,CAAP;AACD,OAPM,EAOJ,IAPI,CAOC,MAAK;AACX,aAAK,SAAL,GAAiB,KAAjB;AACA,aAAK,SAAL,GAAiB,IAAjB;AACD,OAVM,CAAP;AAWD,KAbM;;AAcP,IAAA,IAAI,GAAA;AACF,WAAK,MAAL,GAAc,CAAC,KAAK,MAApB;AACA,WAAK,QAAL,CAAc,UAAd,CAAyB,KAAK,GAA9B,EAAmC,KAAK,MAAxC;AACA,WAAK,QAAL,CAAc,QAAd;AACD,KAlBM;;AAmBP,IAAA,QAAQ,GAAA;AACN,YAAM,QAAQ,GAAG,EAAjB;AAEA,UAAI,KAAK,MAAL,CAAY,KAAhB,EAAuB,QAAQ,CAAC,IAAT,CAAc,KAAK,MAAL,CAAY,KAAZ,CAAkB,KAAK,WAAvB,CAAd,EAAvB,KACK,QAAQ,CAAC,IAAT,CAAc,KAAK,IAAnB;AAEL,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,IAAI,EAAE,OADQ;AAEd,QAAA,KAAK,EAAE;AAFO,OAAR,EAGL,QAHK,CAAR;AAID,KA7BM;;AA8BP,IAAA,cAAc,GAAA;AACZ,UAAI,CAAC,KAAK,MAAL,CAAY,OAAjB,EAA0B,OAAO,IAAP;AAE1B,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,KAAK,MAAL,CAAY,OAAZ,CAAoB,KAAK,WAAzB,CAFK,CAAR;AAGD,KApCM;;AAqCP,IAAA,aAAa,GAAA;AACX,UAAI,CAAC,KAAK,MAAL,CAAY,MAAjB,EAAyB,OAAO,IAAP;AAEzB,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,KAAK,MAAL,CAAY,MAAZ,CAAmB,KAAK,WAAxB,CAFK,CAAR;AAGD,KA3CM;;AA4CP,IAAA,UAAU,GAAA;AACR,YAAM,QAAQ,GAAG,CACf,KAAK,cAAL,EADe,EAEf,KAAK,QAAL,EAFe,EAGf,KAAK,aAAL,EAHe,CAAjB;AAMA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,QAFK,CAAR;AAGD,KAtDM;;AAuDP,IAAA,SAAS,GAAA;AACP,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,CAAC,yBAAD,EAA4B;AACjC,2CAAiC,KAAK,MADL;AAEjC,8CAAoC,KAAK;AAFR,SAA5B,CADO;AAKd,QAAA,IAAI,EAAE,SALQ;AAMd,QAAA,OAAO,EAAG,CAAD,IAAkB;AACzB,UAAA,CAAC,CAAC,eAAF;AAEA,cAAI,KAAK,SAAT,EAAoB;AAEpB,eAAK,aAAL,GAAqB,IAArB,CAA0B,MAAM,KAAK,IAAL,EAAhC;AACD;AAZa,OAAR,EAaL,MAAM,CAAC,KAAK,SAAL,GAAiB,KAAK,WAAtB,GAAoC,KAAK,UAA1C,CAbD,CAAR;AAcD,KAtEM;;AAuEP,IAAA,WAAW,GAAA;AACT,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,2BADO;AAEd,QAAA,KAAK,EAAE,KAAK,UAAL,IAAmB,KAAK,eAAxB,GAA0C,KAAK,aAA/C,GAA+D,SAFxD;AAGd,QAAA,QAAQ,EAAE,KAAK,QAHD;AAId,QAAA,OAAO,EAAG,CAAD,IAAkB;AACzB,UAAA,CAAC,CAAC,eAAF;AAEA,cAAI,KAAK,SAAT,EAAoB;AAEpB,eAAK,aAAL,GAAqB,IAArB,CAA0B,MAAK;AAC7B;AACA,iBAAK,SAAL,CAAe,MAAK;AAClB,mBAAK,UAAL,GAAkB,CAAC,KAAK,UAAxB;AACA,mBAAK,eAAL,GAAuB,KAAvB;AAEA,mBAAK,QAAL,CAAc,cAAd,CAA6B,KAAK,GAAlC,EAAuC,KAAK,UAA5C;AACA,mBAAK,QAAL,CAAc,YAAd;AACD,aAND;AAOD,WATD;AAUD;AAnBa,OAAR,EAoBL,MAAM,CAAC,KAAK,YAAN,CApBD,CAAR;AAqBD,KA7FM;;AA8FP,IAAA,QAAQ,CAAE,KAAF,EAAe;AACrB,aAAO,WAAW,CAAC,KAAD,CAAX,CAAmB,GAAnB,CAAuB,MAAM,CAAC,CAAC,KAAD,EAAQ;AAC3C,QAAA,KAAK,EAAE;AADoC,OAAR,CAA9B,CAAP;AAGD,KAlGM;;AAmGP,IAAA,OAAO,GAAA;AACL,YAAM,QAAQ,GAAG,CAAC,KAAK,UAAL,EAAD,CAAjB;AAEA,UAAI,KAAK,UAAT,EAAqB,QAAQ,CAAC,OAAT,CAAiB,KAAK,WAAL,EAAjB;;AAErB,UAAI,KAAK,WAAT,EAAsB;AACpB,QAAA,QAAQ,CAAC,OAAT,CAAiB,KAAK,SAAL,EAAjB;AACD,OAFD,MAEO;AACL,QAAA,QAAQ,CAAC,OAAT,CAAiB,GAAG,KAAK,QAAL,CAAc,CAAd,CAApB;AACD;;AAED,MAAA,QAAQ,CAAC,OAAT,CAAiB,GAAG,KAAK,QAAL,CAAc,KAAK,KAAnB,CAApB;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ,KAAK,YAAL,CAAkB,KAAK,QAAL,IAAiB,KAAK,KAAxC,EAA+C;AAC7D,QAAA,KAAK,EAAE,CAAC,uBAAD,EAA0B;AAC/B,WAAC,KAAK,WAAN,GAAoB,KAAK;AADM,SAA1B,CADsD;AAI7D,QAAA,OAAO,EAAE,MAAK;AACZ,cAAI,KAAK,WAAL,IAAoB,KAAK,WAA7B,EAA0C;AACxC,iBAAK,aAAL,GAAqB,IAArB,CAA0B,KAAK,IAA/B;AACD,WAFD,MAEO,IAAI,KAAK,WAAL,IAAoB,CAAC,KAAK,QAA9B,EAAwC;AAC7C,iBAAK,QAAL,GAAgB,CAAC,KAAK,QAAtB;AACA,iBAAK,QAAL,CAAc,YAAd,CAA2B,KAAK,GAAhC,EAAqC,KAAK,QAA1C;AACA,iBAAK,QAAL,CAAc,UAAd;AACD;AACF;AAZ4D,OAA/C,CAAR,EAaJ,QAbI,CAAR;AAcD,KA9HM;;AA+HP,IAAA,QAAQ,CAAE,IAAF,EAAa,gBAAb,EAAsC;AAC5C,aAAO,CAAC,CAAC,aAAD,EAAgB;AACtB,QAAA,GAAG,EAAE,oBAAoB,CAAC,IAAD,EAAO,KAAK,OAAZ,CADH;AAEtB,QAAA,WAAW,EAAE,KAAK,WAFI;AAGtB,QAAA,WAAW,EAAE,KAAK,WAHI;AAItB,QAAA,IAJsB;AAKtB,QAAA,UAAU,EAAE,KAAK,UALK;AAMtB,QAAA,aAAa,EAAE,KAAK,aANE;AAOtB,QAAA,KAAK,EAAE,KAAK,KAPU;AAQtB,QAAA,cAAc,EAAE,KAAK,cARC;AAStB,QAAA,UAAU,EAAE,KAAK,UATK;AAUtB,QAAA,iBAAiB,EAAE,KAAK,iBAVF;AAWtB,QAAA,OAAO,EAAE,KAAK,OAXQ;AAYtB,QAAA,MAAM,EAAE,KAAK,MAZS;AAatB,QAAA,WAAW,EAAE,KAAK,WAbI;AActB,QAAA,OAAO,EAAE,KAAK,OAdQ;AAetB,QAAA,QAAQ,EAAE,KAAK,QAfO;AAgBtB,QAAA,YAAY,EAAE,KAAK,YAhBG;AAiBtB,QAAA,YAAY,EAAE,KAAK,YAjBG;AAkBtB,QAAA,YAAY,EAAE,KAAK,YAlBG;AAmBtB,QAAA,UAAU,EAAE,KAAK,UAnBK;AAoBtB,QAAA,WAAW,EAAE,KAAK,WApBI;AAqBtB,QAAA,OAAO,EAAE,KAAK,OArBQ;AAsBtB,QAAA,MAAM,EAAE,KAAK,MAtBS;AAuBtB,QAAA,KAAK,EAAE,KAAK,KAAL,GAAa,CAvBE;AAwBtB,QAAA,aAAa,EAAE,KAAK,aAxBE;AAyBtB,QAAA;AAzBsB,OAAhB,EA0BL,KAAK,MA1BA,CAAR;AA2BD,KA3JM;;AA4JP,IAAA,kBAAkB,GAAA;AAChB,UAAI,CAAC,KAAK,MAAN,IAAgB,CAAC,KAAK,QAA1B,EAAoC,OAAO,IAAP;AAEpC,YAAM,QAAQ,GAAG,CAAC,KAAK,QAAL,CAAc,GAAd,CAAkB,CAAC,IAAI,KAAK,QAAL,CAAc,CAAd,EAAiB,KAAK,QAAtB,CAAvB,CAAD,CAAjB;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,QAFK,CAAR;AAGD,KApKM;;AAqKP,IAAA,aAAa,GAAA;AACX,aAAO,CAAC,CAAC,iBAAD,EAAoB,EAApB,EAAwB,MAAM,CAAC,KAAK,kBAAL,EAAD,CAA9B,CAAR;AACD;;AAvKM,GAzE6B;;AAmPtC,EAAA,MAAM,GAAA;AACJ,UAAM,QAAQ,GAAkB,CAAC,KAAK,OAAL,EAAD,CAAhC;AAEA,QAAI,KAAK,UAAT,EAAqB,QAAQ,CAAC,IAAT,CAAc,KAAK,aAAL,EAAd,EAArB,KACK,QAAQ,CAAC,IAAT,CAAc,KAAK,kBAAL,EAAd;AAEL,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE,CAAC,iBAAD,EAAoB;AACzB,iCAAyB,CAAC,KAAK,WADN;AAEzB,kCAA0B,KAAK,WAFN;AAGzB,qCAA6B,KAAK,QAHT;AAIzB,oCAA4B,KAAK,OAJR;AAKzB,mCAA2B,KAAK,MALP;AAMzB,qCAA6B,KAAK;AANT,OAApB,CADO;AASd,uBAAiB,MAAM,CAAC,KAAK,MAAN;AATT,KAAR,EAUL,QAVK,CAAR;AAWD;;AApQqC,CAAlB,CAAtB;AAuQA,eAAe,aAAf","sourcesContent":["import {h} from 'vue'\n// Components\nimport { VExpandTransition } from '../transitions'\nimport { VIcon } from '../VIcon'\nimport VTreeview from './VTreeview'\n\n// Mixins\nimport { inject as RegistrableInject } from '../../mixins/registrable'\nimport Colorable from '../../mixins/colorable'\n\n// Utils\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { getObjectValueByPath, createRange } from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeChildren, PropType } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ntype VTreeViewInstance = InstanceType<typeof VTreeview>\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject('treeview')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n treeview: VTreeViewInstance\n}\n\nexport const VTreeviewNodeProps = {\n activatable: Boolean,\n activeClass: {\n type: String,\n default: 'v-treeview-node--active',\n },\n color: {\n type: String,\n default: 'primary',\n },\n disablePerNode: Boolean,\n expandIcon: {\n type: String,\n default: '$subgroup',\n },\n indeterminateIcon: {\n type: String,\n default: '$checkboxIndeterminate',\n },\n itemChildren: {\n type: String,\n default: 'children',\n },\n itemDisabled: {\n type: String,\n default: 'disabled',\n },\n itemKey: {\n type: String,\n default: 'id',\n },\n itemText: {\n type: String,\n default: 'name',\n },\n loadChildren: Function as PropType<(item: any) => Promise<void>>,\n loadingIcon: {\n type: String,\n default: '$loading',\n },\n offIcon: {\n type: String,\n default: '$checkboxOff',\n },\n onIcon: {\n type: String,\n default: '$checkboxOn',\n },\n openOnClick: Boolean,\n rounded: Boolean,\n selectable: Boolean,\n selectedColor: {\n type: String,\n default: 'accent',\n },\n shaped: Boolean,\n transition: Boolean,\n selectionType: {\n type: String as PropType<'leaf' | 'independent'>,\n default: 'leaf',\n validator: (v: string) => ['leaf', 'independent'].includes(v),\n },\n}\n\n/* @vue/component */\nconst VTreeviewNode = baseMixins.extend({\n name: 'v-treeview-node',\n\n inject: {\n treeview: {\n default: null,\n },\n },\n\n props: {\n level: Number,\n item: {\n type: Object,\n default: () => null,\n } as PropValidator<Record<string, unknown> | null>,\n parentIsDisabled: Boolean,\n ...VTreeviewNodeProps,\n },\n\n data: () => ({\n hasLoaded: false,\n isActive: false, // Node is selected (row)\n isIndeterminate: false, // Node has at least one selected child\n isLoading: false,\n isOpen: false, // Node is open/expanded\n isSelected: false, // Node is selected (checkbox)\n }),\n\n computed: {\n disabled (): boolean {\n return (\n getObjectValueByPath(this.item, this.itemDisabled) ||\n (!this.disablePerNode && (this.parentIsDisabled && this.selectionType === 'leaf'))\n )\n },\n key (): string {\n return getObjectValueByPath(this.item, this.itemKey)\n },\n children (): any[] | null {\n const children = getObjectValueByPath(this.item, this.itemChildren)\n return children && children.filter((child: any) => !this.treeview.isExcluded(getObjectValueByPath(child, this.itemKey)))\n },\n text (): string {\n return getObjectValueByPath(this.item, this.itemText)\n },\n scopedProps (): object {\n return {\n item: this.item,\n leaf: !this.children,\n selected: this.isSelected,\n indeterminate: this.isIndeterminate,\n active: this.isActive,\n open: this.isOpen,\n }\n },\n computedIcon (): string {\n if (this.isIndeterminate) return this.indeterminateIcon\n else if (this.isSelected) return this.onIcon\n else return this.offIcon\n },\n hasChildren (): boolean {\n return !!this.children && (!!this.children.length || !!this.loadChildren)\n },\n },\n\n created () {\n this.treeview.register(this)\n },\n\n beforeUnmount () {\n this.treeview.unregister(this)\n },\n\n methods: {\n checkChildren (): Promise<void> {\n return new Promise<void>(resolve => {\n // TODO: Potential issue with always trying\n // to load children if response is empty?\n if (!this.children || this.children.length || !this.loadChildren || this.hasLoaded) return resolve()\n\n this.isLoading = true\n resolve(this.loadChildren(this.item))\n }).then(() => {\n this.isLoading = false\n this.hasLoaded = true\n })\n },\n open () {\n this.isOpen = !this.isOpen\n this.treeview.updateOpen(this.key, this.isOpen)\n this.treeview.emitOpen()\n },\n genLabel () {\n const children = []\n\n if (this.$slots.label) children.push(this.$slots.label(this.scopedProps))\n else children.push(this.text)\n\n return h('div', {\n slot: 'label',\n class: 'v-treeview-node__label',\n }, children)\n },\n genPrependSlot () {\n if (!this.$slots.prepend) return null\n\n return h('div', {\n class: 'v-treeview-node__prepend',\n }, this.$slots.prepend(this.scopedProps))\n },\n genAppendSlot () {\n if (!this.$slots.append) return null\n\n return h('div', {\n class: 'v-treeview-node__append',\n }, this.$slots.append(this.scopedProps))\n },\n genContent () {\n const children = [\n this.genPrependSlot(),\n this.genLabel(),\n this.genAppendSlot(),\n ]\n\n return h('div', {\n class: 'v-treeview-node__content',\n }, children)\n },\n genToggle () {\n return h(VIcon, {\n class: ['v-treeview-node__toggle', {\n 'v-treeview-node__toggle--open': this.isOpen,\n 'v-treeview-node__toggle--loading': this.isLoading,\n }],\n slot: 'prepend',\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => this.open())\n }\n }, () => [this.isLoading ? this.loadingIcon : this.expandIcon])\n },\n genCheckbox () {\n return h(VIcon, {\n class: 'v-treeview-node__checkbox',\n color: this.isSelected || this.isIndeterminate ? this.selectedColor : undefined,\n disabled: this.disabled,\n onClick: (e: MouseEvent) => {\n e.stopPropagation()\n\n if (this.isLoading) return\n\n this.checkChildren().then(() => {\n // We nextTick here so that items watch in VTreeview has a chance to run first\n this.$nextTick(() => {\n this.isSelected = !this.isSelected\n this.isIndeterminate = false\n\n this.treeview.updateSelected(this.key, this.isSelected)\n this.treeview.emitSelected()\n })\n })\n },\n }, () => [this.computedIcon])\n },\n genLevel (level: number) {\n return createRange(level).map(() => h('div', {\n class: 'v-treeview-node__level',\n }))\n },\n genNode () {\n const children = [this.genContent()]\n\n if (this.selectable) children.unshift(this.genCheckbox())\n\n if (this.hasChildren) {\n children.unshift(this.genToggle())\n } else {\n children.unshift(...this.genLevel(1))\n }\n\n children.unshift(...this.genLevel(this.level))\n\n return h('div', this.setTextColor(this.isActive && this.color, {\n class: ['v-treeview-node__root', {\n [this.activeClass]: this.isActive,\n }],\n onClick: () => {\n if (this.openOnClick && this.hasChildren) {\n this.checkChildren().then(this.open)\n } else if (this.activatable && !this.disabled) {\n this.isActive = !this.isActive\n this.treeview.updateActive(this.key, this.isActive)\n this.treeview.emitActive()\n }\n }\n }), children)\n },\n genChild (item: any, parentIsDisabled: boolean) {\n return h(VTreeviewNode, {\n key: getObjectValueByPath(item, this.itemKey),\n activatable: this.activatable,\n activeClass: this.activeClass,\n item,\n selectable: this.selectable,\n selectedColor: this.selectedColor,\n color: this.color,\n disablePerNode: this.disablePerNode,\n expandIcon: this.expandIcon,\n indeterminateIcon: this.indeterminateIcon,\n offIcon: this.offIcon,\n onIcon: this.onIcon,\n loadingIcon: this.loadingIcon,\n itemKey: this.itemKey,\n itemText: this.itemText,\n itemDisabled: this.itemDisabled,\n itemChildren: this.itemChildren,\n loadChildren: this.loadChildren,\n transition: this.transition,\n openOnClick: this.openOnClick,\n rounded: this.rounded,\n shaped: this.shaped,\n level: this.level + 1,\n selectionType: this.selectionType,\n parentIsDisabled,\n }, this.$slots)\n },\n genChildrenWrapper () {\n if (!this.isOpen || !this.children) return null\n\n const children = [this.children.map(c => this.genChild(c, this.disabled))]\n\n return h('div', {\n class: 'v-treeview-node__children',\n }, children)\n },\n genTransition () {\n return h(VExpandTransition, {}, () => [this.genChildrenWrapper()])\n },\n },\n\n render (): VNode {\n const children: VNodeChildren = [this.genNode()]\n\n if (this.transition) children.push(this.genTransition())\n else children.push(this.genChildrenWrapper())\n\n return h('div', {\n class: ['v-treeview-node', {\n 'v-treeview-node--leaf': !this.hasChildren,\n 'v-treeview-node--click': this.openOnClick,\n 'v-treeview-node--disabled': this.disabled,\n 'v-treeview-node--rounded': this.rounded,\n 'v-treeview-node--shaped': this.shaped,\n 'v-treeview-node--selected': this.isSelected,\n }],\n 'aria-expanded': String(this.isOpen),\n }, children)\n },\n})\n\nexport default VTreeviewNode\n"],"sourceRoot":"","file":"VTreeviewNode.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VVirtualScroll/VVirtualScroll.ts"],"names":[],"mappings":"AAAA,SAAQ,CAAR,EAAW,cAAX,QAAgC,KAAhC,C,CACA;;AACA,OAAO,4DAAP,C,CAEA;;AACA,OAAO,UAAP,MAAuB,yBAAvB,C,CAEA;;AACA,OAAO,MAAP,MAAmB,yBAAnB,C,CAEA;;AACA,SACE,aADF,EAEE,OAFF,QAGO,oBAHP,C,CAKA;;AACA,SAAgB,eAAhB,QAAuC,KAAvC;AAEA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,kBADuB;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VVirtualScroll/VVirtualScroll.ts"],"names":[],"mappings":"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","sourcesContent":["import {h, withDirectives} from 'vue'\n// Styles\nimport './VVirtualScroll.sass'\n\n// Mixins\nimport Measurable from '../../mixins/measurable'\n\n// Directives\nimport Scroll from '../../directives/scroll'\n\n// Utilities\nimport {\n convertToUnit,\n getSlot,\n} from '../../util/helpers'\n\n// Types\nimport { VNode, defineComponent } from 'vue'\n\nexport default defineComponent({\n name: 'v-virtual-scroll',\n\n\n extends: Measurable,\n\n props: {\n bench: {\n type: [Number, String],\n default: 0,\n },\n itemHeight: {\n type: [Number, String],\n required: true,\n },\n items: {\n type: Array,\n default: () => [],\n },\n },\n\n data: () => ({\n first: 0,\n last: 0,\n scrollTop: 0,\n }),\n\n computed: {\n __bench (): number {\n return parseInt(this.bench, 10)\n },\n __itemHeight (): number {\n return parseInt(this.itemHeight, 10)\n },\n firstToRender (): number {\n return Math.max(0, this.first - this.__bench)\n },\n lastToRender (): number {\n return Math.min(this.items.length, this.last + this.__bench)\n },\n },\n\n watch: {\n height: 'onScroll',\n itemHeight: 'onScroll',\n },\n\n mounted () {\n this.last = this.getLast(0)\n },\n\n methods: {\n getChildren (): VNode[] {\n return this.items.slice(\n this.firstToRender,\n this.lastToRender,\n ).map(this.genChild)\n },\n genChild (item: any, index: number) {\n index += this.firstToRender\n\n const top = convertToUnit(index * this.__itemHeight)\n\n return h('div', {\n class: 'v-virtual-scroll__item',\n style: { top },\n key: index,\n }, getSlot(this, 'default', { index, item }))\n },\n getFirst (): number {\n return Math.floor(this.scrollTop / this.__itemHeight)\n },\n getLast (first: number): number {\n const height = parseInt(this.height || 0, 10) || this.$el.clientHeight\n\n return first + Math.ceil(height / this.__itemHeight)\n },\n onScroll () {\n this.scrollTop = this.$el.scrollTop\n this.first = this.getFirst()\n this.last = this.getLast(this.first)\n },\n },\n\n render (): VNode {\n const content = h('div', {\n class: 'v-virtual-scroll__container',\n style: {\n height: convertToUnit((this.items.length * this.__itemHeight)),\n },\n }, this.getChildren())\n\n return withDirectives(\n h('div', {\n class: 'v-virtual-scroll',\n style: this.measurableStyles,\n ...(this as any).$listeners,\n }, {\n default: () => [content]\n }),\n [\n [Scroll, this.onScroll, '', { self: true }]\n ]\n )\n },\n})\n"],"sourceRoot":"","file":"VVirtualScroll.js"}
|