@dimailn/vuetify 2.7.2-alpha2 → 2.7.2-superbundle
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.css +4806 -4806
- package/dist/vuetify.css.map +1 -1
- package/dist/vuetify.js +5565 -5345
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +3 -3
- package/dist/vuetify.min.js +2 -2
- package/dist/vuetify.sass +109 -0
- package/es5/components/VAlert/VAlert.js +54 -38
- package/es5/components/VAlert/VAlert.js.map +1 -1
- package/es5/components/VApp/VApp.js +16 -12
- package/es5/components/VApp/VApp.js.map +1 -1
- package/es5/components/VAppBar/VAppBar.js +10 -12
- package/es5/components/VAppBar/VAppBar.js.map +1 -1
- package/es5/components/VAppBar/VAppBarNavIcon.js +20 -13
- package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
- package/es5/components/VAppBar/VAppBarTitle.js +8 -9
- package/es5/components/VAppBar/VAppBarTitle.js.map +1 -1
- package/es5/components/VAutocomplete/VAutocomplete.js +23 -22
- package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/es5/components/VAvatar/VAvatar.js +8 -9
- package/es5/components/VAvatar/VAvatar.js.map +1 -1
- package/es5/components/VBadge/VBadge.js +24 -22
- package/es5/components/VBadge/VBadge.js.map +1 -1
- package/es5/components/VBanner/VBanner.js +37 -32
- package/es5/components/VBanner/VBanner.js.map +1 -1
- package/es5/components/VBottomNavigation/VBottomNavigation.js +14 -11
- package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/es5/components/VBottomSheet/VBottomSheet.js +2 -5
- package/es5/components/VBottomSheet/VBottomSheet.js.map +1 -1
- package/es5/components/VBreadcrumbs/VBreadcrumbs.js +11 -11
- package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -8
- package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
- package/es5/components/VBtn/VBtn.js +24 -30
- package/es5/components/VBtn/VBtn.js.map +1 -1
- package/es5/components/VBtnToggle/VBtnToggle.js +2 -2
- package/es5/components/VBtnToggle/VBtnToggle.js.map +1 -1
- package/es5/components/VCalendar/VCalendar.js +27 -25
- package/es5/components/VCalendar/VCalendar.js.map +1 -1
- package/es5/components/VCalendar/VCalendarCategory.js +21 -23
- package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
- package/es5/components/VCalendar/VCalendarDaily.js +69 -67
- package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
- package/es5/components/VCalendar/VCalendarMonthly.js +1 -4
- package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
- package/es5/components/VCalendar/VCalendarWeekly.js +65 -64
- package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-with-events.js +64 -58
- package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/es5/components/VCalendar/mixins/calendar-with-intervals.js +1 -4
- package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
- package/es5/components/VCalendar/mixins/times.js +4 -2
- package/es5/components/VCalendar/mixins/times.js.map +1 -1
- package/es5/components/VCard/VCard.js +11 -13
- package/es5/components/VCard/VCard.js.map +1 -1
- package/es5/components/VCarousel/VCarousel.js +37 -28
- package/es5/components/VCarousel/VCarousel.js.map +1 -1
- package/es5/components/VCarousel/VCarouselItem.js +18 -16
- package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
- package/es5/components/VCheckbox/VCheckbox.js +10 -11
- package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
- package/es5/components/VCheckbox/VSimpleCheckbox.js +29 -20
- package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/es5/components/VChip/VChip.js +44 -37
- package/es5/components/VChip/VChip.js.map +1 -1
- package/es5/components/VChipGroup/VChipGroup.js +2 -2
- package/es5/components/VChipGroup/VChipGroup.js.map +1 -1
- package/es5/components/VColorPicker/VColorPicker.js +38 -32
- package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
- package/es5/components/VColorPicker/VColorPickerCanvas.js +22 -19
- package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
- package/es5/components/VColorPicker/VColorPickerEdit.js +28 -25
- package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
- package/es5/components/VColorPicker/VColorPickerPreview.js +48 -37
- package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
- package/es5/components/VColorPicker/VColorPickerSwatches.js +15 -15
- package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
- package/es5/components/VCombobox/VCombobox.js +27 -22
- package/es5/components/VCombobox/VCombobox.js.map +1 -1
- package/es5/components/VContent/VContent.js +4 -8
- package/es5/components/VContent/VContent.js.map +1 -1
- package/es5/components/VCounter/VCounter.js +5 -7
- package/es5/components/VCounter/VCounter.js.map +1 -1
- package/es5/components/VData/VData.js +5 -3
- package/es5/components/VData/VData.js.map +1 -1
- package/es5/components/VDataIterator/VDataFooter.js +46 -34
- package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
- package/es5/components/VDataIterator/VDataIterator.js +22 -20
- package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
- package/es5/components/VDataTable/MobileRow.js +21 -15
- package/es5/components/VDataTable/MobileRow.js.map +1 -1
- package/es5/components/VDataTable/Row.js +15 -11
- package/es5/components/VDataTable/Row.js.map +1 -1
- package/es5/components/VDataTable/RowGroup.js +12 -9
- package/es5/components/VDataTable/RowGroup.js.map +1 -1
- package/es5/components/VDataTable/VDataTable.js +206 -176
- package/es5/components/VDataTable/VDataTable.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeader.js +20 -12
- package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
- package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/es5/components/VDataTable/VDataTableHeaderMobile.js +19 -22
- package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/es5/components/VDataTable/VEditDialog.js +43 -34
- package/es5/components/VDataTable/VEditDialog.js.map +1 -1
- package/es5/components/VDataTable/VSimpleTable.js +7 -8
- package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
- package/es5/components/VDataTable/VVirtualTable.js +16 -17
- package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
- package/es5/components/VDataTable/mixins/header.js +18 -14
- package/es5/components/VDataTable/mixins/header.js.map +1 -1
- package/es5/components/VDatePicker/VDatePicker.js +113 -99
- package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerDateTable.js +12 -13
- package/es5/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerHeader.js +38 -26
- package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerMonthTable.js +3 -3
- package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerTitle.js +17 -12
- package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/es5/components/VDatePicker/VDatePickerYears.js +3 -3
- package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/es5/components/VDatePicker/mixins/date-picker-table.js +47 -34
- package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/es5/components/VDatePicker/util/eventHelpers.js.map +1 -1
- package/es5/components/VDialog/VDialog.js +46 -29
- package/es5/components/VDialog/VDialog.js.map +1 -1
- package/es5/components/VDivider/VDivider.js +9 -11
- package/es5/components/VDivider/VDivider.js.map +1 -1
- package/es5/components/VExpansionPanel/VExpansionPanel.js +8 -9
- 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 +34 -31
- package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
- package/es5/components/VExpansionPanel/VExpansionPanels.js +2 -5
- package/es5/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
- package/es5/components/VFileInput/VFileInput.js +35 -32
- package/es5/components/VFileInput/VFileInput.js.map +1 -1
- package/es5/components/VFooter/VFooter.js +9 -11
- package/es5/components/VFooter/VFooter.js.map +1 -1
- package/es5/components/VForm/VForm.js +12 -11
- package/es5/components/VForm/VForm.js.map +1 -1
- package/es5/components/VGrid/VCol.js +8 -8
- package/es5/components/VGrid/VCol.js.map +1 -1
- package/es5/components/VGrid/VContainer.js +19 -17
- package/es5/components/VGrid/VContainer.js.map +1 -1
- package/es5/components/VGrid/VRow.js +10 -7
- package/es5/components/VGrid/VRow.js.map +1 -1
- package/es5/components/VGrid/grid.js +9 -7
- package/es5/components/VGrid/grid.js.map +1 -1
- package/es5/components/VHover/VHover.js +3 -3
- package/es5/components/VHover/VHover.js.map +1 -1
- package/es5/components/VIcon/VIcon.js +36 -69
- package/es5/components/VIcon/VIcon.js.map +1 -1
- package/es5/components/VImg/VImg.js +41 -38
- package/es5/components/VImg/VImg.js.map +1 -1
- package/es5/components/VInput/VInput.js +77 -70
- package/es5/components/VInput/VInput.js.map +1 -1
- package/es5/components/VItemGroup/VItem.js +6 -5
- package/es5/components/VItemGroup/VItem.js.map +1 -1
- package/es5/components/VItemGroup/VItemGroup.js +4 -8
- package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
- package/es5/components/VLabel/VLabel.js +15 -12
- package/es5/components/VLabel/VLabel.js.map +1 -1
- package/es5/components/VLazy/VLazy.js +7 -7
- package/es5/components/VLazy/VLazy.js.map +1 -1
- package/es5/components/VList/VList.js +12 -12
- package/es5/components/VList/VList.js.map +1 -1
- package/es5/components/VList/VListGroup.js +32 -31
- package/es5/components/VList/VListGroup.js.map +1 -1
- package/es5/components/VList/VListItem.js +22 -26
- package/es5/components/VList/VListItem.js.map +1 -1
- package/es5/components/VList/VListItemAction.js +11 -8
- package/es5/components/VList/VListItemAction.js.map +1 -1
- package/es5/components/VList/VListItemAvatar.js +9 -9
- package/es5/components/VList/VListItemAvatar.js.map +1 -1
- package/es5/components/VList/VListItemGroup.js +2 -2
- package/es5/components/VList/VListItemGroup.js.map +1 -1
- package/es5/components/VList/VListItemIcon.js +9 -11
- package/es5/components/VList/VListItemIcon.js.map +1 -1
- package/es5/components/VMain/VMain.js +5 -9
- package/es5/components/VMain/VMain.js.map +1 -1
- package/es5/components/VMenu/VMenu.js +66 -42
- package/es5/components/VMenu/VMenu.js.map +1 -1
- package/es5/components/VMessages/VMessages.js +12 -12
- package/es5/components/VMessages/VMessages.js.map +1 -1
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js +59 -51
- package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/es5/components/VOtpInput/VOtpInput.js +57 -52
- package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
- package/es5/components/VOverflowBtn/VOverflowBtn.js +8 -11
- package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
- package/es5/components/VOverlay/VOverlay.js +8 -11
- package/es5/components/VOverlay/VOverlay.js.map +1 -1
- package/es5/components/VPagination/VPagination.js +48 -35
- package/es5/components/VPagination/VPagination.js.map +1 -1
- package/es5/components/VParallax/VParallax.js +20 -23
- package/es5/components/VParallax/VParallax.js.map +1 -1
- package/es5/components/VPicker/VPicker.js +21 -17
- package/es5/components/VPicker/VPicker.js.map +1 -1
- package/es5/components/VProgressCircular/VProgressCircular.js +40 -38
- package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/es5/components/VProgressLinear/VProgressLinear.js +32 -33
- package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/es5/components/VRadioGroup/VRadio.js +37 -29
- package/es5/components/VRadioGroup/VRadio.js.map +1 -1
- package/es5/components/VRadioGroup/VRadioGroup.js +17 -16
- package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
- package/es5/components/VRangeSlider/VRangeSlider.js +7 -10
- package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
- package/es5/components/VRating/VRating.js +48 -52
- package/es5/components/VRating/VRating.js.map +1 -1
- package/es5/components/VResponsive/VResponsive.js +11 -11
- package/es5/components/VResponsive/VResponsive.js.map +1 -1
- package/es5/components/VSelect/VSelect.js +126 -102
- package/es5/components/VSelect/VSelect.js.map +1 -1
- package/es5/components/VSelect/VSelectList.js +63 -44
- package/es5/components/VSelect/VSelectList.js.map +1 -1
- package/es5/components/VSheet/VSheet.js +9 -12
- package/es5/components/VSheet/VSheet.js.map +1 -1
- package/es5/components/VSkeletonLoader/VSkeletonLoader.js +22 -18
- package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/es5/components/VSlideGroup/VSlideGroup.js +56 -39
- package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/es5/components/VSlider/VSlider.js +75 -62
- package/es5/components/VSlider/VSlider.js.map +1 -1
- package/es5/components/VSnackbar/VSnackbar.js +32 -22
- package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
- package/es5/components/VSparkline/VSparkline.js +24 -24
- package/es5/components/VSparkline/VSparkline.js.map +1 -1
- package/es5/components/VSpeedDial/VSpeedDial.js +11 -11
- package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/es5/components/VStepper/VStepper.js +6 -7
- package/es5/components/VStepper/VStepper.js.map +1 -1
- package/es5/components/VStepper/VStepperContent.js +13 -15
- package/es5/components/VStepper/VStepperContent.js.map +1 -1
- package/es5/components/VStepper/VStepperStep.js +23 -22
- package/es5/components/VStepper/VStepperStep.js.map +1 -1
- package/es5/components/VSubheader/VSubheader.js +8 -7
- package/es5/components/VSubheader/VSubheader.js.map +1 -1
- package/es5/components/VSwitch/VSwitch.js +22 -22
- package/es5/components/VSwitch/VSwitch.js.map +1 -1
- package/es5/components/VSystemBar/VSystemBar.js +8 -9
- package/es5/components/VSystemBar/VSystemBar.js.map +1 -1
- package/es5/components/VTabs/VTab.js +10 -12
- package/es5/components/VTabs/VTab.js.map +1 -1
- package/es5/components/VTabs/VTabItem.js +4 -6
- package/es5/components/VTabs/VTabItem.js.map +1 -1
- package/es5/components/VTabs/VTabs.js +47 -34
- package/es5/components/VTabs/VTabs.js.map +1 -1
- package/es5/components/VTabs/VTabsBar.js +9 -8
- package/es5/components/VTabs/VTabsBar.js.map +1 -1
- package/es5/components/VTabs/VTabsItems.js +3 -6
- package/es5/components/VTabs/VTabsItems.js.map +1 -1
- package/es5/components/VTabs/VTabsSlider.js +3 -5
- package/es5/components/VTabs/VTabsSlider.js.map +1 -1
- package/es5/components/VTextField/VTextField.js +74 -59
- package/es5/components/VTextField/VTextField.js.map +1 -1
- package/es5/components/VTextarea/VTextarea.js +5 -6
- package/es5/components/VTextarea/VTextarea.js.map +1 -1
- package/es5/components/VThemeProvider/VThemeProvider.js +5 -5
- package/es5/components/VThemeProvider/VThemeProvider.js.map +1 -1
- package/es5/components/VTimePicker/VTimePicker.js +29 -25
- package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
- package/es5/components/VTimePicker/VTimePickerClock.js +41 -40
- package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
- package/es5/components/VTimePicker/VTimePickerTitle.js +14 -15
- package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
- package/es5/components/VTimeline/VTimeline.js +4 -5
- package/es5/components/VTimeline/VTimeline.js.map +1 -1
- package/es5/components/VTimeline/VTimelineItem.js +24 -24
- package/es5/components/VTimeline/VTimelineItem.js.map +1 -1
- package/es5/components/VToolbar/VToolbar.js +14 -17
- package/es5/components/VToolbar/VToolbar.js.map +1 -1
- package/es5/components/VTooltip/VTooltip.js +13 -11
- package/es5/components/VTooltip/VTooltip.js.map +1 -1
- package/es5/components/VTreeview/VTreeview.js +6 -7
- package/es5/components/VTreeview/VTreeview.js.map +1 -1
- package/es5/components/VTreeview/VTreeviewNode.js +109 -93
- package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
- package/es5/components/VVirtualScroll/VVirtualScroll.js +8 -12
- package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/es5/components/VWindow/VWindow.js +38 -26
- package/es5/components/VWindow/VWindow.js.map +1 -1
- package/es5/components/VWindow/VWindowItem.js +30 -25
- package/es5/components/VWindow/VWindowItem.js.map +1 -1
- package/es5/components/index.js +112 -0
- package/es5/components/index.js.map +1 -1
- package/es5/components/transitions/createTransition.js +24 -22
- package/es5/components/transitions/createTransition.js.map +1 -1
- package/es5/directives/click-outside/index.js +6 -6
- package/es5/directives/click-outside/index.js.map +1 -1
- package/es5/directives/intersect/index.js +6 -6
- package/es5/directives/intersect/index.js.map +1 -1
- package/es5/directives/ripple/index.js +5 -11
- package/es5/directives/ripple/index.js.map +1 -1
- package/es5/directives/touch/index.js +6 -12
- package/es5/directives/touch/index.js.map +1 -1
- package/es5/framework.js +1 -1
- package/es5/framework.js.map +1 -1
- package/es5/helpers.js +64 -0
- package/es5/helpers.js.map +1 -0
- package/es5/index.js +36 -31
- package/es5/index.js.map +1 -1
- package/es5/install.js +15 -42
- package/es5/install.js.map +1 -1
- package/es5/mixins/activatable/index.js +12 -19
- package/es5/mixins/activatable/index.js.map +1 -1
- package/es5/mixins/binds-attrs/index.js +5 -3
- package/es5/mixins/binds-attrs/index.js.map +1 -1
- package/es5/mixins/bootable/index.js +5 -3
- package/es5/mixins/bootable/index.js.map +1 -1
- package/es5/mixins/button-group/index.js +3 -6
- package/es5/mixins/button-group/index.js.map +1 -1
- package/es5/mixins/colorable/index.js +8 -36
- package/es5/mixins/colorable/index.js.map +1 -1
- package/es5/mixins/comparable/index.js +4 -2
- package/es5/mixins/comparable/index.js.map +1 -1
- package/es5/mixins/delayable/index.js +4 -2
- package/es5/mixins/delayable/index.js.map +1 -1
- package/es5/mixins/dependent/index.js +2 -8
- package/es5/mixins/dependent/index.js.map +1 -1
- package/es5/mixins/detachable/index.js +2 -2
- package/es5/mixins/detachable/index.js.map +1 -1
- package/es5/mixins/elevatable/index.js +4 -2
- package/es5/mixins/elevatable/index.js.map +1 -1
- package/es5/mixins/filterable/index.js +4 -2
- package/es5/mixins/filterable/index.js.map +1 -1
- package/es5/mixins/groupable/index.js +11 -14
- package/es5/mixins/groupable/index.js.map +1 -1
- package/es5/mixins/intersectable/index.js +5 -11
- package/es5/mixins/intersectable/index.js.map +1 -1
- package/es5/mixins/loadable/index.js +9 -7
- package/es5/mixins/loadable/index.js.map +1 -1
- package/es5/mixins/localable/index.js +4 -2
- package/es5/mixins/localable/index.js.map +1 -1
- package/es5/mixins/measurable/index.js +4 -2
- package/es5/mixins/measurable/index.js.map +1 -1
- package/es5/mixins/menuable/index.js +5 -8
- package/es5/mixins/menuable/index.js.map +1 -1
- package/es5/mixins/mobile/index.js +13 -9
- package/es5/mixins/mobile/index.js.map +1 -1
- package/es5/mixins/mouse/index.js +6 -9
- package/es5/mixins/mouse/index.js.map +1 -1
- package/es5/mixins/overlayable/index.js +16 -46
- package/es5/mixins/overlayable/index.js.map +1 -1
- package/es5/mixins/picker/index.js +20 -19
- package/es5/mixins/picker/index.js.map +1 -1
- package/es5/mixins/picker-button/index.js +11 -14
- package/es5/mixins/picker-button/index.js.map +1 -1
- package/es5/mixins/positionable/index.js +4 -2
- package/es5/mixins/positionable/index.js.map +1 -1
- package/es5/mixins/proxyable/index.js +6 -4
- package/es5/mixins/proxyable/index.js.map +1 -1
- package/es5/mixins/registrable/index.js +5 -3
- package/es5/mixins/registrable/index.js.map +1 -1
- package/es5/mixins/returnable/index.js +4 -2
- package/es5/mixins/returnable/index.js.map +1 -1
- package/es5/mixins/rippleable/index.js +13 -21
- package/es5/mixins/rippleable/index.js.map +1 -1
- package/es5/mixins/roundable/index.js +4 -2
- package/es5/mixins/roundable/index.js.map +1 -1
- package/es5/mixins/routable/index.js +25 -24
- package/es5/mixins/routable/index.js.map +1 -1
- package/es5/mixins/scrollable/index.js +4 -2
- package/es5/mixins/scrollable/index.js.map +1 -1
- package/es5/mixins/selectable/index.js +33 -31
- package/es5/mixins/selectable/index.js.map +1 -1
- package/es5/mixins/sizeable/index.js +4 -2
- package/es5/mixins/sizeable/index.js.map +1 -1
- package/es5/mixins/ssr-bootable/index.js +4 -2
- package/es5/mixins/ssr-bootable/index.js.map +1 -1
- package/es5/mixins/stackable/index.js +4 -2
- package/es5/mixins/stackable/index.js.map +1 -1
- package/es5/mixins/themeable/index.js +16 -5
- package/es5/mixins/themeable/index.js.map +1 -1
- package/es5/mixins/toggleable/index.js +10 -4
- package/es5/mixins/toggleable/index.js.map +1 -1
- package/es5/mixins/transitionable/index.js +4 -2
- package/es5/mixins/transitionable/index.js.map +1 -1
- package/es5/mixins/translatable/index.js +4 -2
- package/es5/mixins/translatable/index.js.map +1 -1
- package/es5/mixins/validatable/index.js +1 -1
- package/es5/mixins/validatable/index.js.map +1 -1
- package/es5/services/goto/util.js.map +1 -1
- package/es5/services/theme/index.js +19 -6
- package/es5/services/theme/index.js.map +1 -1
- package/es5/util/helpers.js +20 -33
- package/es5/util/helpers.js.map +1 -1
- package/es5/util/mergeData.js +1 -1
- package/es5/util/mergeData.js.map +1 -1
- package/es5/util/mixins.js +5 -11
- package/es5/util/mixins.js.map +1 -1
- package/es5/vuetify.js +45 -0
- package/es5/vuetify.js.map +1 -0
- package/lib/components/VAlert/VAlert.js +54 -38
- package/lib/components/VAlert/VAlert.js.map +1 -1
- package/lib/components/VApp/VApp.js +14 -10
- package/lib/components/VApp/VApp.js.map +1 -1
- package/lib/components/VAppBar/VAppBar.js +11 -12
- package/lib/components/VAppBar/VAppBar.js.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.js +15 -10
- package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.js +4 -6
- package/lib/components/VAppBar/VAppBarTitle.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +23 -22
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VAvatar/VAvatar.js +4 -4
- package/lib/components/VAvatar/VAvatar.js.map +1 -1
- package/lib/components/VBadge/VBadge.js +26 -22
- package/lib/components/VBadge/VBadge.js.map +1 -1
- package/lib/components/VBanner/VBanner.js +28 -23
- package/lib/components/VBanner/VBanner.js.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.js +14 -10
- package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.js +2 -4
- package/lib/components/VBottomSheet/VBottomSheet.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js +9 -9
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -7
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +25 -31
- package/lib/components/VBtn/VBtn.js.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.js +2 -2
- package/lib/components/VBtnToggle/VBtnToggle.js.map +1 -1
- package/lib/components/VCalendar/VCalendar.js +25 -24
- package/lib/components/VCalendar/VCalendar.js.map +1 -1
- package/lib/components/VCalendar/VCalendarCategory.js +16 -19
- package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
- package/lib/components/VCalendar/VCalendarDaily.js +39 -41
- package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
- package/lib/components/VCalendar/VCalendarMonthly.js +1 -3
- package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
- package/lib/components/VCalendar/VCalendarWeekly.js +30 -32
- package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-events.js +24 -27
- package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-intervals.js +1 -3
- package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
- package/lib/components/VCalendar/mixins/times.js +2 -2
- package/lib/components/VCalendar/mixins/times.js.map +1 -1
- package/lib/components/VCard/VCard.js +12 -14
- package/lib/components/VCard/VCard.js.map +1 -1
- package/lib/components/VCarousel/VCarousel.js +39 -31
- package/lib/components/VCarousel/VCarousel.js.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.js +19 -17
- package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.js +10 -10
- package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
- package/lib/components/VCheckbox/VSimpleCheckbox.js +25 -19
- package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
- package/lib/components/VChip/VChip.js +43 -34
- package/lib/components/VChip/VChip.js.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.js +2 -2
- package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.js +30 -23
- package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.js +8 -9
- package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.js +24 -19
- package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.js +45 -35
- package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -14
- package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.js +20 -20
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VContent/VContent.js +4 -8
- package/lib/components/VContent/VContent.js.map +1 -1
- package/lib/components/VCounter/VCounter.js +7 -7
- package/lib/components/VCounter/VCounter.js.map +1 -1
- package/lib/components/VData/VData.js +3 -3
- package/lib/components/VData/VData.js.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.js +46 -34
- package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.js +20 -16
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/MobileRow.js +16 -11
- package/lib/components/VDataTable/MobileRow.js.map +1 -1
- package/lib/components/VDataTable/Row.js +12 -6
- package/lib/components/VDataTable/Row.js.map +1 -1
- package/lib/components/VDataTable/RowGroup.js +9 -7
- package/lib/components/VDataTable/RowGroup.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +169 -135
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeader.js +19 -11
- package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
- package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderMobile.js +9 -10
- package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
- package/lib/components/VDataTable/VEditDialog.js +41 -31
- package/lib/components/VDataTable/VEditDialog.js.map +1 -1
- package/lib/components/VDataTable/VSimpleTable.js +6 -6
- package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
- package/lib/components/VDataTable/VVirtualTable.js +11 -12
- package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
- package/lib/components/VDataTable/mixins/header.js +17 -12
- package/lib/components/VDataTable/mixins/header.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +107 -92
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerDateTable.js +11 -13
- package/lib/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js +37 -25
- package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -3
- package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerTitle.js +16 -10
- package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.js +3 -3
- package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.js +36 -27
- package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
- package/lib/components/VDatePicker/util/eventHelpers.js.map +1 -1
- package/lib/components/VDialog/VDialog.js +46 -27
- package/lib/components/VDialog/VDialog.js.map +1 -1
- package/lib/components/VDivider/VDivider.js +12 -14
- package/lib/components/VDivider/VDivider.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.js +8 -9
- package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelContent.js +9 -6
- package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +31 -21
- package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.js +2 -4
- package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
- package/lib/components/VFileInput/VFileInput.js +34 -31
- package/lib/components/VFileInput/VFileInput.js.map +1 -1
- package/lib/components/VFooter/VFooter.js +5 -6
- package/lib/components/VFooter/VFooter.js.map +1 -1
- package/lib/components/VForm/VForm.js +11 -8
- package/lib/components/VForm/VForm.js.map +1 -1
- package/lib/components/VGrid/VCol.js +9 -9
- package/lib/components/VGrid/VCol.js.map +1 -1
- package/lib/components/VGrid/VContainer.js +22 -16
- package/lib/components/VGrid/VContainer.js.map +1 -1
- package/lib/components/VGrid/VRow.js +12 -9
- package/lib/components/VGrid/VRow.js.map +1 -1
- package/lib/components/VGrid/grid.js +7 -6
- package/lib/components/VGrid/grid.js.map +1 -1
- package/lib/components/VHover/VHover.js +3 -3
- package/lib/components/VHover/VHover.js.map +1 -1
- package/lib/components/VIcon/VIcon.js +36 -65
- package/lib/components/VIcon/VIcon.js.map +1 -1
- package/lib/components/VImg/VImg.js +41 -32
- package/lib/components/VImg/VImg.js.map +1 -1
- package/lib/components/VInput/VInput.js +61 -59
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VItemGroup/VItem.js +5 -5
- package/lib/components/VItemGroup/VItem.js.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.js +4 -8
- package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
- package/lib/components/VLabel/VLabel.js +18 -13
- package/lib/components/VLabel/VLabel.js.map +1 -1
- package/lib/components/VLazy/VLazy.js +7 -6
- package/lib/components/VLazy/VLazy.js.map +1 -1
- package/lib/components/VList/VList.js +12 -13
- package/lib/components/VList/VList.js.map +1 -1
- package/lib/components/VList/VListGroup.js +29 -21
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.js +26 -25
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VList/VListItemAction.js +8 -7
- package/lib/components/VList/VListItemAction.js.map +1 -1
- package/lib/components/VList/VListItemAvatar.js +9 -10
- package/lib/components/VList/VListItemAvatar.js.map +1 -1
- package/lib/components/VList/VListItemGroup.js +2 -2
- package/lib/components/VList/VListItemGroup.js.map +1 -1
- package/lib/components/VList/VListItemIcon.js +8 -7
- package/lib/components/VList/VListItemIcon.js.map +1 -1
- package/lib/components/VMain/VMain.js +5 -8
- package/lib/components/VMain/VMain.js.map +1 -1
- package/lib/components/VMenu/VMenu.js +65 -40
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VMessages/VMessages.js +12 -11
- package/lib/components/VMessages/VMessages.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +60 -49
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +46 -40
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.js +8 -10
- package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.js +8 -10
- package/lib/components/VOverlay/VOverlay.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +42 -30
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VParallax/VParallax.js +13 -12
- package/lib/components/VParallax/VParallax.js.map +1 -1
- package/lib/components/VPicker/VPicker.js +20 -15
- package/lib/components/VPicker/VPicker.js.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.js +37 -30
- package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.js +30 -24
- package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/lib/components/VRadioGroup/VRadio.js +34 -24
- package/lib/components/VRadioGroup/VRadio.js.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.js +18 -17
- package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.js +7 -9
- package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
- package/lib/components/VRating/VRating.js +34 -34
- package/lib/components/VRating/VRating.js.map +1 -1
- package/lib/components/VResponsive/VResponsive.js +11 -10
- package/lib/components/VResponsive/VResponsive.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +123 -95
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelect/VSelectList.js +59 -39
- package/lib/components/VSelect/VSelectList.js.map +1 -1
- package/lib/components/VSheet/VSheet.js +7 -11
- package/lib/components/VSheet/VSheet.js.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js +21 -16
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.js +51 -35
- package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
- package/lib/components/VSlider/VSlider.js +75 -63
- package/lib/components/VSlider/VSlider.js.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.js +31 -20
- package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
- package/lib/components/VSparkline/VSparkline.js +16 -17
- package/lib/components/VSparkline/VSparkline.js.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.js +10 -9
- package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
- package/lib/components/VStepper/VStepper.js +6 -6
- package/lib/components/VStepper/VStepper.js.map +1 -1
- package/lib/components/VStepper/VStepperContent.js +8 -8
- package/lib/components/VStepper/VStepperContent.js.map +1 -1
- package/lib/components/VStepper/VStepperStep.js +9 -10
- package/lib/components/VStepper/VStepperStep.js.map +1 -1
- package/lib/components/VSubheader/VSubheader.js +7 -7
- package/lib/components/VSubheader/VSubheader.js.map +1 -1
- package/lib/components/VSwitch/VSwitch.js +26 -23
- package/lib/components/VSwitch/VSwitch.js.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.js +3 -4
- package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
- package/lib/components/VTabs/VTab.js +12 -13
- package/lib/components/VTabs/VTab.js.map +1 -1
- package/lib/components/VTabs/VTabItem.js +4 -5
- package/lib/components/VTabs/VTabItem.js.map +1 -1
- package/lib/components/VTabs/VTabs.js +48 -34
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTabs/VTabsBar.js +10 -8
- package/lib/components/VTabs/VTabsBar.js.map +1 -1
- package/lib/components/VTabs/VTabsItems.js +3 -5
- package/lib/components/VTabs/VTabsItems.js.map +1 -1
- package/lib/components/VTabs/VTabsSlider.js +3 -4
- package/lib/components/VTabs/VTabsSlider.js.map +1 -1
- package/lib/components/VTextField/VTextField.js +73 -57
- package/lib/components/VTextField/VTextField.js.map +1 -1
- package/lib/components/VTextarea/VTextarea.js +5 -6
- package/lib/components/VTextarea/VTextarea.js.map +1 -1
- package/lib/components/VThemeProvider/VThemeProvider.js +4 -5
- package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
- package/lib/components/VTimePicker/VTimePicker.js +26 -22
- package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
- package/lib/components/VTimePicker/VTimePickerClock.js +7 -8
- package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
- package/lib/components/VTimePicker/VTimePickerTitle.js +7 -8
- package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
- package/lib/components/VTimeline/VTimeline.js +4 -4
- package/lib/components/VTimeline/VTimeline.js.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.js +26 -23
- package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
- package/lib/components/VToolbar/VToolbar.js +15 -19
- package/lib/components/VToolbar/VToolbar.js.map +1 -1
- package/lib/components/VTooltip/VTooltip.js +12 -9
- package/lib/components/VTooltip/VTooltip.js.map +1 -1
- package/lib/components/VTreeview/VTreeview.js +6 -6
- package/lib/components/VTreeview/VTreeview.js.map +1 -1
- package/lib/components/VTreeview/VTreeviewNode.js +98 -83
- package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -12
- package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/lib/components/VWindow/VWindow.js +37 -27
- package/lib/components/VWindow/VWindow.js.map +1 -1
- package/lib/components/VWindow/VWindowItem.js +29 -23
- package/lib/components/VWindow/VWindowItem.js.map +1 -1
- package/lib/components/index.js +4 -0
- package/lib/components/index.js.map +1 -1
- package/lib/components/transitions/createTransition.js +25 -20
- package/lib/components/transitions/createTransition.js.map +1 -1
- package/lib/directives/click-outside/index.js +6 -6
- package/lib/directives/click-outside/index.js.map +1 -1
- package/lib/directives/intersect/index.js +6 -6
- package/lib/directives/intersect/index.js.map +1 -1
- package/lib/directives/ripple/index.js +5 -6
- package/lib/directives/ripple/index.js.map +1 -1
- package/lib/directives/touch/index.js +6 -7
- package/lib/directives/touch/index.js.map +1 -1
- package/lib/framework.js +1 -1
- package/lib/framework.js.map +1 -1
- package/lib/helpers.js +9 -0
- package/lib/helpers.js.map +1 -0
- package/lib/install.js +16 -39
- package/lib/install.js.map +1 -1
- package/lib/mixins/activatable/index.js +10 -16
- package/lib/mixins/activatable/index.js.map +1 -1
- package/lib/mixins/binds-attrs/index.js +3 -3
- package/lib/mixins/binds-attrs/index.js.map +1 -1
- package/lib/mixins/bootable/index.js +4 -5
- package/lib/mixins/bootable/index.js.map +1 -1
- package/lib/mixins/button-group/index.js +3 -5
- package/lib/mixins/button-group/index.js.map +1 -1
- package/lib/mixins/colorable/index.js +6 -42
- package/lib/mixins/colorable/index.js.map +1 -1
- package/lib/mixins/comparable/index.js +2 -2
- package/lib/mixins/comparable/index.js.map +1 -1
- package/lib/mixins/delayable/index.js +2 -2
- package/lib/mixins/delayable/index.js.map +1 -1
- package/lib/mixins/dependent/index.js +2 -8
- package/lib/mixins/dependent/index.js.map +1 -1
- package/lib/mixins/detachable/index.js +2 -2
- package/lib/mixins/detachable/index.js.map +1 -1
- package/lib/mixins/elevatable/index.js +2 -2
- package/lib/mixins/elevatable/index.js.map +1 -1
- package/lib/mixins/filterable/index.js +2 -2
- package/lib/mixins/filterable/index.js.map +1 -1
- package/lib/mixins/groupable/index.js +11 -13
- package/lib/mixins/groupable/index.js.map +1 -1
- package/lib/mixins/intersectable/index.js +5 -11
- package/lib/mixins/intersectable/index.js.map +1 -1
- package/lib/mixins/loadable/index.js +9 -7
- package/lib/mixins/loadable/index.js.map +1 -1
- package/lib/mixins/localable/index.js +2 -2
- package/lib/mixins/localable/index.js.map +1 -1
- package/lib/mixins/measurable/index.js +2 -2
- package/lib/mixins/measurable/index.js.map +1 -1
- package/lib/mixins/menuable/index.js +5 -9
- package/lib/mixins/menuable/index.js.map +1 -1
- package/lib/mixins/mobile/index.js +12 -9
- package/lib/mixins/mobile/index.js.map +1 -1
- package/lib/mixins/mouse/index.js +4 -10
- package/lib/mixins/mouse/index.js.map +1 -1
- package/lib/mixins/overlayable/index.js +13 -44
- package/lib/mixins/overlayable/index.js.map +1 -1
- package/lib/mixins/picker/index.js +21 -19
- package/lib/mixins/picker/index.js.map +1 -1
- package/lib/mixins/picker-button/index.js +9 -10
- package/lib/mixins/picker-button/index.js.map +1 -1
- package/lib/mixins/positionable/index.js +2 -2
- package/lib/mixins/positionable/index.js.map +1 -1
- package/lib/mixins/proxyable/index.js +3 -3
- package/lib/mixins/proxyable/index.js.map +1 -1
- package/lib/mixins/registrable/index.js +3 -3
- package/lib/mixins/registrable/index.js.map +1 -1
- package/lib/mixins/returnable/index.js +2 -2
- package/lib/mixins/returnable/index.js.map +1 -1
- package/lib/mixins/rippleable/index.js +11 -9
- package/lib/mixins/rippleable/index.js.map +1 -1
- package/lib/mixins/roundable/index.js +2 -2
- package/lib/mixins/roundable/index.js.map +1 -1
- package/lib/mixins/routable/index.js +24 -20
- package/lib/mixins/routable/index.js.map +1 -1
- package/lib/mixins/scrollable/index.js +2 -2
- package/lib/mixins/scrollable/index.js.map +1 -1
- package/lib/mixins/selectable/index.js +23 -17
- package/lib/mixins/selectable/index.js.map +1 -1
- package/lib/mixins/sizeable/index.js +2 -2
- package/lib/mixins/sizeable/index.js.map +1 -1
- package/lib/mixins/ssr-bootable/index.js +2 -2
- package/lib/mixins/ssr-bootable/index.js.map +1 -1
- package/lib/mixins/stackable/index.js +2 -2
- package/lib/mixins/stackable/index.js.map +1 -1
- package/lib/mixins/themeable/index.js +8 -5
- package/lib/mixins/themeable/index.js.map +1 -1
- package/lib/mixins/toggleable/index.js +7 -3
- package/lib/mixins/toggleable/index.js.map +1 -1
- package/lib/mixins/transitionable/index.js +2 -2
- package/lib/mixins/transitionable/index.js.map +1 -1
- package/lib/mixins/translatable/index.js +2 -2
- package/lib/mixins/translatable/index.js.map +1 -1
- package/lib/mixins/validatable/index.js +1 -1
- package/lib/mixins/validatable/index.js.map +1 -1
- package/lib/services/goto/util.js.map +1 -1
- package/lib/services/theme/index.js +11 -7
- package/lib/services/theme/index.js.map +1 -1
- package/lib/util/helpers.js +16 -28
- package/lib/util/helpers.js.map +1 -1
- package/lib/util/mergeData.js +1 -1
- package/lib/util/mergeData.js.map +1 -1
- package/lib/util/mixins.js +4 -9
- package/lib/util/mixins.js.map +1 -1
- package/lib/vuetify.js +19 -0
- package/lib/vuetify.js.map +1 -0
- package/package.json +9 -8
- package/src/components/VAlert/VAlert.ts +50 -42
- package/src/components/VApp/VApp.ts +9 -11
- package/src/components/VAppBar/VAppBar.ts +10 -11
- package/src/components/VAppBar/VAppBarNavIcon.ts +11 -9
- package/src/components/VAppBar/VAppBarTitle.ts +3 -5
- package/src/components/VAutocomplete/VAutocomplete.ts +22 -21
- package/src/components/VAvatar/VAvatar.ts +4 -4
- package/src/components/VBadge/VBadge.ts +25 -21
- package/src/components/VBanner/VBanner.ts +27 -22
- package/src/components/VBanner/__tests__/VBanner.spec.ts +2 -2
- package/src/components/VBottomNavigation/VBottomNavigation.ts +14 -12
- package/src/components/VBottomSheet/VBottomSheet.ts +2 -4
- package/src/components/VBreadcrumbs/VBreadcrumbs.ts +7 -7
- package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +8 -6
- package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +1 -1
- package/src/components/VBtn/VBtn.ts +25 -34
- package/src/components/VBtn/__tests__/VBtn.spec.ts +219 -219
- package/src/components/VBtnToggle/VBtnToggle.ts +2 -2
- package/src/components/VCalendar/VCalendar.ts +28 -22
- package/src/components/VCalendar/VCalendarCategory.ts +16 -17
- package/src/components/VCalendar/VCalendarDaily.ts +38 -38
- package/src/components/VCalendar/VCalendarMonthly.ts +1 -3
- package/src/components/VCalendar/VCalendarWeekly.ts +29 -29
- package/src/components/VCalendar/mixins/calendar-with-events.ts +21 -23
- package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -3
- package/src/components/VCalendar/mixins/times.ts +2 -2
- package/src/components/VCard/VCard.ts +13 -12
- package/src/components/VCarousel/VCarousel.ts +37 -29
- package/src/components/VCarousel/VCarouselItem.ts +19 -19
- package/src/components/VCheckbox/VCheckbox.ts +10 -10
- package/src/components/VCheckbox/VSimpleCheckbox.ts +22 -23
- package/src/components/VChip/VChip.ts +41 -43
- package/src/components/VChipGroup/VChipGroup.ts +2 -2
- package/src/components/VColorPicker/VColorPicker.ts +29 -22
- package/src/components/VColorPicker/VColorPickerCanvas.ts +7 -8
- package/src/components/VColorPicker/VColorPickerEdit.ts +23 -18
- package/src/components/VColorPicker/VColorPickerPreview.ts +40 -30
- package/src/components/VColorPicker/VColorPickerSwatches.ts +14 -13
- package/src/components/VCombobox/VCombobox.ts +21 -21
- package/src/components/VContent/VContent.ts +4 -7
- package/src/components/VCounter/VCounter.ts +5 -5
- package/src/components/VData/VData.ts +3 -3
- package/src/components/VData/__tests__/VData.spec.ts +9 -9
- package/src/components/VDataIterator/VDataFooter.ts +48 -36
- package/src/components/VDataIterator/VDataIterator.ts +20 -16
- package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +4 -4
- package/src/components/VDataTable/MobileRow.ts +12 -12
- package/src/components/VDataTable/Row.ts +9 -8
- package/src/components/VDataTable/RowGroup.ts +6 -8
- package/src/components/VDataTable/VDataTable.ts +180 -148
- package/src/components/VDataTable/VDataTableHeader.ts +8 -9
- package/src/components/VDataTable/VDataTableHeaderDesktop.ts +25 -20
- package/src/components/VDataTable/VDataTableHeaderMobile.ts +9 -10
- package/src/components/VDataTable/VEditDialog.ts +39 -31
- package/src/components/VDataTable/VSimpleTable.ts +6 -6
- package/src/components/VDataTable/VVirtualTable.ts +12 -13
- package/src/components/VDataTable/__tests__/MobileRow.spec.ts +2 -2
- package/src/components/VDataTable/__tests__/Row.spec.ts +2 -2
- package/src/components/VDataTable/__tests__/VDataTable.spec.ts +992 -997
- package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +2 -2
- package/src/components/VDataTable/mixins/__tests__/header.spec.ts +2 -2
- package/src/components/VDataTable/mixins/header.ts +18 -12
- package/src/components/VDatePicker/VDatePicker.ts +108 -92
- package/src/components/VDatePicker/VDatePickerDateTable.ts +12 -12
- package/src/components/VDatePicker/VDatePickerHeader.ts +36 -24
- package/src/components/VDatePicker/VDatePickerMonthTable.ts +3 -3
- package/src/components/VDatePicker/VDatePickerTitle.ts +15 -11
- package/src/components/VDatePicker/VDatePickerYears.ts +3 -3
- package/src/components/VDatePicker/mixins/date-picker-table.ts +32 -29
- package/src/components/VDatePicker/util/eventHelpers.ts +3 -3
- package/src/components/VDialog/VDialog.ts +42 -38
- package/src/components/VDialog/__tests__/VDialog.spec.ts +10 -10
- package/src/components/VDivider/VDivider.ts +11 -12
- package/src/components/VExpansionPanel/VExpansionPanel.ts +7 -8
- package/src/components/VExpansionPanel/VExpansionPanelContent.ts +8 -10
- package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +33 -33
- package/src/components/VExpansionPanel/VExpansionPanels.ts +2 -4
- package/src/components/VFileInput/VFileInput.ts +35 -31
- package/src/components/VFooter/VFooter.ts +4 -5
- package/src/components/VForm/VForm.ts +10 -7
- package/src/components/VGrid/VCol.ts +4 -9
- package/src/components/VGrid/VContainer.ts +15 -18
- package/src/components/VGrid/VRow.ts +8 -8
- package/src/components/VGrid/grid.ts +3 -7
- package/src/components/VHover/VHover.ts +3 -3
- package/src/components/VHover/__tests__/VHover.spec.ts +1 -1
- package/src/components/VIcon/VIcon.ts +39 -64
- package/src/components/VImg/VImg.ts +40 -44
- package/src/components/VInput/VInput.ts +61 -51
- package/src/components/VItemGroup/VItem.ts +5 -5
- package/src/components/VItemGroup/VItemGroup.ts +2 -6
- package/src/components/VLabel/VLabel.ts +13 -12
- package/src/components/VLazy/VLazy.ts +4 -5
- package/src/components/VList/VList.ts +11 -10
- package/src/components/VList/VListGroup.ts +28 -22
- package/src/components/VList/VListItem.ts +24 -31
- package/src/components/VList/VListItemAction.ts +5 -8
- package/src/components/VList/VListItemAvatar.ts +10 -8
- package/src/components/VList/VListItemGroup.ts +2 -2
- package/src/components/VList/VListItemIcon.ts +5 -7
- package/src/components/VList/__tests__/VListItemAction.spec.ts +1 -1
- package/src/components/VMain/VMain.ts +5 -7
- package/src/components/VMenu/VMenu.ts +60 -47
- package/src/components/VMenu/__tests__/VMenu.spec.ts +20 -20
- package/src/components/VMessages/VMessages.ts +12 -9
- package/src/components/VMessages/__tests__/VMessages.spec.ts +1 -1
- package/src/components/VNavigationDrawer/VNavigationDrawer.ts +49 -51
- package/src/components/VOtpInput/VOtpInput.ts +46 -39
- package/src/components/VOverflowBtn/VOverflowBtn.ts +9 -12
- package/src/components/VOverlay/VOverlay.ts +8 -8
- package/src/components/VPagination/VPagination.ts +37 -33
- package/src/components/VParallax/VParallax.ts +12 -11
- package/src/components/VPicker/VPicker.ts +20 -15
- package/src/components/VProgressCircular/VProgressCircular.ts +35 -32
- package/src/components/VProgressLinear/VProgressLinear.ts +32 -35
- package/src/components/VRadioGroup/VRadio.ts +31 -23
- package/src/components/VRadioGroup/VRadioGroup.ts +16 -18
- package/src/components/VRangeSlider/VRangeSlider.ts +7 -9
- package/src/components/VRating/VRating.ts +33 -35
- package/src/components/VRating/__tests__/VRating.spec.ts +64 -70
- package/src/components/VResponsive/VResponsive.ts +10 -10
- package/src/components/VSelect/VSelect.ts +117 -101
- package/src/components/VSelect/VSelectList.ts +59 -40
- package/src/components/VSheet/VSheet.ts +12 -14
- package/src/components/VSkeletonLoader/VSkeletonLoader.ts +20 -15
- package/src/components/VSlideGroup/VSlideGroup.ts +50 -44
- package/src/components/VSlideGroup/__tests__/VSlideGroup.spec.ts +4 -4
- package/src/components/VSlider/VSlider.ts +75 -62
- package/src/components/VSnackbar/VSnackbar.ts +29 -26
- package/src/components/VSparkline/VSparkline.ts +17 -18
- package/src/components/VSpeedDial/VSpeedDial.ts +9 -8
- package/src/components/VStepper/VStepper.ts +5 -5
- package/src/components/VStepper/VStepperContent.ts +6 -14
- package/src/components/VStepper/VStepperStep.ts +8 -9
- package/src/components/VSubheader/VSubheader.ts +6 -6
- package/src/components/VSubheader/__tests__/VSubheader.spec.ts +1 -1
- package/src/components/VSwitch/VSwitch.ts +27 -29
- package/src/components/VSystemBar/VSystemBar.ts +2 -3
- package/src/components/VTabs/VTab.ts +14 -14
- package/src/components/VTabs/VTabItem.ts +4 -6
- package/src/components/VTabs/VTabs.ts +43 -38
- package/src/components/VTabs/VTabsBar.ts +9 -7
- package/src/components/VTabs/VTabsItems.ts +3 -5
- package/src/components/VTabs/VTabsSlider.ts +2 -3
- package/src/components/VTabs/__tests__/VTabs.spec.ts +1 -1
- package/src/components/VTextField/VTextField.ts +68 -62
- package/src/components/VTextarea/VTextarea.ts +5 -6
- package/src/components/VThemeProvider/VThemeProvider.ts +4 -5
- package/src/components/VTimePicker/VTimePicker.ts +36 -32
- package/src/components/VTimePicker/VTimePickerClock.ts +7 -8
- package/src/components/VTimePicker/VTimePickerTitle.ts +7 -8
- package/src/components/VTimeline/VTimeline.ts +3 -3
- package/src/components/VTimeline/VTimelineItem.ts +25 -22
- package/src/components/VToolbar/VToolbar.ts +15 -17
- package/src/components/VTooltip/VTooltip.ts +12 -9
- package/src/components/VTreeview/VTreeview.ts +5 -6
- package/src/components/VTreeview/VTreeviewNode.ts +103 -88
- package/src/components/VVirtualScroll/VVirtualScroll.ts +7 -10
- package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +1 -1
- package/src/components/VWindow/VWindow.sass +5 -5
- package/src/components/VWindow/VWindow.ts +33 -31
- package/src/components/VWindow/VWindowItem.ts +32 -27
- package/src/components/index.ts +10 -0
- package/src/components/transitions/createTransition.ts +25 -23
- package/src/directives/click-outside/index.ts +6 -6
- package/src/directives/intersect/index.ts +6 -6
- package/src/directives/ripple/index.ts +6 -9
- package/src/directives/touch/index.ts +6 -9
- package/src/framework.ts +0 -2
- package/src/helpers.ts +18 -0
- package/src/index.ts +3 -19
- package/src/install.ts +12 -39
- package/src/mixins/activatable/__tests__/activatable.spec.ts +1 -1
- package/src/mixins/activatable/index.ts +11 -19
- package/src/mixins/binds-attrs/index.ts +3 -3
- package/src/mixins/bootable/index.ts +4 -5
- package/src/mixins/button-group/index.ts +3 -5
- package/src/mixins/colorable/index.ts +6 -49
- package/src/mixins/comparable/index.ts +2 -2
- package/src/mixins/delayable/index.ts +2 -2
- package/src/mixins/dependent/index.ts +3 -11
- package/src/mixins/detachable/__tests__/detachable.spec.ts +3 -3
- package/src/mixins/detachable/index.ts +2 -2
- package/src/mixins/elevatable/index.ts +2 -2
- package/src/mixins/filterable/index.ts +2 -2
- package/src/mixins/groupable/index.ts +9 -13
- package/src/mixins/intersectable/index.ts +5 -8
- package/src/mixins/loadable/index.ts +12 -10
- package/src/mixins/localable/index.ts +2 -2
- package/src/mixins/measurable/index.ts +2 -2
- package/src/mixins/menuable/index.ts +5 -8
- package/src/mixins/mobile/index.ts +12 -10
- package/src/mixins/mouse/index.ts +4 -9
- package/src/mixins/overlayable/index.ts +16 -44
- package/src/mixins/picker/index.ts +19 -17
- package/src/mixins/picker-button/index.ts +7 -6
- package/src/mixins/positionable/index.ts +2 -2
- package/src/mixins/proxyable/index.ts +5 -5
- package/src/mixins/registrable/index.ts +3 -3
- package/src/mixins/returnable/index.ts +2 -2
- package/src/mixins/rippleable/index.ts +9 -16
- package/src/mixins/roundable/index.ts +2 -2
- package/src/mixins/routable/__tests__/routable.spec.ts +3 -6
- package/src/mixins/routable/index.ts +23 -24
- package/src/mixins/scrollable/index.ts +2 -2
- package/src/mixins/selectable/index.ts +23 -18
- package/src/mixins/sizeable/index.ts +2 -2
- package/src/mixins/ssr-bootable/index.ts +2 -2
- package/src/mixins/stackable/index.ts +2 -2
- package/src/mixins/themeable/index.ts +10 -6
- package/src/mixins/toggleable/index.ts +6 -3
- package/src/mixins/transitionable/index.ts +2 -2
- package/src/mixins/translatable/index.ts +2 -2
- package/src/mixins/validatable/index.ts +1 -1
- package/src/services/goto/util.ts +0 -1
- package/src/services/theme/index.ts +7 -12
- package/src/util/helpers.ts +12 -30
- package/src/util/mergeData.ts +1 -1
- package/src/util/mixins.ts +20 -10
- package/src/vuetify.ts +19 -0
- package/es5/util/make-directive-activatable.js +0 -74
- package/es5/util/make-directive-activatable.js.map +0 -1
- package/lib/util/make-directive-activatable.js +0 -49
- package/lib/util/make-directive-activatable.js.map +0 -1
- package/src/util/make-directive-activatable.ts +0 -55
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VGrid/VRow.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;;;;;AAEA;AACA,IAAM,WAAW,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,CAApB;AAEA,IAAM,SAAS,GAAG,CAAC,OAAD,EAAU,KAAV,EAAiB,QAAjB,CAAlB;;AAEA,SAAS,SAAT,CAAoB,MAApB,EAAoC,GAApC,EAA0D;AACxD,SAAO,WAAW,CAAC,MAAZ,CAAmB,UAAC,KAAD,EAAQ,GAAR,EAAe;AACvC,IAAA,KAAK,CAAC,MAAM,GAAG,yBAAW,GAAX,CAAV,CAAL,GAAkC,GAAG,EAArC;AACA,WAAO,KAAP;AACD,GAHM,EAGJ,EAHI,CAAP;AAID;;AAED,IAAM,cAAc,GAAG,SAAjB,cAAiB,CAAC,GAAD;AAAA,SAAc,UAAI,SAAJ,GAAe,UAAf,EAA2B,SAA3B,GAAsC,QAAtC,CAA+C,GAA/C,CAAd;AAAA,CAAvB;;AACA,IAAM,UAAU,GAAG,SAAS,CAAC,OAAD,EAAU;AAAA,SAAO;AAC3C,IAAA,IAAI,EAAE,MADqC;AAE3C,IAAA,OAAO,EAAE,IAFkC;AAG3C,IAAA,SAAS,EAAE;AAHgC,GAAP;AAAA,CAAV,CAA5B;;AAMA,IAAM,gBAAgB,GAAG,SAAnB,gBAAmB,CAAC,GAAD;AAAA,SAAc,UAAI,SAAJ,GAAe,eAAf,EAAgC,cAAhC,GAAgD,QAAhD,CAAyD,GAAzD,CAAd;AAAA,CAAzB;;AACA,IAAM,YAAY,GAAG,SAAS,CAAC,SAAD,EAAY;AAAA,SAAO;AAC/C,IAAA,IAAI,EAAE,MADyC;AAE/C,IAAA,OAAO,EAAE,IAFsC;AAG/C,IAAA,SAAS,EAAE;AAHoC,GAAP;AAAA,CAAZ,CAA9B;;AAMA,IAAM,qBAAqB,GAAG,SAAxB,qBAAwB,CAAC,GAAD;AAAA,SAAc,UAAI,SAAJ,GAAe,eAAf,EAAgC,cAAhC,EAAgD,SAAhD,GAA2D,QAA3D,CAAoE,GAApE,CAAd;AAAA,CAA9B;;AACA,IAAM,iBAAiB,GAAG,SAAS,CAAC,cAAD,EAAiB;AAAA,SAAO;AACzD,IAAA,IAAI,EAAE,MADmD;AAEzD,IAAA,OAAO,EAAE,IAFgD;AAGzD,IAAA,SAAS,EAAE;AAH8C,GAAP;AAAA,CAAjB,CAAnC;AAMA,IAAM,OAAO,GAAG;AACd,EAAA,KAAK,EAAE,MAAM,CAAC,IAAP,CAAY,UAAZ,CADO;AAEd,EAAA,OAAO,EAAE,MAAM,CAAC,IAAP,CAAY,YAAZ,CAFK;AAGd,EAAA,YAAY,EAAE,MAAM,CAAC,IAAP,CAAY,iBAAZ;AAHA,CAAhB;AAMA,IAAM,QAAQ,GAAG;AACf,EAAA,KAAK,EAAE,OADQ;AAEf,EAAA,OAAO,EAAE,SAFM;AAGf,EAAA,YAAY,EAAE;AAHC,CAAjB;;AAMA,SAAS,eAAT,CAA0B,IAA1B,EAAsD,IAAtD,EAAoE,GAApE,EAA+E;AAC7E,MAAI,SAAS,GAAG,QAAQ,CAAC,IAAD,CAAxB;;AACA,MAAI,GAAG,IAAI,IAAX,EAAiB;AACf,WAAO,SAAP;AACD;;AACD,MAAI,IAAJ,EAAU;AACR;AACA,QAAM,UAAU,GAAG,IAAI,CAAC,OAAL,CAAa,IAAb,EAAmB,EAAnB,CAAnB;AACA,IAAA,SAAS,eAAQ,UAAR,CAAT;AACD,GAT4E,CAU7E;;;AACA,EAAA,SAAS,eAAQ,GAAR,CAAT;AACA,SAAO,SAAS,CAAC,WAAV,EAAP;AACD;;AAED,IAAM,KAAK,GAAG,IAAI,GAAJ,EAAd;;eAEe,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VGrid/VRow.ts"],"names":[],"mappings":"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","sourcesContent":["import './VGrid.sass'\n\nimport Vue, { PropOptions } from 'vue'\nimport mergeData from '../../util/mergeData'\nimport { upperFirst } from '../../util/helpers'\n\n// no xs\nconst breakpoints = ['sm', 'md', 'lg', 'xl']\n\nconst ALIGNMENT = ['start', 'end', 'center']\n\nfunction makeProps (prefix: string, def: () => PropOptions) {\n return breakpoints.reduce((props, val) => {\n props[prefix + upperFirst(val)] = def()\n return props\n }, {} as Dictionary<PropOptions>)\n}\n\nconst alignValidator = (str: any) => [...ALIGNMENT, 'baseline', 'stretch'].includes(str)\nconst alignProps = makeProps('align', () => ({\n type: String,\n default: null,\n validator: alignValidator,\n}))\n\nconst justifyValidator = (str: any) => [...ALIGNMENT, 'space-between', 'space-around'].includes(str)\nconst justifyProps = makeProps('justify', () => ({\n type: String,\n default: null,\n validator: justifyValidator,\n}))\n\nconst alignContentValidator = (str: any) => [...ALIGNMENT, 'space-between', 'space-around', 'stretch'].includes(str)\nconst alignContentProps = makeProps('alignContent', () => ({\n type: String,\n default: null,\n validator: alignContentValidator,\n}))\n\nconst propMap = {\n align: Object.keys(alignProps),\n justify: Object.keys(justifyProps),\n alignContent: Object.keys(alignContentProps),\n}\n\nconst classMap = {\n align: 'align',\n justify: 'justify',\n alignContent: 'align-content',\n}\n\nfunction breakpointClass (type: keyof typeof propMap, prop: string, val: string) {\n let className = classMap[type]\n if (val == null) {\n return undefined\n }\n if (prop) {\n // alignSm -> Sm\n const breakpoint = prop.replace(type, '')\n className += `-${breakpoint}`\n }\n // .align-items-sm-center\n className += `-${val}`\n return className.toLowerCase()\n}\n\nconst cache = new Map<string, any[]>()\n\nexport default Vue.extend({\n name: 'v-row',\n functional: true,\n props: {\n tag: {\n type: String,\n default: 'div',\n },\n dense: Boolean,\n noGutters: Boolean,\n align: {\n type: String,\n default: null,\n validator: alignValidator,\n },\n ...alignProps,\n justify: {\n type: String,\n default: null,\n validator: justifyValidator,\n },\n ...justifyProps,\n alignContent: {\n type: String,\n default: null,\n validator: alignContentValidator,\n },\n ...alignContentProps,\n },\n render (h, { props, data, children }) {\n // Super-fast memoization based on props, 5x faster than JSON.stringify\n let cacheKey = ''\n for (const prop in props) {\n cacheKey += String((props as any)[prop])\n }\n let classList = cache.get(cacheKey)\n\n if (!classList) {\n classList = []\n // Loop through `align`, `justify`, `alignContent` breakpoint props\n let type: keyof typeof propMap\n for (type in propMap) {\n propMap[type].forEach(prop => {\n const value: string = (props as any)[prop]\n const className = breakpointClass(type, prop, value)\n if (className) classList!.push(className)\n })\n }\n\n classList.push({\n 'no-gutters': props.noGutters,\n 'row--dense': props.dense,\n [`align-${props.align}`]: props.align,\n [`justify-${props.justify}`]: props.justify,\n [`align-content-${props.alignContent}`]: props.alignContent,\n })\n\n cache.set(cacheKey, classList)\n }\n\n return h(\n props.tag,\n mergeData(data, {\n staticClass: 'row',\n class: classList,\n }),\n children\n )\n },\n})\n"],"sourceRoot":"","file":"VRow.js"}
|
|
@@ -5,12 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = VGrid;
|
|
7
7
|
|
|
8
|
-
var _vue = require("vue");
|
|
8
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
11
|
|
|
10
12
|
// Types
|
|
11
13
|
function VGrid(name) {
|
|
12
14
|
/* @vue/component */
|
|
13
|
-
return
|
|
15
|
+
return _vue.default.extend({
|
|
14
16
|
name: "v-".concat(name),
|
|
15
17
|
functional: true,
|
|
16
18
|
props: {
|
|
@@ -20,10 +22,10 @@ function VGrid(name) {
|
|
|
20
22
|
default: 'div'
|
|
21
23
|
}
|
|
22
24
|
},
|
|
23
|
-
render: function render() {
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
render: function render(h, _ref) {
|
|
26
|
+
var props = _ref.props,
|
|
27
|
+
data = _ref.data,
|
|
28
|
+
children = _ref.children;
|
|
27
29
|
data.staticClass = "".concat(name, " ").concat(data.staticClass || '').trim();
|
|
28
30
|
var attrs = data.attrs;
|
|
29
31
|
|
|
@@ -52,7 +54,7 @@ function VGrid(name) {
|
|
|
52
54
|
data.domProps.id = props.id;
|
|
53
55
|
}
|
|
54
56
|
|
|
55
|
-
return
|
|
57
|
+
return h(props.tag, data, children);
|
|
56
58
|
}
|
|
57
59
|
});
|
|
58
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VGrid/grid.ts"],"names":[],"mappings":";;;;;;;AACA
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VGrid/grid.ts"],"names":[],"mappings":";;;;;;;AACA;;;;AADA;AAGc,SAAU,KAAV,CAAiB,IAAjB,EAA6B;AACzC;AACA,SAAO,aAAI,MAAJ,CAAW;AAChB,IAAA,IAAI,cAAO,IAAP,CADY;AAGhB,IAAA,UAAU,EAAE,IAHI;AAKhB,IAAA,KAAK,EAAE;AACL,MAAA,EAAE,EAAE,MADC;AAEL,MAAA,GAAG,EAAE;AACH,QAAA,IAAI,EAAE,MADH;AAEH,QAAA,OAAO,EAAE;AAFN;AAFA,KALS;AAahB,IAAA,MAbgB,kBAaR,CAbQ,QAaoB;AAAA,UAAvB,KAAuB,QAAvB,KAAuB;AAAA,UAAhB,IAAgB,QAAhB,IAAgB;AAAA,UAAV,QAAU,QAAV,QAAU;AAClC,MAAA,IAAI,CAAC,WAAL,GAAmB,UAAI,IAAJ,cAAY,IAAI,CAAC,WAAL,IAAoB,EAAhC,EAAsC,IAAtC,EAAnB;AADkC,UAG1B,KAH0B,GAGhB,IAHgB,CAG1B,KAH0B;;AAIlC,UAAI,KAAJ,EAAW;AACT;AACA,QAAA,IAAI,CAAC,KAAL,GAAa,EAAb;AACA,YAAM,OAAO,GAAG,MAAM,CAAC,IAAP,CAAY,KAAZ,EAAmB,MAAnB,CAA0B,UAAA,GAAG,EAAG;AAC9C;AACA;AACA,cAAI,GAAG,KAAK,MAAZ,EAAoB,OAAO,KAAP;AAEpB,cAAM,KAAK,GAAG,KAAK,CAAC,GAAD,CAAnB,CAL8C,CAO9C;AACA;;AACA,cAAI,GAAG,CAAC,UAAJ,CAAe,OAAf,CAAJ,EAA6B;AAC3B,YAAA,IAAI,CAAC,KAAL,CAAY,GAAZ,IAAmB,KAAnB;AACA,mBAAO,KAAP;AACD;;AAED,iBAAO,KAAK,IAAI,OAAO,KAAP,KAAiB,QAAjC;AACD,SAfe,CAAhB;AAiBA,YAAI,OAAO,CAAC,MAAZ,EAAoB,IAAI,CAAC,WAAL,eAAwB,OAAO,CAAC,IAAR,CAAa,GAAb,CAAxB;AACrB;;AAED,UAAI,KAAK,CAAC,EAAV,EAAc;AACZ,QAAA,IAAI,CAAC,QAAL,GAAgB,IAAI,CAAC,QAAL,IAAiB,EAAjC;AACA,QAAA,IAAI,CAAC,QAAL,CAAc,EAAd,GAAmB,KAAK,CAAC,EAAzB;AACD;;AAED,aAAO,CAAC,CAAC,KAAK,CAAC,GAAP,EAAY,IAAZ,EAAkB,QAAlB,CAAR;AACD;AA9Ce,GAAX,CAAP;AAgDD","sourcesContent":["// Types\nimport Vue, { VNode } from 'vue'\n\nexport default function VGrid (name: string) {\n /* @vue/component */\n return Vue.extend({\n name: `v-${name}`,\n\n functional: true,\n\n props: {\n id: String,\n tag: {\n type: String,\n default: 'div',\n },\n },\n\n render (h, { props, data, children }): VNode {\n data.staticClass = (`${name} ${data.staticClass || ''}`).trim()\n\n const { attrs } = data\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {}\n const classes = Object.keys(attrs).filter(key => {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === 'slot') return false\n\n const value = attrs[key]\n\n // add back data attributes like data-test=\"foo\" but do not\n // add them as classes\n if (key.startsWith('data-')) {\n data.attrs![key] = value\n return false\n }\n\n return value || typeof value === 'string'\n })\n\n if (classes.length) data.staticClass += ` ${classes.join(' ')}`\n }\n\n if (props.id) {\n data.domProps = data.domProps || {}\n data.domProps.id = props.id\n }\n\n return h(props.tag, data, children)\n },\n })\n}\n"],"sourceRoot":"","file":"grid.js"}
|
|
@@ -40,7 +40,7 @@ var _default = (0, _mixins.default)(_delayable.default, _toggleable.default
|
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
render: function render() {
|
|
43
|
-
if (!this.$
|
|
43
|
+
if (!this.$scopedSlots.default && this.value === undefined) {
|
|
44
44
|
(0, _console.consoleWarn)('v-hover is missing a default scopedSlot or bound value', this);
|
|
45
45
|
return null;
|
|
46
46
|
}
|
|
@@ -48,8 +48,8 @@ var _default = (0, _mixins.default)(_delayable.default, _toggleable.default
|
|
|
48
48
|
var element;
|
|
49
49
|
/* istanbul ignore else */
|
|
50
50
|
|
|
51
|
-
if (this.$
|
|
52
|
-
element = this.$
|
|
51
|
+
if (this.$scopedSlots.default) {
|
|
52
|
+
element = this.$scopedSlots.default({
|
|
53
53
|
hover: this.isActive
|
|
54
54
|
});
|
|
55
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VHover/VHover.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AAGA;;AACA;;;;AANA;AAIA;eAOe,qBACb,kBADa,EAEb;AACA;AAHa,EAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,SADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE;AACR,MAAA,IAAI,EAAE,OADE;AAER,MAAA,OAAO,EAAE;AAFD,KADL;AAKL,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,OADD;AAEL,MAAA,OAAO,EAAE;AAFJ;AALF,GAHA;AAcP,EAAA,OAAO,EAAE;AACP,IAAA,YADO,0BACK;AACV,WAAK,QAAL,CAAc,MAAd;AACD,KAHM;AAIP,IAAA,YAJO,0BAIK;AACV,WAAK,QAAL,CAAc,OAAd;AACD;AANM,GAdF;AAuBP,EAAA,MAvBO,oBAuBD;AACJ,QAAI,CAAC,KAAK,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VHover/VHover.ts"],"names":[],"mappings":";;;;;;;AACA;;AACA;;AAGA;;AACA;;;;AANA;AAIA;eAOe,qBACb,kBADa,EAEb;AACA;AAHa,EAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,SADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE;AACR,MAAA,IAAI,EAAE,OADE;AAER,MAAA,OAAO,EAAE;AAFD,KADL;AAKL,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,OADD;AAEL,MAAA,OAAO,EAAE;AAFJ;AALF,GAHA;AAcP,EAAA,OAAO,EAAE;AACP,IAAA,YADO,0BACK;AACV,WAAK,QAAL,CAAc,MAAd;AACD,KAHM;AAIP,IAAA,YAJO,0BAIK;AACV,WAAK,QAAL,CAAc,OAAd;AACD;AANM,GAdF;AAuBP,EAAA,MAvBO,oBAuBD;AACJ,QAAI,CAAC,KAAK,YAAL,CAAkB,OAAnB,IAA8B,KAAK,KAAL,KAAe,SAAjD,EAA4D;AAC1D,gCAAY,wDAAZ,EAAsE,IAAtE;AAEA,aAAO,IAAP;AACD;;AAED,QAAI,OAAJ;AAEA;;AACA,QAAI,KAAK,YAAL,CAAkB,OAAtB,EAA+B;AAC7B,MAAA,OAAO,GAAG,KAAK,YAAL,CAAkB,OAAlB,CAA0B;AAAE,QAAA,KAAK,EAAE,KAAK;AAAd,OAA1B,CAAV;AACD;;AAED,QAAI,KAAK,CAAC,OAAN,CAAc,OAAd,KAA0B,OAAO,CAAC,MAAR,KAAmB,CAAjD,EAAoD;AAClD,MAAA,OAAO,GAAG,OAAO,CAAC,CAAD,CAAjB;AACD;;AAED,QAAI,CAAC,OAAD,IAAY,KAAK,CAAC,OAAN,CAAc,OAAd,CAAZ,IAAsC,CAAC,OAAO,CAAC,GAAnD,EAAwD;AACtD,gCAAY,8CAAZ,EAA4D,IAA5D;AAEA,aAAO,OAAP;AACD;;AAED,QAAI,CAAC,KAAK,QAAV,EAAoB;AAClB,MAAA,OAAO,CAAC,IAAR,GAAe,OAAO,CAAC,IAAR,IAAgB,EAA/B;;AACA,WAAK,EAAL,CAAQ,OAAO,CAAC,IAAhB,EAAsB;AACpB,QAAA,UAAU,EAAE,KAAK,YADG;AAEpB,QAAA,UAAU,EAAE,KAAK;AAFG,OAAtB;AAID;;AAED,WAAO,OAAP;AACD;AAxDM,CAJM,C","sourcesContent":["// Mixins\nimport Delayable from '../../mixins/delayable'\nimport Toggleable from '../../mixins/toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport { VNode, ScopedSlotChildren } from 'vue/types/vnode'\n\nexport default mixins(\n Delayable,\n Toggleable\n /* @vue/component */\n).extend({\n name: 'v-hover',\n\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n value: {\n type: Boolean,\n default: undefined,\n },\n },\n\n methods: {\n onMouseEnter () {\n this.runDelay('open')\n },\n onMouseLeave () {\n this.runDelay('close')\n },\n },\n\n render (): VNode {\n if (!this.$scopedSlots.default && this.value === undefined) {\n consoleWarn('v-hover is missing a default scopedSlot or bound value', this)\n\n return null as any\n }\n\n let element: VNode | ScopedSlotChildren\n\n /* istanbul ignore else */\n if (this.$scopedSlots.default) {\n element = this.$scopedSlots.default({ hover: this.isActive })\n }\n\n if (Array.isArray(element) && element.length === 1) {\n element = element[0]\n }\n\n if (!element || Array.isArray(element) || !element.tag) {\n consoleWarn('v-hover should only contain a single element', this)\n\n return element as any\n }\n\n if (!this.disabled) {\n element.data = element.data || {}\n this._g(element.data, {\n mouseenter: this.onMouseEnter,\n mouseleave: this.onMouseLeave,\n })\n }\n\n return element\n },\n})\n"],"sourceRoot":"","file":"VHover.js"}
|
|
@@ -17,7 +17,7 @@ var _themeable = _interopRequireDefault(require("../../mixins/themeable"));
|
|
|
17
17
|
|
|
18
18
|
var _helpers = require("../../util/helpers");
|
|
19
19
|
|
|
20
|
-
var _vue = require("vue");
|
|
20
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
21
21
|
|
|
22
22
|
var _mixins = _interopRequireDefault(require("../../util/mixins"));
|
|
23
23
|
|
|
@@ -71,18 +71,13 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
71
71
|
return false;
|
|
72
72
|
},
|
|
73
73
|
hasClickListener: function hasClickListener() {
|
|
74
|
-
return Boolean(this.listeners$.
|
|
74
|
+
return Boolean(this.listeners$.click || this.listeners$['!click']);
|
|
75
75
|
}
|
|
76
76
|
},
|
|
77
77
|
methods: {
|
|
78
78
|
getIcon: function getIcon() {
|
|
79
79
|
var iconName = '';
|
|
80
|
-
|
|
81
|
-
if (this.$slots.default) {
|
|
82
|
-
var children = this.$slots.default()[0].children;
|
|
83
|
-
if (typeof children === 'string') iconName = this.$slots.default()[0].children.trim();
|
|
84
|
-
}
|
|
85
|
-
|
|
80
|
+
if (this.$slots.default) iconName = this.$slots.default[0].text.trim();
|
|
86
81
|
return (0, _helpers.remapInternalIcon)(this, iconName);
|
|
87
82
|
},
|
|
88
83
|
getSize: function getSize() {
|
|
@@ -100,25 +95,22 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
100
95
|
},
|
|
101
96
|
// Component data for both font icon and SVG wrapper span
|
|
102
97
|
getDefaultData: function getDefaultData() {
|
|
103
|
-
|
|
98
|
+
return {
|
|
99
|
+
staticClass: 'v-icon notranslate',
|
|
104
100
|
class: {
|
|
105
101
|
'v-icon--disabled': this.disabled,
|
|
106
102
|
'v-icon--left': this.left,
|
|
107
103
|
'v-icon--link': this.hasClickListener,
|
|
108
104
|
'v-icon--right': this.right,
|
|
109
|
-
'v-icon--dense': this.dense
|
|
110
|
-
'v-icon': true,
|
|
111
|
-
'notranslate': true
|
|
105
|
+
'v-icon--dense': this.dense
|
|
112
106
|
},
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
return data;
|
|
107
|
+
attrs: _objectSpread({
|
|
108
|
+
'aria-hidden': !this.hasClickListener,
|
|
109
|
+
disabled: this.hasClickListener && this.disabled,
|
|
110
|
+
type: this.hasClickListener ? 'button' : undefined
|
|
111
|
+
}, this.attrs$),
|
|
112
|
+
on: this.listeners$
|
|
113
|
+
};
|
|
122
114
|
},
|
|
123
115
|
getSvgWrapperData: function getSvgWrapperData() {
|
|
124
116
|
var fontSize = this.getSize();
|
|
@@ -138,7 +130,7 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
138
130
|
data.class = _objectSpread(_objectSpread({}, data.class), this.themeClasses);
|
|
139
131
|
this.setTextColor(this.color, data);
|
|
140
132
|
},
|
|
141
|
-
renderFontIcon: function renderFontIcon(icon) {
|
|
133
|
+
renderFontIcon: function renderFontIcon(icon, h) {
|
|
142
134
|
var newChildren = [];
|
|
143
135
|
var data = this.getDefaultData();
|
|
144
136
|
var iconType = 'material-icons'; // Material Icon delimiter is _
|
|
@@ -155,13 +147,6 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
155
147
|
if (isFontAwesome5(iconType)) iconType = '';
|
|
156
148
|
}
|
|
157
149
|
|
|
158
|
-
if (typeof data.class === 'string') {
|
|
159
|
-
data.class = data.class.split(' ').reduce(function (classes, className) {
|
|
160
|
-
classes[className] = true;
|
|
161
|
-
return classes;
|
|
162
|
-
}, {});
|
|
163
|
-
}
|
|
164
|
-
|
|
165
150
|
data.class[iconType] = true;
|
|
166
151
|
data.class[icon] = !isMaterialIcon;
|
|
167
152
|
var fontSize = this.getSize();
|
|
@@ -169,13 +154,9 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
169
154
|
fontSize: fontSize
|
|
170
155
|
};
|
|
171
156
|
this.applyColors(data);
|
|
172
|
-
return
|
|
173
|
-
default: function _default() {
|
|
174
|
-
return newChildren;
|
|
175
|
-
}
|
|
176
|
-
});
|
|
157
|
+
return h(this.hasClickListener ? 'button' : this.tag, data, newChildren);
|
|
177
158
|
},
|
|
178
|
-
renderSvgIcon: function renderSvgIcon(icon) {
|
|
159
|
+
renderSvgIcon: function renderSvgIcon(icon, h) {
|
|
179
160
|
var svgData = {
|
|
180
161
|
class: 'v-icon__svg',
|
|
181
162
|
attrs: {
|
|
@@ -195,13 +176,13 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
195
176
|
};
|
|
196
177
|
}
|
|
197
178
|
|
|
198
|
-
return
|
|
179
|
+
return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [h('svg', svgData, [h('path', {
|
|
199
180
|
attrs: {
|
|
200
181
|
d: icon
|
|
201
182
|
}
|
|
202
183
|
})])]);
|
|
203
184
|
},
|
|
204
|
-
renderSvgIconComponent: function renderSvgIconComponent(icon) {
|
|
185
|
+
renderSvgIconComponent: function renderSvgIconComponent(icon, h) {
|
|
205
186
|
var data = {
|
|
206
187
|
class: {
|
|
207
188
|
'v-icon__component': true
|
|
@@ -221,58 +202,44 @@ var VIcon = (0, _mixins.default)(_bindsAttrs.default, _colorable.default, _sizea
|
|
|
221
202
|
var component = icon.component;
|
|
222
203
|
data.props = icon.props;
|
|
223
204
|
data.nativeOn = data.on;
|
|
224
|
-
return
|
|
225
|
-
default: function _default() {
|
|
226
|
-
return [(0, _vue.h)(component, data)];
|
|
227
|
-
}
|
|
228
|
-
});
|
|
205
|
+
return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [h(component, data)]);
|
|
229
206
|
}
|
|
230
207
|
},
|
|
231
|
-
render: function render() {
|
|
208
|
+
render: function render(h) {
|
|
232
209
|
var icon = this.getIcon();
|
|
233
210
|
|
|
234
211
|
if (typeof icon === 'string') {
|
|
235
212
|
if (isSvgPath(icon)) {
|
|
236
|
-
return this.renderSvgIcon(icon);
|
|
213
|
+
return this.renderSvgIcon(icon, h);
|
|
237
214
|
}
|
|
238
215
|
|
|
239
|
-
return this.renderFontIcon(icon);
|
|
216
|
+
return this.renderFontIcon(icon, h);
|
|
240
217
|
}
|
|
241
218
|
|
|
242
|
-
return this.renderSvgIconComponent(icon);
|
|
219
|
+
return this.renderSvgIconComponent(icon, h);
|
|
243
220
|
}
|
|
244
221
|
});
|
|
245
222
|
|
|
246
|
-
var
|
|
223
|
+
var _default = _vue.default.extend({
|
|
247
224
|
name: 'v-icon',
|
|
248
225
|
$_wrapperFor: VIcon,
|
|
249
226
|
functional: true,
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
var _this = this;
|
|
255
|
-
|
|
256
|
-
var data = _objectSpread({}, this.$attrs); // console.log(children && children[0]?.children)
|
|
227
|
+
render: function render(h, _ref) {
|
|
228
|
+
var data = _ref.data,
|
|
229
|
+
children = _ref.children;
|
|
230
|
+
var iconName = ''; // Support usage of v-text and v-html
|
|
257
231
|
|
|
232
|
+
if (data.domProps) {
|
|
233
|
+
iconName = data.domProps.textContent || data.domProps.innerHTML || iconName; // Remove nodes so it doesn't
|
|
234
|
+
// overwrite our changes
|
|
258
235
|
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
var iconName = ''; // Support usage of v-text and v-html
|
|
264
|
-
// if (data.domProps) {
|
|
265
|
-
|
|
266
|
-
if ((_a = _this.$.vnode.props) === null || _a === void 0 ? void 0 : _a.textContent) {
|
|
267
|
-
iconName = _this.$.vnode.props.textContent || _this.$.vnode.props.innerHTML || iconName;
|
|
268
|
-
}
|
|
236
|
+
delete data.domProps.textContent;
|
|
237
|
+
delete data.domProps.innerHTML;
|
|
238
|
+
}
|
|
269
239
|
|
|
270
|
-
|
|
271
|
-
return iconName ? [iconName] : children && ((_d = children[0]) === null || _d === void 0 ? void 0 : _d.children);
|
|
272
|
-
}
|
|
273
|
-
});
|
|
240
|
+
return h(VIcon, data, iconName ? [iconName] : children);
|
|
274
241
|
}
|
|
275
242
|
});
|
|
276
243
|
|
|
277
|
-
exports.default =
|
|
244
|
+
exports.default = _default;
|
|
278
245
|
//# sourceMappingURL=VIcon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VIcon/VIcon.ts"],"names":[],"mappings":"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","sourcesContent":["import './VIcon.sass'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport Sizeable from '../../mixins/sizeable'\nimport Themeable from '../../mixins/themeable'\n\n// Util\nimport { convertToUnit, keys, remapInternalIcon } from '../../util/helpers'\n\n// Types\nimport { defineComponent, CreateElement, VNode, VNodeChildren, VNodeData, h } from 'vue'\nimport mixins from '../../util/mixins'\nimport { VuetifyIcon, VuetifyIconComponent } from 'vuetify/types/services/icons'\nimport { normalizeAttrs } from '../../util/helpers'\n\nenum SIZE_MAP {\n xSmall = '12px',\n small = '16px',\n default = '24px',\n medium = '28px',\n large = '36px',\n xLarge = '40px'\n}\n\nfunction isFontAwesome5 (iconType: string): boolean {\n return ['fas', 'far', 'fal', 'fab', 'fad', 'fak'].some(val => iconType.includes(val))\n}\n\nfunction isSvgPath (icon: string): boolean {\n return (/^[mzlhvcsqta]\\s*[-+.0-9][^mlhvzcsqta]+/i.test(icon) && /[\\dz]$/i.test(icon) && icon.length > 4)\n}\n\n\nconst VIcon = mixins(\n BindsAttrs,\n Colorable,\n Sizeable,\n Themeable\n /* @vue/component */\n).extend({\n name: 'v-icon',\n\n props: {\n dense: Boolean,\n disabled: Boolean,\n left: Boolean,\n right: Boolean,\n size: [Number, String],\n tag: {\n type: String,\n required: false,\n default: 'i',\n },\n },\n\n computed: {\n medium () {\n return false\n },\n hasClickListener (): boolean {\n return Boolean(\n this.listeners$.onClick\n )\n },\n },\n\n methods: {\n getIcon (): VuetifyIcon {\n let iconName = ''\n if (this.$slots.default) {\n const children = this.$slots.default()[0].children\n if(typeof children === 'string')\n iconName = this.$slots.default()[0].children!.trim()\n\n }\n return remapInternalIcon(this, iconName)\n },\n getSize (): string | undefined {\n const sizes = {\n xSmall: this.xSmall,\n small: this.small,\n medium: this.medium,\n large: this.large,\n xLarge: this.xLarge,\n }\n\n const explicitSize = keys(sizes).find(key => sizes[key])\n\n return (\n (explicitSize && SIZE_MAP[explicitSize]) || convertToUnit(this.size)\n )\n },\n // Component data for both font icon and SVG wrapper span\n getDefaultData (): VNodeData {\n const data = {\n class: {\n 'v-icon--disabled': this.disabled,\n 'v-icon--left': this.left,\n 'v-icon--link': this.hasClickListener,\n 'v-icon--right': this.right,\n 'v-icon--dense': this.dense,\n 'v-icon': true,\n 'notranslate': true\n },\n 'aria-hidden': !this.hasClickListener,\n type: this.hasClickListener ? 'button' : undefined,\n // ...this.attrs$,\n ...this.listeners$,\n }\n\n if(this.hasClickListener && this.disabled) {\n data.disabled = true\n }\n return data\n },\n getSvgWrapperData () {\n const fontSize = this.getSize()\n const wrapperData = {\n ...this.getDefaultData(),\n style: fontSize ? {\n fontSize,\n height: fontSize,\n width: fontSize,\n } : undefined,\n }\n this.applyColors(wrapperData)\n\n return wrapperData\n },\n applyColors (data: VNodeData): void {\n data.class = { ...data.class, ...this.themeClasses }\n this.setTextColor(this.color, data)\n },\n renderFontIcon (icon: string): VNode {\n const newChildren: VNodeChildren = []\n let data = this.getDefaultData()\n\n let iconType = 'material-icons'\n // Material Icon delimiter is _\n // https://material.io/icons/\n const delimiterIndex = icon.indexOf('-')\n const isMaterialIcon = delimiterIndex <= -1\n\n if (isMaterialIcon) {\n // Material icon uses ligatures.\n newChildren.push(icon)\n } else {\n iconType = icon.slice(0, delimiterIndex)\n if (isFontAwesome5(iconType)) iconType = ''\n }\n\n if(typeof data.class === 'string') {\n data.class = data.class.split(' ').reduce((classes, className) => {\n classes[className] = true\n return classes\n }, {})\n }\n\n data.class[iconType] = true\n data.class[icon] = !isMaterialIcon\n\n const fontSize = this.getSize()\n if (fontSize) data.style = { fontSize }\n\n this.applyColors(data)\n\n return h(this.hasClickListener ? 'button' : this.tag, normalizeAttrs(data), {default: () => newChildren})\n },\n renderSvgIcon (icon: string): VNode {\n const svgData: VNodeData = {\n class: 'v-icon__svg',\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: '0 0 24 24',\n role: 'img',\n 'aria-hidden': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n svgData.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [\n h('svg', svgData, [\n h('path', {\n attrs: {\n d: icon,\n },\n }),\n ]),\n ])\n },\n renderSvgIconComponent (\n icon: VuetifyIconComponent\n ): VNode {\n const data: VNodeData = {\n class: {\n 'v-icon__component': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n data.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n this.applyColors(data)\n\n const component = icon.component\n data.props = icon.props\n data.nativeOn = data.on\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), {default: () =>[\n h(component, data),\n ]})\n },\n },\n\n render (): VNode {\n const icon = this.getIcon()\n\n if (typeof icon === 'string') {\n if (isSvgPath(icon)) {\n return this.renderSvgIcon(icon)\n }\n return this.renderFontIcon(icon)\n }\n\n return this.renderSvgIconComponent(icon)\n },\n})\n\nexport default defineComponent({\n name: 'v-icon',\n\n $_wrapperFor: VIcon,\n\n functional: true,\n\n mounted() {\n this.$el.innerHTML = ''\n },\n\n render (): VNode {\n const data = { ...this.$attrs }\n\n\n // console.log(children && children[0]?.children)\n return h(VIcon, data, {\n default: () => {\n let iconName = ''\n\n // Support usage of v-text and v-html\n // if (data.domProps) {\n if(this.$.vnode.props?.textContent) {\n iconName = this.$.vnode.props.textContent ||\n this.$.vnode.props.innerHTML ||\n iconName\n }\n\n const children = this.$slots.default?.()\n\n return iconName ? [iconName] : children && children[0]?.children\n }\n })\n }\n})\n"],"sourceRoot":"","file":"VIcon.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VIcon/VIcon.ts"],"names":[],"mappings":"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","sourcesContent":["import './VIcon.sass'\n\n// Mixins\nimport BindsAttrs from '../../mixins/binds-attrs'\nimport Colorable from '../../mixins/colorable'\nimport Sizeable from '../../mixins/sizeable'\nimport Themeable from '../../mixins/themeable'\n\n// Util\nimport { convertToUnit, keys, remapInternalIcon } from '../../util/helpers'\n\n// Types\nimport Vue, { CreateElement, VNode, VNodeChildren, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport { VuetifyIcon, VuetifyIconComponent } from 'vuetify/types/services/icons'\n\nenum SIZE_MAP {\n xSmall = '12px',\n small = '16px',\n default = '24px',\n medium = '28px',\n large = '36px',\n xLarge = '40px'\n}\n\nfunction isFontAwesome5 (iconType: string): boolean {\n return ['fas', 'far', 'fal', 'fab', 'fad', 'fak'].some(val => iconType.includes(val))\n}\n\nfunction isSvgPath (icon: string): boolean {\n return (/^[mzlhvcsqta]\\s*[-+.0-9][^mlhvzcsqta]+/i.test(icon) && /[\\dz]$/i.test(icon) && icon.length > 4)\n}\n\nconst VIcon = mixins(\n BindsAttrs,\n Colorable,\n Sizeable,\n Themeable\n /* @vue/component */\n).extend({\n name: 'v-icon',\n\n props: {\n dense: Boolean,\n disabled: Boolean,\n left: Boolean,\n right: Boolean,\n size: [Number, String],\n tag: {\n type: String,\n required: false,\n default: 'i',\n },\n },\n\n computed: {\n medium () {\n return false\n },\n hasClickListener (): boolean {\n return Boolean(\n this.listeners$.click || this.listeners$['!click']\n )\n },\n },\n\n methods: {\n getIcon (): VuetifyIcon {\n let iconName = ''\n if (this.$slots.default) iconName = this.$slots.default[0].text!.trim()\n\n return remapInternalIcon(this, iconName)\n },\n getSize (): string | undefined {\n const sizes = {\n xSmall: this.xSmall,\n small: this.small,\n medium: this.medium,\n large: this.large,\n xLarge: this.xLarge,\n }\n\n const explicitSize = keys(sizes).find(key => sizes[key])\n\n return (\n (explicitSize && SIZE_MAP[explicitSize]) || convertToUnit(this.size)\n )\n },\n // Component data for both font icon and SVG wrapper span\n getDefaultData (): VNodeData {\n return {\n staticClass: 'v-icon notranslate',\n class: {\n 'v-icon--disabled': this.disabled,\n 'v-icon--left': this.left,\n 'v-icon--link': this.hasClickListener,\n 'v-icon--right': this.right,\n 'v-icon--dense': this.dense,\n },\n attrs: {\n 'aria-hidden': !this.hasClickListener,\n disabled: this.hasClickListener && this.disabled,\n type: this.hasClickListener ? 'button' : undefined,\n ...this.attrs$,\n },\n on: this.listeners$,\n }\n },\n getSvgWrapperData () {\n const fontSize = this.getSize()\n const wrapperData = {\n ...this.getDefaultData(),\n style: fontSize ? {\n fontSize,\n height: fontSize,\n width: fontSize,\n } : undefined,\n }\n this.applyColors(wrapperData)\n\n return wrapperData\n },\n applyColors (data: VNodeData): void {\n data.class = { ...data.class, ...this.themeClasses }\n this.setTextColor(this.color, data)\n },\n renderFontIcon (icon: string, h: CreateElement): VNode {\n const newChildren: VNodeChildren = []\n const data = this.getDefaultData()\n\n let iconType = 'material-icons'\n // Material Icon delimiter is _\n // https://material.io/icons/\n const delimiterIndex = icon.indexOf('-')\n const isMaterialIcon = delimiterIndex <= -1\n\n if (isMaterialIcon) {\n // Material icon uses ligatures.\n newChildren.push(icon)\n } else {\n iconType = icon.slice(0, delimiterIndex)\n if (isFontAwesome5(iconType)) iconType = ''\n }\n\n data.class[iconType] = true\n data.class[icon] = !isMaterialIcon\n\n const fontSize = this.getSize()\n if (fontSize) data.style = { fontSize }\n\n this.applyColors(data)\n\n return h(this.hasClickListener ? 'button' : this.tag, data, newChildren)\n },\n renderSvgIcon (icon: string, h: CreateElement): VNode {\n const svgData: VNodeData = {\n class: 'v-icon__svg',\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: '0 0 24 24',\n role: 'img',\n 'aria-hidden': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n svgData.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [\n h('svg', svgData, [\n h('path', {\n attrs: {\n d: icon,\n },\n }),\n ]),\n ])\n },\n renderSvgIconComponent (\n icon: VuetifyIconComponent,\n h: CreateElement\n ): VNode {\n const data: VNodeData = {\n class: {\n 'v-icon__component': true,\n },\n }\n\n const size = this.getSize()\n if (size) {\n data.style = {\n fontSize: size,\n height: size,\n width: size,\n }\n }\n\n this.applyColors(data)\n\n const component = icon.component\n data.props = icon.props\n data.nativeOn = data.on\n\n return h(this.hasClickListener ? 'button' : 'span', this.getSvgWrapperData(), [\n h(component, data),\n ])\n },\n },\n\n render (h: CreateElement): VNode {\n const icon = this.getIcon()\n\n if (typeof icon === 'string') {\n if (isSvgPath(icon)) {\n return this.renderSvgIcon(icon, h)\n }\n return this.renderFontIcon(icon, h)\n }\n\n return this.renderSvgIconComponent(icon, h)\n },\n})\n\nexport default Vue.extend({\n name: 'v-icon',\n\n $_wrapperFor: VIcon,\n\n functional: true,\n\n render (h, { data, children }): VNode {\n let iconName = ''\n\n // Support usage of v-text and v-html\n if (data.domProps) {\n iconName = data.domProps.textContent ||\n data.domProps.innerHTML ||\n iconName\n\n // Remove nodes so it doesn't\n // overwrite our changes\n delete data.domProps.textContent\n delete data.domProps.innerHTML\n }\n\n return h(VIcon, data, iconName ? [iconName] : children)\n },\n})\n"],"sourceRoot":"","file":"VIcon.js"}
|
|
@@ -5,8 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
var _vue = require("vue");
|
|
9
|
-
|
|
10
8
|
require("../../../src/components/VImg/VImg.sass");
|
|
11
9
|
|
|
12
10
|
var _intersect = _interopRequireDefault(require("../../directives/intersect"));
|
|
@@ -25,12 +23,6 @@ var _helpers = require("../../util/helpers");
|
|
|
25
23
|
|
|
26
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
25
|
|
|
28
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
29
|
-
|
|
30
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
31
|
-
|
|
32
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
33
|
-
|
|
34
26
|
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
35
27
|
|
|
36
28
|
var hasIntersect = typeof window !== 'undefined' && 'IntersectionObserver' in window;
|
|
@@ -107,12 +99,12 @@ var _default2 = (0, _mixins.default)(_VResponsive.default, _themeable.default).e
|
|
|
107
99
|
var src = this.isLoading ? this.normalisedSrc.lazySrc : this.currentSrc;
|
|
108
100
|
if (this.gradient) backgroundImage.push("linear-gradient(".concat(this.gradient, ")"));
|
|
109
101
|
if (src) backgroundImage.push("url(\"".concat(src, "\")"));
|
|
110
|
-
var image = (
|
|
102
|
+
var image = this.$createElement('div', {
|
|
103
|
+
staticClass: 'v-image__image',
|
|
111
104
|
class: {
|
|
112
105
|
'v-image__image--preload': this.isLoading,
|
|
113
106
|
'v-image__image--contain': this.contain,
|
|
114
|
-
'v-image__image--cover': !this.contain
|
|
115
|
-
'v-image__image': true
|
|
107
|
+
'v-image__image--cover': !this.contain
|
|
116
108
|
},
|
|
117
109
|
style: {
|
|
118
110
|
backgroundImage: backgroundImage.join(', '),
|
|
@@ -123,9 +115,11 @@ var _default2 = (0, _mixins.default)(_VResponsive.default, _themeable.default).e
|
|
|
123
115
|
/* istanbul ignore if */
|
|
124
116
|
|
|
125
117
|
if (!this.transition) return image;
|
|
126
|
-
return (
|
|
127
|
-
|
|
128
|
-
|
|
118
|
+
return this.$createElement('transition', {
|
|
119
|
+
attrs: {
|
|
120
|
+
name: this.transition,
|
|
121
|
+
mode: 'in-out'
|
|
122
|
+
}
|
|
129
123
|
}, [image]);
|
|
130
124
|
}
|
|
131
125
|
},
|
|
@@ -224,14 +218,14 @@ var _default2 = (0, _mixins.default)(_VResponsive.default, _themeable.default).e
|
|
|
224
218
|
poll();
|
|
225
219
|
},
|
|
226
220
|
genContent: function genContent() {
|
|
227
|
-
var content = _VResponsive.default.methods.genContent.call(this);
|
|
221
|
+
var content = _VResponsive.default.options.methods.genContent.call(this);
|
|
228
222
|
|
|
229
223
|
if (this.naturalWidth) {
|
|
230
|
-
|
|
224
|
+
this._b(content.data, 'div', {
|
|
231
225
|
style: {
|
|
232
226
|
width: "".concat(this.naturalWidth, "px")
|
|
233
227
|
}
|
|
234
|
-
})
|
|
228
|
+
});
|
|
235
229
|
}
|
|
236
230
|
|
|
237
231
|
return content;
|
|
@@ -240,35 +234,44 @@ var _default2 = (0, _mixins.default)(_VResponsive.default, _themeable.default).e
|
|
|
240
234
|
var slot = (0, _helpers.getSlot)(this, 'placeholder');
|
|
241
235
|
|
|
242
236
|
if (slot) {
|
|
243
|
-
var placeholder = this.isLoading ? [(
|
|
244
|
-
|
|
237
|
+
var placeholder = this.isLoading ? [this.$createElement('div', {
|
|
238
|
+
staticClass: 'v-image__placeholder'
|
|
245
239
|
}, slot)] : [];
|
|
246
240
|
if (!this.transition) return placeholder[0];
|
|
247
|
-
return (
|
|
248
|
-
|
|
249
|
-
|
|
241
|
+
return this.$createElement('transition', {
|
|
242
|
+
props: {
|
|
243
|
+
appear: true,
|
|
244
|
+
name: this.transition
|
|
245
|
+
}
|
|
250
246
|
}, placeholder);
|
|
251
247
|
}
|
|
252
248
|
}
|
|
253
249
|
},
|
|
254
|
-
render: function render() {
|
|
255
|
-
var node = _VResponsive.default.render.call(this,
|
|
256
|
-
|
|
257
|
-
var data = (0, _mergeData.default)(node.
|
|
258
|
-
'
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
'
|
|
262
|
-
}
|
|
250
|
+
render: function render(h) {
|
|
251
|
+
var node = _VResponsive.default.options.render.call(this, h);
|
|
252
|
+
|
|
253
|
+
var data = (0, _mergeData.default)(node.data, {
|
|
254
|
+
staticClass: 'v-image',
|
|
255
|
+
attrs: {
|
|
256
|
+
'aria-label': this.alt,
|
|
257
|
+
role: this.alt ? 'img' : undefined
|
|
258
|
+
},
|
|
259
|
+
class: this.themeClasses,
|
|
260
|
+
// Only load intersect directive if it
|
|
261
|
+
// will work in the current browser.
|
|
262
|
+
directives: hasIntersect ? [{
|
|
263
|
+
name: 'intersect',
|
|
264
|
+
modifiers: {
|
|
265
|
+
once: true
|
|
266
|
+
},
|
|
267
|
+
value: {
|
|
268
|
+
handler: this.init,
|
|
269
|
+
options: this.options
|
|
270
|
+
}
|
|
271
|
+
}] : undefined
|
|
263
272
|
});
|
|
264
273
|
node.children = [this.__cachedSizer, this.__cachedImage, this.__genPlaceholder(), this.genContent()];
|
|
265
|
-
|
|
266
|
-
return (0, _vue.withDirectives)(node, hasIntersect ? [[_intersect.default, {
|
|
267
|
-
handler: this.init,
|
|
268
|
-
options: this.options
|
|
269
|
-
}, '', {
|
|
270
|
-
once: true
|
|
271
|
-
}]] : []);
|
|
274
|
+
return h(node.tag, data, node.children);
|
|
272
275
|
}
|
|
273
276
|
});
|
|
274
277
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/VImg/VImg.ts"],"names":[],"mappings":"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","sourcesContent":["import {h, Transition, withDirectives, mergeProps} from 'vue'\n// Styles\nimport './VImg.sass'\n\n// Directives\nimport intersect from '../../directives/intersect'\n\n// Types\nimport { VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\n// Components\nimport VResponsive from '../VResponsive'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport mergeData from '../../util/mergeData'\nimport { consoleWarn } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\nimport Intersect from '../../directives/intersect'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src: string\n srcset?: string\n lazySrc: string\n aspect: number\n}\n\nconst hasIntersect = typeof window !== 'undefined' && 'IntersectionObserver' in window\n\n/* @vue/component */\nexport default mixins(\n VResponsive,\n Themeable,\n).extend({\n name: 'v-img',\n\n directives: { intersect },\n\n props: {\n alt: String,\n contain: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n } as PropValidator<IntersectionObserverInit>,\n position: {\n type: String,\n default: 'center center',\n },\n sizes: String,\n src: {\n type: [String, Object],\n default: '',\n } as PropValidator<string | srcObject>,\n srcset: String,\n transition: {\n type: [Boolean, String],\n default: 'fade-transition',\n },\n },\n\n data () {\n return {\n currentSrc: '', // Set from srcset\n image: null as HTMLImageElement | null,\n isLoading: true,\n calculatedAspectRatio: undefined as number | undefined,\n naturalWidth: undefined as number | undefined,\n hasError: false,\n }\n },\n\n computed: {\n computedAspectRatio (): number {\n return Number(this.normalisedSrc.aspect || this.calculatedAspectRatio)\n },\n normalisedSrc (): srcObject {\n return this.src && typeof this.src === 'object'\n ? {\n src: this.src.src,\n srcset: this.srcset || this.src.srcset,\n lazySrc: this.lazySrc || this.src.lazySrc,\n aspect: Number(this.aspectRatio || this.src.aspect),\n } : {\n src: this.src,\n srcset: this.srcset,\n lazySrc: this.lazySrc,\n aspect: Number(this.aspectRatio || 0),\n }\n },\n __cachedImage (): VNode | [] {\n if (!(this.normalisedSrc.src || this.normalisedSrc.lazySrc || this.gradient)) return []\n\n const backgroundImage: string[] = []\n const src = this.isLoading ? this.normalisedSrc.lazySrc : this.currentSrc\n\n if (this.gradient) backgroundImage.push(`linear-gradient(${this.gradient})`)\n if (src) backgroundImage.push(`url(\"${src}\")`)\n\n const image = h('div', {\n class: {\n 'v-image__image--preload': this.isLoading,\n 'v-image__image--contain': this.contain,\n 'v-image__image--cover': !this.contain,\n 'v-image__image': true\n },\n style: {\n backgroundImage: backgroundImage.join(', '),\n backgroundPosition: this.position,\n },\n key: +this.isLoading,\n })\n\n /* istanbul ignore if */\n if (!this.transition) return image\n\n return h(Transition, {\n name: this.transition,\n mode: 'in-out',\n }, [image])\n },\n },\n\n watch: {\n src () {\n // Force re-init when src changes\n if (!this.isLoading) this.init(undefined, undefined, true)\n else this.loadImage()\n },\n '$vuetify.breakpoint.width': 'getSrc',\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init (\n entries?: IntersectionObserverEntry[],\n observer?: IntersectionObserver,\n isIntersecting?: boolean\n ) {\n // If the current browser supports the intersection\n // observer api, the image is not observable, and\n // the eager prop isn't being used, do not load\n if (\n hasIntersect &&\n !isIntersecting &&\n !this.eager\n ) return\n\n if (this.normalisedSrc.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = this.normalisedSrc.lazySrc\n this.pollForSize(lazyImg, null)\n }\n /* istanbul ignore else */\n if (this.normalisedSrc.src) this.loadImage()\n },\n onLoad () {\n this.getSrc()\n this.isLoading = false\n this.$emit('load', this.src)\n\n if (\n this.image &&\n (this.normalisedSrc.src.endsWith('.svg') || this.normalisedSrc.src.startsWith('data:image/svg+xml'))\n ) {\n if (this.image.naturalHeight && this.image.naturalWidth) {\n this.naturalWidth = this.image.naturalWidth\n this.calculatedAspectRatio = this.image.naturalWidth / this.image.naturalHeight\n } else {\n this.calculatedAspectRatio = 1\n }\n }\n },\n onError () {\n this.hasError = true\n this.$emit('error', this.src)\n },\n getSrc () {\n /* istanbul ignore else */\n if (this.image) this.currentSrc = this.image.currentSrc || this.image.src\n },\n loadImage () {\n const image = new Image()\n this.image = image\n\n image.onload = () => {\n /* istanbul ignore if */\n if (image.decode) {\n image.decode().catch((err: DOMException) => {\n consoleWarn(\n `Failed to decode image, trying to render anyway\\n\\n` +\n `src: ${this.normalisedSrc.src}` +\n (err.message ? `\\nOriginal error: ${err.message}` : ''),\n this\n )\n }).then(this.onLoad)\n } else {\n this.onLoad()\n }\n }\n image.onerror = this.onError\n\n this.hasError = false\n this.sizes && (image.sizes = this.sizes)\n this.normalisedSrc.srcset && (image.srcset = this.normalisedSrc.srcset)\n image.src = this.normalisedSrc.src\n this.$emit('loadstart', this.normalisedSrc.src)\n\n this.aspectRatio || this.pollForSize(image)\n this.getSrc()\n },\n pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n const { naturalHeight, naturalWidth } = img\n\n if (naturalHeight || naturalWidth) {\n this.naturalWidth = naturalWidth\n this.calculatedAspectRatio = naturalWidth / naturalHeight\n } else if (!img.complete && this.isLoading && !this.hasError && timeout != null) {\n setTimeout(poll, timeout)\n }\n }\n\n poll()\n },\n genContent () {\n let content: VNode = VResponsive.methods.genContent.call(this)\n\n if (this.naturalWidth) {\n content = h(content.type, mergeProps(content.data!, {\n style: { width: `${this.naturalWidth}px` },\n }), content.children)\n }\n\n return content\n },\n __genPlaceholder (): VNode | void {\n const slot = getSlot(this, 'placeholder')\n if (slot) {\n const placeholder = this.isLoading\n ? [h('div', {\n class: 'v-image__placeholder',\n }, slot)]\n : []\n\n if (!this.transition) return placeholder[0]\n\n return h(Transition, {\n appear: true,\n name: this.transition,\n }, placeholder)\n }\n },\n },\n\n render (): VNode {\n let node = VResponsive.render.call(this, h)\n\n const data = mergeData(node.props, {\n 'aria-label': this.alt,\n role: this.alt ? 'img' : undefined,\n class: {\n ...this.themeClasses,\n 'v-image': true\n }\n })\n\n node.children = [\n this.__cachedSizer,\n this.__cachedImage,\n this.__genPlaceholder(),\n this.genContent(),\n ] as VNode[]\n\n node = h(node.type, data, node.children)\n\n return withDirectives(node, hasIntersect\n ? [\n [\n Intersect,\n {\n handler: this.init,\n options: this.options,\n },\n '',\n {\n once: true\n }\n ]\n ]\n\n : [])\n },\n})\n"],"sourceRoot":"","file":"VImg.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/VImg/VImg.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VImg.sass'\n\n// Directives\nimport intersect from '../../directives/intersect'\n\n// Types\nimport { VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\n// Components\nimport VResponsive from '../VResponsive'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport mergeData from '../../util/mergeData'\nimport { consoleWarn } from '../../util/console'\nimport { getSlot } from '../../util/helpers'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src: string\n srcset?: string\n lazySrc: string\n aspect: number\n}\n\nconst hasIntersect = typeof window !== 'undefined' && 'IntersectionObserver' in window\n\n/* @vue/component */\nexport default mixins(\n VResponsive,\n Themeable,\n).extend({\n name: 'v-img',\n\n directives: { intersect },\n\n props: {\n alt: String,\n contain: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n } as PropValidator<IntersectionObserverInit>,\n position: {\n type: String,\n default: 'center center',\n },\n sizes: String,\n src: {\n type: [String, Object],\n default: '',\n } as PropValidator<string | srcObject>,\n srcset: String,\n transition: {\n type: [Boolean, String],\n default: 'fade-transition',\n },\n },\n\n data () {\n return {\n currentSrc: '', // Set from srcset\n image: null as HTMLImageElement | null,\n isLoading: true,\n calculatedAspectRatio: undefined as number | undefined,\n naturalWidth: undefined as number | undefined,\n hasError: false,\n }\n },\n\n computed: {\n computedAspectRatio (): number {\n return Number(this.normalisedSrc.aspect || this.calculatedAspectRatio)\n },\n normalisedSrc (): srcObject {\n return this.src && typeof this.src === 'object'\n ? {\n src: this.src.src,\n srcset: this.srcset || this.src.srcset,\n lazySrc: this.lazySrc || this.src.lazySrc,\n aspect: Number(this.aspectRatio || this.src.aspect),\n } : {\n src: this.src,\n srcset: this.srcset,\n lazySrc: this.lazySrc,\n aspect: Number(this.aspectRatio || 0),\n }\n },\n __cachedImage (): VNode | [] {\n if (!(this.normalisedSrc.src || this.normalisedSrc.lazySrc || this.gradient)) return []\n\n const backgroundImage: string[] = []\n const src = this.isLoading ? this.normalisedSrc.lazySrc : this.currentSrc\n\n if (this.gradient) backgroundImage.push(`linear-gradient(${this.gradient})`)\n if (src) backgroundImage.push(`url(\"${src}\")`)\n\n const image = this.$createElement('div', {\n staticClass: 'v-image__image',\n class: {\n 'v-image__image--preload': this.isLoading,\n 'v-image__image--contain': this.contain,\n 'v-image__image--cover': !this.contain,\n },\n style: {\n backgroundImage: backgroundImage.join(', '),\n backgroundPosition: this.position,\n },\n key: +this.isLoading,\n })\n\n /* istanbul ignore if */\n if (!this.transition) return image\n\n return this.$createElement('transition', {\n attrs: {\n name: this.transition,\n mode: 'in-out',\n },\n }, [image])\n },\n },\n\n watch: {\n src () {\n // Force re-init when src changes\n if (!this.isLoading) this.init(undefined, undefined, true)\n else this.loadImage()\n },\n '$vuetify.breakpoint.width': 'getSrc',\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init (\n entries?: IntersectionObserverEntry[],\n observer?: IntersectionObserver,\n isIntersecting?: boolean\n ) {\n // If the current browser supports the intersection\n // observer api, the image is not observable, and\n // the eager prop isn't being used, do not load\n if (\n hasIntersect &&\n !isIntersecting &&\n !this.eager\n ) return\n\n if (this.normalisedSrc.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = this.normalisedSrc.lazySrc\n this.pollForSize(lazyImg, null)\n }\n /* istanbul ignore else */\n if (this.normalisedSrc.src) this.loadImage()\n },\n onLoad () {\n this.getSrc()\n this.isLoading = false\n this.$emit('load', this.src)\n\n if (\n this.image &&\n (this.normalisedSrc.src.endsWith('.svg') || this.normalisedSrc.src.startsWith('data:image/svg+xml'))\n ) {\n if (this.image.naturalHeight && this.image.naturalWidth) {\n this.naturalWidth = this.image.naturalWidth\n this.calculatedAspectRatio = this.image.naturalWidth / this.image.naturalHeight\n } else {\n this.calculatedAspectRatio = 1\n }\n }\n },\n onError () {\n this.hasError = true\n this.$emit('error', this.src)\n },\n getSrc () {\n /* istanbul ignore else */\n if (this.image) this.currentSrc = this.image.currentSrc || this.image.src\n },\n loadImage () {\n const image = new Image()\n this.image = image\n\n image.onload = () => {\n /* istanbul ignore if */\n if (image.decode) {\n image.decode().catch((err: DOMException) => {\n consoleWarn(\n `Failed to decode image, trying to render anyway\\n\\n` +\n `src: ${this.normalisedSrc.src}` +\n (err.message ? `\\nOriginal error: ${err.message}` : ''),\n this\n )\n }).then(this.onLoad)\n } else {\n this.onLoad()\n }\n }\n image.onerror = this.onError\n\n this.hasError = false\n this.sizes && (image.sizes = this.sizes)\n this.normalisedSrc.srcset && (image.srcset = this.normalisedSrc.srcset)\n image.src = this.normalisedSrc.src\n this.$emit('loadstart', this.normalisedSrc.src)\n\n this.aspectRatio || this.pollForSize(image)\n this.getSrc()\n },\n pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n const { naturalHeight, naturalWidth } = img\n\n if (naturalHeight || naturalWidth) {\n this.naturalWidth = naturalWidth\n this.calculatedAspectRatio = naturalWidth / naturalHeight\n } else if (!img.complete && this.isLoading && !this.hasError && timeout != null) {\n setTimeout(poll, timeout)\n }\n }\n\n poll()\n },\n genContent () {\n const content: VNode = VResponsive.options.methods.genContent.call(this)\n if (this.naturalWidth) {\n this._b(content.data!, 'div', {\n style: { width: `${this.naturalWidth}px` },\n })\n }\n\n return content\n },\n __genPlaceholder (): VNode | void {\n const slot = getSlot(this, 'placeholder')\n if (slot) {\n const placeholder = this.isLoading\n ? [this.$createElement('div', {\n staticClass: 'v-image__placeholder',\n }, slot)]\n : []\n\n if (!this.transition) return placeholder[0]\n\n return this.$createElement('transition', {\n props: {\n appear: true,\n name: this.transition,\n },\n }, placeholder)\n }\n },\n },\n\n render (h): VNode {\n const node = VResponsive.options.render.call(this, h)\n\n const data = mergeData(node.data!, {\n staticClass: 'v-image',\n attrs: {\n 'aria-label': this.alt,\n role: this.alt ? 'img' : undefined,\n },\n class: this.themeClasses,\n // Only load intersect directive if it\n // will work in the current browser.\n directives: hasIntersect\n ? [{\n name: 'intersect',\n modifiers: { once: true },\n value: {\n handler: this.init,\n options: this.options,\n },\n }]\n : undefined,\n })\n\n node.children = [\n this.__cachedSizer,\n this.__cachedImage,\n this.__genPlaceholder(),\n this.genContent(),\n ] as VNode[]\n\n return h(node.tag, data, node.children)\n },\n})\n"],"sourceRoot":"","file":"VImg.js"}
|