@vuetify/nightly 3.0.0-beta.13 → 3.0.0-beta.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -5
- package/dist/json/importMap.json +26 -30
- package/dist/vuetify.css +262 -173
- package/dist/vuetify.d.ts +16645 -7306
- package/dist/vuetify.esm.js +1040 -2004
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +1038 -2003
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +531 -537
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +24 -32
- package/lib/blueprints/index.mjs.map +1 -1
- package/lib/blueprints/md1.d.ts +24 -32
- package/lib/blueprints/md1.mjs +3 -1
- package/lib/blueprints/md1.mjs.map +1 -1
- package/lib/blueprints/md2.d.ts +24 -32
- package/lib/blueprints/md2.mjs +3 -1
- package/lib/blueprints/md2.mjs.map +1 -1
- package/lib/blueprints/md3.d.ts +24 -32
- package/lib/blueprints/md3.mjs +2 -2
- package/lib/blueprints/md3.mjs.map +1 -1
- package/lib/components/VAlert/VAlert.mjs +2 -9
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
- package/lib/components/VAlert/index.d.ts +7 -5
- package/lib/components/VAlert/index.mjs.map +1 -1
- package/lib/components/VApp/VApp.mjs +5 -7
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/index.d.ts +4 -2
- package/lib/components/VApp/index.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBar.mjs +4 -8
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +0 -4
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +2 -4
- package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.ts +7 -3
- package/lib/components/VAppBar/index.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +18 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +16 -35
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +11 -1
- package/lib/components/VAutocomplete/_variables.scss +1 -0
- package/lib/components/VAutocomplete/index.d.ts +267 -376
- package/lib/components/VAutocomplete/index.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.mjs +3 -7
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/index.d.ts +5 -3
- package/lib/components/VAvatar/index.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.mjs +2 -6
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/index.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.mjs +5 -7
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBannerActions.mjs +0 -4
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/VBannerText.mjs.map +1 -1
- package/lib/components/VBanner/index.d.ts +7 -3
- package/lib/components/VBanner/index.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +2 -5
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.ts +5 -3
- package/lib/components/VBottomNavigation/index.mjs.map +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.mjs +5 -5
- package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
- package/lib/components/VBottomSheet/index.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +5 -9
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +0 -5
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +50 -40
- package/lib/components/VBreadcrumbs/index.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.mjs +2 -10
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +5 -3
- package/lib/components/VBtn/index.mjs.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.mjs +2 -4
- package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
- package/lib/components/VBtnGroup/index.d.ts +6 -3
- package/lib/components/VBtnGroup/index.mjs.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.mjs +2 -7
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +20 -25
- package/lib/components/VBtnToggle/index.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendar.mjs +6 -67
- package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarCategory.mjs +7 -18
- package/lib/components/VCalendar/VCalendarCategory.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarDaily.mjs +3 -34
- package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarMonthly.mjs +3 -7
- package/lib/components/VCalendar/VCalendarMonthly.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarWeekly.mjs +3 -32
- package/lib/components/VCalendar/VCalendarWeekly.mjs.map +1 -1
- package/lib/components/VCalendar/index.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-base.mjs +1 -19
- package/lib/components/VCalendar/mixins/calendar-base.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-events.mjs +14 -78
- package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs +0 -30
- package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/mouse.mjs +7 -17
- package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/times.mjs +1 -9
- package/lib/components/VCalendar/mixins/times.mjs.map +1 -1
- package/lib/components/VCalendar/modes/column.mjs +0 -3
- package/lib/components/VCalendar/modes/column.mjs.map +1 -1
- package/lib/components/VCalendar/modes/common.mjs +0 -14
- package/lib/components/VCalendar/modes/common.mjs.map +1 -1
- package/lib/components/VCalendar/modes/index.mjs +0 -1
- package/lib/components/VCalendar/modes/index.mjs.map +1 -1
- package/lib/components/VCalendar/modes/stack.mjs +3 -45
- package/lib/components/VCalendar/modes/stack.mjs.map +1 -1
- package/lib/components/VCalendar/util/events.mjs +0 -1
- package/lib/components/VCalendar/util/events.mjs.map +1 -1
- package/lib/components/VCalendar/util/parser.mjs +3 -4
- package/lib/components/VCalendar/util/parser.mjs.map +1 -1
- package/lib/components/VCalendar/util/props.mjs +0 -13
- package/lib/components/VCalendar/util/props.mjs.map +1 -1
- package/lib/components/VCalendar/util/timestamp.mjs +2 -64
- package/lib/components/VCalendar/util/timestamp.mjs.map +1 -1
- package/lib/components/VCard/VCard.mjs +3 -8
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardActions.mjs +0 -4
- package/lib/components/VCard/VCardActions.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +0 -5
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
- package/lib/components/VCard/VCardText.mjs.map +1 -1
- package/lib/components/VCard/VCardTitle.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +13 -6
- package/lib/components/VCard/index.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.mjs +5 -9
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +0 -3
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +1 -0
- package/lib/components/VCarousel/index.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.mjs +6 -6
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +7 -15
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.ts +24 -22
- package/lib/components/VCheckbox/index.mjs.map +1 -1
- package/lib/components/VChip/VChip.css +25 -0
- package/lib/components/VChip/VChip.mjs +2 -10
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/VChip.sass +1 -0
- package/lib/components/VChip/index.d.ts +5 -3
- package/lib/components/VChip/index.mjs.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.mjs +5 -6
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.mjs.map +1 -1
- package/lib/components/VCode/index.d.ts +1 -0
- package/lib/components/VCode/index.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +9 -12
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -20
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +6 -10
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +6 -8
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +2 -6
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/index.mjs.map +1 -1
- package/lib/components/VColorPicker/util/index.mjs +24 -26
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.css +13 -0
- package/lib/components/VCombobox/VCombobox.mjs +23 -50
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +5 -0
- package/lib/components/VCombobox/_variables.scss +1 -0
- package/lib/components/VCombobox/index.d.ts +275 -384
- package/lib/components/VCombobox/index.mjs.map +1 -1
- package/lib/components/VCounter/VCounter.mjs +2 -5
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/index.d.ts +1 -0
- package/lib/components/VCounter/index.mjs.map +1 -1
- package/lib/components/VData/VData.mjs +9 -67
- package/lib/components/VData/VData.mjs.map +1 -1
- package/lib/components/VData/index.mjs.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.mjs +6 -25
- package/lib/components/VDataIterator/VDataFooter.mjs.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.mjs +12 -51
- package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
- package/lib/components/VDataIterator/index.mjs.map +1 -1
- package/lib/components/VDataTable/MobileRow.mjs +3 -8
- package/lib/components/VDataTable/MobileRow.mjs.map +1 -1
- package/lib/components/VDataTable/Row.mjs +1 -8
- package/lib/components/VDataTable/Row.mjs.map +1 -1
- package/lib/components/VDataTable/RowGroup.mjs +1 -7
- package/lib/components/VDataTable/RowGroup.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTable.mjs +42 -90
- package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeader.mjs +6 -10
- package/lib/components/VDataTable/VDataTableHeader.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderDesktop.mjs +0 -18
- package/lib/components/VDataTable/VDataTableHeaderDesktop.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderMobile.mjs +0 -9
- package/lib/components/VDataTable/VDataTableHeaderMobile.mjs.map +1 -1
- package/lib/components/VDataTable/VEditDialog.mjs +3 -17
- package/lib/components/VDataTable/VEditDialog.mjs.map +1 -1
- package/lib/components/VDataTable/VVirtualTable.mjs +3 -28
- package/lib/components/VDataTable/VVirtualTable.mjs.map +1 -1
- package/lib/components/VDataTable/index.mjs +0 -1
- package/lib/components/VDataTable/index.mjs.map +1 -1
- package/lib/components/VDataTable/mixins/header.mjs +0 -5
- package/lib/components/VDataTable/mixins/header.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.mjs +2 -69
- package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerDateTable.mjs +1 -29
- package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.mjs +4 -17
- package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonthTable.mjs +1 -12
- package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerTitle.mjs +4 -15
- package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerYears.mjs +4 -18
- package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
- package/lib/components/VDatePicker/index.mjs.map +1 -1
- package/lib/components/VDatePicker/mixins/date-picker-table.mjs +6 -33
- package/lib/components/VDatePicker/mixins/date-picker-table.mjs.map +1 -1
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs +0 -5
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
- package/lib/components/VDatePicker/util/eventHelpers.mjs +2 -3
- package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
- package/lib/components/VDatePicker/util/index.mjs +0 -1
- package/lib/components/VDatePicker/util/index.mjs.map +1 -1
- package/lib/components/VDatePicker/util/isDateAllowed.mjs +1 -1
- package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
- package/lib/components/VDatePicker/util/monthChange.mjs +0 -3
- package/lib/components/VDatePicker/util/monthChange.mjs.map +1 -1
- package/lib/components/VDatePicker/util/pad.mjs +1 -6
- package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
- package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +2 -4
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/index.d.ts +1 -0
- package/lib/components/VDefaultsProvider/index.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.mjs +7 -20
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.ts +1208 -188
- package/lib/components/VDialog/index.mjs.map +1 -1
- package/lib/components/VDivider/VDivider.mjs +2 -8
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/index.d.ts +1 -0
- package/lib/components/VDivider/index.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +0 -5
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +2 -6
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -8
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs +2 -5
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.mjs.map +1 -1
- package/lib/components/VField/VField.css +1 -1
- package/lib/components/VField/VField.mjs +4 -11
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +0 -1
- package/lib/components/VField/VFieldLabel.mjs +0 -3
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/index.d.ts +33 -59
- package/lib/components/VField/index.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.css +16 -0
- package/lib/components/VFileInput/VFileInput.mjs +6 -20
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +10 -0
- package/lib/components/VFileInput/_variables.scss +2 -0
- package/lib/components/VFileInput/index.d.ts +233 -5
- package/lib/components/VFileInput/index.mjs.map +1 -1
- package/lib/components/VFooter/VFooter.mjs +2 -4
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/index.d.ts +1 -0
- package/lib/components/VFooter/index.mjs.map +1 -1
- package/lib/components/VForm/VForm.mjs +2 -13
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VForm/index.d.ts +1 -1
- package/lib/components/VForm/index.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs +8 -23
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +2 -4
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +6 -24
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VGrid/VSpacer.mjs.map +1 -1
- package/lib/components/VGrid/index.d.ts +2 -0
- package/lib/components/VGrid/index.mjs.map +1 -1
- package/lib/components/VHover/VHover.mjs +0 -4
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VHover/index.d.ts +1 -0
- package/lib/components/VHover/index.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.mjs +2 -8
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VIcon/index.d.ts +1 -0
- package/lib/components/VIcon/index.mjs.map +1 -1
- package/lib/components/VImg/VImg.mjs +9 -35
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +8 -4
- package/lib/components/VImg/index.mjs.map +1 -1
- package/lib/components/VInput/InputIcon.mjs +0 -2
- package/lib/components/VInput/InputIcon.mjs.map +1 -1
- package/lib/components/VInput/VInput.mjs +5 -9
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +29 -45
- package/lib/components/VInput/index.mjs.map +1 -1
- package/lib/components/VItemGroup/VItem.mjs +0 -5
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs +4 -6
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.ts +19 -25
- package/lib/components/VItemGroup/index.mjs.map +1 -1
- package/lib/components/VKbd/index.d.ts +1 -0
- package/lib/components/VKbd/index.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.mjs +2 -5
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/index.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.mjs +2 -5
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs +2 -6
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.ts +5 -2
- package/lib/components/VLayout/index.mjs.map +1 -1
- package/lib/components/VLazy/VLazy.mjs +0 -8
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VLazy/index.d.ts +1 -0
- package/lib/components/VLazy/index.mjs.map +1 -1
- package/lib/components/VList/VList.mjs +2 -11
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs +12 -21
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +1 -12
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListImg.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +2 -12
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItemAction.mjs +0 -3
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs +0 -3
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
- package/lib/components/VList/VListItemTitle.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs +0 -4
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +147 -170
- package/lib/components/VList/index.mjs.map +1 -1
- package/lib/components/VList/list.mjs +5 -2
- package/lib/components/VList/list.mjs.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +4 -9
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VLocaleProvider/index.d.ts +1 -0
- package/lib/components/VLocaleProvider/index.mjs.map +1 -1
- package/lib/components/VMain/VMain.mjs +2 -5
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/index.d.ts +1 -0
- package/lib/components/VMain/index.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.mjs +3 -14
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +1203 -183
- package/lib/components/VMenu/index.mjs.map +1 -1
- package/lib/components/VMenu/shared.mjs.map +1 -1
- package/lib/components/VMessages/VMessages.mjs +2 -6
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.ts +1 -0
- package/lib/components/VMessages/index.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +6 -11
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/index.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/sticky.mjs +0 -4
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/touch.mjs +2 -15
- package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
- package/lib/components/VNoSsr/VNoSsr.mjs +0 -4
- package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
- package/lib/components/VNoSsr/index.d.ts +1 -0
- package/lib/components/VNoSsr/index.mjs.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs +7 -58
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOtpInput/index.mjs.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.mjs +7 -19
- package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
- package/lib/components/VOverflowBtn/index.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs +8 -17
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +32 -60
- package/lib/components/VOverlay/index.mjs.map +1 -1
- package/lib/components/VOverlay/locationStrategies.mjs +23 -56
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/requestNewFrame.mjs +1 -2
- package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
- package/lib/components/VOverlay/scrollStrategies.mjs +2 -18
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +6 -32
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VOverlay/util/point.mjs +3 -4
- package/lib/components/VOverlay/util/point.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +11 -23
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +5 -3
- package/lib/components/VPagination/index.mjs.map +1 -1
- package/lib/components/VParallax/VParallax.mjs +6 -12
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.mjs.map +1 -1
- package/lib/components/VPicker/VPicker.mjs +3 -12
- package/lib/components/VPicker/VPicker.mjs.map +1 -1
- package/lib/components/VPicker/index.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.mjs +2 -5
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/index.d.ts +1 -0
- package/lib/components/VProgressCircular/index.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -8
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/index.d.ts +1 -0
- package/lib/components/VProgressLinear/index.mjs.map +1 -1
- package/lib/components/VRadio/VRadio.mjs +2 -4
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadio/index.d.ts +13 -11
- package/lib/components/VRadio/index.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs +15 -20
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +26 -38
- package/lib/components/VRadioGroup/index.mjs.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.mjs +13 -26
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +5 -3
- package/lib/components/VRangeSlider/index.mjs.map +1 -1
- package/lib/components/VRating/VRating.mjs +4 -22
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/index.d.ts +32 -40
- package/lib/components/VRating/index.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.mjs +2 -5
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VResponsive/index.d.ts +1 -0
- package/lib/components/VResponsive/index.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.css +13 -0
- package/lib/components/VSelect/VSelect.mjs +9 -22
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +6 -0
- package/lib/components/VSelect/_variables.scss +1 -0
- package/lib/components/VSelect/index.d.ts +4264 -776
- package/lib/components/VSelect/index.mjs.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.mjs +14 -58
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +62 -78
- package/lib/components/VSelectionControl/index.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +1 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +56 -28
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +1 -0
- package/lib/components/VSelectionControlGroup/index.d.ts +53 -4
- package/lib/components/VSelectionControlGroup/index.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.mjs +2 -4
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/index.d.ts +1 -0
- package/lib/components/VSheet/index.mjs.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +19 -32
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/components/VSkeletonLoader/index.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +16 -47
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs +5 -9
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlideGroup/helpers.mjs +0 -2
- package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +342 -59
- package/lib/components/VSlideGroup/index.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.mjs +6 -9
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +4 -15
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.mjs +6 -8
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +5 -3
- package/lib/components/VSlider/index.mjs.map +1 -1
- package/lib/components/VSlider/slider.mjs +6 -27
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +3 -10
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.ts +1215 -191
- package/lib/components/VSnackbar/index.mjs.map +1 -1
- package/lib/components/VSparkline/VSparkline.mjs +5 -40
- package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
- package/lib/components/VSparkline/helpers/core.mjs +1 -1
- package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
- package/lib/components/VSparkline/helpers/math.mjs +2 -3
- package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
- package/lib/components/VSparkline/helpers/path.mjs +0 -4
- package/lib/components/VSparkline/helpers/path.mjs.map +1 -1
- package/lib/components/VSparkline/index.mjs.map +1 -1
- package/lib/components/VSpeedDial/VSpeedDial.mjs +3 -12
- package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
- package/lib/components/VSpeedDial/index.mjs.map +1 -1
- package/lib/components/VStepper/VStepper.mjs +5 -24
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperContent.mjs +4 -25
- package/lib/components/VStepper/VStepperContent.mjs.map +1 -1
- package/lib/components/VStepper/VStepperStep.mjs +0 -24
- package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
- package/lib/components/VStepper/index.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.mjs +14 -15
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.ts +15 -11
- package/lib/components/VSwitch/index.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.mjs +2 -4
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/index.d.ts +1 -0
- package/lib/components/VSystemBar/index.mjs.map +1 -1
- package/lib/components/VTable/VTable.css +3 -3
- package/lib/components/VTable/VTable.mjs +5 -6
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/VTable.sass +9 -3
- package/lib/components/VTable/index.d.ts +8 -3
- package/lib/components/VTable/index.mjs.map +1 -1
- package/lib/components/VTabs/VTab.mjs +2 -10
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.css +5 -5
- package/lib/components/VTabs/VTabs.mjs +12 -17
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.sass +4 -4
- package/lib/components/VTabs/_variables.scss +1 -1
- package/lib/components/VTabs/index.d.ts +23 -15
- package/lib/components/VTabs/index.mjs.map +1 -1
- package/lib/components/VTabs/shared.mjs.map +1 -1
- package/lib/components/VTextField/VTextField.mjs +13 -24
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +1375 -191
- package/lib/components/VTextField/index.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.mjs +6 -24
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +233 -5
- package/lib/components/VTextarea/index.mjs.map +1 -1
- package/lib/components/VThemeProvider/VThemeProvider.mjs +2 -5
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VThemeProvider/index.d.ts +1 -0
- package/lib/components/VThemeProvider/index.mjs.map +1 -1
- package/lib/components/VTimePicker/SelectingTimes.mjs +0 -3
- package/lib/components/VTimePicker/SelectingTimes.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePicker.mjs +3 -53
- package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePickerClock.mjs +6 -42
- package/lib/components/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePickerTitle.mjs +4 -13
- package/lib/components/VTimePicker/VTimePickerTitle.mjs.map +1 -1
- package/lib/components/VTimePicker/index.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.mjs +2 -9
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +0 -5
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +0 -6
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.ts +7 -3
- package/lib/components/VTimeline/index.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.mjs +2 -8
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarItems.mjs +0 -4
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs +0 -5
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.ts +34 -71
- package/lib/components/VToolbar/index.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.mjs +2 -8
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +1196 -176
- package/lib/components/VTooltip/index.mjs.map +1 -1
- package/lib/components/VTreeview/VTreeview.mjs +17 -72
- package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/components/VTreeview/VTreeviewNode.mjs +2 -32
- package/lib/components/VTreeview/VTreeviewNode.mjs.map +1 -1
- package/lib/components/VTreeview/index.mjs.map +1 -1
- package/lib/components/VTreeview/util/filterTreeItems.mjs +0 -6
- package/lib/components/VTreeview/util/filterTreeItems.mjs.map +1 -1
- package/lib/components/VValidation/VValidation.mjs +2 -5
- package/lib/components/VValidation/VValidation.mjs.map +1 -1
- package/lib/components/VValidation/index.d.ts +1 -0
- package/lib/components/VValidation/index.mjs.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs +3 -18
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.mjs.map +1 -1
- package/lib/components/VWindow/VWindow.mjs +5 -15
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +8 -21
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/VWindow/index.d.ts +37 -87
- package/lib/components/VWindow/index.mjs.map +1 -1
- package/lib/components/index.d.ts +16084 -6799
- package/lib/components/index.mjs +0 -11
- package/lib/components/index.mjs.map +1 -1
- package/lib/components/transitions/createTransition.mjs +0 -10
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/dialog-transition.mjs +3 -18
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/expand-transition.mjs +2 -11
- package/lib/components/transitions/expand-transition.mjs.map +1 -1
- package/lib/components/transitions/index.d.ts +16 -0
- package/lib/components/transitions/index.mjs +5 -4
- package/lib/components/transitions/index.mjs.map +1 -1
- package/lib/composables/border.mjs +0 -3
- package/lib/composables/border.mjs.map +1 -1
- package/lib/composables/color.mjs +0 -4
- package/lib/composables/color.mjs.map +1 -1
- package/lib/composables/defaults.mjs +0 -5
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/delay.mjs +0 -3
- package/lib/composables/delay.mjs.map +1 -1
- package/lib/composables/density.mjs +4 -1
- package/lib/composables/density.mjs.map +1 -1
- package/lib/composables/dimensions.mjs +0 -1
- package/lib/composables/dimensions.mjs.map +1 -1
- package/lib/composables/display.mjs +7 -20
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/elevation.mjs +2 -4
- package/lib/composables/elevation.mjs.map +1 -1
- package/lib/composables/filter.mjs +7 -14
- package/lib/composables/filter.mjs.map +1 -1
- package/lib/composables/focus.mjs +0 -5
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/form.mjs +1 -14
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs +9 -16
- package/lib/composables/forwardRefs.mjs.map +1 -1
- package/lib/composables/group.mjs +10 -33
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/hydration.mjs +0 -1
- package/lib/composables/hydration.mjs.map +1 -1
- package/lib/composables/icons.mjs +4 -17
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/index.mjs +1 -2
- package/lib/composables/index.mjs.map +1 -1
- package/lib/composables/intersectionObserver.mjs +0 -3
- package/lib/composables/intersectionObserver.mjs.map +1 -1
- package/lib/composables/items.mjs +3 -15
- package/lib/composables/items.mjs.map +1 -1
- package/lib/composables/layout.mjs +29 -31
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/lazy.mjs +2 -3
- package/lib/composables/lazy.mjs.map +1 -1
- package/lib/composables/loader.mjs +0 -3
- package/lib/composables/loader.mjs.map +1 -1
- package/lib/composables/locale.mjs +46 -118
- package/lib/composables/locale.mjs.map +1 -1
- package/lib/composables/location.mjs +1 -8
- package/lib/composables/location.mjs.map +1 -1
- package/lib/composables/mutationObserver.mjs +3 -1
- package/lib/composables/mutationObserver.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +4 -20
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/openStrategies.mjs +0 -9
- package/lib/composables/nested/openStrategies.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +6 -21
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/position.mjs +1 -4
- package/lib/composables/position.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +3 -9
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/refs.mjs +0 -2
- package/lib/composables/refs.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs +0 -3
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/composables/rounded.mjs +0 -3
- package/lib/composables/rounded.mjs.map +1 -1
- package/lib/composables/router.mjs +3 -11
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/scopeId.mjs.map +1 -1
- package/lib/composables/scroll.mjs +3 -9
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/composables/selectLink.mjs +3 -2
- package/lib/composables/selectLink.mjs.map +1 -1
- package/lib/composables/size.mjs +0 -3
- package/lib/composables/size.mjs.map +1 -1
- package/lib/composables/ssrBoot.mjs +2 -1
- package/lib/composables/ssrBoot.mjs.map +1 -1
- package/lib/composables/stack.mjs +0 -6
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/tag.mjs +0 -1
- package/lib/composables/tag.mjs.map +1 -1
- package/lib/composables/teleport.mjs +0 -4
- package/lib/composables/teleport.mjs.map +1 -1
- package/lib/composables/theme.mjs +18 -38
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/toggleScope.mjs +0 -1
- package/lib/composables/toggleScope.mjs.map +1 -1
- package/lib/composables/touch.mjs +5 -28
- package/lib/composables/touch.mjs.map +1 -1
- package/lib/composables/transition.mjs +0 -2
- package/lib/composables/transition.mjs.map +1 -1
- package/lib/composables/validation.mjs +3 -13
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/variant.mjs +0 -2
- package/lib/composables/variant.mjs.map +1 -1
- package/lib/directives/click-outside/index.mjs +10 -22
- package/lib/directives/click-outside/index.mjs.map +1 -1
- package/lib/directives/color/index.mjs +0 -11
- package/lib/directives/color/index.mjs.map +1 -1
- package/lib/directives/index.d.ts +104 -13
- package/lib/directives/index.mjs +0 -1
- package/lib/directives/index.mjs.map +1 -1
- package/lib/directives/intersect/index.mjs +3 -10
- package/lib/directives/intersect/index.mjs.map +1 -1
- package/lib/directives/mutate/index.mjs +1 -5
- package/lib/directives/mutate/index.mjs.map +1 -1
- package/lib/directives/resize/index.mjs +0 -5
- package/lib/directives/resize/index.mjs.map +1 -1
- package/lib/directives/ripple/index.mjs +11 -63
- package/lib/directives/ripple/index.mjs.map +1 -1
- package/lib/directives/scroll/index.mjs +0 -4
- package/lib/directives/scroll/index.mjs.map +1 -1
- package/lib/directives/touch/index.mjs +0 -15
- package/lib/directives/touch/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +24 -22
- package/lib/framework.mjs.map +1 -1
- package/lib/iconsets/fa-svg.mjs +0 -1
- package/lib/iconsets/fa-svg.mjs.map +1 -1
- package/lib/iconsets/fa.mjs +0 -1
- package/lib/iconsets/fa.mjs.map +1 -1
- package/lib/iconsets/fa4.mjs +4 -3
- package/lib/iconsets/fa4.mjs.map +1 -1
- package/lib/iconsets/md.mjs +4 -3
- package/lib/iconsets/md.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.mjs +0 -1
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/iconsets/mdi.mjs +4 -3
- package/lib/iconsets/mdi.mjs.map +1 -1
- package/lib/index.d.ts +92 -106
- package/lib/locale/adapters/vue-i18n.d.ts +10 -16
- package/lib/locale/adapters/vue-i18n.mjs +59 -52
- package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
- package/lib/locale/adapters/vuetify.d.ts +24 -0
- package/lib/locale/adapters/vuetify.mjs +97 -0
- package/lib/locale/adapters/vuetify.mjs.map +1 -0
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.ts +2 -2
- package/lib/locale/index.mjs +1 -1
- package/lib/locale/index.mjs.map +1 -1
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +7 -7
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/services/goto/easing-patterns.mjs +24 -24
- package/lib/services/goto/easing-patterns.mjs.map +1 -1
- package/lib/services/goto/index.mjs +11 -15
- package/lib/services/goto/index.mjs.map +1 -1
- package/lib/services/goto/util.mjs +1 -8
- package/lib/services/goto/util.mjs.map +1 -1
- package/lib/styles/main.css +4 -0
- package/lib/styles/settings/_utilities.scss +7 -0
- package/lib/util/anchor.mjs +0 -3
- package/lib/util/anchor.mjs.map +1 -1
- package/lib/util/animation.mjs +0 -6
- package/lib/util/animation.mjs.map +1 -1
- package/lib/util/box.mjs +0 -5
- package/lib/util/box.mjs.map +1 -1
- package/lib/util/color/APCA.mjs +23 -21
- package/lib/util/color/APCA.mjs.map +1 -1
- package/lib/util/color/transformCIELAB.mjs +0 -2
- package/lib/util/color/transformCIELAB.mjs.map +1 -1
- package/lib/util/color/transformSRGB.mjs +14 -12
- package/lib/util/color/transformSRGB.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +8 -25
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/colors.mjs.map +1 -1
- package/lib/util/console.mjs +5 -14
- package/lib/util/console.mjs.map +1 -1
- package/lib/util/createSimpleFunctional.mjs +0 -3
- package/lib/util/createSimpleFunctional.mjs.map +1 -1
- package/lib/util/dateTimeUtils.mjs +0 -10
- package/lib/util/dateTimeUtils.mjs.map +1 -1
- package/lib/util/defineComponent.mjs +6 -22
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/dom.mjs +4 -4
- package/lib/util/dom.mjs.map +1 -1
- package/lib/util/easing.mjs +0 -1
- package/lib/util/easing.mjs.map +1 -1
- package/lib/util/getCurrentInstance.mjs +1 -7
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/getScrollParent.mjs +0 -3
- package/lib/util/getScrollParent.mjs.map +1 -1
- package/lib/util/globals.mjs.map +1 -1
- package/lib/util/helpers.mjs +18 -75
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/injectSelf.mjs +0 -1
- package/lib/util/injectSelf.mjs.map +1 -1
- package/lib/util/isFixedPosition.mjs +0 -2
- package/lib/util/isFixedPosition.mjs.map +1 -1
- package/lib/util/propsFactory.mjs +11 -5
- package/lib/util/propsFactory.mjs.map +1 -1
- package/lib/util/useRender.mjs +0 -1
- package/lib/util/useRender.mjs.map +1 -1
- package/package.json +6 -10
- package/dist/json/attributes.json +0 -5602
- package/dist/json/tags.json +0 -1945
- package/dist/json/web-types.json +0 -19006
- package/lib/composables/rtl.mjs +0 -42
- package/lib/composables/rtl.mjs.map +0 -1
- package/lib/locale/adapters/vue-intl.d.ts +0 -42
- package/lib/locale/adapters/vue-intl.mjs +0 -65
- package/lib/locale/adapters/vue-intl.mjs.map +0 -1
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
|
-
|
|
3
2
|
/* eslint-disable */
|
|
3
|
+
|
|
4
4
|
// Styles
|
|
5
|
-
import "./calendar-with-events.css";
|
|
5
|
+
import "./calendar-with-events.css";
|
|
6
6
|
|
|
7
|
+
// Types
|
|
7
8
|
// Directives
|
|
8
9
|
import ripple from "../../../directives/ripple/index.mjs"; // Mixins
|
|
9
|
-
|
|
10
10
|
import CalendarBase from "./calendar-base.mjs"; // Helpers
|
|
11
|
-
|
|
12
11
|
import { escapeHTML } from "../../../util/helpers.mjs"; // Util
|
|
13
|
-
|
|
14
12
|
import props from "../util/props.mjs";
|
|
15
13
|
import { CalendarEventOverlapModes } from "../modes/index.mjs";
|
|
16
14
|
import { getDayIdentifier, diffMinutes } from "../util/timestamp.mjs";
|
|
@@ -18,14 +16,15 @@ import { parseEvent, isEventStart, isEventOn, isEventOverlapping, isEventHiddenO
|
|
|
18
16
|
const WIDTH_FULL = 100;
|
|
19
17
|
const WIDTH_START = 95;
|
|
20
18
|
const MINUTES_IN_DAY = 1440;
|
|
21
|
-
/* @vue/component */
|
|
22
19
|
|
|
20
|
+
/* @vue/component */
|
|
23
21
|
export default CalendarBase.extend({
|
|
24
22
|
name: 'calendar-with-events',
|
|
25
23
|
directives: {
|
|
26
24
|
ripple
|
|
27
25
|
},
|
|
28
|
-
props: {
|
|
26
|
+
props: {
|
|
27
|
+
...props.events,
|
|
29
28
|
...props.calendar,
|
|
30
29
|
...props.category
|
|
31
30
|
},
|
|
@@ -33,54 +32,42 @@ export default CalendarBase.extend({
|
|
|
33
32
|
noEvents() {
|
|
34
33
|
return this.events.length === 0;
|
|
35
34
|
},
|
|
36
|
-
|
|
37
35
|
parsedEvents() {
|
|
38
36
|
return this.events.map(this.parseEvent);
|
|
39
37
|
},
|
|
40
|
-
|
|
41
38
|
parsedEventOverlapThreshold() {
|
|
42
39
|
return parseInt(this.eventOverlapThreshold);
|
|
43
40
|
},
|
|
44
|
-
|
|
45
41
|
eventTimedFunction() {
|
|
46
42
|
return typeof this.eventTimed === 'function' ? this.eventTimed : event => !!event[this.eventTimed];
|
|
47
43
|
},
|
|
48
|
-
|
|
49
44
|
eventCategoryFunction() {
|
|
50
45
|
return typeof this.eventCategory === 'function' ? this.eventCategory : event => event[this.eventCategory];
|
|
51
46
|
},
|
|
52
|
-
|
|
53
47
|
eventTextColorFunction() {
|
|
54
48
|
return typeof this.eventTextColor === 'function' ? this.eventTextColor : () => this.eventTextColor;
|
|
55
49
|
},
|
|
56
|
-
|
|
57
50
|
eventNameFunction() {
|
|
58
51
|
return typeof this.eventName === 'function' ? this.eventName : (event, timedEvent) => escapeHTML(event.input[this.eventName] || '');
|
|
59
52
|
},
|
|
60
|
-
|
|
61
53
|
eventModeFunction() {
|
|
62
54
|
return typeof this.eventOverlapMode === 'function' ? this.eventOverlapMode : CalendarEventOverlapModes[this.eventOverlapMode];
|
|
63
55
|
},
|
|
64
|
-
|
|
65
56
|
eventWeekdays() {
|
|
66
57
|
return this.parsedWeekdays;
|
|
67
58
|
},
|
|
68
|
-
|
|
69
59
|
categoryMode() {
|
|
70
60
|
return this.type === 'category';
|
|
71
61
|
}
|
|
72
|
-
|
|
73
62
|
},
|
|
74
63
|
methods: {
|
|
75
64
|
eventColorFunction(e) {
|
|
76
65
|
return typeof this.eventColor === 'function' ? this.eventColor(e) : e.color || this.eventColor;
|
|
77
66
|
},
|
|
78
|
-
|
|
79
67
|
parseEvent(input) {
|
|
80
68
|
let index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
81
69
|
return parseEvent(input, index, this.eventStart, this.eventEnd, this.eventTimedFunction(input), this.categoryMode ? this.eventCategoryFunction(input) : false);
|
|
82
70
|
},
|
|
83
|
-
|
|
84
71
|
formatTime(withTime, ampm) {
|
|
85
72
|
const formatter = this.getFormatter({
|
|
86
73
|
timeZone: 'UTC',
|
|
@@ -89,26 +76,21 @@ export default CalendarBase.extend({
|
|
|
89
76
|
});
|
|
90
77
|
return formatter(withTime, true);
|
|
91
78
|
},
|
|
92
|
-
|
|
93
79
|
updateEventVisibility() {
|
|
94
80
|
if (this.noEvents || !this.eventMore) {
|
|
95
81
|
return;
|
|
96
82
|
}
|
|
97
|
-
|
|
98
83
|
const eventHeight = this.eventHeight;
|
|
99
84
|
const eventsMap = this.getEventsMap();
|
|
100
|
-
|
|
101
85
|
for (const date in eventsMap) {
|
|
102
86
|
const {
|
|
103
87
|
parent,
|
|
104
88
|
events,
|
|
105
89
|
more
|
|
106
90
|
} = eventsMap[date];
|
|
107
|
-
|
|
108
91
|
if (!more) {
|
|
109
92
|
break;
|
|
110
93
|
}
|
|
111
|
-
|
|
112
94
|
const parentBounds = parent.getBoundingClientRect();
|
|
113
95
|
const last = events.length - 1;
|
|
114
96
|
const eventsSorted = events.map(event => ({
|
|
@@ -116,17 +98,14 @@ export default CalendarBase.extend({
|
|
|
116
98
|
bottom: event.getBoundingClientRect().bottom
|
|
117
99
|
})).sort((a, b) => a.bottom - b.bottom);
|
|
118
100
|
let hidden = 0;
|
|
119
|
-
|
|
120
101
|
for (let i = 0; i <= last; i++) {
|
|
121
102
|
const bottom = eventsSorted[i].bottom;
|
|
122
103
|
const hide = i === last ? bottom > parentBounds.bottom : bottom + eventHeight > parentBounds.bottom;
|
|
123
|
-
|
|
124
104
|
if (hide) {
|
|
125
105
|
eventsSorted[i].event.style.display = 'none';
|
|
126
106
|
hidden++;
|
|
127
107
|
}
|
|
128
108
|
}
|
|
129
|
-
|
|
130
109
|
if (hidden) {
|
|
131
110
|
more.style.display = '';
|
|
132
111
|
more.innerHTML = this.$vuetify.lang.t(this.eventMoreText, hidden);
|
|
@@ -135,18 +114,14 @@ export default CalendarBase.extend({
|
|
|
135
114
|
}
|
|
136
115
|
}
|
|
137
116
|
},
|
|
138
|
-
|
|
139
117
|
getEventsMap() {
|
|
140
118
|
const eventsMap = {};
|
|
141
119
|
const elements = this.$refs.events;
|
|
142
|
-
|
|
143
120
|
if (!elements || !elements.forEach) {
|
|
144
121
|
return eventsMap;
|
|
145
122
|
}
|
|
146
|
-
|
|
147
123
|
elements.forEach(el => {
|
|
148
124
|
const date = el.getAttribute('data-date');
|
|
149
|
-
|
|
150
125
|
if (el.parentElement && date) {
|
|
151
126
|
if (!(date in eventsMap)) {
|
|
152
127
|
eventsMap[date] = {
|
|
@@ -155,7 +130,6 @@ export default CalendarBase.extend({
|
|
|
155
130
|
events: []
|
|
156
131
|
};
|
|
157
132
|
}
|
|
158
|
-
|
|
159
133
|
if (el.getAttribute('data-more')) {
|
|
160
134
|
eventsMap[date].more = el;
|
|
161
135
|
} else {
|
|
@@ -166,7 +140,6 @@ export default CalendarBase.extend({
|
|
|
166
140
|
});
|
|
167
141
|
return eventsMap;
|
|
168
142
|
},
|
|
169
|
-
|
|
170
143
|
genDayEvent(_ref, day) {
|
|
171
144
|
let {
|
|
172
145
|
event
|
|
@@ -178,11 +151,9 @@ export default CalendarBase.extend({
|
|
|
178
151
|
const start = dayIdentifier === event.startIdentifier;
|
|
179
152
|
let end = dayIdentifier === event.endIdentifier;
|
|
180
153
|
let width = WIDTH_START;
|
|
181
|
-
|
|
182
154
|
if (!this.categoryMode) {
|
|
183
155
|
for (let i = day.index + 1; i < week.length; i++) {
|
|
184
156
|
const weekdayIdentifier = getDayIdentifier(week[i]);
|
|
185
|
-
|
|
186
157
|
if (event.endIdentifier >= weekdayIdentifier) {
|
|
187
158
|
width += WIDTH_FULL;
|
|
188
159
|
end = end || weekdayIdentifier === event.endIdentifier;
|
|
@@ -192,7 +163,6 @@ export default CalendarBase.extend({
|
|
|
192
163
|
}
|
|
193
164
|
}
|
|
194
165
|
}
|
|
195
|
-
|
|
196
166
|
const scope = {
|
|
197
167
|
eventParsed: event,
|
|
198
168
|
day,
|
|
@@ -219,18 +189,15 @@ export default CalendarBase.extend({
|
|
|
219
189
|
refInFor: true
|
|
220
190
|
});
|
|
221
191
|
},
|
|
222
|
-
|
|
223
192
|
genTimedEvent(_ref2, day) {
|
|
224
193
|
let {
|
|
225
194
|
event,
|
|
226
195
|
left,
|
|
227
196
|
width
|
|
228
197
|
} = _ref2;
|
|
229
|
-
|
|
230
198
|
if (day.timeDelta(event.end) < 0 || day.timeDelta(event.start) >= 1 || isEventHiddenOn(event, day)) {
|
|
231
199
|
return false;
|
|
232
200
|
}
|
|
233
|
-
|
|
234
201
|
const dayIdentifier = getDayIdentifier(day);
|
|
235
202
|
const start = event.startIdentifier >= dayIdentifier;
|
|
236
203
|
const end = event.endIdentifier > dayIdentifier;
|
|
@@ -254,7 +221,6 @@ export default CalendarBase.extend({
|
|
|
254
221
|
}
|
|
255
222
|
});
|
|
256
223
|
},
|
|
257
|
-
|
|
258
224
|
genEvent(event, scopeInput, timedEvent, data) {
|
|
259
225
|
const slot = this.$scopedSlots.event;
|
|
260
226
|
const text = this.eventTextColorFunction(event.input);
|
|
@@ -262,15 +228,11 @@ export default CalendarBase.extend({
|
|
|
262
228
|
const overlapsNoon = event.start.hour < 12 && event.end.hour >= 12;
|
|
263
229
|
const singline = diffMinutes(event.start, event.end) <= this.parsedEventOverlapThreshold;
|
|
264
230
|
const formatTime = this.formatTime;
|
|
265
|
-
|
|
266
231
|
const timeSummary = () => formatTime(event.start, overlapsNoon) + ' - ' + formatTime(event.end, true);
|
|
267
|
-
|
|
268
232
|
const eventSummary = () => {
|
|
269
233
|
const name = this.eventNameFunction(event, timedEvent);
|
|
270
|
-
|
|
271
234
|
if (event.start.hasTime) {
|
|
272
235
|
const eventSummaryClass = 'v-event-summary';
|
|
273
|
-
|
|
274
236
|
if (timedEvent) {
|
|
275
237
|
const time = timeSummary();
|
|
276
238
|
const delimiter = singline ? ', ' : '<br>';
|
|
@@ -280,11 +242,10 @@ export default CalendarBase.extend({
|
|
|
280
242
|
return `<span class="${eventSummaryClass}"><strong>${time}</strong> ${name}</span>`;
|
|
281
243
|
}
|
|
282
244
|
}
|
|
283
|
-
|
|
284
245
|
return name;
|
|
285
246
|
};
|
|
286
|
-
|
|
287
|
-
|
|
247
|
+
const scope = {
|
|
248
|
+
...scopeInput,
|
|
288
249
|
event: event.input,
|
|
289
250
|
outside: scopeInput.day.outside,
|
|
290
251
|
singline,
|
|
@@ -294,7 +255,8 @@ export default CalendarBase.extend({
|
|
|
294
255
|
eventSummary
|
|
295
256
|
};
|
|
296
257
|
return this.$createElement('div', this.setTextColor(text, this.setBackgroundColor(background, {
|
|
297
|
-
on: this.getDefaultMouseEventHandlers(':event', nativeEvent => ({
|
|
258
|
+
on: this.getDefaultMouseEventHandlers(':event', nativeEvent => ({
|
|
259
|
+
...scope,
|
|
298
260
|
nativeEvent
|
|
299
261
|
})),
|
|
300
262
|
directives: [{
|
|
@@ -304,7 +266,6 @@ export default CalendarBase.extend({
|
|
|
304
266
|
...data
|
|
305
267
|
})), slot ? slot(scope) : [this.genName(eventSummary)]);
|
|
306
268
|
},
|
|
307
|
-
|
|
308
269
|
genName(eventSummary) {
|
|
309
270
|
return this.$createElement('div', {
|
|
310
271
|
staticClass: 'pl-1',
|
|
@@ -313,7 +274,6 @@ export default CalendarBase.extend({
|
|
|
313
274
|
}
|
|
314
275
|
});
|
|
315
276
|
},
|
|
316
|
-
|
|
317
277
|
genPlaceholder(day) {
|
|
318
278
|
const height = this.eventHeight + this.eventMarginBottom;
|
|
319
279
|
return this.$createElement('div', {
|
|
@@ -327,7 +287,6 @@ export default CalendarBase.extend({
|
|
|
327
287
|
refInFor: true
|
|
328
288
|
});
|
|
329
289
|
},
|
|
330
|
-
|
|
331
290
|
genMore(day) {
|
|
332
291
|
const eventHeight = this.eventHeight;
|
|
333
292
|
const eventMarginBottom = this.eventMarginBottom;
|
|
@@ -356,100 +315,81 @@ export default CalendarBase.extend({
|
|
|
356
315
|
refInFor: true
|
|
357
316
|
});
|
|
358
317
|
},
|
|
359
|
-
|
|
360
318
|
getVisibleEvents() {
|
|
361
319
|
const start = getDayIdentifier(this.days[0]);
|
|
362
320
|
const end = getDayIdentifier(this.days[this.days.length - 1]);
|
|
363
321
|
return this.parsedEvents.filter(event => isEventOverlapping(event, start, end));
|
|
364
322
|
},
|
|
365
|
-
|
|
366
323
|
isEventForCategory(event, category) {
|
|
367
324
|
return !this.categoryMode || typeof category === 'object' && category.categoryName && category.categoryName === event.category || typeof event.category === 'string' && category === event.category || typeof event.category !== 'string' && category === null;
|
|
368
325
|
},
|
|
369
|
-
|
|
370
326
|
getEventsForDay(day) {
|
|
371
327
|
const identifier = getDayIdentifier(day);
|
|
372
328
|
const firstWeekday = this.eventWeekdays[0];
|
|
373
329
|
return this.parsedEvents.filter(event => isEventStart(event, day, identifier, firstWeekday));
|
|
374
330
|
},
|
|
375
|
-
|
|
376
331
|
getEventsForDayAll(day) {
|
|
377
332
|
const identifier = getDayIdentifier(day);
|
|
378
333
|
const firstWeekday = this.eventWeekdays[0];
|
|
379
334
|
return this.parsedEvents.filter(event => event.allDay && (this.categoryMode ? isEventOn(event, identifier) : isEventStart(event, day, identifier, firstWeekday)) && this.isEventForCategory(event, day.category));
|
|
380
335
|
},
|
|
381
|
-
|
|
382
336
|
getEventsForDayTimed(day) {
|
|
383
337
|
const identifier = getDayIdentifier(day);
|
|
384
338
|
return this.parsedEvents.filter(event => !event.allDay && isEventOn(event, identifier) && this.isEventForCategory(event, day.category));
|
|
385
339
|
},
|
|
386
|
-
|
|
387
340
|
getScopedSlots() {
|
|
388
341
|
if (this.noEvents) {
|
|
389
|
-
return {
|
|
342
|
+
return {
|
|
343
|
+
...this.$scopedSlots
|
|
390
344
|
};
|
|
391
345
|
}
|
|
392
|
-
|
|
393
346
|
const mode = this.eventModeFunction(this.parsedEvents, this.eventWeekdays[0], this.parsedEventOverlapThreshold);
|
|
394
|
-
|
|
395
347
|
const isNode = input => !!input;
|
|
396
|
-
|
|
397
348
|
const getSlotChildren = (day, getter, mapper, timed) => {
|
|
398
349
|
const events = getter(day);
|
|
399
350
|
const visuals = mode(day, events, timed, this.categoryMode);
|
|
400
|
-
|
|
401
351
|
if (timed) {
|
|
402
352
|
return visuals.map(visual => mapper(visual, day)).filter(isNode);
|
|
403
353
|
}
|
|
404
|
-
|
|
405
354
|
const children = [];
|
|
406
355
|
visuals.forEach((visual, index) => {
|
|
407
356
|
while (children.length < visual.column) {
|
|
408
357
|
children.push(this.genPlaceholder(day));
|
|
409
358
|
}
|
|
410
|
-
|
|
411
359
|
const mapped = mapper(visual, day);
|
|
412
|
-
|
|
413
360
|
if (mapped) {
|
|
414
361
|
children.push(mapped);
|
|
415
362
|
}
|
|
416
363
|
});
|
|
417
364
|
return children;
|
|
418
365
|
};
|
|
419
|
-
|
|
420
366
|
const slots = this.$scopedSlots;
|
|
421
367
|
const slotDay = slots.day;
|
|
422
368
|
const slotDayHeader = slots['day-header'];
|
|
423
369
|
const slotDayBody = slots['day-body'];
|
|
424
|
-
return {
|
|
370
|
+
return {
|
|
371
|
+
...slots,
|
|
425
372
|
day: day => {
|
|
426
373
|
let children = getSlotChildren(day, this.getEventsForDay, this.genDayEvent, false);
|
|
427
|
-
|
|
428
374
|
if (children && children.length > 0 && this.eventMore) {
|
|
429
375
|
children.push(this.genMore(day));
|
|
430
376
|
}
|
|
431
|
-
|
|
432
377
|
if (slotDay) {
|
|
433
378
|
const slot = slotDay(day);
|
|
434
|
-
|
|
435
379
|
if (slot) {
|
|
436
380
|
children = children ? children.concat(slot) : slot;
|
|
437
381
|
}
|
|
438
382
|
}
|
|
439
|
-
|
|
440
383
|
return children;
|
|
441
384
|
},
|
|
442
385
|
'day-header': day => {
|
|
443
386
|
let children = getSlotChildren(day, this.getEventsForDayAll, this.genDayEvent, false);
|
|
444
|
-
|
|
445
387
|
if (slotDayHeader) {
|
|
446
388
|
const slot = slotDayHeader(day);
|
|
447
|
-
|
|
448
389
|
if (slot) {
|
|
449
390
|
children = children ? children.concat(slot) : slot;
|
|
450
391
|
}
|
|
451
392
|
}
|
|
452
|
-
|
|
453
393
|
return children;
|
|
454
394
|
},
|
|
455
395
|
'day-body': day => {
|
|
@@ -457,20 +397,16 @@ export default CalendarBase.extend({
|
|
|
457
397
|
let children = [this.$createElement('div', {
|
|
458
398
|
staticClass: 'v-event-timed-container'
|
|
459
399
|
}, events)];
|
|
460
|
-
|
|
461
400
|
if (slotDayBody) {
|
|
462
401
|
const slot = slotDayBody(day);
|
|
463
|
-
|
|
464
402
|
if (slot) {
|
|
465
403
|
children = children.concat(slot);
|
|
466
404
|
}
|
|
467
405
|
}
|
|
468
|
-
|
|
469
406
|
return children;
|
|
470
407
|
}
|
|
471
408
|
};
|
|
472
409
|
}
|
|
473
|
-
|
|
474
410
|
}
|
|
475
411
|
});
|
|
476
412
|
//# sourceMappingURL=calendar-with-events.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendar-with-events.mjs","names":["ripple","CalendarBase","escapeHTML","props","CalendarEventOverlapModes","getDayIdentifier","diffMinutes","parseEvent","isEventStart","isEventOn","isEventOverlapping","isEventHiddenOn","WIDTH_FULL","WIDTH_START","MINUTES_IN_DAY","extend","name","directives","events","calendar","category","computed","noEvents","length","parsedEvents","map","parsedEventOverlapThreshold","parseInt","eventOverlapThreshold","eventTimedFunction","eventTimed","event","eventCategoryFunction","eventCategory","eventTextColorFunction","eventTextColor","eventNameFunction","eventName","timedEvent","input","eventModeFunction","eventOverlapMode","eventWeekdays","parsedWeekdays","categoryMode","type","methods","eventColorFunction","e","eventColor","color","index","eventStart","eventEnd","formatTime","withTime","ampm","formatter","getFormatter","timeZone","hour","minute","undefined","updateEventVisibility","eventMore","eventHeight","eventsMap","getEventsMap","date","parent","more","parentBounds","getBoundingClientRect","last","eventsSorted","bottom","sort","a","b","hidden","i","hide","style","display","innerHTML","$vuetify","lang","t","eventMoreText","elements","$refs","forEach","el","getAttribute","parentElement","push","genDayEvent","day","eventMarginBottom","dayIdentifier","week","start","startIdentifier","end","endIdentifier","width","weekdayIdentifier","scope","eventParsed","timed","genEvent","staticClass","class","height","attrs","key","ref","refInFor","genTimedEvent","left","timeDelta","top","timeToY","Math","max","scopeInput","data","slot","$scopedSlots","text","background","overlapsNoon","singline","timeSummary","eventSummary","hasTime","eventSummaryClass","time","delimiter","outside","$createElement","setTextColor","setBackgroundColor","on","getDefaultMouseEventHandlers","nativeEvent","value","eventRipple","genName","domProps","genPlaceholder","genMore","click","$emit","getVisibleEvents","days","filter","isEventForCategory","categoryName","getEventsForDay","identifier","firstWeekday","getEventsForDayAll","allDay","getEventsForDayTimed","getScopedSlots","mode","isNode","getSlotChildren","getter","mapper","visuals","visual","children","column","mapped","slots","slotDay","slotDayHeader","slotDayBody","concat"],"sources":["../../../../src/components/VCalendar/mixins/calendar-with-events.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Styles\nimport './calendar-with-events.sass'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\n// Directives\nimport ripple from '../../../directives/ripple'\n\n// Mixins\nimport CalendarBase from './calendar-base'\n\n// Helpers\nimport { escapeHTML } from '../../../util/helpers'\n\n// Util\nimport props from '../util/props'\nimport {\n CalendarEventOverlapModes,\n} from '../modes'\nimport {\n getDayIdentifier, diffMinutes,\n} from '../util/timestamp'\nimport {\n parseEvent,\n isEventStart,\n isEventOn,\n isEventOverlapping,\n isEventHiddenOn,\n} from '../util/events'\nimport {\n CalendarTimestamp,\n CalendarEventParsed,\n CalendarEventVisual,\n CalendarEventColorFunction,\n CalendarEventNameFunction,\n CalendarEventTimedFunction,\n CalendarDaySlotScope,\n CalendarDayBodySlotScope,\n CalendarEventOverlapMode,\n CalendarEvent,\n CalendarEventCategoryFunction,\n CalendarCategory,\n} from 'vuetify/types'\n\n// Types\ntype VEventGetter<D> = (day: D) => CalendarEventParsed[]\n\ntype VEventVisualToNode<D> = (visual: CalendarEventVisual, day: D) => VNode | false\n\ntype VEventsToNodes = <D extends CalendarDaySlotScope>(\n day: D,\n getter: VEventGetter<D>,\n mapper: VEventVisualToNode<D>,\n timed: boolean) => VNode[] | undefined\n\ntype VDailyEventsMap = {\n [date: string]: {\n parent: HTMLElement\n more: HTMLElement | null\n events: HTMLElement[]\n }\n}\n\ninterface VEventScopeInput {\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\nconst WIDTH_FULL = 100\nconst WIDTH_START = 95\nconst MINUTES_IN_DAY = 1440\n\n/* @vue/component */\nexport default CalendarBase.extend({\n name: 'calendar-with-events',\n\n directives: {\n ripple,\n },\n\n props: {\n ...props.events,\n ...props.calendar,\n ...props.category,\n },\n\n computed: {\n noEvents (): boolean {\n return this.events.length === 0\n },\n parsedEvents (): CalendarEventParsed[] {\n return this.events.map(this.parseEvent)\n },\n parsedEventOverlapThreshold (): number {\n return parseInt(this.eventOverlapThreshold)\n },\n eventTimedFunction (): CalendarEventTimedFunction {\n return typeof this.eventTimed === 'function'\n ? this.eventTimed\n : event => !!event[this.eventTimed as string]\n },\n eventCategoryFunction (): CalendarEventCategoryFunction {\n return typeof this.eventCategory === 'function'\n ? this.eventCategory\n : event => event[this.eventCategory as string]\n },\n eventTextColorFunction (): CalendarEventColorFunction {\n return typeof this.eventTextColor === 'function'\n ? this.eventTextColor\n : () => this.eventTextColor as string\n },\n eventNameFunction (): CalendarEventNameFunction {\n return typeof this.eventName === 'function'\n ? this.eventName\n : (event, timedEvent) => escapeHTML(event.input[this.eventName as string] as string || '')\n },\n eventModeFunction (): CalendarEventOverlapMode {\n return typeof this.eventOverlapMode === 'function'\n ? this.eventOverlapMode\n : CalendarEventOverlapModes[this.eventOverlapMode]\n },\n eventWeekdays (): number[] {\n return this.parsedWeekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n },\n\n methods: {\n eventColorFunction (e: CalendarEvent): string {\n return typeof this.eventColor === 'function'\n ? this.eventColor(e)\n : e.color || this.eventColor\n },\n parseEvent (input: CalendarEvent, index = 0): CalendarEventParsed {\n return parseEvent(\n input,\n index,\n this.eventStart,\n this.eventEnd,\n this.eventTimedFunction(input),\n this.categoryMode ? this.eventCategoryFunction(input) : false,\n )\n },\n formatTime (withTime: CalendarTimestamp, ampm: boolean): string {\n const formatter = this.getFormatter({\n timeZone: 'UTC',\n hour: 'numeric',\n minute: withTime.minute > 0 ? 'numeric' : undefined,\n })\n\n return formatter(withTime, true)\n },\n updateEventVisibility () {\n if (this.noEvents || !this.eventMore) {\n return\n }\n\n const eventHeight = this.eventHeight\n const eventsMap = this.getEventsMap()\n\n for (const date in eventsMap) {\n const { parent, events, more } = eventsMap[date]\n if (!more) {\n break\n }\n\n const parentBounds = parent.getBoundingClientRect()\n const last = events.length - 1\n const eventsSorted = events.map(event => ({\n event,\n bottom: event.getBoundingClientRect().bottom,\n })).sort((a, b) => a.bottom - b.bottom)\n let hidden = 0\n\n for (let i = 0; i <= last; i++) {\n const bottom = eventsSorted[i].bottom\n const hide = i === last\n ? (bottom > parentBounds.bottom)\n : (bottom + eventHeight > parentBounds.bottom)\n\n if (hide) {\n eventsSorted[i].event.style.display = 'none'\n hidden++\n }\n }\n\n if (hidden) {\n more.style.display = ''\n more.innerHTML = this.$vuetify.lang.t(this.eventMoreText, hidden)\n } else {\n more.style.display = 'none'\n }\n }\n },\n getEventsMap (): VDailyEventsMap {\n const eventsMap: VDailyEventsMap = {}\n const elements = this.$refs.events as HTMLElement[]\n\n if (!elements || !elements.forEach) {\n return eventsMap\n }\n\n elements.forEach(el => {\n const date = el.getAttribute('data-date')\n if (el.parentElement && date) {\n if (!(date in eventsMap)) {\n eventsMap[date] = {\n parent: el.parentElement,\n more: null,\n events: [],\n }\n }\n if (el.getAttribute('data-more')) {\n eventsMap[date].more = el\n } else {\n eventsMap[date].events.push(el)\n el.style.display = ''\n }\n }\n })\n\n return eventsMap\n },\n genDayEvent ({ event }: CalendarEventVisual, day: CalendarDaySlotScope): VNode {\n const eventHeight = this.eventHeight\n const eventMarginBottom = this.eventMarginBottom\n const dayIdentifier = getDayIdentifier(day)\n const week = day.week\n const start = dayIdentifier === event.startIdentifier\n let end = dayIdentifier === event.endIdentifier\n let width = WIDTH_START\n\n if (!this.categoryMode) {\n for (let i = day.index + 1; i < week.length; i++) {\n const weekdayIdentifier = getDayIdentifier(week[i])\n if (event.endIdentifier >= weekdayIdentifier) {\n width += WIDTH_FULL\n end = end || weekdayIdentifier === event.endIdentifier\n } else {\n end = true\n break\n }\n }\n }\n const scope = { eventParsed: event, day, start, end, timed: false }\n\n return this.genEvent(event, scope, false, {\n staticClass: 'v-event',\n class: {\n 'v-event-start': start,\n 'v-event-end': end,\n },\n style: {\n height: `${eventHeight}px`,\n width: `${width}%`,\n 'margin-bottom': `${eventMarginBottom}px`,\n },\n attrs: {\n 'data-date': day.date,\n },\n key: event.index,\n ref: 'events',\n refInFor: true,\n })\n },\n genTimedEvent ({ event, left, width }: CalendarEventVisual, day: CalendarDayBodySlotScope): VNode | false {\n if (day.timeDelta(event.end) < 0 || day.timeDelta(event.start) >= 1 || isEventHiddenOn(event, day)) {\n return false\n }\n\n const dayIdentifier = getDayIdentifier(day)\n const start = event.startIdentifier >= dayIdentifier\n const end = event.endIdentifier > dayIdentifier\n const top = start ? day.timeToY(event.start) : 0\n const bottom = end ? day.timeToY(MINUTES_IN_DAY) : day.timeToY(event.end)\n const height = Math.max(this.eventHeight, bottom - top)\n const scope = { eventParsed: event, day, start, end, timed: true }\n\n return this.genEvent(event, scope, true, {\n staticClass: 'v-event-timed',\n style: {\n top: `${top}px`,\n height: `${height}px`,\n left: `${left}%`,\n width: `${width}%`,\n },\n })\n },\n genEvent (event: CalendarEventParsed, scopeInput: VEventScopeInput, timedEvent: boolean, data: VNodeData): VNode {\n const slot = this.$scopedSlots.event\n const text = this.eventTextColorFunction(event.input)\n const background = this.eventColorFunction(event.input)\n const overlapsNoon = event.start.hour < 12 && event.end.hour >= 12\n const singline = diffMinutes(event.start, event.end) <= this.parsedEventOverlapThreshold\n const formatTime = this.formatTime\n const timeSummary = () => formatTime(event.start, overlapsNoon) + ' - ' + formatTime(event.end, true)\n const eventSummary = () => {\n const name = this.eventNameFunction(event, timedEvent)\n if (event.start.hasTime) {\n const eventSummaryClass = 'v-event-summary'\n if (timedEvent) {\n const time = timeSummary()\n const delimiter = singline ? ', ' : '<br>'\n\n return `<span class=\"${eventSummaryClass}\"><strong>${name}</strong>${delimiter}${time}</span>`\n } else {\n const time = formatTime(event.start, true)\n\n return `<span class=\"${eventSummaryClass}\"><strong>${time}</strong> ${name}</span>`\n }\n }\n\n return name\n }\n\n const scope = {\n ...scopeInput,\n event: event.input,\n outside: scopeInput.day.outside,\n singline,\n overlapsNoon,\n formatTime,\n timeSummary,\n eventSummary,\n }\n\n return this.$createElement('div',\n this.setTextColor(text,\n this.setBackgroundColor(background, {\n on: this.getDefaultMouseEventHandlers(':event', nativeEvent => ({ ...scope, nativeEvent })),\n directives: [{\n name: 'ripple',\n value: this.eventRipple ?? true,\n }],\n ...data,\n })\n ), slot\n ? slot(scope)\n : [this.genName(eventSummary)]\n )\n },\n genName (eventSummary: () => string): VNode {\n return this.$createElement('div', {\n staticClass: 'pl-1',\n domProps: {\n innerHTML: eventSummary(),\n },\n })\n },\n genPlaceholder (day: CalendarTimestamp): VNode {\n const height = this.eventHeight + this.eventMarginBottom\n\n return this.$createElement('div', {\n style: {\n height: `${height}px`,\n },\n attrs: {\n 'data-date': day.date,\n },\n ref: 'events',\n refInFor: true,\n })\n },\n genMore (day: CalendarDaySlotScope): VNode {\n const eventHeight = this.eventHeight\n const eventMarginBottom = this.eventMarginBottom\n\n return this.$createElement('div', {\n staticClass: 'v-event-more pl-1',\n class: {\n 'v-outside': day.outside,\n },\n attrs: {\n 'data-date': day.date,\n 'data-more': 1,\n },\n directives: [{\n name: 'ripple',\n value: this.eventRipple ?? true,\n }],\n on: {\n click: (e: MouseEvent) => this.$emit('click:more', day, e),\n },\n style: {\n display: 'none',\n height: `${eventHeight}px`,\n 'margin-bottom': `${eventMarginBottom}px`,\n },\n ref: 'events',\n refInFor: true,\n })\n },\n getVisibleEvents (): CalendarEventParsed[] {\n const start = getDayIdentifier(this.days[0])\n const end = getDayIdentifier(this.days[this.days.length - 1])\n\n return this.parsedEvents.filter(\n event => isEventOverlapping(event, start, end)\n )\n },\n isEventForCategory (event: CalendarEventParsed, category: CalendarCategory): boolean {\n return !this.categoryMode ||\n (typeof category === 'object' && category.categoryName &&\n category.categoryName === event.category) ||\n (typeof event.category === 'string' && category === event.category) ||\n (typeof event.category !== 'string' && category === null)\n },\n getEventsForDay (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = this.eventWeekdays[0]\n\n return this.parsedEvents.filter(\n event => isEventStart(event, day, identifier, firstWeekday)\n )\n },\n getEventsForDayAll (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = this.eventWeekdays[0]\n\n return this.parsedEvents.filter(\n event => event.allDay &&\n (this.categoryMode ? isEventOn(event, identifier) : isEventStart(event, day, identifier, firstWeekday)) &&\n this.isEventForCategory(event, day.category)\n )\n },\n getEventsForDayTimed (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n return this.parsedEvents.filter(\n event => !event.allDay &&\n isEventOn(event, identifier) &&\n this.isEventForCategory(event, day.category)\n )\n },\n getScopedSlots () {\n if (this.noEvents) {\n return { ...this.$scopedSlots }\n }\n\n const mode = this.eventModeFunction(\n this.parsedEvents,\n this.eventWeekdays[0],\n this.parsedEventOverlapThreshold\n )\n\n const isNode = (input: VNode | false): input is VNode => !!input\n const getSlotChildren: VEventsToNodes = (day, getter, mapper, timed) => {\n const events = getter(day)\n const visuals = mode(day, events, timed, this.categoryMode)\n\n if (timed) {\n return visuals.map(visual => mapper(visual, day)).filter(isNode)\n }\n\n const children: VNode[] = []\n\n visuals.forEach((visual, index) => {\n while (children.length < visual.column) {\n children.push(this.genPlaceholder(day))\n }\n\n const mapped = mapper(visual, day)\n if (mapped) {\n children.push(mapped)\n }\n })\n\n return children\n }\n\n const slots = this.$scopedSlots\n const slotDay = slots.day\n const slotDayHeader = slots['day-header']\n const slotDayBody = slots['day-body']\n\n return {\n ...slots,\n day: (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, this.getEventsForDay, this.genDayEvent, false)\n if (children && children.length > 0 && this.eventMore) {\n children.push(this.genMore(day))\n }\n if (slotDay) {\n const slot = slotDay(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-header': (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, this.getEventsForDayAll, this.genDayEvent, false)\n\n if (slotDayHeader) {\n const slot = slotDayHeader(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-body': (day: CalendarDayBodySlotScope) => {\n const events = getSlotChildren(day, this.getEventsForDayTimed, this.genTimedEvent, true)\n let children: VNode[] = [\n this.$createElement('div', {\n staticClass: 'v-event-timed-container',\n }, events),\n ]\n\n if (slotDayBody) {\n const slot = slotDayBody(day)\n if (slot) {\n children = children.concat(slot)\n }\n }\n return children\n },\n }\n },\n },\n})\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calendar-with-events.mjs","names":["ripple","CalendarBase","escapeHTML","props","CalendarEventOverlapModes","getDayIdentifier","diffMinutes","parseEvent","isEventStart","isEventOn","isEventOverlapping","isEventHiddenOn","WIDTH_FULL","WIDTH_START","MINUTES_IN_DAY","extend","name","directives","events","calendar","category","computed","noEvents","length","parsedEvents","map","parsedEventOverlapThreshold","parseInt","eventOverlapThreshold","eventTimedFunction","eventTimed","event","eventCategoryFunction","eventCategory","eventTextColorFunction","eventTextColor","eventNameFunction","eventName","timedEvent","input","eventModeFunction","eventOverlapMode","eventWeekdays","parsedWeekdays","categoryMode","type","methods","eventColorFunction","e","eventColor","color","index","eventStart","eventEnd","formatTime","withTime","ampm","formatter","getFormatter","timeZone","hour","minute","undefined","updateEventVisibility","eventMore","eventHeight","eventsMap","getEventsMap","date","parent","more","parentBounds","getBoundingClientRect","last","eventsSorted","bottom","sort","a","b","hidden","i","hide","style","display","innerHTML","$vuetify","lang","t","eventMoreText","elements","$refs","forEach","el","getAttribute","parentElement","push","genDayEvent","day","eventMarginBottom","dayIdentifier","week","start","startIdentifier","end","endIdentifier","width","weekdayIdentifier","scope","eventParsed","timed","genEvent","staticClass","class","height","attrs","key","ref","refInFor","genTimedEvent","left","timeDelta","top","timeToY","Math","max","scopeInput","data","slot","$scopedSlots","text","background","overlapsNoon","singline","timeSummary","eventSummary","hasTime","eventSummaryClass","time","delimiter","outside","$createElement","setTextColor","setBackgroundColor","on","getDefaultMouseEventHandlers","nativeEvent","value","eventRipple","genName","domProps","genPlaceholder","genMore","click","$emit","getVisibleEvents","days","filter","isEventForCategory","categoryName","getEventsForDay","identifier","firstWeekday","getEventsForDayAll","allDay","getEventsForDayTimed","getScopedSlots","mode","isNode","getSlotChildren","getter","mapper","visuals","visual","children","column","mapped","slots","slotDay","slotDayHeader","slotDayBody","concat"],"sources":["../../../../src/components/VCalendar/mixins/calendar-with-events.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\n// Styles\nimport './calendar-with-events.sass'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\n// Directives\nimport ripple from '../../../directives/ripple'\n\n// Mixins\nimport CalendarBase from './calendar-base'\n\n// Helpers\nimport { escapeHTML } from '../../../util/helpers'\n\n// Util\nimport props from '../util/props'\nimport {\n CalendarEventOverlapModes,\n} from '../modes'\nimport {\n getDayIdentifier, diffMinutes,\n} from '../util/timestamp'\nimport {\n parseEvent,\n isEventStart,\n isEventOn,\n isEventOverlapping,\n isEventHiddenOn,\n} from '../util/events'\nimport {\n CalendarTimestamp,\n CalendarEventParsed,\n CalendarEventVisual,\n CalendarEventColorFunction,\n CalendarEventNameFunction,\n CalendarEventTimedFunction,\n CalendarDaySlotScope,\n CalendarDayBodySlotScope,\n CalendarEventOverlapMode,\n CalendarEvent,\n CalendarEventCategoryFunction,\n CalendarCategory,\n} from 'vuetify/types'\n\n// Types\ntype VEventGetter<D> = (day: D) => CalendarEventParsed[]\n\ntype VEventVisualToNode<D> = (visual: CalendarEventVisual, day: D) => VNode | false\n\ntype VEventsToNodes = <D extends CalendarDaySlotScope>(\n day: D,\n getter: VEventGetter<D>,\n mapper: VEventVisualToNode<D>,\n timed: boolean) => VNode[] | undefined\n\ntype VDailyEventsMap = {\n [date: string]: {\n parent: HTMLElement\n more: HTMLElement | null\n events: HTMLElement[]\n }\n}\n\ninterface VEventScopeInput {\n eventParsed: CalendarEventParsed\n day: CalendarDaySlotScope\n start: boolean\n end: boolean\n timed: boolean\n}\n\nconst WIDTH_FULL = 100\nconst WIDTH_START = 95\nconst MINUTES_IN_DAY = 1440\n\n/* @vue/component */\nexport default CalendarBase.extend({\n name: 'calendar-with-events',\n\n directives: {\n ripple,\n },\n\n props: {\n ...props.events,\n ...props.calendar,\n ...props.category,\n },\n\n computed: {\n noEvents (): boolean {\n return this.events.length === 0\n },\n parsedEvents (): CalendarEventParsed[] {\n return this.events.map(this.parseEvent)\n },\n parsedEventOverlapThreshold (): number {\n return parseInt(this.eventOverlapThreshold)\n },\n eventTimedFunction (): CalendarEventTimedFunction {\n return typeof this.eventTimed === 'function'\n ? this.eventTimed\n : event => !!event[this.eventTimed as string]\n },\n eventCategoryFunction (): CalendarEventCategoryFunction {\n return typeof this.eventCategory === 'function'\n ? this.eventCategory\n : event => event[this.eventCategory as string]\n },\n eventTextColorFunction (): CalendarEventColorFunction {\n return typeof this.eventTextColor === 'function'\n ? this.eventTextColor\n : () => this.eventTextColor as string\n },\n eventNameFunction (): CalendarEventNameFunction {\n return typeof this.eventName === 'function'\n ? this.eventName\n : (event, timedEvent) => escapeHTML(event.input[this.eventName as string] as string || '')\n },\n eventModeFunction (): CalendarEventOverlapMode {\n return typeof this.eventOverlapMode === 'function'\n ? this.eventOverlapMode\n : CalendarEventOverlapModes[this.eventOverlapMode]\n },\n eventWeekdays (): number[] {\n return this.parsedWeekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n },\n\n methods: {\n eventColorFunction (e: CalendarEvent): string {\n return typeof this.eventColor === 'function'\n ? this.eventColor(e)\n : e.color || this.eventColor\n },\n parseEvent (input: CalendarEvent, index = 0): CalendarEventParsed {\n return parseEvent(\n input,\n index,\n this.eventStart,\n this.eventEnd,\n this.eventTimedFunction(input),\n this.categoryMode ? this.eventCategoryFunction(input) : false,\n )\n },\n formatTime (withTime: CalendarTimestamp, ampm: boolean): string {\n const formatter = this.getFormatter({\n timeZone: 'UTC',\n hour: 'numeric',\n minute: withTime.minute > 0 ? 'numeric' : undefined,\n })\n\n return formatter(withTime, true)\n },\n updateEventVisibility () {\n if (this.noEvents || !this.eventMore) {\n return\n }\n\n const eventHeight = this.eventHeight\n const eventsMap = this.getEventsMap()\n\n for (const date in eventsMap) {\n const { parent, events, more } = eventsMap[date]\n if (!more) {\n break\n }\n\n const parentBounds = parent.getBoundingClientRect()\n const last = events.length - 1\n const eventsSorted = events.map(event => ({\n event,\n bottom: event.getBoundingClientRect().bottom,\n })).sort((a, b) => a.bottom - b.bottom)\n let hidden = 0\n\n for (let i = 0; i <= last; i++) {\n const bottom = eventsSorted[i].bottom\n const hide = i === last\n ? (bottom > parentBounds.bottom)\n : (bottom + eventHeight > parentBounds.bottom)\n\n if (hide) {\n eventsSorted[i].event.style.display = 'none'\n hidden++\n }\n }\n\n if (hidden) {\n more.style.display = ''\n more.innerHTML = this.$vuetify.lang.t(this.eventMoreText, hidden)\n } else {\n more.style.display = 'none'\n }\n }\n },\n getEventsMap (): VDailyEventsMap {\n const eventsMap: VDailyEventsMap = {}\n const elements = this.$refs.events as HTMLElement[]\n\n if (!elements || !elements.forEach) {\n return eventsMap\n }\n\n elements.forEach(el => {\n const date = el.getAttribute('data-date')\n if (el.parentElement && date) {\n if (!(date in eventsMap)) {\n eventsMap[date] = {\n parent: el.parentElement,\n more: null,\n events: [],\n }\n }\n if (el.getAttribute('data-more')) {\n eventsMap[date].more = el\n } else {\n eventsMap[date].events.push(el)\n el.style.display = ''\n }\n }\n })\n\n return eventsMap\n },\n genDayEvent ({ event }: CalendarEventVisual, day: CalendarDaySlotScope): VNode {\n const eventHeight = this.eventHeight\n const eventMarginBottom = this.eventMarginBottom\n const dayIdentifier = getDayIdentifier(day)\n const week = day.week\n const start = dayIdentifier === event.startIdentifier\n let end = dayIdentifier === event.endIdentifier\n let width = WIDTH_START\n\n if (!this.categoryMode) {\n for (let i = day.index + 1; i < week.length; i++) {\n const weekdayIdentifier = getDayIdentifier(week[i])\n if (event.endIdentifier >= weekdayIdentifier) {\n width += WIDTH_FULL\n end = end || weekdayIdentifier === event.endIdentifier\n } else {\n end = true\n break\n }\n }\n }\n const scope = { eventParsed: event, day, start, end, timed: false }\n\n return this.genEvent(event, scope, false, {\n staticClass: 'v-event',\n class: {\n 'v-event-start': start,\n 'v-event-end': end,\n },\n style: {\n height: `${eventHeight}px`,\n width: `${width}%`,\n 'margin-bottom': `${eventMarginBottom}px`,\n },\n attrs: {\n 'data-date': day.date,\n },\n key: event.index,\n ref: 'events',\n refInFor: true,\n })\n },\n genTimedEvent ({ event, left, width }: CalendarEventVisual, day: CalendarDayBodySlotScope): VNode | false {\n if (day.timeDelta(event.end) < 0 || day.timeDelta(event.start) >= 1 || isEventHiddenOn(event, day)) {\n return false\n }\n\n const dayIdentifier = getDayIdentifier(day)\n const start = event.startIdentifier >= dayIdentifier\n const end = event.endIdentifier > dayIdentifier\n const top = start ? day.timeToY(event.start) : 0\n const bottom = end ? day.timeToY(MINUTES_IN_DAY) : day.timeToY(event.end)\n const height = Math.max(this.eventHeight, bottom - top)\n const scope = { eventParsed: event, day, start, end, timed: true }\n\n return this.genEvent(event, scope, true, {\n staticClass: 'v-event-timed',\n style: {\n top: `${top}px`,\n height: `${height}px`,\n left: `${left}%`,\n width: `${width}%`,\n },\n })\n },\n genEvent (event: CalendarEventParsed, scopeInput: VEventScopeInput, timedEvent: boolean, data: VNodeData): VNode {\n const slot = this.$scopedSlots.event\n const text = this.eventTextColorFunction(event.input)\n const background = this.eventColorFunction(event.input)\n const overlapsNoon = event.start.hour < 12 && event.end.hour >= 12\n const singline = diffMinutes(event.start, event.end) <= this.parsedEventOverlapThreshold\n const formatTime = this.formatTime\n const timeSummary = () => formatTime(event.start, overlapsNoon) + ' - ' + formatTime(event.end, true)\n const eventSummary = () => {\n const name = this.eventNameFunction(event, timedEvent)\n if (event.start.hasTime) {\n const eventSummaryClass = 'v-event-summary'\n if (timedEvent) {\n const time = timeSummary()\n const delimiter = singline ? ', ' : '<br>'\n\n return `<span class=\"${eventSummaryClass}\"><strong>${name}</strong>${delimiter}${time}</span>`\n } else {\n const time = formatTime(event.start, true)\n\n return `<span class=\"${eventSummaryClass}\"><strong>${time}</strong> ${name}</span>`\n }\n }\n\n return name\n }\n\n const scope = {\n ...scopeInput,\n event: event.input,\n outside: scopeInput.day.outside,\n singline,\n overlapsNoon,\n formatTime,\n timeSummary,\n eventSummary,\n }\n\n return this.$createElement('div',\n this.setTextColor(text,\n this.setBackgroundColor(background, {\n on: this.getDefaultMouseEventHandlers(':event', nativeEvent => ({ ...scope, nativeEvent })),\n directives: [{\n name: 'ripple',\n value: this.eventRipple ?? true,\n }],\n ...data,\n })\n ), slot\n ? slot(scope)\n : [this.genName(eventSummary)]\n )\n },\n genName (eventSummary: () => string): VNode {\n return this.$createElement('div', {\n staticClass: 'pl-1',\n domProps: {\n innerHTML: eventSummary(),\n },\n })\n },\n genPlaceholder (day: CalendarTimestamp): VNode {\n const height = this.eventHeight + this.eventMarginBottom\n\n return this.$createElement('div', {\n style: {\n height: `${height}px`,\n },\n attrs: {\n 'data-date': day.date,\n },\n ref: 'events',\n refInFor: true,\n })\n },\n genMore (day: CalendarDaySlotScope): VNode {\n const eventHeight = this.eventHeight\n const eventMarginBottom = this.eventMarginBottom\n\n return this.$createElement('div', {\n staticClass: 'v-event-more pl-1',\n class: {\n 'v-outside': day.outside,\n },\n attrs: {\n 'data-date': day.date,\n 'data-more': 1,\n },\n directives: [{\n name: 'ripple',\n value: this.eventRipple ?? true,\n }],\n on: {\n click: (e: MouseEvent) => this.$emit('click:more', day, e),\n },\n style: {\n display: 'none',\n height: `${eventHeight}px`,\n 'margin-bottom': `${eventMarginBottom}px`,\n },\n ref: 'events',\n refInFor: true,\n })\n },\n getVisibleEvents (): CalendarEventParsed[] {\n const start = getDayIdentifier(this.days[0])\n const end = getDayIdentifier(this.days[this.days.length - 1])\n\n return this.parsedEvents.filter(\n event => isEventOverlapping(event, start, end)\n )\n },\n isEventForCategory (event: CalendarEventParsed, category: CalendarCategory): boolean {\n return !this.categoryMode ||\n (typeof category === 'object' && category.categoryName &&\n category.categoryName === event.category) ||\n (typeof event.category === 'string' && category === event.category) ||\n (typeof event.category !== 'string' && category === null)\n },\n getEventsForDay (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = this.eventWeekdays[0]\n\n return this.parsedEvents.filter(\n event => isEventStart(event, day, identifier, firstWeekday)\n )\n },\n getEventsForDayAll (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n const firstWeekday = this.eventWeekdays[0]\n\n return this.parsedEvents.filter(\n event => event.allDay &&\n (this.categoryMode ? isEventOn(event, identifier) : isEventStart(event, day, identifier, firstWeekday)) &&\n this.isEventForCategory(event, day.category)\n )\n },\n getEventsForDayTimed (day: CalendarDaySlotScope): CalendarEventParsed[] {\n const identifier = getDayIdentifier(day)\n return this.parsedEvents.filter(\n event => !event.allDay &&\n isEventOn(event, identifier) &&\n this.isEventForCategory(event, day.category)\n )\n },\n getScopedSlots () {\n if (this.noEvents) {\n return { ...this.$scopedSlots }\n }\n\n const mode = this.eventModeFunction(\n this.parsedEvents,\n this.eventWeekdays[0],\n this.parsedEventOverlapThreshold\n )\n\n const isNode = (input: VNode | false): input is VNode => !!input\n const getSlotChildren: VEventsToNodes = (day, getter, mapper, timed) => {\n const events = getter(day)\n const visuals = mode(day, events, timed, this.categoryMode)\n\n if (timed) {\n return visuals.map(visual => mapper(visual, day)).filter(isNode)\n }\n\n const children: VNode[] = []\n\n visuals.forEach((visual, index) => {\n while (children.length < visual.column) {\n children.push(this.genPlaceholder(day))\n }\n\n const mapped = mapper(visual, day)\n if (mapped) {\n children.push(mapped)\n }\n })\n\n return children\n }\n\n const slots = this.$scopedSlots\n const slotDay = slots.day\n const slotDayHeader = slots['day-header']\n const slotDayBody = slots['day-body']\n\n return {\n ...slots,\n day: (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, this.getEventsForDay, this.genDayEvent, false)\n if (children && children.length > 0 && this.eventMore) {\n children.push(this.genMore(day))\n }\n if (slotDay) {\n const slot = slotDay(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-header': (day: CalendarDaySlotScope) => {\n let children = getSlotChildren(day, this.getEventsForDayAll, this.genDayEvent, false)\n\n if (slotDayHeader) {\n const slot = slotDayHeader(day)\n if (slot) {\n children = children ? children.concat(slot) : slot\n }\n }\n return children\n },\n 'day-body': (day: CalendarDayBodySlotScope) => {\n const events = getSlotChildren(day, this.getEventsForDayTimed, this.genTimedEvent, true)\n let children: VNode[] = [\n this.$createElement('div', {\n staticClass: 'v-event-timed-container',\n }, events),\n ]\n\n if (slotDayBody) {\n const slot = slotDayBody(day)\n if (slot) {\n children = children.concat(slot)\n }\n }\n return children\n },\n }\n },\n },\n})\n"],"mappings":"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"}
|