@dimailn/vuetify 2.7.2-alpha0 → 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 +5556 -5330
- 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 -20
- 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 +125 -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 +5 -8
- 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 +8 -13
- 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 -5
- 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 -10
- 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 +23 -19
- 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 +122 -94
- 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 +6 -10
- 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 +8 -9
- 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 -5
- 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 -11
- 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 +22 -18
- 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 +116 -104
- package/src/components/VSelect/VSelectList.ts +59 -40
- package/src/components/VSheet/VSheet.ts +11 -13
- 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 +8 -12
- 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 -5
- package/src/mixins/mobile/index.ts +12 -10
- package/src/mixins/mouse/index.ts +4 -10
- 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
|
@@ -6,17 +6,23 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.factory = factory;
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
|
|
9
|
-
var _vue = require("vue");
|
|
9
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
10
|
+
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
12
|
|
|
11
13
|
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; }
|
|
12
14
|
|
|
13
15
|
function factory() {
|
|
14
16
|
var _watch;
|
|
15
17
|
|
|
16
|
-
var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '
|
|
17
|
-
var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '
|
|
18
|
-
return
|
|
18
|
+
var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'value';
|
|
19
|
+
var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'input';
|
|
20
|
+
return _vue.default.extend({
|
|
19
21
|
name: 'toggleable',
|
|
22
|
+
model: {
|
|
23
|
+
prop: prop,
|
|
24
|
+
event: event
|
|
25
|
+
},
|
|
20
26
|
props: _defineProperty({}, prop, {
|
|
21
27
|
required: false
|
|
22
28
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mixins/toggleable/index.ts"],"names":[],"mappings":";;;;;;;;AAAA
|
|
1
|
+
{"version":3,"sources":["../../../src/mixins/toggleable/index.ts"],"names":[],"mappings":";;;;;;;;AAAA;;;;;;AAKM,SAAU,OAAV,GAAkD;AAAA;;AAAA,MAA/B,IAA+B,uEAAxB,OAAwB;AAAA,MAAf,KAAe,uEAAP,OAAO;AACtD,SAAO,aAAI,MAAJ,CAAW;AAChB,IAAA,IAAI,EAAE,YADU;AAGhB,IAAA,KAAK,EAAE;AAAE,MAAA,IAAI,EAAJ,IAAF;AAAQ,MAAA,KAAK,EAAL;AAAR,KAHS;AAKhB,IAAA,KAAK,sBACF,IADE,EACK;AAAE,MAAA,QAAQ,EAAE;AAAZ,KADL,CALW;AAShB,IAAA,IATgB,kBASZ;AACF,aAAO;AACL,QAAA,QAAQ,EAAE,CAAC,CAAC,KAAK,IAAL;AADP,OAAP;AAGD,KAbe;AAehB,IAAA,KAAK,wCACF,IADE,YACK,GADL,EACQ;AACT,WAAK,QAAL,GAAgB,CAAC,CAAC,GAAlB;AACD,KAHE,yDAIO,GAJP,EAIU;AACX,OAAC,CAAC,GAAF,KAAU,KAAK,IAAL,CAAV,IAAwB,KAAK,KAAL,CAAW,KAAX,EAAkB,GAAlB,CAAxB;AACD,KANE;AAfW,GAAX,CAAP;AAwBD;AAED;;;AACA,IAAM,UAAU,GAAG,OAAO,EAA1B;eAEe,U","sourcesContent":["import Vue, { VueConstructor } from 'vue'\n\nexport type Toggleable<T extends string = 'value'> = VueConstructor<Vue & { isActive: boolean } & Record<T, any>>\n\nexport function factory<T extends string = 'value'> (prop?: T, event?: string): Toggleable<T>\nexport function factory (prop = 'value', event = 'input') {\n return Vue.extend({\n name: 'toggleable',\n\n model: { prop, event },\n\n props: {\n [prop]: { required: false },\n },\n\n data () {\n return {\n isActive: !!this[prop],\n }\n },\n\n watch: {\n [prop] (val) {\n this.isActive = !!val\n },\n isActive (val) {\n !!val !== this[prop] && this.$emit(event, val)\n },\n },\n })\n}\n\n/* eslint-disable-next-line @typescript-eslint/no-redeclare */\nconst Toggleable = factory()\n\nexport default Toggleable\n"],"sourceRoot":"","file":"index.js"}
|
|
@@ -5,9 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
var _vue = require("vue");
|
|
8
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _vue.default.extend({
|
|
11
13
|
name: 'transitionable',
|
|
12
14
|
props: {
|
|
13
15
|
mode: String,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mixins/transitionable/index.ts"],"names":[],"mappings":";;;;;;;AAAA
|
|
1
|
+
{"version":3,"sources":["../../../src/mixins/transitionable/index.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;eAEe,aAAI,MAAJ,CAAW;AACxB,EAAA,IAAI,EAAE,gBADkB;AAGxB,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,MADD;AAEL,IAAA,MAAM,EAAE,MAFH;AAGL,IAAA,UAAU,EAAE;AAHP;AAHiB,CAAX,C","sourcesContent":["import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'transitionable',\n\n props: {\n mode: String,\n origin: String,\n transition: String,\n },\n})\n"],"sourceRoot":"","file":"index.js"}
|
|
@@ -5,9 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
var _vue = require("vue");
|
|
8
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _vue.default.extend({
|
|
11
13
|
name: 'translatable',
|
|
12
14
|
props: {
|
|
13
15
|
height: Number
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mixins/translatable/index.ts"],"names":[],"mappings":";;;;;;;AAAA
|
|
1
|
+
{"version":3,"sources":["../../../src/mixins/translatable/index.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;eAEe,aAAI,MAAJ,CAAW;AACxB,EAAA,IAAI,EAAE,cADkB;AAGxB,EAAA,KAAK,EAAE;AACL,IAAA,MAAM,EAAE;AADH,GAHiB;AAOxB,EAAA,IAAI,EAAE;AAAA,WAAO;AACX,MAAA,WAAW,EAAE,CADF;AAEX,MAAA,QAAQ,EAAE,CAFC;AAGX,MAAA,YAAY,EAAE,CAHH;AAIX,MAAA,eAAe,EAAE,CAJN;AAKX,MAAA,SAAS,EAAE,CALA;AAMX,MAAA,YAAY,EAAE,CANH;AAOX,MAAA,YAAY,EAAE;AAPH,KAAP;AAAA,GAPkB;AAiBxB,EAAA,QAAQ,EAAE;AACR,IAAA,SADQ,uBACC;AACP,aAAO,KAAK,SAAL,EAAP;AACD;AAHO,GAjBc;AAuBxB,EAAA,aAvBwB,2BAuBX;AACX,IAAA,MAAM,CAAC,mBAAP,CAA2B,QAA3B,EAAqC,KAAK,SAA1C,EAAqD,KAArD;AACA,IAAA,MAAM,CAAC,mBAAP,CAA2B,QAA3B,EAAqC,KAAK,SAA1C,EAAqD,KAArD;AACD,GA1BuB;AA4BxB,EAAA,OAAO,EAAE;AACP,IAAA,cADO,4BACO;AACZ,UAAM,MAAM,GAAG,KAAK,GAAL,CAAS,qBAAT,EAAf;AAEA,WAAK,SAAL,GAAiB,MAAM,CAAC,WAAxB;AACA,WAAK,YAAL,GAAoB,KAAK,SAAL,GAAiB,KAAK,MAA1C;AACA,WAAK,WAAL,GAAmB,MAAM,CAAC,GAAP,GAAa,KAAK,SAArC;AACA,WAAK,YAAL,GAAoB,MAAM,CAAC,WAA3B;AACA,WAAK,YAAL,GAAoB,KAAK,SAAL,GAAiB,KAAK,YAA1C;AACD,KATM;AAUP,IAAA,SAVO,uBAUE;AACP,MAAA,MAAM,CAAC,gBAAP,CAAwB,QAAxB,EAAkC,KAAK,SAAvC,EAAkD,KAAlD;AACA,MAAA,MAAM,CAAC,gBAAP,CAAwB,QAAxB,EAAkC,KAAK,SAAvC,EAAkD,KAAlD;AACD,KAbM;;AAcP;AACA,IAAA,SAfO,uBAeE;AACP,YAAM,IAAI,KAAJ,CAAU,mBAAV,CAAN;AACD,KAjBM;AAkBP,IAAA,SAlBO,uBAkBE;AACP,WAAK,cAAL;AAEA,WAAK,eAAL,GACE,CAAC,KAAK,YAAL,GAAoB,KAAK,WAA1B,KACC,QAAQ,CAAC,KAAK,MAAN,CAAR,GAAwB,KAAK,YAD9B,CADF;AAKA,WAAK,QAAL,GAAgB,IAAI,CAAC,KAAL,CAAW,KAAK,YAAL,GAAoB,KAAK,eAApC,CAAhB;AACD;AA3BM;AA5Be,CAAX,C","sourcesContent":["import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'translatable',\n\n props: {\n height: Number,\n },\n\n data: () => ({\n elOffsetTop: 0,\n parallax: 0,\n parallaxDist: 0,\n percentScrolled: 0,\n scrollTop: 0,\n windowHeight: 0,\n windowBottom: 0,\n }),\n\n computed: {\n imgHeight (): number {\n return this.objHeight()\n },\n },\n\n beforeDestroy () {\n window.removeEventListener('scroll', this.translate, false)\n window.removeEventListener('resize', this.translate, false)\n },\n\n methods: {\n calcDimensions () {\n const offset = this.$el.getBoundingClientRect()\n\n this.scrollTop = window.pageYOffset\n this.parallaxDist = this.imgHeight - this.height\n this.elOffsetTop = offset.top + this.scrollTop\n this.windowHeight = window.innerHeight\n this.windowBottom = this.scrollTop + this.windowHeight\n },\n listeners () {\n window.addEventListener('scroll', this.translate, false)\n window.addEventListener('resize', this.translate, false)\n },\n /** @abstract **/\n objHeight (): number {\n throw new Error('Not implemented !')\n },\n translate () {\n this.calcDimensions()\n\n this.percentScrolled = (\n (this.windowBottom - this.elOffsetTop) /\n (parseInt(this.height) + this.windowHeight)\n )\n\n this.parallax = Math.round(this.parallaxDist * this.percentScrolled)\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mixins/validatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Colorable from '../colorable'\nimport Themeable from '../themeable'\nimport { inject as RegistrableInject } from '../registrable'\n\n// Utilities\nimport { deepEqual } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { PropValidator } from 'vue/types/options'\nimport { InputMessage, InputValidationRules } from 'vuetify/types'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'form', any>('form'),\n Themeable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'validatable',\n\n props: {\n disabled: {\n type: Boolean,\n default: null,\n },\n error: Boolean,\n errorCount: {\n type: [Number, String],\n default: 1,\n },\n errorMessages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n messages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n readonly: {\n type: Boolean,\n default: null,\n },\n rules: {\n type: Array,\n default: () => [],\n } as PropValidator<InputValidationRules>,\n success: Boolean,\n successMessages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n validateOnBlur: Boolean,\n modelValue: { required: false },\n },\n\n data () {\n return {\n errorBucket: [] as string[],\n hasColor: false,\n hasFocused: false,\n hasInput: false,\n isFocused: false,\n isResetting: false,\n lazyValue: this.value,\n valid: false,\n }\n },\n\n computed: {\n computedColor (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.color) return this.color\n // It's assumed that if the input is on a\n // dark background, the user will want to\n // have a white color. If the entire app\n // is setup to be dark, then they will\n // like want to use their primary color\n if (this.isDark && !this.appIsDark) return 'white'\n else return 'primary'\n },\n hasError (): boolean {\n return (\n this.internalErrorMessages.length > 0 ||\n this.errorBucket.length > 0 ||\n this.error\n )\n },\n // TODO: Add logic that allows the user to enable based\n // upon a good validation\n hasSuccess (): boolean {\n return (\n this.internalSuccessMessages.length > 0 ||\n this.success\n )\n },\n externalError (): boolean {\n return this.internalErrorMessages.length > 0 || this.error\n },\n hasMessages (): boolean {\n return this.validationTarget.length > 0\n },\n hasState (): boolean {\n if (this.isDisabled) return false\n\n return (\n this.hasSuccess ||\n (this.shouldValidate && this.hasError)\n )\n },\n internalErrorMessages (): InputValidationRules {\n return this.genInternalMessages(this.errorMessages)\n },\n internalMessages (): InputValidationRules {\n return this.genInternalMessages(this.messages)\n },\n internalSuccessMessages (): InputValidationRules {\n return this.genInternalMessages(this.successMessages)\n },\n internalValue: {\n get (): unknown {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n\n this.$emit('input', val)\n },\n },\n isDisabled (): boolean {\n return this.disabled ?? (\n !!this.form &&\n this.form.disabled\n )\n },\n isInteractive (): boolean {\n return !this.isDisabled && !this.isReadonly\n },\n isReadonly (): boolean {\n return this.readonly ?? (\n !!this.form &&\n this.form.readonly\n )\n },\n shouldValidate (): boolean {\n if (this.externalError) return true\n if (this.isResetting) return false\n\n return this.validateOnBlur\n ? this.hasFocused && !this.isFocused\n : (this.hasInput || this.hasFocused)\n },\n validations (): InputValidationRules {\n return this.validationTarget.slice(0, Number(this.errorCount))\n },\n validationState (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor) return this.computedColor\n return undefined\n },\n validationTarget (): InputValidationRules {\n if (this.internalErrorMessages.length > 0) {\n return this.internalErrorMessages\n } else if (this.successMessages && this.successMessages.length > 0) {\n return this.internalSuccessMessages\n } else if (this.messages && this.messages.length > 0) {\n return this.internalMessages\n } else if (this.shouldValidate) {\n return this.errorBucket\n } else return []\n },\n },\n\n watch: {\n rules: {\n handler (newVal, oldVal) {\n if (deepEqual(newVal, oldVal)) return\n this.validate()\n },\n deep: true,\n },\n internalValue () {\n // If it's the first time we're setting input,\n // mark it with hasInput\n this.hasInput = true\n this.validateOnBlur || this.$nextTick(this.validate)\n },\n isFocused (val) {\n // Should not check validation\n // if disabled\n if (\n !val &&\n !this.isDisabled\n ) {\n this.hasFocused = true\n this.validateOnBlur && this.$nextTick(this.validate)\n }\n },\n isResetting () {\n setTimeout(() => {\n this.hasInput = false\n this.hasFocused = false\n this.isResetting = false\n this.validate()\n }, 0)\n },\n hasError (val) {\n if (this.shouldValidate) {\n this.$emit('update:error', val)\n }\n },\n value (val) {\n this.lazyValue = val\n },\n },\n\n beforeMount () {\n this.validate()\n },\n\n created () {\n this.form && this.form.register(this)\n },\n\n beforeDestroy () {\n this.form && this.form.unregister(this)\n },\n\n methods: {\n genInternalMessages (messages: InputMessage | null): InputValidationRules {\n if (!messages) return []\n else if (Array.isArray(messages)) return messages\n else return [messages]\n },\n /** @public */\n reset () {\n this.isResetting = true\n this.internalValue = Array.isArray(this.internalValue)\n ? []\n : null\n },\n /** @public */\n resetValidation () {\n this.isResetting = true\n },\n /** @public */\n validate (force = false, value?: any): boolean {\n const errorBucket = []\n value = value || this.internalValue\n\n if (force) this.hasInput = this.hasFocused = true\n\n for (let index = 0; index < this.rules.length; index++) {\n const rule = this.rules[index]\n const valid = typeof rule === 'function' ? rule(value) : rule\n\n if (valid === false || typeof valid === 'string') {\n errorBucket.push(valid || '')\n } else if (typeof valid !== 'boolean') {\n consoleError(`Rules should return a string or boolean, received '${typeof valid}' instead`, this)\n }\n }\n\n this.errorBucket = errorBucket\n this.valid = errorBucket.length === 0\n\n return this.valid\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/mixins/validatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Colorable from '../colorable'\nimport Themeable from '../themeable'\nimport { inject as RegistrableInject } from '../registrable'\n\n// Utilities\nimport { deepEqual } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { PropValidator } from 'vue/types/options'\nimport { InputMessage, InputValidationRules } from 'vuetify/types'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'form', any>('form'),\n Themeable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'validatable',\n\n props: {\n disabled: {\n type: Boolean,\n default: null,\n },\n error: Boolean,\n errorCount: {\n type: [Number, String],\n default: 1,\n },\n errorMessages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n messages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n readonly: {\n type: Boolean,\n default: null,\n },\n rules: {\n type: Array,\n default: () => [],\n } as PropValidator<InputValidationRules>,\n success: Boolean,\n successMessages: {\n type: [String, Array],\n default: () => [],\n } as PropValidator<InputMessage | null>,\n validateOnBlur: Boolean,\n value: { required: false },\n },\n\n data () {\n return {\n errorBucket: [] as string[],\n hasColor: false,\n hasFocused: false,\n hasInput: false,\n isFocused: false,\n isResetting: false,\n lazyValue: this.value,\n valid: false,\n }\n },\n\n computed: {\n computedColor (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.color) return this.color\n // It's assumed that if the input is on a\n // dark background, the user will want to\n // have a white color. If the entire app\n // is setup to be dark, then they will\n // like want to use their primary color\n if (this.isDark && !this.appIsDark) return 'white'\n else return 'primary'\n },\n hasError (): boolean {\n return (\n this.internalErrorMessages.length > 0 ||\n this.errorBucket.length > 0 ||\n this.error\n )\n },\n // TODO: Add logic that allows the user to enable based\n // upon a good validation\n hasSuccess (): boolean {\n return (\n this.internalSuccessMessages.length > 0 ||\n this.success\n )\n },\n externalError (): boolean {\n return this.internalErrorMessages.length > 0 || this.error\n },\n hasMessages (): boolean {\n return this.validationTarget.length > 0\n },\n hasState (): boolean {\n if (this.isDisabled) return false\n\n return (\n this.hasSuccess ||\n (this.shouldValidate && this.hasError)\n )\n },\n internalErrorMessages (): InputValidationRules {\n return this.genInternalMessages(this.errorMessages)\n },\n internalMessages (): InputValidationRules {\n return this.genInternalMessages(this.messages)\n },\n internalSuccessMessages (): InputValidationRules {\n return this.genInternalMessages(this.successMessages)\n },\n internalValue: {\n get (): unknown {\n return this.lazyValue\n },\n set (val: any) {\n this.lazyValue = val\n\n this.$emit('input', val)\n },\n },\n isDisabled (): boolean {\n return this.disabled ?? (\n !!this.form &&\n this.form.disabled\n )\n },\n isInteractive (): boolean {\n return !this.isDisabled && !this.isReadonly\n },\n isReadonly (): boolean {\n return this.readonly ?? (\n !!this.form &&\n this.form.readonly\n )\n },\n shouldValidate (): boolean {\n if (this.externalError) return true\n if (this.isResetting) return false\n\n return this.validateOnBlur\n ? this.hasFocused && !this.isFocused\n : (this.hasInput || this.hasFocused)\n },\n validations (): InputValidationRules {\n return this.validationTarget.slice(0, Number(this.errorCount))\n },\n validationState (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.hasError && this.shouldValidate) return 'error'\n if (this.hasSuccess) return 'success'\n if (this.hasColor) return this.computedColor\n return undefined\n },\n validationTarget (): InputValidationRules {\n if (this.internalErrorMessages.length > 0) {\n return this.internalErrorMessages\n } else if (this.successMessages && this.successMessages.length > 0) {\n return this.internalSuccessMessages\n } else if (this.messages && this.messages.length > 0) {\n return this.internalMessages\n } else if (this.shouldValidate) {\n return this.errorBucket\n } else return []\n },\n },\n\n watch: {\n rules: {\n handler (newVal, oldVal) {\n if (deepEqual(newVal, oldVal)) return\n this.validate()\n },\n deep: true,\n },\n internalValue () {\n // If it's the first time we're setting input,\n // mark it with hasInput\n this.hasInput = true\n this.validateOnBlur || this.$nextTick(this.validate)\n },\n isFocused (val) {\n // Should not check validation\n // if disabled\n if (\n !val &&\n !this.isDisabled\n ) {\n this.hasFocused = true\n this.validateOnBlur && this.$nextTick(this.validate)\n }\n },\n isResetting () {\n setTimeout(() => {\n this.hasInput = false\n this.hasFocused = false\n this.isResetting = false\n this.validate()\n }, 0)\n },\n hasError (val) {\n if (this.shouldValidate) {\n this.$emit('update:error', val)\n }\n },\n value (val) {\n this.lazyValue = val\n },\n },\n\n beforeMount () {\n this.validate()\n },\n\n created () {\n this.form && this.form.register(this)\n },\n\n beforeDestroy () {\n this.form && this.form.unregister(this)\n },\n\n methods: {\n genInternalMessages (messages: InputMessage | null): InputValidationRules {\n if (!messages) return []\n else if (Array.isArray(messages)) return messages\n else return [messages]\n },\n /** @public */\n reset () {\n this.isResetting = true\n this.internalValue = Array.isArray(this.internalValue)\n ? []\n : null\n },\n /** @public */\n resetValidation () {\n this.isResetting = true\n },\n /** @public */\n validate (force = false, value?: any): boolean {\n const errorBucket = []\n value = value || this.internalValue\n\n if (force) this.hasInput = this.hasFocused = true\n\n for (let index = 0; index < this.rules.length; index++) {\n const rule = this.rules[index]\n const valid = typeof rule === 'function' ? rule(value) : rule\n\n if (valid === false || typeof valid === 'string') {\n errorBucket.push(valid || '')\n } else if (typeof valid !== 'boolean') {\n consoleError(`Rules should return a string or boolean, received '${typeof valid}' instead`, this)\n }\n }\n\n this.errorBucket = errorBucket\n this.valid = errorBucket.length === 0\n\n return this.valid\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/goto/util.ts"],"names":[],"mappings":";;;;;;;;AAEA;AACM,SAAU,SAAV,CAAqB,MAArB,EAAgC;AACpC,MAAI,OAAO,MAAP,KAAkB,QAAtB,EAAgC;AAC9B,WAAO,MAAP;AACD;;AAED,MAAI,EAAE,GAAG,CAAC,CAAC,MAAD,CAAV;;
|
|
1
|
+
{"version":3,"sources":["../../../src/services/goto/util.ts"],"names":[],"mappings":";;;;;;;;AAEA;AACM,SAAU,SAAV,CAAqB,MAArB,EAAgC;AACpC,MAAI,OAAO,MAAP,KAAkB,QAAtB,EAAgC;AAC9B,WAAO,MAAP;AACD;;AAED,MAAI,EAAE,GAAG,CAAC,CAAC,MAAD,CAAV;;AACA,MAAI,CAAC,EAAL,EAAS;AACP,UAAM,OAAO,MAAP,KAAkB,QAAlB,GACF,IAAI,KAAJ,4BAA6B,MAA7B,mBADE,GAEF,IAAI,SAAJ,+EAAqF,IAAI,CAAC,MAAD,CAAzF,eAFJ;AAGD;;AAED,MAAI,WAAW,GAAG,CAAlB;;AACA,SAAO,EAAP,EAAW;AACT,IAAA,WAAW,IAAI,EAAE,CAAC,SAAlB;AACA,IAAA,EAAE,GAAG,EAAE,CAAC,YAAR;AACD;;AAED,SAAO,WAAP;AACD;;AAEK,SAAU,YAAV,CAAwB,SAAxB,EAAsC;AAC1C,MAAM,EAAE,GAAG,CAAC,CAAC,SAAD,CAAZ;AAEA,MAAI,EAAJ,EAAQ,OAAO,EAAP;AAER,QAAM,OAAO,SAAP,KAAqB,QAArB,GACF,IAAI,KAAJ,+BAAgC,SAAhC,mBADE,GAEF,IAAI,SAAJ,2EAAiF,IAAI,CAAC,SAAD,CAArF,eAFJ;AAGD;;AAED,SAAS,IAAT,CAAe,EAAf,EAAsB;AACpB,SAAO,EAAE,IAAI,IAAN,GAAa,EAAb,GAAkB,EAAE,CAAC,WAAH,CAAe,IAAxC;AACD;;AAED,SAAS,CAAT,CAAY,EAAZ,EAAmB;AACjB,MAAI,OAAO,EAAP,KAAc,QAAlB,EAA4B;AAC1B,WAAO,QAAQ,CAAC,aAAT,CAAoC,EAApC,CAAP;AACD,GAFD,MAEO,IAAI,EAAE,IAAI,EAAE,CAAC,MAAb,EAAqB;AAC1B,WAAQ,EAAU,CAAC,GAAnB;AACD,GAFM,MAEA,IAAI,EAAE,YAAY,WAAlB,EAA+B;AACpC,WAAO,EAAP;AACD,GAFM,MAEA;AACL,WAAO,IAAP;AACD;AACF","sourcesContent":["import Vue from 'vue'\n\n// Return target's cumulative offset from the top\nexport function getOffset (target: any): number {\n if (typeof target === 'number') {\n return target\n }\n\n let el = $(target)\n if (!el) {\n throw typeof target === 'string'\n ? new Error(`Target element \"${target}\" not found.`)\n : new TypeError(`Target must be a Number/Selector/HTMLElement/VueComponent, received ${type(target)} instead.`)\n }\n\n let totalOffset = 0\n while (el) {\n totalOffset += el.offsetTop\n el = el.offsetParent as HTMLElement\n }\n\n return totalOffset\n}\n\nexport function getContainer (container: any): HTMLElement {\n const el = $(container)\n\n if (el) return el\n\n throw typeof container === 'string'\n ? new Error(`Container element \"${container}\" not found.`)\n : new TypeError(`Container must be a Selector/HTMLElement/VueComponent, received ${type(container)} instead.`)\n}\n\nfunction type (el: any) {\n return el == null ? el : el.constructor.name\n}\n\nfunction $ (el: any): HTMLElement | null {\n if (typeof el === 'string') {\n return document.querySelector<HTMLElement>(el)\n } else if (el && el._isVue) {\n return (el as Vue).$el as HTMLElement\n } else if (el instanceof HTMLElement) {\n return el\n } else {\n return null\n }\n}\n"],"sourceRoot":"","file":"util.js"}
|
|
@@ -13,6 +13,10 @@ var ThemeUtils = _interopRequireWildcard(require("./utils"));
|
|
|
13
13
|
|
|
14
14
|
var _helpers = require("../../util/helpers");
|
|
15
15
|
|
|
16
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
+
|
|
16
20
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
17
21
|
|
|
18
22
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -135,7 +139,6 @@ var Theme = /*#__PURE__*/function (_Service) {
|
|
|
135
139
|
}, {
|
|
136
140
|
key: "setTheme",
|
|
137
141
|
value: function setTheme(theme, value) {
|
|
138
|
-
console.log('setTheme');
|
|
139
142
|
this.themes[theme] = Object.assign(this.themes[theme], value);
|
|
140
143
|
this.applyTheme();
|
|
141
144
|
} // Reset theme defaults
|
|
@@ -191,7 +194,6 @@ var Theme = /*#__PURE__*/function (_Service) {
|
|
|
191
194
|
value: function initVueMeta(root) {
|
|
192
195
|
var _this2 = this;
|
|
193
196
|
|
|
194
|
-
console.log('init vue meta');
|
|
195
197
|
this.vueMeta = root.$meta();
|
|
196
198
|
|
|
197
199
|
if (this.isVueMeta23) {
|
|
@@ -251,6 +253,8 @@ var Theme = /*#__PURE__*/function (_Service) {
|
|
|
251
253
|
}, {
|
|
252
254
|
key: "initTheme",
|
|
253
255
|
value: function initTheme(root) {
|
|
256
|
+
var _this3 = this;
|
|
257
|
+
|
|
254
258
|
// Only watch for reactivity on client side
|
|
255
259
|
if (typeof document === 'undefined') return; // If we get here somehow, ensure
|
|
256
260
|
// existing instance is removed
|
|
@@ -260,12 +264,21 @@ var Theme = /*#__PURE__*/function (_Service) {
|
|
|
260
264
|
this.unwatch = null;
|
|
261
265
|
} // TODO: Update to use RFC if merged
|
|
262
266
|
// https://github.com/vuejs/rfcs/blob/advanced-reactivity-api/active-rfcs/0000-advanced-reactivity-api.md
|
|
263
|
-
// root.$once('hook:created', () => {
|
|
264
|
-
// const obs = reactive({ themes: this.themes })
|
|
265
|
-
// this.unwatch = root.$watch(() => obs.themes, () => this.applyTheme(), { deep: true })
|
|
266
|
-
// })
|
|
267
267
|
|
|
268
268
|
|
|
269
|
+
root.$once('hook:created', function () {
|
|
270
|
+
var obs = _vue.default.observable({
|
|
271
|
+
themes: _this3.themes
|
|
272
|
+
});
|
|
273
|
+
|
|
274
|
+
_this3.unwatch = root.$watch(function () {
|
|
275
|
+
return obs.themes;
|
|
276
|
+
}, function () {
|
|
277
|
+
return _this3.applyTheme();
|
|
278
|
+
}, {
|
|
279
|
+
deep: true
|
|
280
|
+
});
|
|
281
|
+
});
|
|
269
282
|
this.applyTheme();
|
|
270
283
|
}
|
|
271
284
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/services/theme/index.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-multi-spaces */\n// Extensions\nimport { Service } from '../service'\n\n// Utilities\nimport * as ThemeUtils from './utils'\nimport { getNestedValue } from '../../util/helpers'\n\n// Types\nimport {App, reactive} from 'vue'\nimport { VuetifyPreset } from 'vuetify/types/services/presets'\nimport {\n VuetifyParsedTheme,\n VuetifyThemes,\n VuetifyThemeVariant,\n Theme as ITheme,\n} from 'vuetify/types/services/theme'\n\nexport class Theme extends Service {\n static property: 'theme' = 'theme'\n\n public disabled = false\n\n public options: ITheme['options']\n\n public styleEl?: HTMLStyleElement\n\n public themes: VuetifyThemes\n\n public defaults: VuetifyThemes\n\n private isDark = null as boolean | null\n\n private unwatch = null as (() => void) | null\n\n private vueMeta = null as any | null\n\n constructor (preset: VuetifyPreset) {\n super()\n\n const {\n dark,\n disable,\n options,\n themes,\n } = preset[Theme.property]\n\n this.dark = Boolean(dark)\n this.defaults = this.themes = themes\n this.options = options\n\n if (disable) {\n this.disabled = true\n\n return\n }\n\n this.themes = {\n dark: this.fillVariant(themes.dark, true),\n light: this.fillVariant(themes.light, false),\n }\n }\n\n // When setting css, check for element and apply new values\n /* eslint-disable-next-line accessor-pairs */\n set css (val: string) {\n if (this.vueMeta) {\n if (this.isVueMeta23) {\n this.applyVueMeta23()\n }\n return\n }\n this.checkOrCreateStyleElement() && (this.styleEl!.innerHTML = val)\n }\n\n set dark (val: boolean) {\n const oldDark = this.isDark\n\n this.isDark = val\n // Only apply theme after dark\n // has already been set before\n oldDark != null && this.applyTheme()\n }\n\n get dark () {\n return Boolean(this.isDark)\n }\n\n // Apply current theme default\n // only called on client side\n public applyTheme (): void {\n if (this.disabled) return this.clearCss()\n\n this.css = this.generatedStyles\n }\n\n public clearCss (): void {\n this.css = ''\n }\n\n // Initialize theme for SSR and SPA\n // Attach to ssrContext head or\n // apply new theme to document\n public init (root: App, ssrContext?: any): void {\n if (this.disabled) return\n\n /* istanbul ignore else */\n if ((root as any).$meta) {\n this.initVueMeta(root)\n } else if (ssrContext) {\n this.initSSR(ssrContext)\n }\n\n this.initTheme(root)\n }\n\n // Allows for you to set target theme\n public setTheme (theme: 'light' | 'dark', value: object) {\n console.log('setTheme')\n this.themes[theme] = Object.assign(this.themes[theme], value)\n this.applyTheme()\n }\n\n // Reset theme defaults\n public resetThemes () {\n this.themes.light = Object.assign({}, this.defaults.light)\n this.themes.dark = Object.assign({}, this.defaults.dark)\n this.applyTheme()\n }\n\n // Check for existence of style element\n private checkOrCreateStyleElement (): boolean {\n this.styleEl = document.getElementById('vuetify-theme-stylesheet') as HTMLStyleElement\n\n /* istanbul ignore next */\n if (this.styleEl) return true\n\n this.genStyleElement() // If doesn't have it, create it\n\n return Boolean(this.styleEl)\n }\n\n private fillVariant (\n theme: Partial<VuetifyThemeVariant> = {},\n dark: boolean\n ): VuetifyThemeVariant {\n const defaultTheme = this.themes[dark ? 'dark' : 'light']\n\n return Object.assign({},\n defaultTheme,\n theme\n )\n }\n\n // Generate the style element\n // if applicable\n private genStyleElement (): void {\n /* istanbul ignore if */\n if (typeof document === 'undefined') return\n\n /* istanbul ignore next */\n this.styleEl = document.createElement('style')\n this.styleEl.type = 'text/css'\n this.styleEl.id = 'vuetify-theme-stylesheet'\n\n if (this.options.cspNonce) {\n this.styleEl.setAttribute('nonce', this.options.cspNonce)\n }\n\n document.head.appendChild(this.styleEl)\n }\n\n private initVueMeta (root: any) {\n console.log('init vue meta')\n this.vueMeta = root.$meta()\n if (this.isVueMeta23) {\n // vue-meta needs to apply after mounted()\n root.$nextTick(() => {\n this.applyVueMeta23()\n })\n return\n }\n\n const metaKeyName = typeof this.vueMeta.getOptions === 'function' ? this.vueMeta.getOptions().keyName : 'metaInfo'\n const metaInfo = root.$options[metaKeyName] || {}\n\n root.$options[metaKeyName] = () => {\n metaInfo.style = metaInfo.style || []\n\n const vuetifyStylesheet = metaInfo.style.find((s: any) => s.id === 'vuetify-theme-stylesheet')\n\n if (!vuetifyStylesheet) {\n metaInfo.style.push({\n cssText: this.generatedStyles,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n nonce: (this.options || {}).cspNonce,\n })\n } else {\n vuetifyStylesheet.cssText = this.generatedStyles\n }\n\n return metaInfo\n }\n }\n\n private applyVueMeta23 () {\n const { set } = this.vueMeta.addApp('vuetify')\n\n set({\n style: [{\n cssText: this.generatedStyles,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n nonce: this.options.cspNonce,\n }],\n })\n }\n\n private initSSR (ssrContext?: any) {\n // SSR\n const nonce = this.options.cspNonce ? ` nonce=\"${this.options.cspNonce}\"` : ''\n ssrContext.head = ssrContext.head || ''\n ssrContext.head += `<style type=\"text/css\" id=\"vuetify-theme-stylesheet\"${nonce}>${this.generatedStyles}</style>`\n }\n\n private initTheme (root: App) {\n // Only watch for reactivity on client side\n if (typeof document === 'undefined') return\n\n // If we get here somehow, ensure\n // existing instance is removed\n if (this.unwatch) {\n this.unwatch()\n this.unwatch = null\n }\n\n // TODO: Update to use RFC if merged\n // https://github.com/vuejs/rfcs/blob/advanced-reactivity-api/active-rfcs/0000-advanced-reactivity-api.md\n\n // root.$once('hook:created', () => {\n // const obs = reactive({ themes: this.themes })\n // this.unwatch = root.$watch(() => obs.themes, () => this.applyTheme(), { deep: true })\n // })\n\n\n this.applyTheme()\n }\n\n get currentTheme () {\n const target = this.dark ? 'dark' : 'light'\n\n return this.themes[target]\n }\n\n get generatedStyles (): string {\n const theme = this.parsedTheme\n /* istanbul ignore next */\n const options = this.options || {}\n let css\n\n if (options.themeCache != null) {\n css = options.themeCache.get(theme)\n /* istanbul ignore if */\n if (css != null) return css\n }\n\n css = ThemeUtils.genStyles(theme, options.customProperties)\n\n if (options.minifyTheme != null) {\n css = options.minifyTheme(css)\n }\n\n if (options.themeCache != null) {\n options.themeCache.set(theme, css)\n }\n\n return css\n }\n\n get parsedTheme (): VuetifyParsedTheme {\n return ThemeUtils.parse(\n this.currentTheme || {},\n undefined,\n getNestedValue(this.options, ['variations'], true)\n )\n }\n\n // Is using v2.3 of vue-meta\n // https://github.com/nuxt/vue-meta/releases/tag/v2.3.0\n private get isVueMeta23 (): boolean {\n return typeof this.vueMeta.addApp === 'function'\n }\n}\n"],"sourceRoot":"","file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/services/theme/index.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-multi-spaces */\n// Extensions\nimport { Service } from '../service'\n\n// Utilities\nimport * as ThemeUtils from './utils'\nimport { getNestedValue } from '../../util/helpers'\n\n// Types\nimport Vue from 'vue'\nimport { VuetifyPreset } from 'vuetify/types/services/presets'\nimport {\n VuetifyParsedTheme,\n VuetifyThemes,\n VuetifyThemeVariant,\n Theme as ITheme,\n} from 'vuetify/types/services/theme'\n\nexport class Theme extends Service {\n static property: 'theme' = 'theme'\n\n public disabled = false\n\n public options: ITheme['options']\n\n public styleEl?: HTMLStyleElement\n\n public themes: VuetifyThemes\n\n public defaults: VuetifyThemes\n\n private isDark = null as boolean | null\n\n private unwatch = null as (() => void) | null\n\n private vueMeta = null as any | null\n\n constructor (preset: VuetifyPreset) {\n super()\n\n const {\n dark,\n disable,\n options,\n themes,\n } = preset[Theme.property]\n\n this.dark = Boolean(dark)\n this.defaults = this.themes = themes\n this.options = options\n\n if (disable) {\n this.disabled = true\n\n return\n }\n\n this.themes = {\n dark: this.fillVariant(themes.dark, true),\n light: this.fillVariant(themes.light, false),\n }\n }\n\n // When setting css, check for element and apply new values\n /* eslint-disable-next-line accessor-pairs */\n set css (val: string) {\n if (this.vueMeta) {\n if (this.isVueMeta23) {\n this.applyVueMeta23()\n }\n return\n }\n this.checkOrCreateStyleElement() && (this.styleEl!.innerHTML = val)\n }\n\n set dark (val: boolean) {\n const oldDark = this.isDark\n\n this.isDark = val\n // Only apply theme after dark\n // has already been set before\n oldDark != null && this.applyTheme()\n }\n\n get dark () {\n return Boolean(this.isDark)\n }\n\n // Apply current theme default\n // only called on client side\n public applyTheme (): void {\n if (this.disabled) return this.clearCss()\n\n this.css = this.generatedStyles\n }\n\n public clearCss (): void {\n this.css = ''\n }\n\n // Initialize theme for SSR and SPA\n // Attach to ssrContext head or\n // apply new theme to document\n public init (root: Vue, ssrContext?: any): void {\n if (this.disabled) return\n\n /* istanbul ignore else */\n if ((root as any).$meta) {\n this.initVueMeta(root)\n } else if (ssrContext) {\n this.initSSR(ssrContext)\n }\n\n this.initTheme(root)\n }\n\n // Allows for you to set target theme\n public setTheme (theme: 'light' | 'dark', value: object) {\n this.themes[theme] = Object.assign(this.themes[theme], value)\n this.applyTheme()\n }\n\n // Reset theme defaults\n public resetThemes () {\n this.themes.light = Object.assign({}, this.defaults.light)\n this.themes.dark = Object.assign({}, this.defaults.dark)\n this.applyTheme()\n }\n\n // Check for existence of style element\n private checkOrCreateStyleElement (): boolean {\n this.styleEl = document.getElementById('vuetify-theme-stylesheet') as HTMLStyleElement\n\n /* istanbul ignore next */\n if (this.styleEl) return true\n\n this.genStyleElement() // If doesn't have it, create it\n\n return Boolean(this.styleEl)\n }\n\n private fillVariant (\n theme: Partial<VuetifyThemeVariant> = {},\n dark: boolean\n ): VuetifyThemeVariant {\n const defaultTheme = this.themes[dark ? 'dark' : 'light']\n\n return Object.assign({},\n defaultTheme,\n theme\n )\n }\n\n // Generate the style element\n // if applicable\n private genStyleElement (): void {\n /* istanbul ignore if */\n if (typeof document === 'undefined') return\n\n /* istanbul ignore next */\n this.styleEl = document.createElement('style')\n this.styleEl.type = 'text/css'\n this.styleEl.id = 'vuetify-theme-stylesheet'\n\n if (this.options.cspNonce) {\n this.styleEl.setAttribute('nonce', this.options.cspNonce)\n }\n\n document.head.appendChild(this.styleEl)\n }\n\n private initVueMeta (root: any) {\n this.vueMeta = root.$meta()\n if (this.isVueMeta23) {\n // vue-meta needs to apply after mounted()\n root.$nextTick(() => {\n this.applyVueMeta23()\n })\n return\n }\n\n const metaKeyName = typeof this.vueMeta.getOptions === 'function' ? this.vueMeta.getOptions().keyName : 'metaInfo'\n const metaInfo = root.$options[metaKeyName] || {}\n\n root.$options[metaKeyName] = () => {\n metaInfo.style = metaInfo.style || []\n\n const vuetifyStylesheet = metaInfo.style.find((s: any) => s.id === 'vuetify-theme-stylesheet')\n\n if (!vuetifyStylesheet) {\n metaInfo.style.push({\n cssText: this.generatedStyles,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n nonce: (this.options || {}).cspNonce,\n })\n } else {\n vuetifyStylesheet.cssText = this.generatedStyles\n }\n\n return metaInfo\n }\n }\n\n private applyVueMeta23 () {\n const { set } = this.vueMeta.addApp('vuetify')\n\n set({\n style: [{\n cssText: this.generatedStyles,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n nonce: this.options.cspNonce,\n }],\n })\n }\n\n private initSSR (ssrContext?: any) {\n // SSR\n const nonce = this.options.cspNonce ? ` nonce=\"${this.options.cspNonce}\"` : ''\n ssrContext.head = ssrContext.head || ''\n ssrContext.head += `<style type=\"text/css\" id=\"vuetify-theme-stylesheet\"${nonce}>${this.generatedStyles}</style>`\n }\n\n private initTheme (root: Vue) {\n // Only watch for reactivity on client side\n if (typeof document === 'undefined') return\n\n // If we get here somehow, ensure\n // existing instance is removed\n if (this.unwatch) {\n this.unwatch()\n this.unwatch = null\n }\n\n // TODO: Update to use RFC if merged\n // https://github.com/vuejs/rfcs/blob/advanced-reactivity-api/active-rfcs/0000-advanced-reactivity-api.md\n root.$once('hook:created', () => {\n const obs = Vue.observable({ themes: this.themes })\n this.unwatch = root.$watch(() => obs.themes, () => this.applyTheme(), { deep: true })\n })\n this.applyTheme()\n }\n\n get currentTheme () {\n const target = this.dark ? 'dark' : 'light'\n\n return this.themes[target]\n }\n\n get generatedStyles (): string {\n const theme = this.parsedTheme\n /* istanbul ignore next */\n const options = this.options || {}\n let css\n\n if (options.themeCache != null) {\n css = options.themeCache.get(theme)\n /* istanbul ignore if */\n if (css != null) return css\n }\n\n css = ThemeUtils.genStyles(theme, options.customProperties)\n\n if (options.minifyTheme != null) {\n css = options.minifyTheme(css)\n }\n\n if (options.themeCache != null) {\n options.themeCache.set(theme, css)\n }\n\n return css\n }\n\n get parsedTheme (): VuetifyParsedTheme {\n return ThemeUtils.parse(\n this.currentTheme || {},\n undefined,\n getNestedValue(this.options, ['variations'], true)\n )\n }\n\n // Is using v2.3 of vue-meta\n // https://github.com/nuxt/vue-meta/releases/tag/v2.3.0\n private get isVueMeta23 (): boolean {\n return typeof this.vueMeta.addApp === 'function'\n }\n}\n"],"sourceRoot":"","file":"index.js"}
|
package/es5/util/helpers.js
CHANGED
|
@@ -39,10 +39,11 @@ exports.camelizeObjectKeys = camelizeObjectKeys;
|
|
|
39
39
|
exports.mergeDeep = mergeDeep;
|
|
40
40
|
exports.fillArray = fillArray;
|
|
41
41
|
exports.composedPath = composedPath;
|
|
42
|
-
exports.normalizeAttrs = normalizeAttrs;
|
|
43
42
|
exports.camelize = exports.keyCodes = exports.passiveSupported = void 0;
|
|
44
43
|
|
|
45
|
-
var _vue = require("vue");
|
|
44
|
+
var _vue = _interopRequireDefault(require("vue"));
|
|
45
|
+
|
|
46
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
46
47
|
|
|
47
48
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
48
49
|
|
|
@@ -67,7 +68,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
67
68
|
function createSimpleFunctional(c) {
|
|
68
69
|
var el = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'div';
|
|
69
70
|
var name = arguments.length > 2 ? arguments[2] : undefined;
|
|
70
|
-
return
|
|
71
|
+
return _vue.default.extend({
|
|
71
72
|
name: name || c.replace(/__/g, '-'),
|
|
72
73
|
functional: true,
|
|
73
74
|
props: {
|
|
@@ -76,13 +77,12 @@ function createSimpleFunctional(c) {
|
|
|
76
77
|
default: el
|
|
77
78
|
}
|
|
78
79
|
},
|
|
79
|
-
render: function render() {
|
|
80
|
-
var
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return (0, _vue.h)(this.tag, data, (_b = (_a = this.$slots).default) === null || _b === void 0 ? void 0 : _b.call(_a));
|
|
80
|
+
render: function render(h, _ref) {
|
|
81
|
+
var data = _ref.data,
|
|
82
|
+
props = _ref.props,
|
|
83
|
+
children = _ref.children;
|
|
84
|
+
data.staticClass = "".concat(c, " ").concat(data.staticClass || '').trim();
|
|
85
|
+
return h(props.tag, data, children);
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
88
|
}
|
|
@@ -172,7 +172,7 @@ function deepEqual(a, b) {
|
|
|
172
172
|
function getObjectValueByPath(obj, path, fallback) {
|
|
173
173
|
// credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621
|
|
174
174
|
if (obj == null || !path || typeof path !== 'string') return fallback;
|
|
175
|
-
if (
|
|
175
|
+
if (obj[path] !== undefined) return obj[path];
|
|
176
176
|
path = path.replace(/\[(\w+)\]/g, '.$1'); // convert indexes to properties
|
|
177
177
|
|
|
178
178
|
path = path.replace(/^\./, ''); // strip a leading dot
|
|
@@ -371,9 +371,9 @@ function sortItems(items, sortBy, sortDesc, locale, customSorters) {
|
|
|
371
371
|
var sortB = getObjectValueByPath(b, sortKey);
|
|
372
372
|
|
|
373
373
|
if (sortDesc[i]) {
|
|
374
|
-
var
|
|
375
|
-
sortA =
|
|
376
|
-
sortB =
|
|
374
|
+
var _ref2 = [sortB, sortA];
|
|
375
|
+
sortA = _ref2[0];
|
|
376
|
+
sortB = _ref2[1];
|
|
377
377
|
}
|
|
378
378
|
|
|
379
379
|
if (customSorters && customSorters[sortKey]) {
|
|
@@ -434,14 +434,12 @@ function searchItems(items, search) {
|
|
|
434
434
|
|
|
435
435
|
|
|
436
436
|
function getSlotType(vm, name, split) {
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
if (vm.$slots.hasOwnProperty(name) && vm.$slots.hasOwnProperty(name) && vm.$slots[name].name) {
|
|
437
|
+
if (vm.$slots.hasOwnProperty(name) && vm.$scopedSlots.hasOwnProperty(name) && vm.$scopedSlots[name].name) {
|
|
440
438
|
return split ? 'v-slot' : 'scoped';
|
|
441
439
|
}
|
|
442
440
|
|
|
443
441
|
if (vm.$slots.hasOwnProperty(name)) return 'normal';
|
|
444
|
-
if (vm.$
|
|
442
|
+
if (vm.$scopedSlots.hasOwnProperty(name)) return 'scoped';
|
|
445
443
|
}
|
|
446
444
|
|
|
447
445
|
function debounce(fn, delay) {
|
|
@@ -486,10 +484,10 @@ function getSlot(vm) {
|
|
|
486
484
|
var optional = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
487
485
|
var kebabName = kebabCase(name);
|
|
488
486
|
|
|
489
|
-
if (vm.$
|
|
490
|
-
return vm.$
|
|
491
|
-
} else if (vm.$
|
|
492
|
-
return vm.$
|
|
487
|
+
if (vm.$scopedSlots.hasOwnProperty(name)) {
|
|
488
|
+
return vm.$scopedSlots[name](data instanceof Function ? data() : data);
|
|
489
|
+
} else if (vm.$scopedSlots.hasOwnProperty(kebabName)) {
|
|
490
|
+
return vm.$scopedSlots[kebabName](data instanceof Function ? data() : data);
|
|
493
491
|
} else if (vm.$slots.hasOwnProperty(name) && (!data || optional)) {
|
|
494
492
|
return vm.$slots[name];
|
|
495
493
|
} else if (vm.$slots.hasOwnProperty(kebabName) && (!data || optional)) {
|
|
@@ -595,15 +593,4 @@ function composedPath(e) {
|
|
|
595
593
|
|
|
596
594
|
return path;
|
|
597
595
|
}
|
|
598
|
-
|
|
599
|
-
function normalizeAttrs(attrs) {
|
|
600
|
-
var keys = Object.keys(attrs).sort();
|
|
601
|
-
var obj = {};
|
|
602
|
-
|
|
603
|
-
for (var i = 0; i < keys.length; i++) {
|
|
604
|
-
obj[keys[i]] = attrs[keys[i]];
|
|
605
|
-
}
|
|
606
|
-
|
|
607
|
-
return obj;
|
|
608
|
-
}
|
|
609
596
|
//# sourceMappingURL=helpers.js.map
|
package/es5/util/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/util/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;;;;AAKM,SAAU,sBAAV,CACJ,CADI,EAGS;AAAA,MADb,EACa,uEADR,KACQ;AAAA,MAAb,IAAa;AAEb,SAAO,0BAAgB;AACrB,IAAA,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,OAAF,CAAU,KAAV,EAAiB,GAAjB,CADO;AAGrB,IAAA,UAAU,EAAE,IAHS;AAKrB,IAAA,KAAK,EAAE;AACL,MAAA,GAAG,EAAE;AACH,QAAA,IAAI,EAAE,MADH;AAEH,QAAA,OAAO,EAAE;AAFN;AADA,KALc;AAYrB,IAAA,MAZqB,oBAYf;;;AACJ,UAAM,IAAI,qBAAQ,KAAK,MAAb,CAAV;;AAEA,MAAA,IAAI,CAAC,KAAL,GAAa,UAAI,CAAJ,cAAS,IAAI,CAAC,KAAL,IAAc,EAAvB,EAA6B,IAA7B,EAAb;AAEA,aAAO,YAAE,KAAK,GAAP,EAAY,IAAZ,EAAkB,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,KAAK,MAAL,EAAY,OAAZ,MAAmB,IAAnB,IAAmB,EAAA,KAAA,KAAA,CAAnB,GAAmB,KAAA,CAAnB,GAAmB,EAAA,CAAA,IAAA,CAAA,EAAA,CAArC,CAAP;AACD;AAlBoB,GAAhB,CAAP;AAoBD;;AAGK,SAAU,eAAV,CAA2B,OAA3B,EAAgE;AAAA,MAAb,QAAa,uEAAF,EAAE;AACpE,uDACK,QADL,GAEK,OAAO,CAAC,SAFb;AAGE,IAAA,KAAK,EAAE,OAAO,CAAC;AAHjB,KAIM,OAAO,CAAC,KAAR,IAAiB,EAJvB;AAMD;;AAEK,SAAU,oBAAV,CACJ,EADI,EAEJ,SAFI,EAGJ,EAHI,EAI8C;AAAA,MAAlD,OAAkD,uEAAL,KAAK;;AAElD,MAAM,IAAI,GAAG,SAAP,IAAO,CAAC,KAAD,EAAiB;AAC5B,IAAA,EAAE,CAAC,KAAD,CAAF;AACA,IAAA,EAAE,CAAC,mBAAH,CAAuB,SAAvB,EAAkC,IAAlC,EAAwC,OAAxC;AACD,GAHD;;AAKA,EAAA,EAAE,CAAC,gBAAH,CAAoB,SAApB,EAA+B,IAA/B,EAAqC,OAArC;AACD;;AAED,IAAI,gBAAgB,GAAG,KAAvB;;;AACA,IAAI;AACF,MAAI,OAAO,MAAP,KAAkB,WAAtB,EAAmC;AACjC,QAAM,gBAAgB,GAAG,MAAM,CAAC,cAAP,CAAsB,EAAtB,EAA0B,SAA1B,EAAqC;AAC5D,MAAA,GAAG,EAAE,eAAK;AACR,mCAAA,gBAAgB,GAAG,IAAnB;AACD;AAH2D,KAArC,CAAzB;AAMA,IAAA,MAAM,CAAC,gBAAP,CAAwB,cAAxB,EAAwC,gBAAxC,EAA0D,gBAA1D;AACA,IAAA,MAAM,CAAC,mBAAP,CAA2B,cAA3B,EAA2C,gBAA3C,EAA6D,gBAA7D;AACD;AACF,CAXD,CAWE,OAAO,CAAP,EAAU;AAAE,EAAA,OAAO,CAAC,IAAR,CAAa,CAAb;AAAiB;AAAC;;;AAG1B,SAAU,uBAAV,CACJ,EADI,EAEJ,KAFI,EAGJ,EAHI,EAIJ,OAJI,EAIO;AAEX,EAAA,EAAE,CAAC,gBAAH,CAAoB,KAApB,EAA2B,EAA3B,EAA+B,gBAAgB,GAAG,OAAH,GAAa,KAA5D;AACD;;AAEK,SAAU,cAAV,CAA0B,GAA1B,EAAoC,IAApC,EAA+D,QAA/D,EAA6E;AACjF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAL,GAAc,CAA3B;AAEA,MAAI,IAAI,GAAG,CAAX,EAAc,OAAO,GAAG,KAAK,SAAR,GAAoB,QAApB,GAA+B,GAAtC;;AAEd,OAAK,IAAI,CAAC,GAAG,CAAb,EAAgB,CAAC,GAAG,IAApB,EAA0B,CAAC,EAA3B,EAA+B;AAC7B,QAAI,GAAG,IAAI,IAAX,EAAiB;AACf,aAAO,QAAP;AACD;;AACD,IAAA,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAD,CAAL,CAAT;AACD;;AAED,MAAI,GAAG,IAAI,IAAX,EAAiB,OAAO,QAAP;AAEjB,SAAO,GAAG,CAAC,IAAI,CAAC,IAAD,CAAL,CAAH,KAAoB,SAApB,GAAgC,QAAhC,GAA2C,GAAG,CAAC,IAAI,CAAC,IAAD,CAAL,CAArD;AACD;;AAEK,SAAU,SAAV,CAAqB,CAArB,EAA6B,CAA7B,EAAmC;AACvC,MAAI,CAAC,KAAK,CAAV,EAAa,OAAO,IAAP;;AAEb,MACE,CAAC,YAAY,IAAb,IACA,CAAC,YAAY,IADb,IAEA,CAAC,CAAC,OAAF,OAAgB,CAAC,CAAC,OAAF,EAHlB,EAIE;AACA;AACA,WAAO,KAAP;AACD;;AAED,MAAI,CAAC,KAAK,MAAM,CAAC,CAAD,CAAZ,IAAmB,CAAC,KAAK,MAAM,CAAC,CAAD,CAAnC,EAAwC;AACtC;AACA,WAAO,KAAP;AACD;;AAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAP,CAAY,CAAZ,CAAd;;AAEA,MAAI,KAAK,CAAC,MAAN,KAAiB,MAAM,CAAC,IAAP,CAAY,CAAZ,EAAe,MAApC,EAA4C;AAC1C;AACA,WAAO,KAAP;AACD;;AAED,SAAO,KAAK,CAAC,KAAN,CAAY,UAAA,CAAC;AAAA,WAAI,SAAS,CAAC,CAAC,CAAC,CAAD,CAAF,EAAO,CAAC,CAAC,CAAD,CAAR,CAAb;AAAA,GAAb,CAAP;AACD;;AAEK,SAAU,oBAAV,CAAgC,GAAhC,EAA0C,IAA1C,EAAwD,QAAxD,EAAsE;AAC1E;AACA,MAAI,GAAG,IAAI,IAAP,IAAe,CAAC,IAAhB,IAAwB,OAAO,IAAP,KAAgB,QAA5C,EAAsD,OAAO,QAAP;AACtD,MAAI,IAAI,IAAI,GAAR,IAAe,GAAG,CAAC,IAAD,CAAH,KAAc,SAAjC,EAA4C,OAAO,GAAG,CAAC,IAAD,CAAV;AAC5C,EAAA,IAAI,GAAG,IAAI,CAAC,OAAL,CAAa,YAAb,EAA2B,KAA3B,CAAP,CAJ0E,CAIjC;;AACzC,EAAA,IAAI,GAAG,IAAI,CAAC,OAAL,CAAa,KAAb,EAAoB,EAApB,CAAP,CAL0E,CAK3C;;AAC/B,SAAO,cAAc,CAAC,GAAD,EAAM,IAAI,CAAC,KAAL,CAAW,GAAX,CAAN,EAAuB,QAAvB,CAArB;AACD;;AAEK,SAAU,mBAAV,CACJ,IADI,EAEJ,QAFI,EAGJ,QAHI,EAGU;AAEd,MAAI,QAAQ,IAAI,IAAhB,EAAsB,OAAO,IAAI,KAAK,SAAT,GAAqB,QAArB,GAAgC,IAAvC;AAEtB,MAAI,IAAI,KAAK,MAAM,CAAC,IAAD,CAAnB,EAA2B,OAAO,QAAQ,KAAK,SAAb,GAAyB,IAAzB,GAAgC,QAAvC;AAE3B,MAAI,OAAO,QAAP,KAAoB,QAAxB,EAAkC,OAAO,oBAAoB,CAAC,IAAD,EAAO,QAAP,EAAiB,QAAjB,CAA3B;AAElC,MAAI,KAAK,CAAC,OAAN,CAAc,QAAd,CAAJ,EAA6B,OAAO,cAAc,CAAC,IAAD,EAAO,QAAP,EAAiB,QAAjB,CAArB;AAE7B,MAAI,OAAO,QAAP,KAAoB,UAAxB,EAAoC,OAAO,QAAP;AAEpC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAD,EAAO,QAAP,CAAtB;AAEA,SAAO,OAAO,KAAP,KAAiB,WAAjB,GAA+B,QAA/B,GAA0C,KAAjD;AACD;;AAEK,SAAU,WAAV,CAAuB,MAAvB,EAAqC;AACzC,SAAO,KAAK,CAAC,IAAN,CAAW;AAAE,IAAA,MAAM,EAAN;AAAF,GAAX,EAAuB,UAAC,CAAD,EAAI,CAAJ;AAAA,WAAU,CAAV;AAAA,GAAvB,CAAP;AACD;;AAEK,SAAU,SAAV,CAAqB,EAArB,EAAwC;AAC5C,MAAI,CAAC,EAAD,IAAO,EAAE,CAAC,QAAH,KAAgB,IAAI,CAAC,YAAhC,EAA8C,OAAO,CAAP;AAE9C,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,gBAAP,CAAwB,EAAxB,EAA4B,gBAA5B,CAA6C,SAA7C,CAAf;AAEA,MAAI,CAAC,KAAL,EAAY,OAAO,SAAS,CAAC,EAAE,CAAC,UAAJ,CAAhB;AACZ,SAAO,KAAP;AACD;;AAEK,SAAU,kBAAV,CAAoD,GAApD,EAA4D,IAA5D,EAAqE;AACzE,MAAM,QAAQ,GAAG,EAAjB;;AAEA,OAAK,IAAI,CAAC,GAAG,CAAb,EAAgB,CAAC,GAAG,IAAI,CAAC,MAAzB,EAAiC,CAAC,EAAlC,EAAsC;AACpC,QAAM,GAAG,GAAG,IAAI,CAAC,CAAD,CAAhB;;AACA,QAAI,OAAO,GAAG,CAAC,GAAD,CAAV,KAAoB,WAAxB,EAAqC;AACnC,MAAA,QAAQ,CAAC,GAAD,CAAR,GAAgB,GAAG,CAAC,GAAD,CAAnB;AACD;AACF;;AAED,SAAO,QAAP;AACD;;AAEK,SAAU,aAAV,CAAyB,GAAzB,EAA6E;AAAA,MAAX,IAAW,uEAAJ,IAAI;;AACjF,MAAI,GAAG,IAAI,IAAP,IAAe,GAAG,KAAK,EAA3B,EAA+B;AAC7B,WAAO,SAAP;AACD,GAFD,MAEO,IAAI,KAAK,CAAC,CAAC,GAAF,CAAT,EAAkB;AACvB,WAAO,MAAM,CAAC,GAAD,CAAb;AACD,GAFM,MAEA;AACL,qBAAU,MAAM,CAAC,GAAD,CAAhB,SAAwB,IAAxB;AACD;AACF;;AAEK,SAAU,SAAV,CAAqB,GAArB,EAAgC;AACpC,SAAO,CAAC,GAAG,IAAI,EAAR,EAAY,OAAZ,CAAoB,iBAApB,EAAuC,OAAvC,EAAgD,WAAhD,EAAP;AACD;;AAEK,SAAU,QAAV,CAAoB,GAApB,EAA4B;AAChC,SAAO,GAAG,KAAK,IAAR,IAAgB,QAAO,GAAP,MAAe,QAAtC;AACD,C,CAED;;;AACO,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAP,CAAc;AACpC,EAAA,KAAK,EAAE,EAD6B;AAEpC,EAAA,GAAG,EAAE,CAF+B;AAGpC,EAAA,MAAM,EAAE,EAH4B;AAIpC,EAAA,GAAG,EAAE,EAJ+B;AAKpC,EAAA,KAAK,EAAE,EAL6B;AAMpC,EAAA,EAAE,EAAE,EANgC;AAOpC,EAAA,IAAI,EAAE,EAP8B;AAQpC,EAAA,IAAI,EAAE,EAR8B;AASpC,EAAA,KAAK,EAAE,EAT6B;AAUpC,EAAA,GAAG,EAAE,EAV+B;AAWpC,EAAA,IAAI,EAAE,EAX8B;AAYpC,EAAA,GAAG,EAAE,EAZ+B;AAapC,EAAA,SAAS,EAAE,CAbyB;AAcpC,EAAA,MAAM,EAAE,EAd4B;AAepC,EAAA,MAAM,EAAE,EAf4B;AAgBpC,EAAA,QAAQ,EAAE,EAhB0B;AAiBpC,EAAA,KAAK,EAAE;AAjB6B,CAAd,CAAjB;AAoBP;;;AAGG;;;;AACG,SAAU,iBAAV,CAA6B,EAA7B,EAAsC,QAAtC,EAAsD;AAC1D;AACA,MAAM,SAAS,GAAG,EAAE,CAAC,QAAH,CAAY,KAAZ,CAAkB,SAApC,CAF0D,CAI1D;;AACA,MAAI,QAAQ,CAAC,UAAT,CAAoB,GAApB,CAAJ,EAA8B;AAC5B;AACA,QAAM,QAAQ,mCAA4B,QAAQ,CAAC,KAAT,CAAe,GAAf,EAAoB,GAApB,GAA2B,KAA3B,CAAiC,GAAjC,EAAsC,GAAtC,EAA5B,CAAd,CAF4B,CAI5B;AACA;;AAEA,QAAM,QAAQ,GAAG,oBAAoB,CAAC,EAAD,EAAK,QAAL,EAAe,QAAf,CAArC;AAEA,QAAI,OAAO,QAAP,KAAoB,QAAxB,EAAkC,QAAQ,GAAG,QAAX,CAAlC,KACK,OAAO,QAAP;AACN;;AAED,MAAI,SAAS,IAAI,IAAjB,EAAuB;AACrB,WAAO,QAAP;AACD;;AAED,SAAO;AACL,IAAA,SAAS,EAAT,SADK;AAEL,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE;AADD;AAFF,GAAP;AAMD;;AAEK,SAAU,IAAV,CAAmB,CAAnB,EAAuB;AAC3B,SAAO,MAAM,CAAC,IAAP,CAAY,CAAZ,CAAP;AACD;AAED;;AAEG;;;AACH,IAAM,UAAU,GAAG,QAAnB;;AACO,IAAM,QAAQ,GAAG,SAAX,QAAW,CAAC,GAAD,EAAwB;AAC9C,SAAO,GAAG,CAAC,OAAJ,CAAY,UAAZ,EAAwB,UAAC,CAAD,EAAI,CAAJ;AAAA,WAAU,CAAC,GAAG,CAAC,CAAC,WAAF,EAAH,GAAqB,EAAhC;AAAA,GAAxB,CAAP;AACD,CAFM;AAIP;;AAEG;;;;;AACG,SAAU,SAAV,CAAqB,CAArB,EAA+B,CAA/B,EAAuC;AAC3C,MAAM,IAAI,GAAU,EAApB;;AACA,OAAK,IAAI,CAAC,GAAG,CAAb,EAAgB,CAAC,GAAG,CAAC,CAAC,MAAtB,EAA8B,CAAC,EAA/B,EAAmC;AACjC,QAAI,CAAC,CAAC,OAAF,CAAU,CAAC,CAAC,CAAD,CAAX,IAAkB,CAAtB,EAAyB,IAAI,CAAC,IAAL,CAAU,CAAC,CAAC,CAAD,CAAX;AAC1B;;AACD,SAAO,IAAP;AACD;AAED;;AAEG;;;AACG,SAAU,UAAV,CAAsB,GAAtB,EAAiC;AACrC,SAAO,GAAG,CAAC,MAAJ,CAAW,CAAX,EAAc,WAAd,KAA8B,GAAG,CAAC,KAAJ,CAAU,CAAV,CAArC;AACD;;AAEK,SAAU,UAAV,CACJ,KADI,EAEJ,OAFI,EAGJ,SAHI,EAGgB;AAEpB,MAAM,GAAG,GAAG,OAAO,CAAC,CAAD,CAAnB;AACA,MAAM,MAAM,GAAmB,EAA/B;AACA,MAAI,OAAJ;;AACA,OAAK,IAAI,CAAC,GAAG,CAAb,EAAgB,CAAC,GAAG,KAAK,CAAC,MAA1B,EAAkC,CAAC,EAAnC,EAAuC;AACrC,QAAM,IAAI,GAAG,KAAK,CAAC,CAAD,CAAlB;AACA,QAAM,GAAG,GAAG,oBAAoB,CAAC,IAAD,EAAO,GAAP,EAAY,IAAZ,CAAhC;;AACA,QAAI,OAAO,KAAK,GAAhB,EAAqB;AACnB,MAAA,OAAO,GAAG,GAAV;AACA,MAAA,MAAM,CAAC,IAAP,CAAY;AACV,QAAA,IAAI,EAAE,GAAG,KAAA,IAAH,IAAA,GAAG,KAAA,KAAA,CAAH,GAAA,GAAA,GAAO,EADH;AAEV,QAAA,KAAK,EAAE;AAFG,OAAZ;AAID;;AACD,IAAA,MAAM,CAAC,MAAM,CAAC,MAAP,GAAgB,CAAjB,CAAN,CAA0B,KAA1B,CAAgC,IAAhC,CAAqC,IAArC;AACD;;AACD,SAAO,MAAP;AACD;;AAEK,SAAU,WAAV,CAA0B,CAA1B,EAAuD;AAAS,SAAO,CAAC,IAAI,IAAL,GAAY,KAAK,CAAC,OAAN,CAAc,CAAd,IAAmB,CAAnB,GAAuB,CAAC,CAAD,CAAnC,GAAyC,EAAhD;AAAoD;;AAEpH,SAAU,SAAV,CACJ,KADI,EAEJ,MAFI,EAGJ,QAHI,EAIJ,MAJI,EAKJ,aALI,EAKuD;AAE3D,MAAI,MAAM,KAAK,IAAX,IAAmB,CAAC,MAAM,CAAC,MAA/B,EAAuC,OAAO,KAAP;AACvC,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,QAAT,CAAkB,MAAlB,EAA0B;AAAE,IAAA,WAAW,EAAE,QAAf;AAAyB,IAAA,KAAK,EAAE;AAAhC,GAA1B,CAAvB;AAEA,SAAO,KAAK,CAAC,IAAN,CAAW,UAAC,CAAD,EAAI,CAAJ,EAAS;AACzB,SAAK,IAAI,CAAC,GAAG,CAAb,EAAgB,CAAC,GAAG,MAAM,CAAC,MAA3B,EAAmC,CAAC,EAApC,EAAwC;AACtC,UAAM,OAAO,GAAG,MAAM,CAAC,CAAD,CAAtB;AAEA,UAAI,KAAK,GAAG,oBAAoB,CAAC,CAAD,EAAI,OAAJ,CAAhC;AACA,UAAI,KAAK,GAAG,oBAAoB,CAAC,CAAD,EAAI,OAAJ,CAAhC;;AAEA,UAAI,QAAQ,CAAC,CAAD,CAAZ,EAAiB;AAAA,mBACE,CAAC,KAAD,EAAQ,KAAR,CADF;AACd,QAAA,KADc;AACP,QAAA,KADO;AAEhB;;AAED,UAAI,aAAa,IAAI,aAAa,CAAC,OAAD,CAAlC,EAA6C;AAC3C,YAAM,YAAY,GAAG,aAAa,CAAC,OAAD,CAAb,CAAuB,KAAvB,EAA8B,KAA9B,CAArB;AAEA,YAAI,CAAC,YAAL,EAAmB;AAEnB,eAAO,YAAP;AACD,OAhBqC,CAkBtC;;;AACA,UAAI,KAAK,KAAK,IAAV,IAAkB,KAAK,KAAK,IAAhC,EAAsC;AACpC;AACD,OArBqC,CAuBtC;;;AACA,UAAI,KAAK,YAAY,IAAjB,IAAyB,KAAK,YAAY,IAA9C,EAAoD;AAClD,eAAO,KAAK,CAAC,OAAN,KAAkB,KAAK,CAAC,OAAN,EAAzB;AACD;;AA1BqC,iBA4BrB,CAAC,KAAD,EAAQ,KAAR,EAAe,GAAf,CAAmB,UAAA,CAAC;AAAA,eAAI,CAAC,CAAC,IAAI,EAAN,EAAU,QAAV,GAAqB,iBAArB,EAAJ;AAAA,OAApB,CA5BqB;;AAAA;;AA4BrC,MAAA,KA5BqC;AA4B9B,MAAA,KA5B8B;;AA8BtC,UAAI,KAAK,KAAK,KAAd,EAAqB;AACnB,YAAI,CAAC,KAAK,CAAC,KAAD,CAAN,IAAiB,CAAC,KAAK,CAAC,KAAD,CAA3B,EAAoC,OAAO,MAAM,CAAC,KAAD,CAAN,GAAgB,MAAM,CAAC,KAAD,CAA7B;AACpC,eAAO,cAAc,CAAC,OAAf,CAAuB,KAAvB,EAA8B,KAA9B,CAAP;AACD;AACF;;AAED,WAAO,CAAP;AACD,GAtCM,CAAP;AAuCD;;AAEK,SAAU,aAAV,CAAyB,KAAzB,EAAqC,MAArC,EAA4D,IAA5D,EAAqE;AACzE,SAAO,KAAK,IAAI,IAAT,IACL,MAAM,IAAI,IADL,IAEL,OAAO,KAAP,KAAiB,SAFZ,IAGL,KAAK,CAAC,QAAN,GAAiB,iBAAjB,GAAqC,OAArC,CAA6C,MAAM,CAAC,iBAAP,EAA7C,MAA6E,CAAC,CAHhF;AAID;;AAEK,SAAU,WAAV,CAA4C,KAA5C,EAAwD,MAAxD,EAAsE;AAC1E,MAAI,CAAC,MAAL,EAAa,OAAO,KAAP;AACb,EAAA,MAAM,GAAG,MAAM,CAAC,QAAP,GAAkB,WAAlB,EAAT;AACA,MAAI,MAAM,CAAC,IAAP,OAAkB,EAAtB,EAA0B,OAAO,KAAP;AAE1B,SAAO,KAAK,CAAC,MAAN,CAAa,UAAC,IAAD;AAAA,WAAe,MAAM,CAAC,IAAP,CAAY,IAAZ,EAAkB,IAAlB,CAAuB,UAAA,GAAG;AAAA,aAAI,aAAa,CAAC,oBAAoB,CAAC,IAAD,EAAO,GAAP,CAArB,EAAkC,MAAlC,EAA0C,IAA1C,CAAjB;AAAA,KAA1B,CAAf;AAAA,GAAb,CAAP;AACD;AAED;;;;;AAKG;;;AACG,SAAU,WAAV,CAAkD,EAAlD,EAA2D,IAA3D,EAAyE,KAAzE,EAAkF;AACtF,SAAO,QAAP;;AAEA,MAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,KAAkC,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,CAAlC,IAAqE,EAAE,CAAC,MAAH,CAAU,IAAV,EAAwB,IAAjG,EAAuG;AACrG,WAAO,KAAK,GAAG,QAAH,GAAqB,QAAjC;AACD;;AACD,MAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,CAAJ,EAAoC,OAAO,QAAP;AACpC,MAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,CAAJ,EAAoC,OAAO,QAAP;AACrC;;AAEK,SAAU,QAAV,CAAoB,EAApB,EAAkC,KAAlC,EAA+C;AACnD,MAAI,SAAS,GAAG,CAAhB;AACA,SAAO,YAAmB;AAAA,sCAAf,IAAe;AAAf,MAAA,IAAe;AAAA;;AACxB,IAAA,YAAY,CAAC,SAAD,CAAZ;AACA,IAAA,SAAS,GAAG,UAAU,CAAC;AAAA,aAAM,EAAE,MAAF,SAAM,IAAN,CAAN;AAAA,KAAD,EAAoB,KAApB,CAAtB;AACD,GAHD;AAID;;AAEK,SAAU,QAAV,CAAuD,EAAvD,EAA8D,KAA9D,EAA2E;AAC/E,MAAI,UAAU,GAAG,KAAjB;AACA,SAAO,YAAiD;AACtD,QAAI,CAAC,UAAL,EAAiB;AACf,MAAA,UAAU,GAAG,IAAb;AACA,MAAA,UAAU,CAAC;AAAA,eAAM,UAAU,GAAG,KAAnB;AAAA,OAAD,EAA2B,KAA3B,CAAV;AACA,aAAO,EAAE,MAAF,mBAAP;AACD;AACF,GAND;AAOD;;AAEK,SAAU,sBAAV,CAAkC,MAAlC,EAAkD,WAAlD,EAAkE;AACtE,SAAO,MAAM,CAAC,IAAP,CAAY,WAAZ,EAAyB,MAAzB,CAAgC,UAAA,CAAC;AAAA,WAAI,CAAC,CAAC,UAAF,CAAa,MAAb,CAAJ;AAAA,GAAjC,EAA2D,MAA3D,CAAkE,UAAC,GAAD,EAAW,CAAX,EAAwB;AAC/F,IAAA,GAAG,CAAC,CAAC,CAAC,OAAF,CAAU,MAAV,EAAkB,EAAlB,CAAD,CAAH,GAA6B,WAAW,CAAC,CAAD,CAAxC;AACA,WAAO,GAAP;AACD,GAHM,EAGJ,EAHI,CAAP;AAID;;AAEK,SAAU,OAAV,CAAmB,EAAnB,EAA8F;AAAA,MAAlE,IAAkE,uEAA3D,SAA2D;AAAA,MAAhD,IAAgD;AAAA,MAAhB,QAAgB,uEAAL,KAAK;AAClG,MAAM,SAAS,GAAG,SAAS,CAAC,IAAD,CAA3B;;AAEA,MAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,CAAJ,EAAoC;AAClC,WAAO,EAAE,CAAC,MAAH,CAAU,IAAV,EAAiB,IAAI,YAAY,QAAhB,GAA2B,IAAI,EAA/B,GAAoC,IAArD,CAAP;AACD,GAFD,MAEO,IAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,SAAzB,CAAJ,EAAyC;AAC9C,WAAO,EAAE,CAAC,MAAH,CAAU,SAAV,EAAsB,IAAI,YAAY,QAAhB,GAA2B,IAAI,EAA/B,GAAoC,IAA1D,CAAP;AACD,GAFM,MAEA,IAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,IAAzB,MAAmC,CAAC,IAAD,IAAS,QAA5C,CAAJ,EAA2D;AAChE,WAAO,EAAE,CAAC,MAAH,CAAU,IAAV,CAAP;AACD,GAFM,MAEA,IAAI,EAAE,CAAC,MAAH,CAAU,cAAV,CAAyB,SAAzB,MAAwC,CAAC,IAAD,IAAS,QAAjD,CAAJ,EAAgE;AACrE,WAAO,EAAE,CAAC,MAAH,CAAU,SAAV,CAAP;AACD;;AACD,SAAO,SAAP;AACD;;AAEK,SAAU,KAAV,CAAiB,KAAjB,EAAgD;AAAA,MAAhB,GAAgB,uEAAV,CAAU;AAAA,MAAP,GAAO,uEAAD,CAAC;AACpD,SAAO,IAAI,CAAC,GAAL,CAAS,GAAT,EAAc,IAAI,CAAC,GAAL,CAAS,GAAT,EAAc,KAAd,CAAd,CAAP;AACD;;AAEK,SAAU,MAAV,CAAkB,GAAlB,EAA+B,MAA/B,EAAyD;AAAA,MAAV,IAAU,uEAAH,GAAG;AAC7D,SAAO,GAAG,GAAG,IAAI,CAAC,MAAL,CAAY,IAAI,CAAC,GAAL,CAAS,CAAT,EAAY,MAAM,GAAG,GAAG,CAAC,MAAzB,CAAZ,CAAb;AACD;;AAEK,SAAU,KAAV,CAAiB,GAAjB,EAAsC;AAAA,MAAR,IAAQ,uEAAD,CAAC;AAC1C,MAAM,OAAO,GAAa,EAA1B;AACA,MAAI,KAAK,GAAG,CAAZ;;AACA,SAAO,KAAK,GAAG,GAAG,CAAC,MAAnB,EAA2B;AACzB,IAAA,OAAO,CAAC,IAAR,CAAa,GAAG,CAAC,MAAJ,CAAW,KAAX,EAAkB,IAAlB,CAAb;AACA,IAAA,KAAK,IAAI,IAAT;AACD;;AACD,SAAO,OAAP;AACD;;AAEK,SAAU,qBAAV,CAAiC,KAAjC,EAA8D;AAAA,MAAd,MAAc,uEAAL,KAAK;AAClE,MAAM,IAAI,GAAG,MAAM,GAAG,IAAH,GAAU,IAA7B;;AACA,MAAI,KAAK,GAAG,IAAZ,EAAkB;AAChB,qBAAU,KAAV;AACD;;AAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,CAAH,GAAwB,CAAC,GAAD,EAAM,GAAN,EAAW,GAAX,CAA7C;AACA,MAAI,IAAI,GAAG,CAAC,CAAZ;;AACA,SAAO,IAAI,CAAC,GAAL,CAAS,KAAT,KAAmB,IAAnB,IAA2B,IAAI,GAAG,MAAM,CAAC,MAAP,GAAgB,CAAzD,EAA4D;AAC1D,IAAA,KAAK,IAAI,IAAT;AACA,MAAE,IAAF;AACD;;AACD,mBAAU,KAAK,CAAC,OAAN,CAAc,CAAd,CAAV,cAA8B,MAAM,CAAC,IAAD,CAApC;AACD;;AAEK,SAAU,kBAAV,CAA8B,GAA9B,EAAyE;AAC7E,MAAI,CAAC,GAAL,EAAU,OAAO,EAAP;AAEV,SAAO,MAAM,CAAC,IAAP,CAAY,GAAZ,EAAiB,MAAjB,CAAwB,UAAC,CAAD,EAAS,GAAT,EAAwB;AACrD,IAAA,CAAC,CAAC,QAAQ,CAAC,GAAD,CAAT,CAAD,GAAmB,GAAG,CAAC,GAAD,CAAtB;AACA,WAAO,CAAP;AACD,GAHM,EAGJ,EAHI,CAAP;AAID;;AAEK,SAAU,SAAV,GAEwB;AAAA,MAD5B,MAC4B,uEADF,EACE;AAAA,MAA5B,MAA4B,uEAAF,EAAE;;AAE5B,OAAK,IAAM,GAAX,IAAkB,MAAlB,EAA0B;AACxB,QAAM,cAAc,GAAG,MAAM,CAAC,GAAD,CAA7B;AACA,QAAM,cAAc,GAAG,MAAM,CAAC,GAAD,CAA7B,CAFwB,CAIxB;AACA;;AACA,QACE,QAAQ,CAAC,cAAD,CAAR,IACA,QAAQ,CAAC,cAAD,CAFV,EAGE;AACA,MAAA,MAAM,CAAC,GAAD,CAAN,GAAc,SAAS,CAAC,cAAD,EAAiB,cAAjB,CAAvB;AAEA;AACD;;AAED,IAAA,MAAM,CAAC,GAAD,CAAN,GAAc,cAAd;AACD;;AAED,SAAO,MAAP;AACD;;AAEK,SAAU,SAAV,CAAwB,MAAxB,EAAwC,GAAxC,EAA8C;AAClD,SAAO,KAAK,CAAC,MAAD,CAAL,CAAc,IAAd,CAAmB,GAAnB,CAAP;AACD;AAED;;;AACM,SAAU,YAAV,CAAwB,CAAxB,EAAgC;AACpC,MAAI,CAAC,CAAC,YAAN,EAAoB,OAAO,CAAC,CAAC,YAAF,EAAP;AAEpB,MAAM,IAAI,GAAG,EAAb;AACA,MAAI,EAAE,GAAG,CAAC,CAAC,MAAX;;AAEA,SAAO,EAAP,EAAW;AACT,IAAA,IAAI,CAAC,IAAL,CAAU,EAAV;;AAEA,QAAI,EAAE,CAAC,OAAH,KAAe,MAAnB,EAA2B;AACzB,MAAA,IAAI,CAAC,IAAL,CAAU,QAAV;AACA,MAAA,IAAI,CAAC,IAAL,CAAU,MAAV;AAEA,aAAO,IAAP;AACD;;AAED,IAAA,EAAE,GAAG,EAAE,CAAC,aAAR;AACD;;AACD,SAAO,IAAP;AACD;;AAEK,SAAU,cAAV,CAA0B,KAA1B,EAA+B;AACnC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAP,CAAY,KAAZ,EAAmB,IAAnB,EAAb;AAEA,MAAM,GAAG,GAAG,EAAZ;;AAEA,OAAI,IAAI,CAAC,GAAG,CAAZ,EAAe,CAAC,GAAG,IAAI,CAAC,MAAxB,EAAgC,CAAC,EAAjC,EAAqC;AACnC,IAAA,GAAG,CAAC,IAAI,CAAC,CAAD,CAAL,CAAH,GAAe,KAAK,CAAC,IAAI,CAAC,CAAD,CAAL,CAApB;AACD;;AAED,SAAO,GAAP;AACD","sourcesContent":["import {defineComponent, h} from 'vue'\nimport { VNode, VNodeDirective } from 'vue/types'\nimport { VuetifyIcon } from 'vuetify/types/services/icons'\nimport { DataTableCompareFunction, SelectItemKey, ItemGroup } from 'vuetify/types'\n\nexport function createSimpleFunctional (\n c: string,\n el = 'div',\n name?: string\n) {\n return defineComponent({\n name: name || c.replace(/__/g, '-'),\n\n functional: true,\n\n props: {\n tag: {\n type: String,\n default: el,\n },\n },\n\n render (): VNode {\n const data = { ...this.$attrs }\n\n data.class = (`${c} ${data.class || ''}`).trim()\n\n return h(this.tag, data, this.$slots.default?.())\n },\n })\n}\n\nexport type BindingConfig = Pick<VNodeDirective, 'arg' | 'modifiers' | 'value'>\nexport function directiveConfig (binding: BindingConfig, defaults = {}): VNodeDirective {\n return {\n ...defaults,\n ...binding.modifiers,\n value: binding.arg,\n ...(binding.value || {}),\n }\n}\n\nexport function addOnceEventListener (\n el: EventTarget,\n eventName: string,\n cb: (event: Event) => void,\n options: boolean | AddEventListenerOptions = false\n): void {\n const once = (event: Event) => {\n cb(event)\n el.removeEventListener(eventName, once, options)\n }\n\n el.addEventListener(eventName, once, options)\n}\n\nlet passiveSupported = false\ntry {\n if (typeof window !== 'undefined') {\n const testListenerOpts = Object.defineProperty({}, 'passive', {\n get: () => {\n passiveSupported = true\n },\n }) as EventListener & EventListenerOptions\n\n window.addEventListener('testListener', testListenerOpts, testListenerOpts)\n window.removeEventListener('testListener', testListenerOpts, testListenerOpts)\n }\n} catch (e) { console.warn(e) } /* eslint-disable-line no-console */\nexport { passiveSupported }\n\nexport function addPassiveEventListener (\n el: EventTarget,\n event: string,\n cb: (event: any) => void,\n options: {}\n): void {\n el.addEventListener(event, cb, passiveSupported ? options : false)\n}\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path: string, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (path in obj && obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport function getPropertyFromItem (\n item: object,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property == null) return item === undefined ? fallback : item\n\n if (item !== Object(item)) return fallback === undefined ? item : fallback\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number): number[] {\n return Array.from({ length }, (v, k) => k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = +window.getComputedStyle(el).getPropertyValue('z-index')\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nexport function filterObjectOnKeys<T, K extends keyof T> (obj: T, keys: K[]): { [N in K]: T[N] } {\n const filtered = {} as { [N in K]: T[N] }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key]\n }\n }\n\n return filtered\n}\n\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n } else if (isNaN(+str!)) {\n return String(str)\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function kebabCase (str: string): string {\n return (str || '').replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object'\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\n/**\n * This remaps internal names like '$cancel' or '$vuetify.icons.cancel'\n * to the current name or component for that icon.\n */\nexport function remapInternalIcon (vm: Vue, iconName: string): VuetifyIcon {\n // Look for custom component in the configuration\n const component = vm.$vuetify.icons.component\n\n // Look for overrides\n if (iconName.startsWith('$')) {\n // Get the target icon name\n const iconPath = `$vuetify.icons.values.${iconName.split('$').pop()!.split('.').pop()}`\n\n // Now look up icon indirection name,\n // e.g. '$vuetify.icons.values.cancel'\n\n const override = getObjectValueByPath(vm, iconPath, iconName)\n\n if (typeof override === 'string') iconName = override\n else return override\n }\n\n if (component == null) {\n return iconName\n }\n\n return {\n component,\n props: {\n icon: iconName,\n },\n }\n}\n\nexport function keys<O> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nconst camelizeRE = /-(\\w)/g\nexport const camelize = (str: string): string => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (a.indexOf(b[i]) < 0) diff.push(b[i])\n }\n return diff\n}\n\n/**\n * Makes the first character of a string uppercase\n */\nexport function upperFirst (str: string): string {\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\nexport function groupItems<T extends any = any> (\n items: T[],\n groupBy: string[],\n groupDesc: boolean[]\n): ItemGroup<T>[] {\n const key = groupBy[0]\n const groups: ItemGroup<T>[] = []\n let current\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const val = getObjectValueByPath(item, key, null)\n if (current !== val) {\n current = val\n groups.push({\n name: val ?? '',\n items: [],\n })\n }\n groups[groups.length - 1].items.push(item)\n }\n return groups\n}\n\nexport function wrapInArray<T> (v: T | T[] | null | undefined): T[] { return v != null ? Array.isArray(v) ? v : [v] : [] }\n\nexport function sortItems<T extends any = any> (\n items: T[],\n sortBy: string[],\n sortDesc: boolean[],\n locale: string,\n customSorters?: Record<string, DataTableCompareFunction<T>>\n): T[] {\n if (sortBy === null || !sortBy.length) return items\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n return items.sort((a, b) => {\n for (let i = 0; i < sortBy.length; i++) {\n const sortKey = sortBy[i]\n\n let sortA = getObjectValueByPath(a, sortKey)\n let sortB = getObjectValueByPath(b, sortKey)\n\n if (sortDesc[i]) {\n [sortA, sortB] = [sortB, sortA]\n }\n\n if (customSorters && customSorters[sortKey]) {\n const customResult = customSorters[sortKey](sortA, sortB)\n\n if (!customResult) continue\n\n return customResult\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n continue\n }\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n return sortA.getTime() - sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => (s || '').toString().toLocaleLowerCase())\n\n if (sortA !== sortB) {\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n })\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\n/**\n * Returns:\n * - 'normal' for old style slots - `<template slot=\"default\">`\n * - 'scoped' for old style scoped slots (`<template slot=\"default\" slot-scope=\"data\">`) or bound v-slot (`#default=\"data\"`)\n * - 'v-slot' for unbound v-slot (`#default`) - only if the third param is true, otherwise counts as scoped\n */\nexport function getSlotType<T extends boolean = false> (vm: Vue, name: string, split?: T): (T extends true ? 'v-slot' : never) | 'normal' | 'scoped' | void {\n return 'scoped'\n\n if (vm.$slots.hasOwnProperty(name) && vm.$slots.hasOwnProperty(name) && (vm.$slots[name] as any).name) {\n return split ? 'v-slot' as any : 'scoped'\n }\n if (vm.$slots.hasOwnProperty(name)) return 'normal'\n if (vm.$slots.hasOwnProperty(name)) return 'scoped'\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\nexport function getPrefixedScopedSlots (prefix: string, scopedSlots: any) {\n return Object.keys(scopedSlots).filter(k => k.startsWith(prefix)).reduce((obj: any, k: string) => {\n obj[k.replace(prefix, '')] = scopedSlots[k]\n return obj\n }, {})\n}\n\nexport function getSlot (vm: Vue, name = 'default', data?: object | (() => object), optional = false) {\n const kebabName = kebabCase(name)\n\n if (vm.$slots.hasOwnProperty(name)) {\n return vm.$slots[name]!(data instanceof Function ? data() : data)\n } else if (vm.$slots.hasOwnProperty(kebabName)) {\n return vm.$slots[kebabName]!(data instanceof Function ? data() : data)\n } else if (vm.$slots.hasOwnProperty(name) && (!data || optional)) {\n return vm.$slots[name]\n } else if (vm.$slots.hasOwnProperty(kebabName) && (!data || optional)) {\n return vm.$slots[kebabName]\n }\n return undefined\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function humanReadableFileSize (bytes: number, binary = false): string {\n const base = binary ? 1024 : 1000\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = binary ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\n}\n\nexport function mergeDeep (\n source: Dictionary<any> = {},\n target: Dictionary<any> = {}\n) {\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n source[key] = mergeDeep(sourceProperty, targetProperty)\n\n continue\n }\n\n source[key] = targetProperty\n }\n\n return source\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\n}\n\n/** Polyfill for Event.prototype.composedPath */\nexport function composedPath (e: Event): EventTarget[] {\n if (e.composedPath) return e.composedPath()\n\n const path = []\n let el = e.target as Element\n\n while (el) {\n path.push(el)\n\n if (el.tagName === 'HTML') {\n path.push(document)\n path.push(window)\n\n return path\n }\n\n el = el.parentElement!\n }\n return path\n}\n\nexport function normalizeAttrs (attrs) {\n const keys = Object.keys(attrs).sort()\n\n const obj = {}\n\n for(let i = 0; i < keys.length; i++) {\n obj[keys[i]] = attrs[keys[i]]\n }\n\n return obj\n}"],"sourceRoot":"","file":"helpers.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/util/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import Vue from 'vue'\nimport { VNode, VNodeDirective } from 'vue/types'\nimport { VuetifyIcon } from 'vuetify/types/services/icons'\nimport { DataTableCompareFunction, SelectItemKey, ItemGroup } from 'vuetify/types'\n\nexport function createSimpleFunctional (\n c: string,\n el = 'div',\n name?: string\n) {\n return Vue.extend({\n name: name || c.replace(/__/g, '-'),\n\n functional: true,\n\n props: {\n tag: {\n type: String,\n default: el,\n },\n },\n\n render (h, { data, props, children }): VNode {\n data.staticClass = (`${c} ${data.staticClass || ''}`).trim()\n\n return h(props.tag, data, children)\n },\n })\n}\n\nexport type BindingConfig = Pick<VNodeDirective, 'arg' | 'modifiers' | 'value'>\nexport function directiveConfig (binding: BindingConfig, defaults = {}): VNodeDirective {\n return {\n ...defaults,\n ...binding.modifiers,\n value: binding.arg,\n ...(binding.value || {}),\n }\n}\n\nexport function addOnceEventListener (\n el: EventTarget,\n eventName: string,\n cb: (event: Event) => void,\n options: boolean | AddEventListenerOptions = false\n): void {\n const once = (event: Event) => {\n cb(event)\n el.removeEventListener(eventName, once, options)\n }\n\n el.addEventListener(eventName, once, options)\n}\n\nlet passiveSupported = false\ntry {\n if (typeof window !== 'undefined') {\n const testListenerOpts = Object.defineProperty({}, 'passive', {\n get: () => {\n passiveSupported = true\n },\n }) as EventListener & EventListenerOptions\n\n window.addEventListener('testListener', testListenerOpts, testListenerOpts)\n window.removeEventListener('testListener', testListenerOpts, testListenerOpts)\n }\n} catch (e) { console.warn(e) } /* eslint-disable-line no-console */\nexport { passiveSupported }\n\nexport function addPassiveEventListener (\n el: EventTarget,\n event: string,\n cb: (event: any) => void,\n options: {}\n): void {\n el.addEventListener(event, cb, passiveSupported ? options : false)\n}\n\nexport function getNestedValue (obj: any, path: (string | number)[], fallback?: any): any {\n const last = path.length - 1\n\n if (last < 0) return obj === undefined ? fallback : obj\n\n for (let i = 0; i < last; i++) {\n if (obj == null) {\n return fallback\n }\n obj = obj[path[i]]\n }\n\n if (obj == null) return fallback\n\n return obj[path[last]] === undefined ? fallback : obj[path[last]]\n}\n\nexport function deepEqual (a: any, b: any): boolean {\n if (a === b) return true\n\n if (\n a instanceof Date &&\n b instanceof Date &&\n a.getTime() !== b.getTime()\n ) {\n // If the values are Date, compare them as timestamps\n return false\n }\n\n if (a !== Object(a) || b !== Object(b)) {\n // If the values aren't objects, they were already checked for equality\n return false\n }\n\n const props = Object.keys(a)\n\n if (props.length !== Object.keys(b).length) {\n // Different number of props, don't bother to check\n return false\n }\n\n return props.every(p => deepEqual(a[p], b[p]))\n}\n\nexport function getObjectValueByPath (obj: any, path: string, fallback?: any): any {\n // credit: http://stackoverflow.com/questions/6491463/accessing-nested-javascript-objects-with-string-key#comment55278413_6491621\n if (obj == null || !path || typeof path !== 'string') return fallback\n if (obj[path] !== undefined) return obj[path]\n path = path.replace(/\\[(\\w+)\\]/g, '.$1') // convert indexes to properties\n path = path.replace(/^\\./, '') // strip a leading dot\n return getNestedValue(obj, path.split('.'), fallback)\n}\n\nexport function getPropertyFromItem (\n item: object,\n property: SelectItemKey,\n fallback?: any\n): any {\n if (property == null) return item === undefined ? fallback : item\n\n if (item !== Object(item)) return fallback === undefined ? item : fallback\n\n if (typeof property === 'string') return getObjectValueByPath(item, property, fallback)\n\n if (Array.isArray(property)) return getNestedValue(item, property, fallback)\n\n if (typeof property !== 'function') return fallback\n\n const value = property(item, fallback)\n\n return typeof value === 'undefined' ? fallback : value\n}\n\nexport function createRange (length: number): number[] {\n return Array.from({ length }, (v, k) => k)\n}\n\nexport function getZIndex (el?: Element | null): number {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return 0\n\n const index = +window.getComputedStyle(el).getPropertyValue('z-index')\n\n if (!index) return getZIndex(el.parentNode as Element)\n return index\n}\n\nexport function filterObjectOnKeys<T, K extends keyof T> (obj: T, keys: K[]): { [N in K]: T[N] } {\n const filtered = {} as { [N in K]: T[N] }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]\n if (typeof obj[key] !== 'undefined') {\n filtered[key] = obj[key]\n }\n }\n\n return filtered\n}\n\nexport function convertToUnit (str: string | number | null | undefined, unit = 'px'): string | undefined {\n if (str == null || str === '') {\n return undefined\n } else if (isNaN(+str!)) {\n return String(str)\n } else {\n return `${Number(str)}${unit}`\n }\n}\n\nexport function kebabCase (str: string): string {\n return (str || '').replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()\n}\n\nexport function isObject (obj: any): obj is object {\n return obj !== null && typeof obj === 'object'\n}\n\n// KeyboardEvent.keyCode aliases\nexport const keyCodes = Object.freeze({\n enter: 13,\n tab: 9,\n delete: 46,\n esc: 27,\n space: 32,\n up: 38,\n down: 40,\n left: 37,\n right: 39,\n end: 35,\n home: 36,\n del: 46,\n backspace: 8,\n insert: 45,\n pageup: 33,\n pagedown: 34,\n shift: 16,\n})\n\n/**\n * This remaps internal names like '$cancel' or '$vuetify.icons.cancel'\n * to the current name or component for that icon.\n */\nexport function remapInternalIcon (vm: Vue, iconName: string): VuetifyIcon {\n // Look for custom component in the configuration\n const component = vm.$vuetify.icons.component\n\n // Look for overrides\n if (iconName.startsWith('$')) {\n // Get the target icon name\n const iconPath = `$vuetify.icons.values.${iconName.split('$').pop()!.split('.').pop()}`\n\n // Now look up icon indirection name,\n // e.g. '$vuetify.icons.values.cancel'\n const override = getObjectValueByPath(vm, iconPath, iconName)\n\n if (typeof override === 'string') iconName = override\n else return override\n }\n\n if (component == null) {\n return iconName\n }\n\n return {\n component,\n props: {\n icon: iconName,\n },\n }\n}\n\nexport function keys<O> (o: O) {\n return Object.keys(o) as (keyof O)[]\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nconst camelizeRE = /-(\\w)/g\nexport const camelize = (str: string): string => {\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\n}\n\n/**\n * Returns the set difference of B and A, i.e. the set of elements in B but not in A\n */\nexport function arrayDiff (a: any[], b: any[]): any[] {\n const diff: any[] = []\n for (let i = 0; i < b.length; i++) {\n if (a.indexOf(b[i]) < 0) diff.push(b[i])\n }\n return diff\n}\n\n/**\n * Makes the first character of a string uppercase\n */\nexport function upperFirst (str: string): string {\n return str.charAt(0).toUpperCase() + str.slice(1)\n}\n\nexport function groupItems<T extends any = any> (\n items: T[],\n groupBy: string[],\n groupDesc: boolean[]\n): ItemGroup<T>[] {\n const key = groupBy[0]\n const groups: ItemGroup<T>[] = []\n let current\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n const val = getObjectValueByPath(item, key, null)\n if (current !== val) {\n current = val\n groups.push({\n name: val ?? '',\n items: [],\n })\n }\n groups[groups.length - 1].items.push(item)\n }\n return groups\n}\n\nexport function wrapInArray<T> (v: T | T[] | null | undefined): T[] { return v != null ? Array.isArray(v) ? v : [v] : [] }\n\nexport function sortItems<T extends any = any> (\n items: T[],\n sortBy: string[],\n sortDesc: boolean[],\n locale: string,\n customSorters?: Record<string, DataTableCompareFunction<T>>\n): T[] {\n if (sortBy === null || !sortBy.length) return items\n const stringCollator = new Intl.Collator(locale, { sensitivity: 'accent', usage: 'sort' })\n\n return items.sort((a, b) => {\n for (let i = 0; i < sortBy.length; i++) {\n const sortKey = sortBy[i]\n\n let sortA = getObjectValueByPath(a, sortKey)\n let sortB = getObjectValueByPath(b, sortKey)\n\n if (sortDesc[i]) {\n [sortA, sortB] = [sortB, sortA]\n }\n\n if (customSorters && customSorters[sortKey]) {\n const customResult = customSorters[sortKey](sortA, sortB)\n\n if (!customResult) continue\n\n return customResult\n }\n\n // Check if both cannot be evaluated\n if (sortA === null && sortB === null) {\n continue\n }\n\n // Dates should be compared numerically\n if (sortA instanceof Date && sortB instanceof Date) {\n return sortA.getTime() - sortB.getTime()\n }\n\n [sortA, sortB] = [sortA, sortB].map(s => (s || '').toString().toLocaleLowerCase())\n\n if (sortA !== sortB) {\n if (!isNaN(sortA) && !isNaN(sortB)) return Number(sortA) - Number(sortB)\n return stringCollator.compare(sortA, sortB)\n }\n }\n\n return 0\n })\n}\n\nexport function defaultFilter (value: any, search: string | null, item: any) {\n return value != null &&\n search != null &&\n typeof value !== 'boolean' &&\n value.toString().toLocaleLowerCase().indexOf(search.toLocaleLowerCase()) !== -1\n}\n\nexport function searchItems<T extends any = any> (items: T[], search: string): T[] {\n if (!search) return items\n search = search.toString().toLowerCase()\n if (search.trim() === '') return items\n\n return items.filter((item: any) => Object.keys(item).some(key => defaultFilter(getObjectValueByPath(item, key), search, item)))\n}\n\n/**\n * Returns:\n * - 'normal' for old style slots - `<template slot=\"default\">`\n * - 'scoped' for old style scoped slots (`<template slot=\"default\" slot-scope=\"data\">`) or bound v-slot (`#default=\"data\"`)\n * - 'v-slot' for unbound v-slot (`#default`) - only if the third param is true, otherwise counts as scoped\n */\nexport function getSlotType<T extends boolean = false> (vm: Vue, name: string, split?: T): (T extends true ? 'v-slot' : never) | 'normal' | 'scoped' | void {\n if (vm.$slots.hasOwnProperty(name) && vm.$scopedSlots.hasOwnProperty(name) && (vm.$scopedSlots[name] as any).name) {\n return split ? 'v-slot' as any : 'scoped'\n }\n if (vm.$slots.hasOwnProperty(name)) return 'normal'\n if (vm.$scopedSlots.hasOwnProperty(name)) return 'scoped'\n}\n\nexport function debounce (fn: Function, delay: number) {\n let timeoutId = 0 as any\n return (...args: any[]) => {\n clearTimeout(timeoutId)\n timeoutId = setTimeout(() => fn(...args), delay)\n }\n}\n\nexport function throttle<T extends (...args: any[]) => any> (fn: T, limit: number) {\n let throttling = false\n return (...args: Parameters<T>): void | ReturnType<T> => {\n if (!throttling) {\n throttling = true\n setTimeout(() => throttling = false, limit)\n return fn(...args)\n }\n }\n}\n\nexport function getPrefixedScopedSlots (prefix: string, scopedSlots: any) {\n return Object.keys(scopedSlots).filter(k => k.startsWith(prefix)).reduce((obj: any, k: string) => {\n obj[k.replace(prefix, '')] = scopedSlots[k]\n return obj\n }, {})\n}\n\nexport function getSlot (vm: Vue, name = 'default', data?: object | (() => object), optional = false) {\n const kebabName = kebabCase(name)\n if (vm.$scopedSlots.hasOwnProperty(name)) {\n return vm.$scopedSlots[name]!(data instanceof Function ? data() : data)\n } else if (vm.$scopedSlots.hasOwnProperty(kebabName)) {\n return vm.$scopedSlots[kebabName]!(data instanceof Function ? data() : data)\n } else if (vm.$slots.hasOwnProperty(name) && (!data || optional)) {\n return vm.$slots[name]\n } else if (vm.$slots.hasOwnProperty(kebabName) && (!data || optional)) {\n return vm.$slots[kebabName]\n }\n return undefined\n}\n\nexport function clamp (value: number, min = 0, max = 1) {\n return Math.max(min, Math.min(max, value))\n}\n\nexport function padEnd (str: string, length: number, char = '0') {\n return str + char.repeat(Math.max(0, length - str.length))\n}\n\nexport function chunk (str: string, size = 1) {\n const chunked: string[] = []\n let index = 0\n while (index < str.length) {\n chunked.push(str.substr(index, size))\n index += size\n }\n return chunked\n}\n\nexport function humanReadableFileSize (bytes: number, binary = false): string {\n const base = binary ? 1024 : 1000\n if (bytes < base) {\n return `${bytes} B`\n }\n\n const prefix = binary ? ['Ki', 'Mi', 'Gi'] : ['k', 'M', 'G']\n let unit = -1\n while (Math.abs(bytes) >= base && unit < prefix.length - 1) {\n bytes /= base\n ++unit\n }\n return `${bytes.toFixed(1)} ${prefix[unit]}B`\n}\n\nexport function camelizeObjectKeys (obj: Record<string, any> | null | undefined) {\n if (!obj) return {}\n\n return Object.keys(obj).reduce((o: any, key: string) => {\n o[camelize(key)] = obj[key]\n return o\n }, {})\n}\n\nexport function mergeDeep (\n source: Dictionary<any> = {},\n target: Dictionary<any> = {}\n) {\n for (const key in target) {\n const sourceProperty = source[key]\n const targetProperty = target[key]\n\n // Only continue deep merging if\n // both properties are objects\n if (\n isObject(sourceProperty) &&\n isObject(targetProperty)\n ) {\n source[key] = mergeDeep(sourceProperty, targetProperty)\n\n continue\n }\n\n source[key] = targetProperty\n }\n\n return source\n}\n\nexport function fillArray<T> (length: number, obj: T) {\n return Array(length).fill(obj)\n}\n\n/** Polyfill for Event.prototype.composedPath */\nexport function composedPath (e: Event): EventTarget[] {\n if (e.composedPath) return e.composedPath()\n\n const path = []\n let el = e.target as Element\n\n while (el) {\n path.push(el)\n\n if (el.tagName === 'HTML') {\n path.push(document)\n path.push(window)\n\n return path\n }\n\n el = el.parentElement!\n }\n return path\n}\n"],"sourceRoot":"","file":"helpers.js"}
|