@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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.mjs","names":["computed","getCurrentInstance","onBeforeUnmount","onMounted","ref","watch","consoleWarn","propsFactory","makeScrollProps","scrollTarget","type","String","scrollThreshold","Number","useScroll","props","args","thresholdMetCallback","canScroll","previousScroll","target","currentScroll","savedScroll","currentThreshold","isScrollActive","isScrollingUp","computedScrollThreshold","onScroll","targetEl","value","pageYOffset","scrollTop","Math","abs","newTarget","document","querySelector","window","removeEventListener","addEventListener","passive","immediate","thresholdMet"],"sources":["../../src/composables/scroll.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n getCurrentInstance,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { consoleWarn, propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport interface ScrollProps {\n scrollTarget?: string\n scrollThreshold?: string | number\n}\n\nexport interface ThresholdMetCallbackData {\n isScrollingUp: boolean\n currentThreshold: number\n savedScroll: Ref<number>\n}\n\n// Composables\nexport const makeScrollProps = propsFactory({\n scrollTarget: {\n type: String,\n },\n scrollThreshold: {\n type: [String, Number],\n },\n}, 'scroll')\n\nexport interface ScrollArguments {\n thresholdMetCallback?: (data: ThresholdMetCallbackData) => void\n scrollThreshold?: Readonly<Ref<number>>\n canScroll?: Readonly<Ref<boolean>>\n}\n\nexport function useScroll (\n props: ScrollProps,\n args: ScrollArguments = {},\n) {\n const { thresholdMetCallback, scrollThreshold, canScroll } = args\n let previousScroll = 0\n const target = ref<Element | Window | null>(null)\n const currentScroll = ref(0)\n const savedScroll = ref(0)\n const currentThreshold = ref(0)\n const isScrollActive = ref(false)\n const isScrollingUp = ref(false)\n\n const computedScrollThreshold = computed(() => {\n return Number(props.scrollThreshold ?? scrollThreshold ?? 300)\n })\n\n const onScroll = () => {\n const targetEl = target.value\n\n if (!targetEl || (canScroll && !canScroll.value)) return\n\n previousScroll = currentScroll.value\n currentScroll.value = ('window' in targetEl) ? targetEl.pageYOffset : targetEl.scrollTop\n\n isScrollingUp.value = currentScroll.value < previousScroll\n currentThreshold.value = Math.abs(currentScroll.value - computedScrollThreshold.value)\n }\n\n watch(isScrollingUp, () => {\n savedScroll.value = savedScroll.value || currentScroll.value\n })\n\n watch(isScrollActive, () => {\n savedScroll.value = 0\n })\n\n onMounted(() => {\n watch(() => props.scrollTarget, scrollTarget => {\n const newTarget = scrollTarget ? document.querySelector(scrollTarget) : window\n\n if (!newTarget) {\n consoleWarn(`Unable to locate element with identifier ${scrollTarget}`, getCurrentInstance())\n return\n }\n\n if (newTarget === target.value) return\n\n target.value?.removeEventListener('scroll', onScroll)\n target.value = newTarget\n target.value.addEventListener('scroll', onScroll, { passive: true })\n }, { immediate: true })\n })\n\n onBeforeUnmount(() => {\n target.value?.removeEventListener('scroll', onScroll)\n })\n\n thresholdMetCallback && watch(() => (\n Math.abs(currentScroll.value - savedScroll.value) > computedScrollThreshold.value\n ), thresholdMet => {\n thresholdMet && thresholdMetCallback({\n currentThreshold: currentThreshold.value,\n isScrollingUp: isScrollingUp.value,\n savedScroll,\n })\n }, { immediate: true })\n\n // Do we need this? If yes - seems that\n // there's no need to expose onScroll\n canScroll && watch(canScroll, onScroll, { immediate: true })\n\n return {\n isScrollActive,\n\n // required only for testing\n // probably can be removed\n // later (2 chars chlng)\n isScrollingUp,\n savedScroll,\n }\n}\n"],"mappings":"AAAA;AACA,SACEA,
|
|
1
|
+
{"version":3,"file":"scroll.mjs","names":["computed","getCurrentInstance","onBeforeUnmount","onMounted","ref","watch","consoleWarn","propsFactory","makeScrollProps","scrollTarget","type","String","scrollThreshold","Number","useScroll","props","args","thresholdMetCallback","canScroll","previousScroll","target","currentScroll","savedScroll","currentThreshold","isScrollActive","isScrollingUp","computedScrollThreshold","onScroll","targetEl","value","pageYOffset","scrollTop","Math","abs","newTarget","document","querySelector","window","removeEventListener","addEventListener","passive","immediate","thresholdMet"],"sources":["../../src/composables/scroll.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n getCurrentInstance,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue'\nimport { consoleWarn, propsFactory } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport interface ScrollProps {\n scrollTarget?: string\n scrollThreshold?: string | number\n}\n\nexport interface ThresholdMetCallbackData {\n isScrollingUp: boolean\n currentThreshold: number\n savedScroll: Ref<number>\n}\n\n// Composables\nexport const makeScrollProps = propsFactory({\n scrollTarget: {\n type: String,\n },\n scrollThreshold: {\n type: [String, Number],\n },\n}, 'scroll')\n\nexport interface ScrollArguments {\n thresholdMetCallback?: (data: ThresholdMetCallbackData) => void\n scrollThreshold?: Readonly<Ref<number>>\n canScroll?: Readonly<Ref<boolean>>\n}\n\nexport function useScroll (\n props: ScrollProps,\n args: ScrollArguments = {},\n) {\n const { thresholdMetCallback, scrollThreshold, canScroll } = args\n let previousScroll = 0\n const target = ref<Element | Window | null>(null)\n const currentScroll = ref(0)\n const savedScroll = ref(0)\n const currentThreshold = ref(0)\n const isScrollActive = ref(false)\n const isScrollingUp = ref(false)\n\n const computedScrollThreshold = computed(() => {\n return Number(props.scrollThreshold ?? scrollThreshold ?? 300)\n })\n\n const onScroll = () => {\n const targetEl = target.value\n\n if (!targetEl || (canScroll && !canScroll.value)) return\n\n previousScroll = currentScroll.value\n currentScroll.value = ('window' in targetEl) ? targetEl.pageYOffset : targetEl.scrollTop\n\n isScrollingUp.value = currentScroll.value < previousScroll\n currentThreshold.value = Math.abs(currentScroll.value - computedScrollThreshold.value)\n }\n\n watch(isScrollingUp, () => {\n savedScroll.value = savedScroll.value || currentScroll.value\n })\n\n watch(isScrollActive, () => {\n savedScroll.value = 0\n })\n\n onMounted(() => {\n watch(() => props.scrollTarget, scrollTarget => {\n const newTarget = scrollTarget ? document.querySelector(scrollTarget) : window\n\n if (!newTarget) {\n consoleWarn(`Unable to locate element with identifier ${scrollTarget}`, getCurrentInstance())\n return\n }\n\n if (newTarget === target.value) return\n\n target.value?.removeEventListener('scroll', onScroll)\n target.value = newTarget\n target.value.addEventListener('scroll', onScroll, { passive: true })\n }, { immediate: true })\n })\n\n onBeforeUnmount(() => {\n target.value?.removeEventListener('scroll', onScroll)\n })\n\n thresholdMetCallback && watch(() => (\n Math.abs(currentScroll.value - savedScroll.value) > computedScrollThreshold.value\n ), thresholdMet => {\n thresholdMet && thresholdMetCallback({\n currentThreshold: currentThreshold.value,\n isScrollingUp: isScrollingUp.value,\n savedScroll,\n })\n }, { immediate: true })\n\n // Do we need this? If yes - seems that\n // there's no need to expose onScroll\n canScroll && watch(canScroll, onScroll, { immediate: true })\n\n return {\n isScrollActive,\n\n // required only for testing\n // probably can be removed\n // later (2 chars chlng)\n isScrollingUp,\n savedScroll,\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
// Utilities
|
|
2
|
-
import { nextTick, watch } from 'vue';
|
|
2
|
+
import { nextTick, watch } from 'vue';
|
|
3
|
+
|
|
4
|
+
// Types
|
|
3
5
|
|
|
4
6
|
export function useSelectLink(link, select) {
|
|
5
7
|
watch(() => {
|
|
6
8
|
var _link$isActive;
|
|
7
|
-
|
|
8
9
|
return (_link$isActive = link.isActive) == null ? void 0 : _link$isActive.value;
|
|
9
10
|
}, isActive => {
|
|
10
11
|
if (link.isLink.value && isActive && select) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectLink.mjs","names":["nextTick","watch","useSelectLink","link","select","isActive","value","isLink","immediate"],"sources":["../../src/composables/selectLink.ts"],"sourcesContent":["// Utilities\nimport { nextTick, watch } from 'vue'\n\n// Types\nimport type { UseLink } from './router'\n\nexport function useSelectLink (link: UseLink, select?: (value: boolean, e?: Event) => void) {\n watch(() => link.isActive?.value, isActive => {\n if (link.isLink.value && isActive && select) {\n nextTick(() => {\n select(true)\n })\n }\n }, {\n immediate: true,\n })\n}\n"],"mappings":"AAAA;AACA,SAASA,
|
|
1
|
+
{"version":3,"file":"selectLink.mjs","names":["nextTick","watch","useSelectLink","link","select","isActive","value","isLink","immediate"],"sources":["../../src/composables/selectLink.ts"],"sourcesContent":["// Utilities\nimport { nextTick, watch } from 'vue'\n\n// Types\nimport type { UseLink } from './router'\n\nexport function useSelectLink (link: UseLink, select?: (value: boolean, e?: Event) => void) {\n watch(() => link.isActive?.value, isActive => {\n if (link.isLink.value && isActive && select) {\n nextTick(() => {\n select(true)\n })\n }\n }, {\n immediate: true,\n })\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAQ,EAAEC,KAAK,QAAQ,KAAK;;AAErC;;AAGA,OAAO,SAASC,aAAa,CAAEC,IAAa,EAAEC,MAA4C,EAAE;EAC1FH,KAAK,CAAC;IAAA;IAAA,yBAAME,IAAI,CAACE,QAAQ,qBAAb,eAAeC,KAAK;EAAA,GAAED,QAAQ,IAAI;IAC5C,IAAIF,IAAI,CAACI,MAAM,CAACD,KAAK,IAAID,QAAQ,IAAID,MAAM,EAAE;MAC3CJ,QAAQ,CAAC,MAAM;QACbI,MAAM,CAAC,IAAI,CAAC;MACd,CAAC,CAAC;IACJ;EACF,CAAC,EAAE;IACDI,SAAS,EAAE;EACb,CAAC,CAAC;AACJ"}
|
package/lib/composables/size.mjs
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
// Utilities
|
|
2
2
|
import { convertToUnit, destructComputed, getCurrentInstanceName, includes, propsFactory } from "../util/index.mjs"; // Types
|
|
3
|
-
|
|
4
3
|
const predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large'];
|
|
5
4
|
// Composables
|
|
6
5
|
export const makeSizeProps = propsFactory({
|
|
@@ -14,7 +13,6 @@ export function useSize(props) {
|
|
|
14
13
|
return destructComputed(() => {
|
|
15
14
|
let sizeClasses;
|
|
16
15
|
let sizeStyles;
|
|
17
|
-
|
|
18
16
|
if (includes(predefinedSizes, props.size)) {
|
|
19
17
|
sizeClasses = `${name}--size-${props.size}`;
|
|
20
18
|
} else if (props.size) {
|
|
@@ -23,7 +21,6 @@ export function useSize(props) {
|
|
|
23
21
|
height: convertToUnit(props.size)
|
|
24
22
|
};
|
|
25
23
|
}
|
|
26
|
-
|
|
27
24
|
return {
|
|
28
25
|
sizeClasses,
|
|
29
26
|
sizeStyles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"size.mjs","names":["convertToUnit","destructComputed","getCurrentInstanceName","includes","propsFactory","predefinedSizes","makeSizeProps","size","type","String","Number","default","useSize","props","name","sizeClasses","sizeStyles","width","height"],"sources":["../../src/composables/size.ts"],"sourcesContent":["// Utilities\nimport { convertToUnit, destructComputed, getCurrentInstanceName, includes, propsFactory } from '@/util'\n\n// Types\nconst predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large']\n\nexport interface SizeProps {\n size?: string | number\n}\n\n// Composables\nexport const makeSizeProps = propsFactory({\n size: {\n type: [String, Number],\n default: 'default',\n },\n}, 'size')\n\nexport function useSize (\n props: SizeProps,\n name = getCurrentInstanceName(),\n) {\n return destructComputed(() => {\n let sizeClasses\n let sizeStyles\n if (includes(predefinedSizes, props.size)) {\n sizeClasses = `${name}--size-${props.size}`\n } else if (props.size) {\n sizeStyles = {\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }\n }\n return { sizeClasses, sizeStyles }\n })\n}\n"],"mappings":"AAAA;SACSA,
|
|
1
|
+
{"version":3,"file":"size.mjs","names":["convertToUnit","destructComputed","getCurrentInstanceName","includes","propsFactory","predefinedSizes","makeSizeProps","size","type","String","Number","default","useSize","props","name","sizeClasses","sizeStyles","width","height"],"sources":["../../src/composables/size.ts"],"sourcesContent":["// Utilities\nimport { convertToUnit, destructComputed, getCurrentInstanceName, includes, propsFactory } from '@/util'\n\n// Types\nconst predefinedSizes = ['x-small', 'small', 'default', 'large', 'x-large']\n\nexport interface SizeProps {\n size?: string | number\n}\n\n// Composables\nexport const makeSizeProps = propsFactory({\n size: {\n type: [String, Number],\n default: 'default',\n },\n}, 'size')\n\nexport function useSize (\n props: SizeProps,\n name = getCurrentInstanceName(),\n) {\n return destructComputed(() => {\n let sizeClasses\n let sizeStyles\n if (includes(predefinedSizes, props.size)) {\n sizeClasses = `${name}--size-${props.size}`\n } else if (props.size) {\n sizeStyles = {\n width: convertToUnit(props.size),\n height: convertToUnit(props.size),\n }\n }\n return { sizeClasses, sizeStyles }\n })\n}\n"],"mappings":"AAAA;AAAA,SACSA,aAAa,EAAEC,gBAAgB,EAAEC,sBAAsB,EAAEC,QAAQ,EAAEC,YAAY,6BAExF;AACA,MAAMC,eAAe,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC;AAM3E;AACA,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAAC;EACxCG,IAAI,EAAE;IACJC,IAAI,EAAE,CAACC,MAAM,EAAEC,MAAM,CAAC;IACtBC,OAAO,EAAE;EACX;AACF,CAAC,EAAE,MAAM,CAAC;AAEV,OAAO,SAASC,OAAO,CACrBC,KAAgB,EAEhB;EAAA,IADAC,IAAI,uEAAGZ,sBAAsB,EAAE;EAE/B,OAAOD,gBAAgB,CAAC,MAAM;IAC5B,IAAIc,WAAW;IACf,IAAIC,UAAU;IACd,IAAIb,QAAQ,CAACE,eAAe,EAAEQ,KAAK,CAACN,IAAI,CAAC,EAAE;MACzCQ,WAAW,GAAI,GAAED,IAAK,UAASD,KAAK,CAACN,IAAK,EAAC;IAC7C,CAAC,MAAM,IAAIM,KAAK,CAACN,IAAI,EAAE;MACrBS,UAAU,GAAG;QACXC,KAAK,EAAEjB,aAAa,CAACa,KAAK,CAACN,IAAI,CAAC;QAChCW,MAAM,EAAElB,aAAa,CAACa,KAAK,CAACN,IAAI;MAClC,CAAC;IACH;IACA,OAAO;MAAEQ,WAAW;MAAEC;IAAW,CAAC;EACpC,CAAC,CAAC;AACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ssrBoot.mjs","names":["computed","onMounted","readonly","ref","useSsrBoot","isBooted","window","requestAnimationFrame","value","ssrBootStyles","transition","undefined"],"sources":["../../src/composables/ssrBoot.ts"],"sourcesContent":["// Utilities\nimport { computed, onMounted, readonly, ref } from 'vue'\n\n// Composables\nexport function useSsrBoot () {\n const isBooted = ref(false)\n\n onMounted(() => {\n window.requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n\n const ssrBootStyles = computed(() => !isBooted.value ? ({\n transition: 'none !important',\n }) : undefined)\n\n return { ssrBootStyles, isBooted: readonly(isBooted) }\n}\n"],"mappings":"AAAA;AACA,SAASA,
|
|
1
|
+
{"version":3,"file":"ssrBoot.mjs","names":["computed","onMounted","readonly","ref","useSsrBoot","isBooted","window","requestAnimationFrame","value","ssrBootStyles","transition","undefined"],"sources":["../../src/composables/ssrBoot.ts"],"sourcesContent":["// Utilities\nimport { computed, onMounted, readonly, ref } from 'vue'\n\n// Composables\nexport function useSsrBoot () {\n const isBooted = ref(false)\n\n onMounted(() => {\n window.requestAnimationFrame(() => {\n isBooted.value = true\n })\n })\n\n const ssrBootStyles = computed(() => !isBooted.value ? ({\n transition: 'none !important',\n }) : undefined)\n\n return { ssrBootStyles, isBooted: readonly(isBooted) }\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,GAAG,QAAQ,KAAK;;AAExD;AACA,OAAO,SAASC,UAAU,GAAI;EAC5B,MAAMC,QAAQ,GAAGF,GAAG,CAAC,KAAK,CAAC;EAE3BF,SAAS,CAAC,MAAM;IACdK,MAAM,CAACC,qBAAqB,CAAC,MAAM;MACjCF,QAAQ,CAACG,KAAK,GAAG,IAAI;IACvB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMC,aAAa,GAAGT,QAAQ,CAAC,MAAM,CAACK,QAAQ,CAACG,KAAK,GAAI;IACtDE,UAAU,EAAE;EACd,CAAC,GAAIC,SAAS,CAAC;EAEf,OAAO;IAAEF,aAAa;IAAEJ,QAAQ,EAAEH,QAAQ,CAACG,QAAQ;EAAE,CAAC;AACxD"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { useToggleScope } from "./toggleScope.mjs";
|
|
2
2
|
import { computed, inject, onScopeDispose, provide, reactive, readonly, ref, watchEffect } from 'vue';
|
|
3
3
|
import { getCurrentInstance } from "../util/index.mjs"; // Types
|
|
4
|
-
|
|
5
4
|
const StackSymbol = Symbol.for('vuetify:stack');
|
|
6
5
|
const globalStack = reactive([]);
|
|
7
6
|
export function useStack(isActive, zIndex) {
|
|
@@ -11,12 +10,9 @@ export function useStack(isActive, zIndex) {
|
|
|
11
10
|
activeChildren: new Set()
|
|
12
11
|
});
|
|
13
12
|
provide(StackSymbol, stack);
|
|
14
|
-
|
|
15
13
|
const _zIndex = ref(+zIndex.value);
|
|
16
|
-
|
|
17
14
|
useToggleScope(isActive, () => {
|
|
18
15
|
var _globalStack$at;
|
|
19
|
-
|
|
20
16
|
const lastZIndex = (_globalStack$at = globalStack.at(-1)) == null ? void 0 : _globalStack$at[1];
|
|
21
17
|
_zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value;
|
|
22
18
|
globalStack.push([vm.uid, _zIndex.value]);
|
|
@@ -30,9 +26,7 @@ export function useStack(isActive, zIndex) {
|
|
|
30
26
|
const globalTop = ref(true);
|
|
31
27
|
watchEffect(() => {
|
|
32
28
|
var _globalStack$at2;
|
|
33
|
-
|
|
34
29
|
const _isTop = ((_globalStack$at2 = globalStack.at(-1)) == null ? void 0 : _globalStack$at2[0]) === vm.uid;
|
|
35
|
-
|
|
36
30
|
setTimeout(() => globalTop.value = _isTop);
|
|
37
31
|
});
|
|
38
32
|
const localTop = computed(() => !stack.activeChildren.size);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stack.mjs","names":["useToggleScope","computed","inject","onScopeDispose","provide","reactive","readonly","ref","watchEffect","getCurrentInstance","StackSymbol","Symbol","for","globalStack","useStack","isActive","zIndex","vm","parent","undefined","stack","activeChildren","Set","_zIndex","value","lastZIndex","at","push","uid","add","idx","findIndex","v","splice","delete","globalTop","_isTop","setTimeout","localTop","size","stackStyles"],"sources":["../../src/composables/stack.ts"],"sourcesContent":["import { useToggleScope } from '@/composables/toggleScope'\n\nimport { computed, inject, onScopeDispose, provide, reactive, readonly, ref, watchEffect } from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nconst StackSymbol: InjectionKey<StackProvide> = Symbol.for('vuetify:stack')\n\ninterface StackProvide {\n activeChildren: Set<number>\n}\n\nconst globalStack = reactive<[uid: number, zIndex: number][]>([])\n\nexport function useStack (isActive: Readonly<Ref<boolean>>, zIndex: Readonly<Ref<string | number>>) {\n const vm = getCurrentInstance('useStack')\n\n const parent = inject(StackSymbol, undefined)\n const stack: StackProvide = reactive({\n activeChildren: new Set<number>(),\n })\n provide(StackSymbol, stack)\n\n const _zIndex = ref(+zIndex.value)\n useToggleScope(isActive, () => {\n const lastZIndex = globalStack.at(-1)?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value\n globalStack.push([vm.uid, _zIndex.value])\n\n parent?.activeChildren.add(vm.uid)\n\n onScopeDispose(() => {\n const idx = globalStack.findIndex(v => v[0] === vm.uid)\n globalStack.splice(idx, 1)\n\n parent?.activeChildren.delete(vm.uid)\n })\n })\n\n const globalTop = ref(true)\n watchEffect(() => {\n const _isTop = globalStack.at(-1)?.[0] === vm.uid\n setTimeout(() => globalTop.value = _isTop)\n })\n\n const localTop = computed(() => !stack.activeChildren.size)\n\n return {\n globalTop: readonly(globalTop),\n localTop,\n stackStyles: computed(() => ({ zIndex: _zIndex.value })),\n }\n}\n"],"mappings":"SAASA,
|
|
1
|
+
{"version":3,"file":"stack.mjs","names":["useToggleScope","computed","inject","onScopeDispose","provide","reactive","readonly","ref","watchEffect","getCurrentInstance","StackSymbol","Symbol","for","globalStack","useStack","isActive","zIndex","vm","parent","undefined","stack","activeChildren","Set","_zIndex","value","lastZIndex","at","push","uid","add","idx","findIndex","v","splice","delete","globalTop","_isTop","setTimeout","localTop","size","stackStyles"],"sources":["../../src/composables/stack.ts"],"sourcesContent":["import { useToggleScope } from '@/composables/toggleScope'\n\nimport { computed, inject, onScopeDispose, provide, reactive, readonly, ref, watchEffect } from 'vue'\nimport { getCurrentInstance } from '@/util'\n\n// Types\nimport type { InjectionKey, Ref } from 'vue'\n\nconst StackSymbol: InjectionKey<StackProvide> = Symbol.for('vuetify:stack')\n\ninterface StackProvide {\n activeChildren: Set<number>\n}\n\nconst globalStack = reactive<[uid: number, zIndex: number][]>([])\n\nexport function useStack (isActive: Readonly<Ref<boolean>>, zIndex: Readonly<Ref<string | number>>) {\n const vm = getCurrentInstance('useStack')\n\n const parent = inject(StackSymbol, undefined)\n const stack: StackProvide = reactive({\n activeChildren: new Set<number>(),\n })\n provide(StackSymbol, stack)\n\n const _zIndex = ref(+zIndex.value)\n useToggleScope(isActive, () => {\n const lastZIndex = globalStack.at(-1)?.[1]\n _zIndex.value = lastZIndex ? lastZIndex + 10 : +zIndex.value\n globalStack.push([vm.uid, _zIndex.value])\n\n parent?.activeChildren.add(vm.uid)\n\n onScopeDispose(() => {\n const idx = globalStack.findIndex(v => v[0] === vm.uid)\n globalStack.splice(idx, 1)\n\n parent?.activeChildren.delete(vm.uid)\n })\n })\n\n const globalTop = ref(true)\n watchEffect(() => {\n const _isTop = globalStack.at(-1)?.[0] === vm.uid\n setTimeout(() => globalTop.value = _isTop)\n })\n\n const localTop = computed(() => !stack.activeChildren.size)\n\n return {\n globalTop: readonly(globalTop),\n localTop,\n stackStyles: computed(() => ({ zIndex: _zIndex.value })),\n }\n}\n"],"mappings":"SAASA,cAAc;AAEvB,SAASC,QAAQ,EAAEC,MAAM,EAAEC,cAAc,EAAEC,OAAO,EAAEC,QAAQ,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,WAAW,QAAQ,KAAK;AAAA,SAC5FC,kBAAkB,6BAE3B;AAGA,MAAMC,WAAuC,GAAGC,MAAM,CAACC,GAAG,CAAC,eAAe,CAAC;AAM3E,MAAMC,WAAW,GAAGR,QAAQ,CAAkC,EAAE,CAAC;AAEjE,OAAO,SAASS,QAAQ,CAAEC,QAAgC,EAAEC,MAAsC,EAAE;EAClG,MAAMC,EAAE,GAAGR,kBAAkB,CAAC,UAAU,CAAC;EAEzC,MAAMS,MAAM,GAAGhB,MAAM,CAACQ,WAAW,EAAES,SAAS,CAAC;EAC7C,MAAMC,KAAmB,GAAGf,QAAQ,CAAC;IACnCgB,cAAc,EAAE,IAAIC,GAAG;EACzB,CAAC,CAAC;EACFlB,OAAO,CAACM,WAAW,EAAEU,KAAK,CAAC;EAE3B,MAAMG,OAAO,GAAGhB,GAAG,CAAC,CAACS,MAAM,CAACQ,KAAK,CAAC;EAClCxB,cAAc,CAACe,QAAQ,EAAE,MAAM;IAAA;IAC7B,MAAMU,UAAU,sBAAGZ,WAAW,CAACa,EAAE,CAAC,CAAC,CAAC,CAAC,qBAAlB,gBAAqB,CAAC,CAAC;IAC1CH,OAAO,CAACC,KAAK,GAAGC,UAAU,GAAGA,UAAU,GAAG,EAAE,GAAG,CAACT,MAAM,CAACQ,KAAK;IAC5DX,WAAW,CAACc,IAAI,CAAC,CAACV,EAAE,CAACW,GAAG,EAAEL,OAAO,CAACC,KAAK,CAAC,CAAC;IAEzCN,MAAM,oBAANA,MAAM,CAAEG,cAAc,CAACQ,GAAG,CAACZ,EAAE,CAACW,GAAG,CAAC;IAElCzB,cAAc,CAAC,MAAM;MACnB,MAAM2B,GAAG,GAAGjB,WAAW,CAACkB,SAAS,CAACC,CAAC,IAAIA,CAAC,CAAC,CAAC,CAAC,KAAKf,EAAE,CAACW,GAAG,CAAC;MACvDf,WAAW,CAACoB,MAAM,CAACH,GAAG,EAAE,CAAC,CAAC;MAE1BZ,MAAM,oBAANA,MAAM,CAAEG,cAAc,CAACa,MAAM,CAACjB,EAAE,CAACW,GAAG,CAAC;IACvC,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMO,SAAS,GAAG5B,GAAG,CAAC,IAAI,CAAC;EAC3BC,WAAW,CAAC,MAAM;IAAA;IAChB,MAAM4B,MAAM,GAAG,qBAAAvB,WAAW,CAACa,EAAE,CAAC,CAAC,CAAC,CAAC,qBAAlB,iBAAqB,CAAC,CAAC,MAAKT,EAAE,CAACW,GAAG;IACjDS,UAAU,CAAC,MAAMF,SAAS,CAACX,KAAK,GAAGY,MAAM,CAAC;EAC5C,CAAC,CAAC;EAEF,MAAME,QAAQ,GAAGrC,QAAQ,CAAC,MAAM,CAACmB,KAAK,CAACC,cAAc,CAACkB,IAAI,CAAC;EAE3D,OAAO;IACLJ,SAAS,EAAE7B,QAAQ,CAAC6B,SAAS,CAAC;IAC9BG,QAAQ;IACRE,WAAW,EAAEvC,QAAQ,CAAC,OAAO;MAAEe,MAAM,EAAEO,OAAO,CAACC;IAAM,CAAC,CAAC;EACzD,CAAC;AACH"}
|
package/lib/composables/tag.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.mjs","names":["propsFactory","makeTagProps","tag","type","String","default"],"sources":["../../src/composables/tag.ts"],"sourcesContent":["// Utilities\nimport { propsFactory } from '@/util'\n\n// Types\nexport interface TagProps {\n tag: string\n}\n\n// Composables\nexport const makeTagProps = propsFactory({\n tag: {\n type: String,\n default: 'div',\n },\n}, 'tag')\n"],"mappings":"AAAA;SACSA,
|
|
1
|
+
{"version":3,"file":"tag.mjs","names":["propsFactory","makeTagProps","tag","type","String","default"],"sources":["../../src/composables/tag.ts"],"sourcesContent":["// Utilities\nimport { propsFactory } from '@/util'\n\n// Types\nexport interface TagProps {\n tag: string\n}\n\n// Composables\nexport const makeTagProps = propsFactory({\n tag: {\n type: String,\n default: 'div',\n },\n}, 'tag')\n"],"mappings":"AAAA;AAAA,SACSA,YAAY,6BAErB;AAKA;AACA,OAAO,MAAMC,YAAY,GAAGD,YAAY,CAAC;EACvCE,GAAG,EAAE;IACHC,IAAI,EAAEC,MAAM;IACZC,OAAO,EAAE;EACX;AACF,CAAC,EAAE,KAAK,CAAC"}
|
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
// Utilities
|
|
2
2
|
import { computed, warn } from 'vue';
|
|
3
3
|
import { IN_BROWSER } from "../util/index.mjs"; // Types
|
|
4
|
-
|
|
5
4
|
export function useTeleport(target) {
|
|
6
5
|
const teleportTarget = computed(() => {
|
|
7
6
|
const _target = target.value;
|
|
8
7
|
if (_target === true || !IN_BROWSER) return undefined;
|
|
9
8
|
const targetElement = _target === false ? document.body : typeof _target === 'string' ? document.querySelector(_target) : _target;
|
|
10
|
-
|
|
11
9
|
if (targetElement == null) {
|
|
12
10
|
warn(`Unable to locate target ${_target}`);
|
|
13
11
|
return undefined;
|
|
14
12
|
}
|
|
15
|
-
|
|
16
13
|
if (!useTeleport.cache.has(targetElement)) {
|
|
17
14
|
const el = document.createElement('div');
|
|
18
15
|
el.className = 'v-overlay-container';
|
|
19
16
|
targetElement.appendChild(el);
|
|
20
17
|
useTeleport.cache.set(targetElement, el);
|
|
21
18
|
}
|
|
22
|
-
|
|
23
19
|
return useTeleport.cache.get(targetElement);
|
|
24
20
|
});
|
|
25
21
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teleport.mjs","names":["computed","warn","IN_BROWSER","useTeleport","target","teleportTarget","_target","value","undefined","targetElement","document","body","querySelector","cache","has","el","createElement","className","appendChild","set","get","WeakMap"],"sources":["../../src/composables/teleport.ts"],"sourcesContent":["// Utilities\nimport { computed, warn } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useTeleport (target: Ref<boolean | string | Element>) {\n const teleportTarget = computed(() => {\n const _target = target.value\n\n if (_target === true || !IN_BROWSER) return undefined\n\n const targetElement =\n _target === false ? document.body\n : typeof _target === 'string' ? document.querySelector(_target)\n : _target\n\n if (targetElement == null) {\n warn(`Unable to locate target ${_target}`)\n return undefined\n }\n\n if (!useTeleport.cache.has(targetElement)) {\n const el = document.createElement('div')\n el.className = 'v-overlay-container'\n targetElement.appendChild(el)\n useTeleport.cache.set(targetElement, el)\n }\n\n return useTeleport.cache.get(targetElement)\n })\n\n return { teleportTarget }\n}\nuseTeleport.cache = new WeakMap<Element, Element>()\n"],"mappings":"AAAA;AACA,SAASA,
|
|
1
|
+
{"version":3,"file":"teleport.mjs","names":["computed","warn","IN_BROWSER","useTeleport","target","teleportTarget","_target","value","undefined","targetElement","document","body","querySelector","cache","has","el","createElement","className","appendChild","set","get","WeakMap"],"sources":["../../src/composables/teleport.ts"],"sourcesContent":["// Utilities\nimport { computed, warn } from 'vue'\nimport { IN_BROWSER } from '@/util'\n\n// Types\nimport type { Ref } from 'vue'\n\nexport function useTeleport (target: Ref<boolean | string | Element>) {\n const teleportTarget = computed(() => {\n const _target = target.value\n\n if (_target === true || !IN_BROWSER) return undefined\n\n const targetElement =\n _target === false ? document.body\n : typeof _target === 'string' ? document.querySelector(_target)\n : _target\n\n if (targetElement == null) {\n warn(`Unable to locate target ${_target}`)\n return undefined\n }\n\n if (!useTeleport.cache.has(targetElement)) {\n const el = document.createElement('div')\n el.className = 'v-overlay-container'\n targetElement.appendChild(el)\n useTeleport.cache.set(targetElement, el)\n }\n\n return useTeleport.cache.get(targetElement)\n })\n\n return { teleportTarget }\n}\nuseTeleport.cache = new WeakMap<Element, Element>()\n"],"mappings":"AAAA;AACA,SAASA,QAAQ,EAAEC,IAAI,QAAQ,KAAK;AAAA,SAC3BC,UAAU,6BAEnB;AAGA,OAAO,SAASC,WAAW,CAAEC,MAAuC,EAAE;EACpE,MAAMC,cAAc,GAAGL,QAAQ,CAAC,MAAM;IACpC,MAAMM,OAAO,GAAGF,MAAM,CAACG,KAAK;IAE5B,IAAID,OAAO,KAAK,IAAI,IAAI,CAACJ,UAAU,EAAE,OAAOM,SAAS;IAErD,MAAMC,aAAa,GACjBH,OAAO,KAAK,KAAK,GAAGI,QAAQ,CAACC,IAAI,GAC/B,OAAOL,OAAO,KAAK,QAAQ,GAAGI,QAAQ,CAACE,aAAa,CAACN,OAAO,CAAC,GAC7DA,OAAO;IAEX,IAAIG,aAAa,IAAI,IAAI,EAAE;MACzBR,IAAI,CAAE,2BAA0BK,OAAQ,EAAC,CAAC;MAC1C,OAAOE,SAAS;IAClB;IAEA,IAAI,CAACL,WAAW,CAACU,KAAK,CAACC,GAAG,CAACL,aAAa,CAAC,EAAE;MACzC,MAAMM,EAAE,GAAGL,QAAQ,CAACM,aAAa,CAAC,KAAK,CAAC;MACxCD,EAAE,CAACE,SAAS,GAAG,qBAAqB;MACpCR,aAAa,CAACS,WAAW,CAACH,EAAE,CAAC;MAC7BZ,WAAW,CAACU,KAAK,CAACM,GAAG,CAACV,aAAa,EAAEM,EAAE,CAAC;IAC1C;IAEA,OAAOZ,WAAW,CAACU,KAAK,CAACO,GAAG,CAACX,aAAa,CAAC;EAC7C,CAAC,CAAC;EAEF,OAAO;IAAEJ;EAAe,CAAC;AAC3B;AACAF,WAAW,CAACU,KAAK,GAAG,IAAIQ,OAAO,EAAoB"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
import { computed, inject, provide, reactive, ref, watch, watchEffect } from 'vue';
|
|
3
3
|
import { colorToInt, colorToRGB, createRange, darken, getCurrentInstance, getLuma, IN_BROWSER, intToHex, lighten, mergeDeep, propsFactory } from "../util/index.mjs";
|
|
4
4
|
import { APCAcontrast } from "../util/color/APCA.mjs"; // Types
|
|
5
|
-
|
|
6
5
|
export const ThemeSymbol = Symbol.for('vuetify:theme');
|
|
7
6
|
export const makeThemeProps = propsFactory({
|
|
8
7
|
theme: String
|
|
@@ -85,60 +84,58 @@ const defaultThemeOptions = {
|
|
|
85
84
|
}
|
|
86
85
|
}
|
|
87
86
|
};
|
|
88
|
-
|
|
89
87
|
function parseThemeOptions() {
|
|
90
88
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultThemeOptions;
|
|
91
|
-
if (!options) return {
|
|
89
|
+
if (!options) return {
|
|
90
|
+
...defaultThemeOptions,
|
|
92
91
|
isDisabled: true
|
|
93
92
|
};
|
|
94
93
|
const themes = {};
|
|
95
|
-
|
|
96
94
|
for (const [key, theme] of Object.entries(options.themes ?? {})) {
|
|
97
95
|
var _defaultThemeOptions$, _defaultThemeOptions$2;
|
|
98
|
-
|
|
99
|
-
const defaultTheme = theme.dark ? (_defaultThemeOptions$ = defaultThemeOptions.themes) == null ? void 0 : _defaultThemeOptions$.dark : (_defaultThemeOptions$2 = defaultThemeOptions.themes) == null ? void 0 : _defaultThemeOptions$2.light;
|
|
96
|
+
const defaultTheme = theme.dark || key === 'dark' ? (_defaultThemeOptions$ = defaultThemeOptions.themes) == null ? void 0 : _defaultThemeOptions$.dark : (_defaultThemeOptions$2 = defaultThemeOptions.themes) == null ? void 0 : _defaultThemeOptions$2.light;
|
|
100
97
|
themes[key] = mergeDeep(defaultTheme, theme);
|
|
101
98
|
}
|
|
102
|
-
|
|
103
|
-
|
|
99
|
+
return mergeDeep(defaultThemeOptions, {
|
|
100
|
+
...options,
|
|
104
101
|
themes
|
|
105
102
|
});
|
|
106
|
-
}
|
|
107
|
-
|
|
103
|
+
}
|
|
108
104
|
|
|
105
|
+
// Composables
|
|
109
106
|
export function createTheme(options) {
|
|
110
107
|
const parsedOptions = reactive(parseThemeOptions(options));
|
|
111
108
|
const name = ref(parsedOptions.defaultTheme);
|
|
112
109
|
const themes = ref(parsedOptions.themes);
|
|
113
110
|
const computedThemes = computed(() => {
|
|
114
111
|
const acc = {};
|
|
115
|
-
|
|
116
112
|
for (const [name, original] of Object.entries(themes.value)) {
|
|
117
|
-
const theme = acc[name] = {
|
|
118
|
-
|
|
113
|
+
const theme = acc[name] = {
|
|
114
|
+
...original,
|
|
115
|
+
colors: {
|
|
116
|
+
...original.colors
|
|
119
117
|
}
|
|
120
118
|
};
|
|
121
|
-
|
|
122
119
|
if (parsedOptions.variations) {
|
|
123
120
|
for (const name of parsedOptions.variations.colors) {
|
|
124
121
|
const color = theme.colors[name];
|
|
125
|
-
|
|
122
|
+
if (!color) continue;
|
|
126
123
|
for (const variation of ['lighten', 'darken']) {
|
|
127
124
|
const fn = variation === 'lighten' ? lighten : darken;
|
|
128
|
-
|
|
129
125
|
for (const amount of createRange(parsedOptions.variations[variation], 1)) {
|
|
130
126
|
theme.colors[`${name}-${variation}-${amount}`] = intToHex(fn(colorToInt(color), amount));
|
|
131
127
|
}
|
|
132
128
|
}
|
|
133
129
|
}
|
|
134
130
|
}
|
|
135
|
-
|
|
136
131
|
for (const color of Object.keys(theme.colors)) {
|
|
137
132
|
if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue;
|
|
138
133
|
const onColor = `on-${color}`;
|
|
139
134
|
const colorVal = colorToInt(theme.colors[color]);
|
|
140
135
|
const blackContrast = Math.abs(APCAcontrast(0, colorVal));
|
|
141
|
-
const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal));
|
|
136
|
+
const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal));
|
|
137
|
+
|
|
138
|
+
// TODO: warn about poor color selections
|
|
142
139
|
// const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))
|
|
143
140
|
// const minContrast = Math.max(blackContrast, whiteContrast)
|
|
144
141
|
// if (minContrast < 60) {
|
|
@@ -146,22 +143,19 @@ export function createTheme(options) {
|
|
|
146
143
|
// } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {
|
|
147
144
|
// consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)
|
|
148
145
|
// }
|
|
149
|
-
// Prefer white text if both have an acceptable contrast ratio
|
|
150
146
|
|
|
147
|
+
// Prefer white text if both have an acceptable contrast ratio
|
|
151
148
|
theme.colors[onColor] = whiteContrast > Math.min(blackContrast, 50) ? '#fff' : '#000';
|
|
152
149
|
}
|
|
153
150
|
}
|
|
154
|
-
|
|
155
151
|
return acc;
|
|
156
152
|
});
|
|
157
153
|
const current = computed(() => computedThemes.value[name.value]);
|
|
158
154
|
const styles = computed(() => {
|
|
159
155
|
const lines = [];
|
|
160
|
-
|
|
161
156
|
if (current.value.dark) {
|
|
162
157
|
createCssClass(lines, ':root', ['color-scheme: dark']);
|
|
163
158
|
}
|
|
164
|
-
|
|
165
159
|
for (const [themeName, theme] of Object.entries(computedThemes.value)) {
|
|
166
160
|
const {
|
|
167
161
|
variables,
|
|
@@ -174,11 +168,9 @@ export function createTheme(options) {
|
|
|
174
168
|
return `--v-${key}: ${rgb ?? value}`;
|
|
175
169
|
})]);
|
|
176
170
|
}
|
|
177
|
-
|
|
178
171
|
const bgLines = [];
|
|
179
172
|
const fgLines = [];
|
|
180
173
|
const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
|
|
181
|
-
|
|
182
174
|
for (const key of colors) {
|
|
183
175
|
if (/^on-[a-z]/.test(key)) {
|
|
184
176
|
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
|
|
@@ -188,14 +180,11 @@ export function createTheme(options) {
|
|
|
188
180
|
createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
|
|
189
181
|
}
|
|
190
182
|
}
|
|
191
|
-
|
|
192
183
|
lines.push(...bgLines, ...fgLines);
|
|
193
184
|
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
|
194
185
|
});
|
|
195
|
-
|
|
196
186
|
function install(app) {
|
|
197
187
|
const head = app._context.provides.usehead;
|
|
198
|
-
|
|
199
188
|
if (head) {
|
|
200
189
|
head.addHeadObjs(computed(() => {
|
|
201
190
|
const style = {
|
|
@@ -208,7 +197,6 @@ export function createTheme(options) {
|
|
|
208
197
|
style: [style]
|
|
209
198
|
};
|
|
210
199
|
}));
|
|
211
|
-
|
|
212
200
|
if (IN_BROWSER) {
|
|
213
201
|
watchEffect(() => head.updateDOM());
|
|
214
202
|
}
|
|
@@ -217,10 +205,8 @@ export function createTheme(options) {
|
|
|
217
205
|
watch(styles, updateStyles, {
|
|
218
206
|
immediate: true
|
|
219
207
|
});
|
|
220
|
-
|
|
221
208
|
function updateStyles() {
|
|
222
209
|
if (parsedOptions.isDisabled) return;
|
|
223
|
-
|
|
224
210
|
if (typeof document !== 'undefined' && !styleEl) {
|
|
225
211
|
const el = document.createElement('style');
|
|
226
212
|
el.type = 'text/css';
|
|
@@ -229,12 +215,10 @@ export function createTheme(options) {
|
|
|
229
215
|
styleEl = el;
|
|
230
216
|
document.head.appendChild(styleEl);
|
|
231
217
|
}
|
|
232
|
-
|
|
233
218
|
if (styleEl) styleEl.innerHTML = styles.value;
|
|
234
219
|
}
|
|
235
220
|
}
|
|
236
221
|
}
|
|
237
|
-
|
|
238
222
|
const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`);
|
|
239
223
|
return {
|
|
240
224
|
install,
|
|
@@ -259,7 +243,8 @@ export function provideTheme(props) {
|
|
|
259
243
|
return props.theme ?? (theme == null ? void 0 : theme.name.value);
|
|
260
244
|
});
|
|
261
245
|
const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`);
|
|
262
|
-
const newTheme = {
|
|
246
|
+
const newTheme = {
|
|
247
|
+
...theme,
|
|
263
248
|
name,
|
|
264
249
|
themeClasses
|
|
265
250
|
};
|
|
@@ -272,25 +257,20 @@ export function useTheme() {
|
|
|
272
257
|
if (!theme) throw new Error('Could not find Vuetify theme injection');
|
|
273
258
|
return theme;
|
|
274
259
|
}
|
|
275
|
-
|
|
276
260
|
function createCssClass(lines, selector, content) {
|
|
277
261
|
lines.push(`${selector} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
|
|
278
262
|
}
|
|
279
|
-
|
|
280
263
|
function genCssVariables(theme) {
|
|
281
264
|
const lightOverlay = theme.dark ? 2 : 1;
|
|
282
265
|
const darkOverlay = theme.dark ? 1 : 2;
|
|
283
266
|
const variables = [];
|
|
284
|
-
|
|
285
267
|
for (const [key, value] of Object.entries(theme.colors)) {
|
|
286
268
|
const rgb = colorToRGB(value);
|
|
287
269
|
variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`);
|
|
288
|
-
|
|
289
270
|
if (!key.startsWith('on-')) {
|
|
290
271
|
variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
|
291
272
|
}
|
|
292
273
|
}
|
|
293
|
-
|
|
294
274
|
return variables;
|
|
295
275
|
}
|
|
296
276
|
//# sourceMappingURL=theme.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.mjs","names":["computed","inject","provide","reactive","ref","watch","watchEffect","colorToInt","colorToRGB","createRange","darken","getCurrentInstance","getLuma","IN_BROWSER","intToHex","lighten","mergeDeep","propsFactory","APCAcontrast","ThemeSymbol","Symbol","for","makeThemeProps","theme","String","defaultThemeOptions","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","isDisabled","key","Object","entries","createTheme","parsedOptions","name","computedThemes","acc","original","value","color","variation","fn","amount","keys","test","onColor","colorVal","blackContrast","Math","abs","whiteContrast","min","current","styles","lines","createCssClass","themeName","genCssVariables","map","startsWith","undefined","rgb","r","g","b","bgLines","fgLines","Set","values","flatMap","push","str","i","join","install","app","head","_context","provides","usehead","addHeadObjs","style","children","type","id","cspNonce","nonce","updateDOM","styleEl","document","getElementById","updateStyles","immediate","el","createElement","setAttribute","appendChild","innerHTML","themeClasses","global","provideTheme","props","Error","newTheme","useTheme","selector","content","line","lightOverlay","darkOverlay"],"sources":["../../src/composables/theme.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n inject,\n provide,\n reactive,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n colorToInt,\n colorToRGB,\n createRange,\n darken,\n getCurrentInstance,\n getLuma,\n IN_BROWSER,\n intToHex,\n lighten,\n mergeDeep,\n propsFactory,\n} from '@/util'\nimport { APCAcontrast } from '@/util/color/APCA'\n\n// Types\nimport type { App, DeepReadonly, InjectionKey, Ref } from 'vue'\nimport type { HeadAttrs, HeadClient } from '@vueuse/head'\n\ntype DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T\n\nexport type ThemeOptions = false | {\n cspNonce?: string\n defaultTheme?: string\n variations?: false | VariationsOptions\n themes?: Record<string, ThemeDefinition>\n}\nexport type ThemeDefinition = DeepPartial<InternalThemeDefinition>\n\ninterface InternalThemeOptions {\n cspNonce?: string\n isDisabled: boolean\n defaultTheme: string\n variations: false | VariationsOptions\n themes: Record<string, InternalThemeDefinition>\n}\n\ninterface VariationsOptions {\n colors: string[]\n lighten: number\n darken: number\n}\n\ninterface InternalThemeDefinition {\n dark: boolean\n colors: Colors\n variables: Record<string, string | number>\n}\n\nexport interface Colors extends BaseColors, OnColors {\n [key: string]: string\n}\n\ninterface BaseColors {\n background: string\n surface: string\n primary: string\n secondary: string\n success: string\n warning: string\n error: string\n info: string\n}\n\ninterface OnColors {\n 'on-background': string\n 'on-surface': string\n 'on-primary': string\n 'on-secondary': string\n 'on-success': string\n 'on-warning': string\n 'on-error': string\n 'on-info': string\n}\n\nexport interface ThemeInstance {\n readonly isDisabled: boolean\n readonly themes: Ref<Record<string, InternalThemeDefinition>>\n\n readonly name: Readonly<Ref<string>>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>\n\n readonly themeClasses: Readonly<Ref<string | undefined>>\n readonly styles: Readonly<Ref<string>>\n\n readonly global: {\n readonly name: Ref<string>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n }\n}\n\nexport const ThemeSymbol: InjectionKey<ThemeInstance> = Symbol.for('vuetify:theme')\n\nexport const makeThemeProps = propsFactory({\n theme: String,\n}, 'theme')\n\nconst defaultThemeOptions: Exclude<ThemeOptions, false> = {\n defaultTheme: 'light',\n variations: { colors: [], lighten: 0, darken: 0 },\n themes: {\n light: {\n dark: false,\n colors: {\n background: '#FFFFFF',\n surface: '#FFFFFF',\n 'surface-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#6200EE',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC6',\n 'secondary-darken-1': '#018786',\n error: '#B00020',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#000000',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.04,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.12,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#C2C2C2',\n },\n },\n dark: {\n dark: true,\n colors: {\n background: '#121212',\n surface: '#212121',\n 'surface-variant': '#BDBDBD',\n 'on-surface-variant': '#424242',\n primary: '#BB86FC',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC5',\n 'secondary-darken-1': '#03DAC5',\n error: '#CF6679',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#FFFFFF',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.10,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.16,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#B7B7B7',\n },\n },\n },\n}\n\nfunction parseThemeOptions (options: ThemeOptions = defaultThemeOptions): InternalThemeOptions {\n if (!options) return { ...defaultThemeOptions, isDisabled: true } as InternalThemeOptions\n\n const themes: Record<string, InternalThemeDefinition> = {}\n for (const [key, theme] of Object.entries(options.themes ?? {})) {\n const defaultTheme = theme.dark\n ? defaultThemeOptions.themes?.dark\n : defaultThemeOptions.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaultThemeOptions,\n { ...options, themes },\n ) as InternalThemeOptions\n}\n\n// Composables\nexport function createTheme (options?: ThemeOptions): ThemeInstance & { install: (app: App) => void } {\n const parsedOptions = reactive(parseThemeOptions(options))\n const name = ref(parsedOptions.defaultTheme)\n const themes = ref(parsedOptions.themes)\n\n const computedThemes = computed(() => {\n const acc: Record<string, InternalThemeDefinition> = {}\n for (const [name, original] of Object.entries(themes.value)) {\n const theme: InternalThemeDefinition = acc[name] = {\n ...original,\n colors: {\n ...original.colors,\n },\n }\n\n if (parsedOptions.variations) {\n for (const name of parsedOptions.variations.colors) {\n const color = theme.colors[name]\n for (const variation of (['lighten', 'darken'] as const)) {\n const fn = variation === 'lighten' ? lighten : darken\n for (const amount of createRange(parsedOptions.variations[variation], 1)) {\n theme.colors[`${name}-${variation}-${amount}`] = intToHex(fn(colorToInt(color), amount))\n }\n }\n }\n }\n\n for (const color of Object.keys(theme.colors)) {\n if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue\n\n const onColor = `on-${color}` as keyof OnColors\n const colorVal = colorToInt(theme.colors[color]!)\n\n const blackContrast = Math.abs(APCAcontrast(0, colorVal))\n const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal))\n\n // TODO: warn about poor color selections\n // const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))\n // const minContrast = Math.max(blackContrast, whiteContrast)\n // if (minContrast < 60) {\n // consoleInfo(`${key} theme color ${color} has poor contrast (${minContrast.toFixed()}%)`)\n // } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {\n // consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)\n // }\n\n // Prefer white text if both have an acceptable contrast ratio\n theme.colors[onColor] = whiteContrast > Math.min(blackContrast, 50) ? '#fff' : '#000'\n }\n }\n\n return acc\n })\n const current = computed(() => computedThemes.value[name.value])\n\n const styles = computed(() => {\n const lines: string[] = []\n\n if (current.value.dark) {\n createCssClass(lines, ':root', ['color-scheme: dark'])\n }\n\n for (const [themeName, theme] of Object.entries(computedThemes.value)) {\n const { variables, dark } = theme\n\n createCssClass(lines, `.v-theme--${themeName}`, [\n `color-scheme: ${dark ? 'dark' : 'normal'}`,\n ...genCssVariables(theme),\n ...Object.keys(variables).map(key => {\n const value = variables[key]\n const color = typeof value === 'string' && value.startsWith('#') ? colorToRGB(value) : undefined\n const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined\n\n return `--v-${key}: ${rgb ?? value}`\n }),\n ])\n }\n\n const bgLines: string[] = []\n const fgLines: string[] = []\n\n const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)))\n for (const key of colors) {\n if (/^on-[a-z]/.test(key)) {\n createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n } else {\n createCssClass(bgLines, `.bg-${key}`, [\n `--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`,\n `background: rgb(var(--v-theme-${key})) !important`,\n `color: rgb(var(--v-theme-on-${key})) !important`,\n ])\n createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`])\n }\n }\n\n lines.push(...bgLines, ...fgLines)\n\n return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('')\n })\n\n function install (app: App) {\n const head = app._context.provides.usehead as HeadClient | undefined\n if (head) {\n head.addHeadObjs(computed(() => {\n const style: HeadAttrs = {\n children: styles.value,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n }\n if (parsedOptions.cspNonce) style.nonce = parsedOptions.cspNonce\n\n return { style: [style] }\n }))\n\n if (IN_BROWSER) {\n watchEffect(() => head.updateDOM())\n }\n } else {\n let styleEl = IN_BROWSER\n ? document.getElementById('vuetify-theme-stylesheet')\n : null\n\n watch(styles, updateStyles, { immediate: true })\n\n function updateStyles () {\n if (parsedOptions.isDisabled) return\n\n if (typeof document !== 'undefined' && !styleEl) {\n const el = document.createElement('style')\n el.type = 'text/css'\n el.id = 'vuetify-theme-stylesheet'\n if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce)\n\n styleEl = el\n document.head.appendChild(styleEl)\n }\n\n if (styleEl) styleEl.innerHTML = styles.value\n }\n }\n }\n\n const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`)\n\n return {\n install,\n isDisabled: parsedOptions.isDisabled,\n name,\n themes,\n current,\n computedThemes,\n themeClasses,\n styles,\n global: {\n name,\n current,\n },\n }\n}\n\nexport function provideTheme (props: { theme?: string }) {\n getCurrentInstance('provideTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n const name = computed<string>(() => {\n return props.theme ?? theme?.name.value\n })\n\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\n themeClasses,\n }\n\n provide(ThemeSymbol, newTheme)\n\n return newTheme\n}\n\nexport function useTheme () {\n getCurrentInstance('useTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n return theme\n}\n\nfunction createCssClass (lines: string[], selector: string, content: string[]) {\n lines.push(\n `${selector} {\\n`,\n ...content.map(line => ` ${line};\\n`),\n '}\\n',\n )\n}\n\nfunction genCssVariables (theme: InternalThemeDefinition) {\n const lightOverlay = theme.dark ? 2 : 1\n const darkOverlay = theme.dark ? 1 : 2\n\n const variables: string[] = []\n for (const [key, value] of Object.entries(theme.colors)) {\n const rgb = colorToRGB(value)\n variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`)\n if (!key.startsWith('on-')) {\n variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`)\n }\n }\n\n return variables\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theme.mjs","names":["computed","inject","provide","reactive","ref","watch","watchEffect","colorToInt","colorToRGB","createRange","darken","getCurrentInstance","getLuma","IN_BROWSER","intToHex","lighten","mergeDeep","propsFactory","APCAcontrast","ThemeSymbol","Symbol","for","makeThemeProps","theme","String","defaultThemeOptions","defaultTheme","variations","colors","themes","light","dark","background","surface","primary","secondary","error","info","success","warning","variables","parseThemeOptions","options","isDisabled","key","Object","entries","createTheme","parsedOptions","name","computedThemes","acc","original","value","color","variation","fn","amount","keys","test","onColor","colorVal","blackContrast","Math","abs","whiteContrast","min","current","styles","lines","createCssClass","themeName","genCssVariables","map","startsWith","undefined","rgb","r","g","b","bgLines","fgLines","Set","values","flatMap","push","str","i","join","install","app","head","_context","provides","usehead","addHeadObjs","style","children","type","id","cspNonce","nonce","updateDOM","styleEl","document","getElementById","updateStyles","immediate","el","createElement","setAttribute","appendChild","innerHTML","themeClasses","global","provideTheme","props","Error","newTheme","useTheme","selector","content","line","lightOverlay","darkOverlay"],"sources":["../../src/composables/theme.ts"],"sourcesContent":["// Utilities\nimport {\n computed,\n inject,\n provide,\n reactive,\n ref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n colorToInt,\n colorToRGB,\n createRange,\n darken,\n getCurrentInstance,\n getLuma,\n IN_BROWSER,\n intToHex,\n lighten,\n mergeDeep,\n propsFactory,\n} from '@/util'\nimport { APCAcontrast } from '@/util/color/APCA'\n\n// Types\nimport type { App, DeepReadonly, InjectionKey, Ref } from 'vue'\nimport type { HeadAttrs, HeadClient } from '@vueuse/head'\n\ntype DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T\n\nexport type ThemeOptions = false | {\n cspNonce?: string\n defaultTheme?: string\n variations?: false | VariationsOptions\n themes?: Record<string, ThemeDefinition>\n}\nexport type ThemeDefinition = DeepPartial<InternalThemeDefinition>\n\ninterface InternalThemeOptions {\n cspNonce?: string\n isDisabled: boolean\n defaultTheme: string\n variations: false | VariationsOptions\n themes: Record<string, InternalThemeDefinition>\n}\n\ninterface VariationsOptions {\n colors: string[]\n lighten: number\n darken: number\n}\n\ninterface InternalThemeDefinition {\n dark: boolean\n colors: Colors\n variables: Record<string, string | number>\n}\n\nexport interface Colors extends BaseColors, OnColors {\n [key: string]: string\n}\n\ninterface BaseColors {\n background: string\n surface: string\n primary: string\n secondary: string\n success: string\n warning: string\n error: string\n info: string\n}\n\ninterface OnColors {\n 'on-background': string\n 'on-surface': string\n 'on-primary': string\n 'on-secondary': string\n 'on-success': string\n 'on-warning': string\n 'on-error': string\n 'on-info': string\n}\n\nexport interface ThemeInstance {\n readonly isDisabled: boolean\n readonly themes: Ref<Record<string, InternalThemeDefinition>>\n\n readonly name: Readonly<Ref<string>>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>\n\n readonly themeClasses: Readonly<Ref<string | undefined>>\n readonly styles: Readonly<Ref<string>>\n\n readonly global: {\n readonly name: Ref<string>\n readonly current: DeepReadonly<Ref<InternalThemeDefinition>>\n }\n}\n\nexport const ThemeSymbol: InjectionKey<ThemeInstance> = Symbol.for('vuetify:theme')\n\nexport const makeThemeProps = propsFactory({\n theme: String,\n}, 'theme')\n\nconst defaultThemeOptions: Exclude<ThemeOptions, false> = {\n defaultTheme: 'light',\n variations: { colors: [], lighten: 0, darken: 0 },\n themes: {\n light: {\n dark: false,\n colors: {\n background: '#FFFFFF',\n surface: '#FFFFFF',\n 'surface-variant': '#424242',\n 'on-surface-variant': '#EEEEEE',\n primary: '#6200EE',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC6',\n 'secondary-darken-1': '#018786',\n error: '#B00020',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#000000',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.04,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.12,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#C2C2C2',\n },\n },\n dark: {\n dark: true,\n colors: {\n background: '#121212',\n surface: '#212121',\n 'surface-variant': '#BDBDBD',\n 'on-surface-variant': '#424242',\n primary: '#BB86FC',\n 'primary-darken-1': '#3700B3',\n secondary: '#03DAC5',\n 'secondary-darken-1': '#03DAC5',\n error: '#CF6679',\n info: '#2196F3',\n success: '#4CAF50',\n warning: '#FB8C00',\n },\n variables: {\n 'border-color': '#FFFFFF',\n 'border-opacity': 0.12,\n 'high-emphasis-opacity': 0.87,\n 'medium-emphasis-opacity': 0.60,\n 'disabled-opacity': 0.38,\n 'idle-opacity': 0.10,\n 'hover-opacity': 0.04,\n 'focus-opacity': 0.12,\n 'selected-opacity': 0.08,\n 'activated-opacity': 0.12,\n 'pressed-opacity': 0.16,\n 'dragged-opacity': 0.08,\n 'kbd-background-color': '#212529',\n 'kbd-color': '#FFFFFF',\n 'code-background-color': '#B7B7B7',\n },\n },\n },\n}\n\nfunction parseThemeOptions (options: ThemeOptions = defaultThemeOptions): InternalThemeOptions {\n if (!options) return { ...defaultThemeOptions, isDisabled: true } as InternalThemeOptions\n\n const themes: Record<string, InternalThemeDefinition> = {}\n for (const [key, theme] of Object.entries(options.themes ?? {})) {\n const defaultTheme = theme.dark || key === 'dark'\n ? defaultThemeOptions.themes?.dark\n : defaultThemeOptions.themes?.light\n themes[key] = mergeDeep(defaultTheme, theme) as InternalThemeDefinition\n }\n\n return mergeDeep(\n defaultThemeOptions,\n { ...options, themes },\n ) as InternalThemeOptions\n}\n\n// Composables\nexport function createTheme (options?: ThemeOptions): ThemeInstance & { install: (app: App) => void } {\n const parsedOptions = reactive(parseThemeOptions(options))\n const name = ref(parsedOptions.defaultTheme)\n const themes = ref(parsedOptions.themes)\n\n const computedThemes = computed(() => {\n const acc: Record<string, InternalThemeDefinition> = {}\n for (const [name, original] of Object.entries(themes.value)) {\n const theme: InternalThemeDefinition = acc[name] = {\n ...original,\n colors: {\n ...original.colors,\n },\n }\n\n if (parsedOptions.variations) {\n for (const name of parsedOptions.variations.colors) {\n const color = theme.colors[name]\n\n if (!color) continue\n\n for (const variation of (['lighten', 'darken'] as const)) {\n const fn = variation === 'lighten' ? lighten : darken\n for (const amount of createRange(parsedOptions.variations[variation], 1)) {\n theme.colors[`${name}-${variation}-${amount}`] = intToHex(fn(colorToInt(color), amount))\n }\n }\n }\n }\n\n for (const color of Object.keys(theme.colors)) {\n if (/^on-[a-z]/.test(color) || theme.colors[`on-${color}`]) continue\n\n const onColor = `on-${color}` as keyof OnColors\n const colorVal = colorToInt(theme.colors[color]!)\n\n const blackContrast = Math.abs(APCAcontrast(0, colorVal))\n const whiteContrast = Math.abs(APCAcontrast(0xffffff, colorVal))\n\n // TODO: warn about poor color selections\n // const contrastAsText = Math.abs(APCAcontrast(colorVal, colorToInt(theme.colors.background)))\n // const minContrast = Math.max(blackContrast, whiteContrast)\n // if (minContrast < 60) {\n // consoleInfo(`${key} theme color ${color} has poor contrast (${minContrast.toFixed()}%)`)\n // } else if (contrastAsText < 60 && !['background', 'surface'].includes(color)) {\n // consoleInfo(`${key} theme color ${color} has poor contrast as text (${contrastAsText.toFixed()}%)`)\n // }\n\n // Prefer white text if both have an acceptable contrast ratio\n theme.colors[onColor] = whiteContrast > Math.min(blackContrast, 50) ? '#fff' : '#000'\n }\n }\n\n return acc\n })\n const current = computed(() => computedThemes.value[name.value])\n\n const styles = computed(() => {\n const lines: string[] = []\n\n if (current.value.dark) {\n createCssClass(lines, ':root', ['color-scheme: dark'])\n }\n\n for (const [themeName, theme] of Object.entries(computedThemes.value)) {\n const { variables, dark } = theme\n\n createCssClass(lines, `.v-theme--${themeName}`, [\n `color-scheme: ${dark ? 'dark' : 'normal'}`,\n ...genCssVariables(theme),\n ...Object.keys(variables).map(key => {\n const value = variables[key]\n const color = typeof value === 'string' && value.startsWith('#') ? colorToRGB(value) : undefined\n const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined\n\n return `--v-${key}: ${rgb ?? value}`\n }),\n ])\n }\n\n const bgLines: string[] = []\n const fgLines: string[] = []\n\n const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)))\n for (const key of colors) {\n if (/^on-[a-z]/.test(key)) {\n createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n } else {\n createCssClass(bgLines, `.bg-${key}`, [\n `--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`,\n `background: rgb(var(--v-theme-${key})) !important`,\n `color: rgb(var(--v-theme-on-${key})) !important`,\n ])\n createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`])\n createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`])\n }\n }\n\n lines.push(...bgLines, ...fgLines)\n\n return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('')\n })\n\n function install (app: App) {\n const head = app._context.provides.usehead as HeadClient | undefined\n if (head) {\n head.addHeadObjs(computed(() => {\n const style: HeadAttrs = {\n children: styles.value,\n type: 'text/css',\n id: 'vuetify-theme-stylesheet',\n }\n if (parsedOptions.cspNonce) style.nonce = parsedOptions.cspNonce\n\n return { style: [style] }\n }))\n\n if (IN_BROWSER) {\n watchEffect(() => head.updateDOM())\n }\n } else {\n let styleEl = IN_BROWSER\n ? document.getElementById('vuetify-theme-stylesheet')\n : null\n\n watch(styles, updateStyles, { immediate: true })\n\n function updateStyles () {\n if (parsedOptions.isDisabled) return\n\n if (typeof document !== 'undefined' && !styleEl) {\n const el = document.createElement('style')\n el.type = 'text/css'\n el.id = 'vuetify-theme-stylesheet'\n if (parsedOptions.cspNonce) el.setAttribute('nonce', parsedOptions.cspNonce)\n\n styleEl = el\n document.head.appendChild(styleEl)\n }\n\n if (styleEl) styleEl.innerHTML = styles.value\n }\n }\n }\n\n const themeClasses = computed(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`)\n\n return {\n install,\n isDisabled: parsedOptions.isDisabled,\n name,\n themes,\n current,\n computedThemes,\n themeClasses,\n styles,\n global: {\n name,\n current,\n },\n }\n}\n\nexport function provideTheme (props: { theme?: string }) {\n getCurrentInstance('provideTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n const name = computed<string>(() => {\n return props.theme ?? theme?.name.value\n })\n\n const themeClasses = computed(() => theme.isDisabled ? undefined : `v-theme--${name.value}`)\n\n const newTheme: ThemeInstance = {\n ...theme,\n name,\n themeClasses,\n }\n\n provide(ThemeSymbol, newTheme)\n\n return newTheme\n}\n\nexport function useTheme () {\n getCurrentInstance('useTheme')\n\n const theme = inject(ThemeSymbol, null)\n\n if (!theme) throw new Error('Could not find Vuetify theme injection')\n\n return theme\n}\n\nfunction createCssClass (lines: string[], selector: string, content: string[]) {\n lines.push(\n `${selector} {\\n`,\n ...content.map(line => ` ${line};\\n`),\n '}\\n',\n )\n}\n\nfunction genCssVariables (theme: InternalThemeDefinition) {\n const lightOverlay = theme.dark ? 2 : 1\n const darkOverlay = theme.dark ? 1 : 2\n\n const variables: string[] = []\n for (const [key, value] of Object.entries(theme.colors)) {\n const rgb = colorToRGB(value)\n variables.push(`--v-theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`)\n if (!key.startsWith('on-')) {\n variables.push(`--v-theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`)\n }\n }\n\n return variables\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggleScope.mjs","names":["effectScope","watch","useToggleScope","source","cb","scope","active","run","stop","undefined","immediate"],"sources":["../../src/composables/toggleScope.ts"],"sourcesContent":["import { effectScope, watch } from 'vue'\nimport type { EffectScope, WatchSource } from 'vue'\n\nexport function useToggleScope (source: WatchSource<boolean>, cb: () => void) {\n let scope: EffectScope | undefined\n watch(source, active => {\n if (active && !scope) {\n scope = effectScope()\n scope.run(cb)\n } else {\n scope?.stop()\n scope = undefined\n }\n }, { immediate: true })\n}\n"],"mappings":"AAAA,SAASA,
|
|
1
|
+
{"version":3,"file":"toggleScope.mjs","names":["effectScope","watch","useToggleScope","source","cb","scope","active","run","stop","undefined","immediate"],"sources":["../../src/composables/toggleScope.ts"],"sourcesContent":["import { effectScope, watch } from 'vue'\nimport type { EffectScope, WatchSource } from 'vue'\n\nexport function useToggleScope (source: WatchSource<boolean>, cb: () => void) {\n let scope: EffectScope | undefined\n watch(source, active => {\n if (active && !scope) {\n scope = effectScope()\n scope.run(cb)\n } else {\n scope?.stop()\n scope = undefined\n }\n }, { immediate: true })\n}\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,KAAK,QAAQ,KAAK;AAGxC,OAAO,SAASC,cAAc,CAAEC,MAA4B,EAAEC,EAAc,EAAE;EAC5E,IAAIC,KAA8B;EAClCJ,KAAK,CAACE,MAAM,EAAEG,MAAM,IAAI;IACtB,IAAIA,MAAM,IAAI,CAACD,KAAK,EAAE;MACpBA,KAAK,GAAGL,WAAW,EAAE;MACrBK,KAAK,CAACE,GAAG,CAACH,EAAE,CAAC;IACf,CAAC,MAAM;MAAA;MACL,UAAAC,KAAK,qBAAL,OAAOG,IAAI,EAAE;MACbH,KAAK,GAAGI,SAAS;IACnB;EACF,CAAC,EAAE;IAAEC,SAAS,EAAE;EAAK,CAAC,CAAC;AACzB"}
|