@vuetify/nightly 3.0.0-beta.0 → 3.0.0-beta.13
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 +13 -2
- package/_settings.scss +2 -0
- package/_styles.scss +1 -0
- package/_tools.scss +1 -0
- package/dist/_component-variables.sass +61 -0
- package/dist/json/attributes.json +898 -526
- package/dist/json/importMap.json +156 -180
- package/dist/json/tags.json +221 -147
- package/dist/json/web-types.json +2698 -1609
- package/dist/vuetify.css +4126 -4566
- package/dist/vuetify.d.ts +13705 -11374
- package/dist/vuetify.esm.js +11107 -9293
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +11015 -9200
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +3 -3
- package/dist/vuetify.min.js +1375 -1254
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +171 -0
- package/lib/blueprints/index.mjs +4 -0
- package/lib/blueprints/index.mjs.map +1 -0
- package/lib/blueprints/md1.d.ts +167 -0
- package/lib/blueprints/md1.mjs +63 -0
- package/lib/blueprints/md1.mjs.map +1 -0
- package/lib/blueprints/md2.d.ts +167 -0
- package/lib/blueprints/md2.mjs +60 -0
- package/lib/blueprints/md2.mjs.map +1 -0
- package/lib/blueprints/md3.d.ts +167 -0
- package/lib/blueprints/md3.mjs +74 -0
- package/lib/blueprints/md3.mjs.map +1 -0
- package/lib/components/VAlert/VAlert.css +36 -19
- package/lib/components/VAlert/VAlert.mjs +69 -40
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/VAlert.sass +26 -11
- package/lib/components/VAlert/VAlertTitle.mjs +1 -0
- package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
- package/lib/components/VAlert/_variables.scss +14 -7
- package/lib/components/VAlert/index.d.ts +185 -0
- package/lib/components/VAlert/index.mjs.map +1 -1
- package/lib/components/VApp/VApp.css +2 -15
- package/lib/components/VApp/VApp.mjs +3 -4
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/VApp.sass +11 -20
- package/lib/components/VApp/index.d.ts +83 -0
- package/lib/components/VApp/index.mjs.map +1 -1
- package/lib/components/VApp/variables.scss +6 -0
- package/lib/components/VAppBar/VAppBar.css +4 -1
- package/lib/components/VAppBar/VAppBar.mjs +15 -10
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBar.sass +3 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +11 -14
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs +7 -4
- package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
- package/lib/components/VAppBar/_variables.scss +2 -0
- package/lib/components/VAppBar/index.d.ts +156 -0
- package/lib/components/VAppBar/index.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.css +11 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +142 -105
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +10 -2
- package/lib/components/VAutocomplete/_variables.scss +1 -0
- package/lib/components/VAutocomplete/index.d.ts +1569 -0
- package/lib/components/VAutocomplete/index.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.css +48 -3
- package/lib/components/VAvatar/VAvatar.mjs +29 -23
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/VAvatar.sass +10 -3
- package/lib/components/VAvatar/_mixins.scss +0 -1
- package/lib/components/VAvatar/_variables.scss +9 -4
- package/lib/components/VAvatar/index.d.ts +80 -0
- package/lib/components/VAvatar/index.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.css +3 -6
- package/lib/components/VBadge/VBadge.mjs +20 -49
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.sass +2 -5
- package/lib/components/VBadge/_variables.scss +3 -4
- package/lib/components/VBadge/index.d.ts +123 -0
- package/lib/components/VBadge/index.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.css +81 -57
- package/lib/components/VBanner/VBanner.mjs +45 -37
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBanner.sass +60 -55
- package/lib/components/VBanner/VBannerActions.mjs +34 -2
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/VBannerText.mjs.map +1 -1
- package/lib/components/VBanner/_variables.scss +10 -14
- package/lib/components/VBanner/index.d.ts +122 -0
- package/lib/components/VBanner/index.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.css +6 -13
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +5 -4
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.sass +6 -14
- package/lib/components/VBottomNavigation/_variables.scss +7 -8
- package/lib/components/VBottomNavigation/index.d.ts +143 -0
- package/lib/components/VBottomNavigation/index.mjs.map +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
- package/lib/components/VBottomSheet/index.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +13 -6
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +35 -21
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.sass +8 -4
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -17
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/_variables.scss +2 -1
- package/lib/components/VBreadcrumbs/index.d.ts +301 -0
- package/lib/components/VBreadcrumbs/index.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.css +141 -28
- package/lib/components/VBtn/VBtn.mjs +109 -34
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.sass +119 -16
- package/lib/components/VBtn/_variables.scss +10 -1
- package/lib/components/VBtn/index.d.ts +210 -0
- package/lib/components/VBtn/index.mjs.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.css +16 -7
- package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.sass +14 -7
- package/lib/components/VBtnGroup/_variables.scss +2 -0
- package/lib/components/VBtnGroup/index.d.ts +65 -0
- package/lib/components/VBtnGroup/index.mjs.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.mjs +1 -3
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.sass +0 -1
- package/lib/components/VBtnToggle/_variables.scss +1 -0
- package/lib/components/VBtnToggle/index.d.ts +175 -0
- package/lib/components/VBtnToggle/index.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendar.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarCategory.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarDaily.mjs.map +1 -1
- package/lib/components/VCalendar/VCalendarMonthly.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-events.mjs +2 -6
- package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/mouse.mjs.map +1 -1
- package/lib/components/VCalendar/mixins/times.mjs.map +1 -1
- package/lib/components/VCalendar/modes/column.mjs.map +1 -1
- package/lib/components/VCalendar/modes/common.mjs.map +1 -1
- package/lib/components/VCalendar/modes/index.mjs.map +1 -1
- package/lib/components/VCalendar/modes/stack.mjs.map +1 -1
- package/lib/components/VCalendar/util/events.mjs.map +1 -1
- package/lib/components/VCalendar/util/parser.mjs.map +1 -1
- package/lib/components/VCalendar/util/props.mjs.map +1 -1
- package/lib/components/VCalendar/util/timestamp.mjs.map +1 -1
- package/lib/components/VCard/VCard.css +108 -84
- package/lib/components/VCard/VCard.mjs +72 -73
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCard.sass +76 -61
- package/lib/components/VCard/VCardActions.mjs +2 -3
- package/lib/components/VCard/VCardActions.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +88 -0
- package/lib/components/VCard/VCardItem.mjs.map +1 -0
- 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/_variables.scss +45 -23
- package/lib/components/VCard/index.d.ts +230 -0
- package/lib/components/VCard/index.mjs +1 -4
- package/lib/components/VCard/index.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.mjs +9 -7
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarousel.sass +0 -1
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/_variables.scss +1 -0
- package/lib/components/VCarousel/index.d.ts +80 -0
- package/lib/components/VCarousel/index.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.mjs +15 -47
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.sass +0 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +67 -0
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -0
- package/lib/components/VCheckbox/index.d.ts +291 -0
- package/lib/components/VCheckbox/index.mjs +1 -0
- package/lib/components/VCheckbox/index.mjs.map +1 -1
- package/lib/components/VChip/VChip.css +147 -68
- package/lib/components/VChip/VChip.mjs +83 -43
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/VChip.sass +9 -1
- package/lib/components/VChip/_mixins.scss +26 -6
- package/lib/components/VChip/_variables.scss +4 -5
- package/lib/components/VChip/index.d.ts +195 -0
- package/lib/components/VChip/index.mjs.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.mjs +5 -4
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.sass +1 -1
- package/lib/components/VChipGroup/_variables.scss +1 -1
- package/lib/components/VChipGroup/index.d.ts +89 -0
- package/lib/components/VChipGroup/index.mjs.map +1 -1
- package/lib/components/VCode/VCode.sass +1 -2
- package/lib/components/VCode/_variables.scss +1 -1
- package/lib/components/VCode/index.d.ts +19 -0
- package/lib/components/VCode/index.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.css +3 -3
- package/lib/components/VColorPicker/VColorPicker.mjs +55 -53
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.css +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +10 -9
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +4 -3
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +14 -21
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.sass +0 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +6 -5
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.sass +0 -1
- package/lib/components/VColorPicker/_variables.scss +17 -10
- package/lib/components/VColorPicker/index.d.ts +116 -0
- package/lib/components/VColorPicker/index.mjs.map +1 -1
- package/lib/components/VColorPicker/util/index.mjs +1 -3
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.css +11 -1
- package/lib/components/VCombobox/VCombobox.mjs +145 -116
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +10 -2
- package/lib/components/VCombobox/_variables.scss +1 -0
- package/lib/components/VCombobox/index.d.ts +1590 -0
- package/lib/components/VCombobox/index.mjs.map +1 -1
- package/lib/components/VCounter/VCounter.mjs +16 -16
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/VCounter.sass +1 -2
- package/lib/components/VCounter/_variables.scss +2 -1
- package/lib/components/VCounter/index.d.ts +223 -0
- package/lib/components/VCounter/index.mjs.map +1 -1
- package/lib/components/VData/VData.mjs.map +1 -1
- package/lib/components/VData/index.mjs.map +1 -1
- package/lib/components/VDataIterator/VDataFooter.mjs.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
- package/lib/components/VDataIterator/index.mjs.map +1 -1
- package/lib/components/VDataTable/MobileRow.mjs.map +1 -1
- package/lib/components/VDataTable/Row.mjs.map +1 -1
- package/lib/components/VDataTable/RowGroup.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTable.mjs +11 -15
- package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeader.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderDesktop.mjs.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaderMobile.mjs.map +1 -1
- package/lib/components/VDataTable/VEditDialog.mjs.map +1 -1
- package/lib/components/VDataTable/VVirtualTable.mjs.map +1 -1
- package/lib/components/VDataTable/index.mjs.map +1 -1
- package/lib/components/VDataTable/mixins/header.mjs +1 -3
- package/lib/components/VDataTable/mixins/header.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerDateTable.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonthTable.mjs.map +1 -1
- package/lib/components/VDatePicker/VDatePickerTitle.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
- package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
- package/lib/components/VDatePicker/util/index.mjs.map +1 -1
- package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
- package/lib/components/VDatePicker/util/monthChange.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VDefaultsProvider/index.d.ts +26 -0
- package/lib/components/VDefaultsProvider/index.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.css +36 -17
- package/lib/components/VDialog/VDialog.mjs +46 -38
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +30 -15
- package/lib/components/VDialog/_variables.scss +3 -8
- package/lib/components/VDialog/index.d.ts +859 -0
- package/lib/components/VDialog/index.mjs.map +1 -1
- package/lib/components/VDivider/VDivider.mjs +16 -17
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/VDivider.sass +0 -1
- package/lib/components/VDivider/_variables.scss +3 -1
- package/lib/components/VDivider/index.d.ts +22 -0
- package/lib/components/VDivider/index.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.css +15 -7
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -6
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +14 -11
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs +4 -0
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/_variables.scss +15 -10
- package/lib/components/VExpansionPanel/index.d.ts +206 -0
- package/lib/components/VExpansionPanel/index.mjs.map +1 -1
- package/lib/components/VField/VField.css +63 -41
- package/lib/components/VField/VField.mjs +52 -36
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +49 -35
- package/lib/components/VField/VFieldLabel.mjs +8 -9
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/_variables.scss +6 -5
- package/lib/components/VField/index.d.ts +332 -0
- package/lib/components/VField/index.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.css +3 -3
- package/lib/components/VFileInput/VFileInput.mjs +48 -47
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +3 -4
- package/lib/components/VFileInput/index.d.ts +236 -0
- package/lib/components/VFileInput/index.mjs.map +1 -1
- package/lib/components/VFooter/VFooter.css +8 -1
- package/lib/components/VFooter/VFooter.mjs +36 -18
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/VFooter.sass +1 -2
- package/lib/components/VFooter/_variables.scss +13 -1
- package/lib/components/VFooter/index.d.ts +76 -0
- package/lib/components/VFooter/index.mjs.map +1 -1
- package/lib/components/VForm/VForm.mjs +27 -13
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VForm/index.d.ts +72 -0
- package/lib/components/VForm/index.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs +2 -1
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +4 -3
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +8 -3
- 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 +154 -0
- package/lib/components/VGrid/index.mjs.map +1 -1
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VHover/index.d.ts +30 -0
- package/lib/components/VHover/index.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.css +13 -16
- package/lib/components/VIcon/VIcon.mjs +34 -33
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.sass +8 -16
- package/lib/components/VIcon/_variables.scss +2 -5
- package/lib/components/VIcon/index.d.ts +124 -0
- package/lib/components/VIcon/index.mjs.map +1 -1
- package/lib/components/VImg/VImg.mjs +29 -26
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/VImg.sass +0 -1
- package/lib/components/VImg/index.d.ts +89 -0
- package/lib/components/VImg/index.mjs.map +1 -1
- package/lib/components/VInput/InputIcon.mjs +33 -0
- package/lib/components/VInput/InputIcon.mjs.map +1 -0
- package/lib/components/VInput/VInput.css +5 -2
- package/lib/components/VInput/VInput.mjs +26 -18
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +5 -3
- package/lib/components/VInput/_variables.scss +4 -1
- package/lib/components/VInput/index.d.ts +325 -0
- package/lib/components/VInput/index.mjs.map +1 -1
- package/lib/components/VItemGroup/VItem.mjs +3 -0
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.sass +0 -1
- package/lib/components/VItemGroup/index.d.ts +210 -0
- package/lib/components/VItemGroup/index.mjs.map +1 -1
- package/lib/components/VKbd/VKbd.css +1 -1
- package/lib/components/VKbd/VKbd.sass +0 -1
- package/lib/components/VKbd/_variables.scss +1 -1
- package/lib/components/VKbd/index.d.ts +19 -0
- package/lib/components/VKbd/index.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.css +4 -1
- package/lib/components/VLabel/VLabel.mjs +8 -4
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.sass +3 -2
- package/lib/components/VLabel/_variables.scss +1 -0
- package/lib/components/VLabel/index.d.ts +16 -0
- package/lib/components/VLabel/index.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.css +0 -2
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.sass +0 -2
- package/lib/components/VLayout/VLayoutItem.mjs +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.ts +75 -0
- package/lib/components/VLayout/index.mjs.map +1 -1
- package/lib/components/VLazy/VLazy.mjs +5 -3
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VLazy/index.d.ts +85 -0
- package/lib/components/VLazy/index.mjs.map +1 -1
- package/lib/components/VList/VList.css +14 -16
- package/lib/components/VList/VList.mjs +92 -59
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VList.sass +9 -6
- package/lib/components/VList/VListChildren.mjs +69 -13
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +52 -19
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListImg.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +181 -73
- package/lib/components/VList/VListItem.mjs +124 -82
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +125 -49
- package/lib/components/VList/VListItemAction.mjs +28 -0
- package/lib/components/VList/VListItemAction.mjs.map +1 -0
- package/lib/components/VList/VListItemMedia.mjs +8 -7
- 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 +8 -7
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/_variables.scss +24 -9
- package/lib/components/VList/index.d.ts +1250 -0
- package/lib/components/VList/index.mjs +3 -4
- package/lib/components/VList/index.mjs.map +1 -1
- package/lib/components/VList/list.mjs.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -3
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VLocaleProvider/index.d.ts +23 -0
- package/lib/components/VLocaleProvider/index.mjs.map +1 -1
- package/lib/components/VMain/VMain.css +20 -9
- package/lib/components/VMain/VMain.mjs +17 -11
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/VMain.sass +17 -11
- package/lib/components/VMain/_variables.scss +1 -1
- package/lib/components/VMain/index.d.ts +26 -0
- package/lib/components/VMain/index.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.css +3 -13
- package/lib/components/VMenu/VMenu.mjs +81 -34
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.sass +3 -7
- package/lib/components/VMenu/_variables.scss +0 -1
- package/lib/components/VMenu/index.d.ts +817 -0
- package/lib/components/VMenu/index.mjs.map +1 -1
- package/lib/components/VMenu/shared.mjs +2 -0
- package/lib/components/VMenu/shared.mjs.map +1 -0
- package/lib/components/VMessages/VMessages.mjs +5 -3
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/VMessages.sass +0 -1
- package/lib/components/VMessages/_variables.scss +1 -1
- package/lib/components/VMessages/index.d.ts +234 -0
- package/lib/components/VMessages/index.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +14 -19
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +60 -21
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +16 -22
- package/lib/components/VNavigationDrawer/_variables.scss +4 -2
- package/lib/components/VNavigationDrawer/index.d.ts +148 -0
- package/lib/components/VNavigationDrawer/index.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/sticky.mjs +70 -0
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -0
- package/lib/components/VNavigationDrawer/touch.mjs +5 -2
- package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
- package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
- package/lib/components/VNoSsr/index.d.ts +7 -0
- package/lib/components/VNoSsr/index.mjs.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOtpInput/index.mjs.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
- package/lib/components/VOverflowBtn/index.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.css +7 -0
- package/lib/components/VOverlay/VOverlay.mjs +73 -45
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.sass +8 -1
- package/lib/components/VOverlay/_variables.scss +1 -1
- package/lib/components/VOverlay/index.d.ts +579 -0
- package/lib/components/VOverlay/index.mjs.map +1 -1
- package/lib/components/VOverlay/locationStrategies.mjs +404 -0
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -0
- package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
- package/lib/components/VOverlay/scrollStrategies.mjs +19 -13
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +86 -17
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VOverlay/util/point.mjs +3 -3
- package/lib/components/VOverlay/util/point.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +63 -44
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.sass +0 -1
- package/lib/components/VPagination/index.d.ts +247 -0
- package/lib/components/VPagination/index.mjs.map +1 -1
- package/lib/components/VParallax/VParallax.mjs +30 -16
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.d.ts +18 -0
- package/lib/components/VParallax/index.mjs.map +1 -1
- package/lib/components/VPicker/VPicker.mjs.map +1 -1
- package/lib/components/VPicker/index.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.mjs +6 -5
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.sass +0 -1
- package/lib/components/VProgressCircular/_variables.scss +2 -0
- package/lib/components/VProgressCircular/index.d.ts +68 -0
- package/lib/components/VProgressCircular/index.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.css +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.mjs +5 -3
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.sass +0 -1
- package/lib/components/VProgressLinear/_variables.scss +1 -0
- package/lib/components/VProgressLinear/index.d.ts +101 -0
- package/lib/components/VProgressLinear/index.mjs.map +1 -1
- package/lib/components/VRadio/VRadio.mjs +9 -17
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadio/index.d.ts +103 -0
- package/lib/components/VRadio/index.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.css +2 -3
- package/lib/components/VRadioGroup/VRadioGroup.mjs +32 -9
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.sass +6 -4
- package/lib/components/VRadioGroup/_variables.scss +2 -4
- package/lib/components/VRadioGroup/index.d.ts +186 -0
- package/lib/components/VRadioGroup/index.mjs.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.mjs +27 -15
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +242 -0
- package/lib/components/VRangeSlider/index.mjs.map +1 -1
- package/lib/components/VRating/VRating.css +2 -2
- package/lib/components/VRating/VRating.mjs +24 -18
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/VRating.sass +4 -3
- package/lib/components/VRating/index.d.ts +356 -0
- package/lib/components/VRating/index.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.mjs +7 -6
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VResponsive/index.d.ts +23 -0
- package/lib/components/VResponsive/index.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.css +18 -2
- package/lib/components/VSelect/VSelect.mjs +145 -112
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +20 -3
- package/lib/components/VSelect/_variables.scss +1 -0
- package/lib/components/VSelect/index.d.ts +1521 -0
- package/lib/components/VSelect/index.mjs.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.css +1 -0
- package/lib/components/VSelectionControl/VSelectionControl.mjs +33 -25
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.sass +1 -1
- package/lib/components/VSelectionControl/_variables.scss +1 -0
- package/lib/components/VSelectionControl/index.d.ts +275 -0
- package/lib/components/VSelectionControl/index.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +5 -0
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -7
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.sass +6 -6
- package/lib/components/VSelectionControlGroup/_variables.scss +1 -4
- package/lib/components/VSelectionControlGroup/index.d.ts +47 -0
- package/lib/components/VSelectionControlGroup/index.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.css +1 -1
- package/lib/components/VSheet/VSheet.mjs +10 -6
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.sass +0 -1
- package/lib/components/VSheet/_variables.scss +3 -2
- package/lib/components/VSheet/index.d.ts +68 -0
- package/lib/components/VSheet/index.mjs.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/components/VSkeletonLoader/index.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.css +0 -5
- package/lib/components/VSlideGroup/VSlideGroup.mjs +105 -74
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.sass +0 -5
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs +10 -4
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlideGroup/_variables.scss +0 -5
- package/lib/components/VSlideGroup/helpers.mjs +4 -15
- package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +151 -0
- package/lib/components/VSlideGroup/index.mjs +2 -2
- package/lib/components/VSlideGroup/index.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.css +14 -4
- package/lib/components/VSlider/VSlider.mjs +17 -9
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSlider.sass +17 -9
- package/lib/components/VSlider/VSliderThumb.css +10 -6
- package/lib/components/VSlider/VSliderThumb.mjs +9 -8
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.sass +11 -10
- package/lib/components/VSlider/VSliderTrack.css +25 -25
- package/lib/components/VSlider/VSliderTrack.mjs +22 -16
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.sass +20 -22
- package/lib/components/VSlider/_variables.scss +7 -4
- package/lib/components/VSlider/index.d.ts +239 -0
- package/lib/components/VSlider/index.mjs.map +1 -1
- package/lib/components/VSlider/slider.mjs +15 -25
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.css +22 -40
- package/lib/components/VSnackbar/VSnackbar.mjs +70 -50
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.sass +15 -35
- package/lib/components/VSnackbar/_variables.scss +3 -7
- package/lib/components/VSnackbar/index.d.ts +892 -0
- package/lib/components/VSnackbar/index.mjs.map +1 -1
- package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
- package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
- package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VSpeedDial/index.mjs.map +1 -1
- package/lib/components/VStepper/VStepper.mjs.map +1 -1
- package/lib/components/VStepper/VStepperContent.mjs.map +1 -1
- package/lib/components/VStepper/VStepperStep.mjs.map +1 -1
- package/lib/components/VStepper/index.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.css +9 -2
- package/lib/components/VSwitch/VSwitch.mjs +15 -6
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.sass +6 -1
- package/lib/components/VSwitch/_variables.scss +1 -0
- package/lib/components/VSwitch/index.d.ts +175 -0
- package/lib/components/VSwitch/index.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.css +1 -6
- package/lib/components/VSystemBar/VSystemBar.mjs +22 -17
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.sass +0 -6
- package/lib/components/VSystemBar/_variables.scss +2 -4
- package/lib/components/VSystemBar/index.d.ts +61 -0
- package/lib/components/VSystemBar/index.mjs.map +1 -1
- package/lib/components/VTable/VTable.css +1 -0
- package/lib/components/VTable/VTable.mjs +9 -8
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/VTable.sass +1 -1
- package/lib/components/VTable/_variables.scss +2 -0
- package/lib/components/VTable/index.d.ts +39 -0
- package/lib/components/VTable/index.mjs.map +1 -1
- package/lib/components/VTabs/VTab.css +6 -3
- package/lib/components/VTabs/VTab.mjs +34 -36
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTab.sass +7 -4
- package/lib/components/VTabs/VTabs.css +16 -13
- package/lib/components/VTabs/VTabs.mjs +17 -15
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.sass +11 -8
- package/lib/components/VTabs/_variables.scss +2 -0
- package/lib/components/VTabs/index.d.ts +178 -0
- package/lib/components/VTabs/index.mjs.map +1 -1
- package/lib/components/VTabs/shared.mjs +2 -0
- package/lib/components/VTabs/shared.mjs.map +1 -0
- package/lib/components/VTextField/VTextField.css +5 -5
- package/lib/components/VTextField/VTextField.mjs +42 -37
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/VTextField.sass +5 -7
- package/lib/components/VTextField/_variables.scss +1 -1
- package/lib/components/VTextField/index.d.ts +582 -0
- package/lib/components/VTextField/index.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.css +14 -5
- package/lib/components/VTextarea/VTextarea.mjs +47 -26
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.sass +18 -8
- package/lib/components/VTextarea/_variables.scss +1 -1
- package/lib/components/VTextarea/index.d.ts +218 -0
- package/lib/components/VTextarea/index.mjs.map +1 -1
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VThemeProvider/index.d.ts +24 -0
- package/lib/components/VThemeProvider/index.mjs.map +1 -1
- package/lib/components/VTimePicker/SelectingTimes.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePicker.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePickerClock.mjs.map +1 -1
- package/lib/components/VTimePicker/VTimePickerTitle.mjs.map +1 -1
- package/lib/components/VTimePicker/index.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.css +241 -55
- package/lib/components/VTimeline/VTimeline.mjs +52 -32
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimeline.sass +251 -57
- package/lib/components/VTimeline/VTimelineDivider.mjs +45 -37
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +17 -15
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/_mixins.sass +10 -0
- package/lib/components/VTimeline/_variables.scss +16 -9
- package/lib/components/VTimeline/index.d.ts +154 -0
- package/lib/components/VTimeline/index.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.css +24 -33
- package/lib/components/VToolbar/VToolbar.mjs +32 -31
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.sass +17 -19
- package/lib/components/VToolbar/VToolbarItems.mjs +12 -9
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/_variables.scss +20 -8
- package/lib/components/VToolbar/index.d.ts +414 -0
- package/lib/components/VToolbar/index.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.mjs +48 -41
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.sass +0 -1
- package/lib/components/VTooltip/_variables.scss +1 -0
- package/lib/components/VTooltip/index.d.ts +799 -0
- package/lib/components/VTooltip/index.mjs.map +1 -1
- package/lib/components/VTreeview/VTreeview.mjs +1 -3
- package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VValidation/VValidation.mjs.map +1 -1
- package/lib/components/VValidation/index.d.ts +61 -0
- package/lib/components/VValidation/index.mjs.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.mjs.map +1 -1
- package/lib/components/VWindow/VWindow.mjs +7 -21
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindow.sass +0 -2
- package/lib/components/VWindow/VWindowItem.mjs +21 -11
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/VWindow/_variables.scss +1 -0
- package/lib/components/VWindow/index.d.ts +428 -0
- package/lib/components/VWindow/index.mjs.map +1 -1
- package/lib/components/index.d.ts +14675 -12342
- package/lib/components/index.mjs.map +1 -1
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- package/lib/components/transitions/dialog-transition.mjs +66 -10
- package/lib/components/transitions/dialog-transition.mjs.map +1 -1
- package/lib/components/transitions/expand-transition.mjs.map +1 -1
- package/lib/components/transitions/index.d.ts +454 -0
- package/lib/components/transitions/index.mjs +0 -5
- package/lib/components/transitions/index.mjs.map +1 -1
- package/lib/composables/border.mjs +5 -6
- package/lib/composables/border.mjs.map +1 -1
- package/lib/composables/color.mjs +19 -26
- package/lib/composables/color.mjs.map +1 -1
- package/lib/composables/defaults.mjs +2 -2
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/delay.mjs +1 -3
- package/lib/composables/delay.mjs.map +1 -1
- package/lib/composables/density.mjs.map +1 -1
- package/lib/composables/dimensions.mjs.map +1 -1
- package/lib/composables/display.mjs +12 -10
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/elevation.mjs.map +1 -1
- package/lib/composables/filter.mjs +35 -17
- package/lib/composables/filter.mjs.map +1 -1
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/form.mjs +44 -11
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs +72 -0
- package/lib/composables/forwardRefs.mjs.map +1 -0
- package/lib/composables/group.mjs +16 -12
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/hydration.mjs.map +1 -1
- package/lib/composables/icons.mjs +16 -4
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/index.mjs +3 -2
- package/lib/composables/index.mjs.map +1 -1
- package/lib/composables/intersectionObserver.mjs.map +1 -1
- package/lib/composables/items.mjs +84 -0
- package/lib/composables/items.mjs.map +1 -0
- package/lib/composables/layout.mjs +24 -24
- package/lib/composables/layout.mjs.map +1 -1
- package/lib/composables/lazy.mjs.map +1 -1
- package/lib/composables/loader.mjs.map +1 -1
- package/lib/composables/locale.mjs +21 -25
- package/lib/composables/locale.mjs.map +1 -1
- package/lib/composables/location.mjs +66 -0
- package/lib/composables/location.mjs.map +1 -0
- package/lib/composables/mutationObserver.mjs +4 -6
- package/lib/composables/mutationObserver.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs +34 -22
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/openStrategies.mjs +63 -36
- package/lib/composables/nested/openStrategies.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs +163 -122
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/position.mjs +4 -25
- package/lib/composables/position.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +29 -10
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/refs.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs +1 -9
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/composables/rounded.mjs.map +1 -1
- package/lib/composables/router.mjs +39 -17
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/rtl.mjs +2 -4
- package/lib/composables/rtl.mjs.map +1 -1
- package/lib/composables/scopeId.mjs +11 -0
- package/lib/composables/scopeId.mjs.map +1 -0
- package/lib/composables/scroll.mjs +1 -3
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/composables/selectLink.mjs +19 -0
- package/lib/composables/selectLink.mjs.map +1 -0
- package/lib/composables/size.mjs +18 -14
- package/lib/composables/size.mjs.map +1 -1
- package/lib/composables/ssrBoot.mjs +3 -2
- package/lib/composables/ssrBoot.mjs.map +1 -1
- package/lib/composables/stack.mjs +37 -23
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/tag.mjs.map +1 -1
- package/lib/composables/teleport.mjs.map +1 -1
- package/lib/composables/theme.mjs +123 -112
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/toggleScope.mjs +18 -0
- package/lib/composables/toggleScope.mjs.map +1 -0
- package/lib/composables/touch.mjs +1 -3
- package/lib/composables/touch.mjs.map +1 -1
- package/lib/composables/transition.mjs.map +1 -1
- package/lib/composables/validation.mjs +24 -10
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/composables/variant.mjs +7 -8
- package/lib/composables/variant.mjs.map +1 -1
- package/lib/directives/click-outside/index.mjs.map +1 -1
- package/lib/directives/color/index.mjs.map +1 -1
- package/lib/directives/index.mjs.map +1 -1
- package/lib/directives/intersect/index.mjs.map +1 -1
- package/lib/directives/mutate/index.mjs +4 -6
- package/lib/directives/mutate/index.mjs.map +1 -1
- package/lib/directives/resize/index.mjs.map +1 -1
- package/lib/directives/ripple/VRipple.sass +0 -1
- package/lib/directives/ripple/index.mjs +16 -6
- package/lib/directives/ripple/index.mjs.map +1 -1
- package/lib/directives/scroll/index.mjs +1 -3
- package/lib/directives/scroll/index.mjs.map +1 -1
- package/lib/directives/touch/index.mjs +3 -3
- package/lib/directives/touch/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +2 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +59 -47
- package/lib/framework.mjs.map +1 -1
- package/lib/iconsets/fa-svg.d.ts +2 -1
- package/lib/iconsets/fa-svg.mjs.map +1 -1
- package/lib/iconsets/fa.d.ts +2 -1
- package/lib/iconsets/fa.mjs.map +1 -1
- package/lib/iconsets/fa4.d.ts +2 -1
- package/lib/iconsets/fa4.mjs.map +1 -1
- package/lib/iconsets/md.d.ts +2 -1
- package/lib/iconsets/md.mjs.map +1 -1
- package/lib/iconsets/mdi-svg.d.ts +2 -1
- package/lib/iconsets/mdi-svg.mjs.map +1 -1
- package/lib/iconsets/mdi.d.ts +2 -1
- package/lib/iconsets/mdi.mjs.map +1 -1
- package/lib/index.d.ts +158 -130
- package/lib/locale/adapters/vue-i18n.d.ts +35 -0
- package/lib/locale/adapters/vue-i18n.mjs +1 -3
- package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
- package/lib/locale/adapters/vue-intl.d.ts +42 -0
- package/lib/locale/adapters/vue-intl.mjs +3 -5
- package/lib/locale/adapters/vue-intl.mjs.map +1 -1
- package/lib/locale/af.mjs +5 -0
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs +5 -0
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs +5 -0
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs +5 -0
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs +14 -9
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs +5 -0
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs +5 -0
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs +5 -0
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs +5 -0
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs +5 -0
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs +5 -0
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs +5 -0
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs +5 -0
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs +5 -0
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs +5 -0
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs +5 -0
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs +5 -0
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs +5 -0
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs +5 -0
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs +5 -0
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.ts +210 -0
- package/lib/locale/index.mjs.map +1 -1
- package/lib/locale/it.mjs +5 -0
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs +5 -0
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/ko.mjs +5 -0
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs +5 -0
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs +5 -0
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs +5 -0
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs +5 -0
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +5 -0
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs +5 -0
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs +5 -0
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs +5 -0
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs +5 -0
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs +5 -0
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs +5 -0
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs +5 -0
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs +5 -0
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs +5 -0
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs +5 -0
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs +5 -0
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs +5 -0
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs +5 -0
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs +5 -0
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/services/goto/easing-patterns.mjs.map +1 -1
- package/lib/services/goto/index.mjs.map +1 -1
- package/lib/services/goto/util.mjs.map +1 -1
- package/lib/styles/generic/_colors.scss +17 -10
- package/lib/styles/generic/_transitions.scss +13 -77
- package/lib/styles/main.css +1677 -1919
- package/lib/styles/settings/_colors.scss +84 -84
- package/lib/styles/settings/_elevations.scss +3 -3
- package/lib/styles/settings/_utilities.scss +74 -35
- package/lib/styles/tools/_states.sass +18 -5
- package/lib/styles/tools/_utilities.sass +1 -1
- package/lib/styles/tools/_variant.sass +6 -7
- package/lib/styles/utilities/_index.sass +0 -1
- package/lib/util/anchor.mjs +56 -0
- package/lib/util/anchor.mjs.map +1 -0
- package/lib/util/animation.mjs +18 -2
- package/lib/util/animation.mjs.map +1 -1
- package/lib/util/box.mjs +12 -0
- package/lib/util/box.mjs.map +1 -1
- package/lib/util/color/APCA.mjs.map +1 -1
- package/lib/util/color/transformCIELAB.mjs.map +1 -1
- package/lib/util/color/transformSRGB.mjs.map +1 -1
- package/lib/util/colorUtils.mjs +2 -2
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/colors.mjs +1 -1
- package/lib/util/colors.mjs.map +1 -1
- package/lib/util/console.mjs.map +1 -1
- package/lib/util/createSimpleFunctional.mjs +1 -1
- package/lib/util/createSimpleFunctional.mjs.map +1 -1
- package/lib/util/dateTimeUtils.mjs.map +1 -1
- package/lib/util/defineComponent.mjs +37 -11
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/dom.mjs.map +1 -1
- package/lib/util/easing.mjs.map +1 -1
- package/lib/util/getCurrentInstance.mjs +22 -4
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/getScrollParent.mjs +3 -1
- package/lib/util/getScrollParent.mjs.map +1 -1
- package/lib/util/globals.mjs +1 -4
- package/lib/util/globals.mjs.map +1 -1
- package/lib/util/helpers.mjs +37 -7
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/index.mjs +1 -0
- package/lib/util/index.mjs.map +1 -1
- package/lib/util/injectSelf.mjs +12 -0
- package/lib/util/injectSelf.mjs.map +1 -0
- package/lib/util/isFixedPosition.mjs.map +1 -1
- package/lib/util/propsFactory.mjs.map +1 -1
- package/lib/util/useRender.mjs.map +1 -1
- package/package.json +50 -35
- package/lib/components/VBreadcrumbs/shared.mjs +0 -2
- package/lib/components/VBreadcrumbs/shared.mjs.map +0 -1
- package/lib/components/VCard/VCardAvatar.mjs +0 -3
- package/lib/components/VCard/VCardAvatar.mjs.map +0 -1
- package/lib/components/VCard/VCardHeader.mjs +0 -3
- package/lib/components/VCard/VCardHeader.mjs.map +0 -1
- package/lib/components/VCard/VCardHeaderText.mjs +0 -3
- package/lib/components/VCard/VCardHeaderText.mjs.map +0 -1
- package/lib/components/VCard/VCardImg.mjs +0 -3
- package/lib/components/VCard/VCardImg.mjs.map +0 -1
- package/lib/components/VList/VListItemAvatar.mjs +0 -29
- package/lib/components/VList/VListItemAvatar.mjs.map +0 -1
- package/lib/components/VList/VListItemHeader.mjs +0 -3
- package/lib/components/VList/VListItemHeader.mjs.map +0 -1
- package/lib/components/VOverlay/positionStrategies.mjs +0 -203
- package/lib/components/VOverlay/positionStrategies.mjs.map +0 -1
- package/lib/components/VOverlay/util/anchor.mjs +0 -52
- package/lib/components/VOverlay/util/anchor.mjs.map +0 -1
- package/lib/components/VTimeline/shared.mjs +0 -2
- package/lib/components/VTimeline/shared.mjs.map +0 -1
- package/lib/composables/forwardRef.mjs +0 -42
- package/lib/composables/forwardRef.mjs.map +0 -1
- package/lib/composables/overlay.mjs +0 -30
- package/lib/composables/overlay.mjs.map +0 -1
- package/lib/presets/default/index.mjs +0 -71
- package/lib/presets/default/index.mjs.map +0 -1
- package/lib/styles/utilities/_text.sass +0 -9
- package/lib/styles.scss +0 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/composables/group.ts"],"names":["useProxiedModel","computed","inject","onBeforeUnmount","onMounted","provide","reactive","toRef","consoleWarn","deepEqual","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","wrapInArray","makeGroupProps","modelValue","type","default","undefined","multiple","Boolean","mandatory","String","max","Number","selectedClass","disabled","makeGroupItemProps","value","useGroupItem","props","injectKey","required","vm","Error","id","Symbol","for","description","group","register","unregister","isSelected","toggle","select","useGroup","isUnmounted","items","selected","v","getIds","arr","getValues","groupVm","item","unwrapped","key","children","vnode","index","indexOf","splice","push","forceMandatoryValue","findIndex","find","length","internalValue","slice","includes","step","offset","currentId","currentIndex","i","newIndex","newItem","state","prev","next","ids","values"],"mappings":"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","sourcesContent":["// Composables\nimport { useProxiedModel } from './proxiedModel'\n\n// Utilities\nimport { computed, inject, onBeforeUnmount, onMounted, provide, reactive, toRef } from 'vue'\nimport { consoleWarn, deepEqual, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, ComputedRef, ExtractPropTypes, InjectionKey, PropType, Ref, UnwrapRef } from 'vue'\n\nexport interface GroupItem {\n id: number\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n}\n\nexport interface GroupProps {\n disabled: boolean\n modelValue: unknown\n multiple?: boolean\n mandatory?: boolean | 'force' | undefined\n max?: number | undefined\n selectedClass: string | undefined\n 'onUpdate:modelValue': ((val: unknown) => void) | undefined\n}\n\nexport interface GroupProvide {\n register: (item: GroupItem, cmp: ComponentInternalInstance) => void\n unregister: (id: number) => void\n select: (id: number, value: boolean) => void\n selected: Ref<any[]>\n isSelected: (id: number) => boolean\n prev: () => void\n next: () => void\n selectedClass: Ref<string | undefined>\n items: ComputedRef<{\n id: number\n value: unknown\n disabled: boolean | undefined\n }[]>\n disabled: Ref<boolean | undefined>\n}\n\nexport interface GroupItemProvide {\n id: number\n isSelected: Ref<boolean>\n toggle: () => void\n select: (value: boolean) => void\n selectedClass: Ref<string | false | undefined>\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n group: GroupProvide\n}\n\nexport const makeGroupProps = propsFactory({\n modelValue: {\n type: null,\n default: undefined,\n },\n multiple: Boolean,\n mandatory: [Boolean, String] as PropType<boolean | 'force'>,\n max: Number,\n selectedClass: String,\n disabled: Boolean,\n}, 'group')\n\nexport const makeGroupItemProps = propsFactory({\n value: null,\n disabled: Boolean,\n selectedClass: String,\n}, 'group-item')\n\nexport type GroupItemProps = ExtractPropTypes<ReturnType<typeof makeGroupItemProps>>\n\n// Composables\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required?: true,\n): GroupItemProvide\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required: false,\n): GroupItemProvide | null\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required = true,\n): GroupItemProvide | null {\n const vm = getCurrentInstance('useGroupItem')\n\n if (!vm) {\n throw new Error(\n '[Vuetify] useGroupItem composable must be used inside a component setup function'\n )\n }\n\n const id = getUid()\n\n provide(Symbol.for(`${injectKey.description}:id`), id)\n\n const group = inject(injectKey, null)\n\n if (!group) {\n if (!required) return group\n\n throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${injectKey.description}`)\n }\n\n const value = toRef(props, 'value')\n const disabled = computed(() => group.disabled.value || props.disabled)\n\n group.register({\n id,\n value,\n disabled,\n }, vm)\n\n onBeforeUnmount(() => {\n group.unregister(id)\n })\n\n const isSelected = computed(() => {\n return group.isSelected(id)\n })\n\n const selectedClass = computed(() => isSelected.value && (group.selectedClass.value ?? props.selectedClass))\n\n return {\n id,\n isSelected,\n toggle: () => group.select(id, !isSelected.value),\n select: (value: boolean) => group.select(id, value),\n selectedClass,\n value,\n disabled,\n group,\n }\n}\n\nexport function useGroup (\n props: GroupProps,\n injectKey: InjectionKey<GroupProvide>\n) {\n let isUnmounted = false\n const items = reactive<GroupItem[]>([])\n const selected = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => {\n if (v == null) return []\n\n return getIds(items, wrapInArray(v))\n },\n v => {\n const arr = getValues(items, v)\n\n return props.multiple ? arr : arr[0]\n }\n )\n\n const groupVm = getCurrentInstance('useGroup')\n\n function register (item: GroupItem, vm: ComponentInternalInstance) {\n // Is there a better way to fix this typing?\n const unwrapped = item as unknown as UnwrapRef<GroupItem>\n\n const key = Symbol.for(`${injectKey.description}:id`)\n const children = findChildrenWithProvide(key, groupVm?.vnode)\n const index = children.indexOf(vm)\n\n if (index > -1) {\n items.splice(index, 0, unwrapped)\n } else {\n items.push(unwrapped)\n }\n }\n\n function unregister (id: number) {\n if (isUnmounted) return\n\n // TODO: re-evaluate this line's importance in the future\n // should we only modify the model if mandatory is set.\n // selected.value = selected.value.filter(v => v !== id)\n\n forceMandatoryValue()\n\n const index = items.findIndex(item => item.id === id)\n items.splice(index, 1)\n }\n\n // If mandatory and nothing is selected, then select first non-disabled item\n function forceMandatoryValue () {\n const item = items.find(item => !item.disabled)\n if (item && props.mandatory === 'force' && !selected.value.length) {\n selected.value = [item.id]\n }\n }\n\n onMounted(() => {\n forceMandatoryValue()\n })\n\n onBeforeUnmount(() => {\n isUnmounted = true\n })\n\n function select (id: number, value?: boolean) {\n const item = items.find(item => item.id === id)\n if (value && item?.disabled) return\n\n if (props.multiple) {\n const internalValue = selected.value.slice()\n const index = internalValue.findIndex(v => v === id)\n const isSelected = ~index\n value = value ?? !isSelected\n\n // We can't remove value if group is\n // mandatory, value already exists,\n // and it is the only value\n if (\n isSelected &&\n props.mandatory &&\n internalValue.length <= 1\n ) return\n\n // We can't add value if it would\n // cause max limit to be exceeded\n if (\n !isSelected &&\n props.max != null &&\n internalValue.length + 1 > props.max\n ) return\n\n if (index < 0 && value) internalValue.push(id)\n else if (index >= 0 && !value) internalValue.splice(index, 1)\n\n selected.value = internalValue\n } else {\n const isSelected = selected.value.includes(id)\n if (props.mandatory && isSelected) return\n\n selected.value = (value ?? !isSelected) ? [id] : []\n }\n }\n\n function step (offset: number) {\n // getting an offset from selected value obviously won't work with multiple values\n if (props.multiple) consoleWarn('This method is not supported when using \"multiple\" prop')\n\n if (!selected.value.length) {\n const item = items.find(item => !item.disabled)\n item && (selected.value = [item.id])\n } else {\n const currentId = selected.value[0]\n const currentIndex = items.findIndex(i => i.id === currentId)\n\n let newIndex = (currentIndex + offset) % items.length\n let newItem = items[newIndex]\n\n while (newItem.disabled && newIndex !== currentIndex) {\n newIndex = (newIndex + offset) % items.length\n newItem = items[newIndex]\n }\n\n if (newItem.disabled) return\n\n selected.value = [items[newIndex].id]\n }\n }\n\n const state = {\n register,\n unregister,\n selected,\n select,\n disabled: toRef(props, 'disabled'),\n prev: () => step(items.length - 1),\n next: () => step(1),\n isSelected: (id: number) => selected.value.includes(id),\n selectedClass: computed(() => props.selectedClass),\n items: computed(() => items),\n }\n\n provide(injectKey, state)\n\n return state\n}\n\nfunction getIds (items: UnwrapRef<GroupItem[]>, modelValue: any[]) {\n const ids = []\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (item.value != null) {\n if (modelValue.find(value => deepEqual(value, item.value)) != null) {\n ids.push(item.id)\n }\n } else if (modelValue.includes(i)) {\n ids.push(item.id)\n }\n }\n\n return ids\n}\n\nfunction getValues (items: UnwrapRef<GroupItem[]>, ids: any[]) {\n const values = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (ids.includes(item.id)) {\n values.push(item.value != null ? item.value : i)\n }\n }\n\n return values\n}\n"],"file":"group.mjs"}
|
|
1
|
+
{"version":3,"file":"group.mjs","names":["useProxiedModel","computed","inject","onBeforeUnmount","onMounted","provide","reactive","toRef","watch","consoleWarn","deepEqual","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","wrapInArray","makeGroupProps","modelValue","type","default","undefined","multiple","Boolean","mandatory","String","max","Number","selectedClass","disabled","makeGroupItemProps","value","useGroupItem","props","injectKey","required","vm","Error","id","Symbol","for","description","group","register","unregister","isSelected","emit","toggle","select","useGroup","isUnmounted","items","selected","v","getIds","arr","getValues","groupVm","item","unwrapped","key","children","vnode","index","indexOf","splice","push","forceMandatoryValue","findIndex","find","length","internalValue","slice","includes","step","offset","currentId","currentIndex","i","newIndex","newItem","state","prev","next","getItemIndex","ids","values"],"sources":["../../src/composables/group.ts"],"sourcesContent":["// Composables\nimport { useProxiedModel } from './proxiedModel'\n\n// Utilities\nimport { computed, inject, onBeforeUnmount, onMounted, provide, reactive, toRef, watch } from 'vue'\nimport { consoleWarn, deepEqual, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory, wrapInArray } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, ComputedRef, ExtractPropTypes, InjectionKey, PropType, Ref, UnwrapRef } from 'vue'\n\nexport interface GroupItem {\n id: number\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n}\n\nexport interface GroupProps {\n disabled: boolean\n modelValue: unknown\n multiple?: boolean\n mandatory?: boolean | 'force' | undefined\n max?: number | undefined\n selectedClass: string | undefined\n 'onUpdate:modelValue': ((val: unknown) => void) | undefined\n}\n\nexport interface GroupProvide {\n register: (item: GroupItem, cmp: ComponentInternalInstance) => void\n unregister: (id: number) => void\n select: (id: number, value: boolean) => void\n selected: Ref<Readonly<number[]>>\n isSelected: (id: number) => boolean\n prev: () => void\n next: () => void\n selectedClass: Ref<string | undefined>\n items: ComputedRef<{\n id: number\n value: unknown\n disabled: boolean | undefined\n }[]>\n disabled: Ref<boolean | undefined>\n getItemIndex: (value: unknown) => number\n}\n\nexport interface GroupItemProvide {\n id: number\n isSelected: Ref<boolean>\n toggle: () => void\n select: (value: boolean) => void\n selectedClass: Ref<(string | undefined)[] | false>\n value: Ref<unknown>\n disabled: Ref<boolean | undefined>\n group: GroupProvide\n}\n\nexport const makeGroupProps = propsFactory({\n modelValue: {\n type: null,\n default: undefined,\n },\n multiple: Boolean,\n mandatory: [Boolean, String] as PropType<boolean | 'force'>,\n max: Number,\n selectedClass: String,\n disabled: Boolean,\n}, 'group')\n\nexport const makeGroupItemProps = propsFactory({\n value: null,\n disabled: Boolean,\n selectedClass: String,\n}, 'group-item')\n\nexport interface GroupItemProps extends ExtractPropTypes<ReturnType<typeof makeGroupItemProps>> {\n 'onGroup:selected': ((val: { value: boolean }) => void) | undefined\n}\n\n// Composables\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required?: true,\n): GroupItemProvide\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required: false,\n): GroupItemProvide | null\nexport function useGroupItem (\n props: GroupItemProps,\n injectKey: InjectionKey<GroupProvide>,\n required = true,\n): GroupItemProvide | null {\n const vm = getCurrentInstance('useGroupItem')\n\n if (!vm) {\n throw new Error(\n '[Vuetify] useGroupItem composable must be used inside a component setup function'\n )\n }\n\n const id = getUid()\n\n provide(Symbol.for(`${injectKey.description}:id`), id)\n\n const group = inject(injectKey, null)\n\n if (!group) {\n if (!required) return group\n\n throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${injectKey.description}`)\n }\n\n const value = toRef(props, 'value')\n const disabled = computed(() => group.disabled.value || props.disabled)\n\n group.register({\n id,\n value,\n disabled,\n }, vm)\n\n onBeforeUnmount(() => {\n group.unregister(id)\n })\n\n const isSelected = computed(() => {\n return group.isSelected(id)\n })\n\n const selectedClass = computed(() => isSelected.value && [group.selectedClass.value, props.selectedClass])\n\n watch(isSelected, value => {\n vm.emit('group:selected', { value })\n })\n\n return {\n id,\n isSelected,\n toggle: () => group.select(id, !isSelected.value),\n select: (value: boolean) => group.select(id, value),\n selectedClass,\n value,\n disabled,\n group,\n }\n}\n\nexport function useGroup (\n props: GroupProps,\n injectKey: InjectionKey<GroupProvide>\n) {\n let isUnmounted = false\n const items = reactive<GroupItem[]>([])\n const selected = useProxiedModel(\n props,\n 'modelValue',\n [],\n v => {\n if (v == null) return []\n\n return getIds(items, wrapInArray(v))\n },\n v => {\n const arr = getValues(items, v)\n\n return props.multiple ? arr : arr[0]\n }\n )\n\n const groupVm = getCurrentInstance('useGroup')\n\n function register (item: GroupItem, vm: ComponentInternalInstance) {\n // Is there a better way to fix this typing?\n const unwrapped = item as unknown as UnwrapRef<GroupItem>\n\n const key = Symbol.for(`${injectKey.description}:id`)\n const children = findChildrenWithProvide(key, groupVm?.vnode)\n const index = children.indexOf(vm)\n\n if (index > -1) {\n items.splice(index, 0, unwrapped)\n } else {\n items.push(unwrapped)\n }\n }\n\n function unregister (id: number) {\n if (isUnmounted) return\n\n // TODO: re-evaluate this line's importance in the future\n // should we only modify the model if mandatory is set.\n // selected.value = selected.value.filter(v => v !== id)\n\n forceMandatoryValue()\n\n const index = items.findIndex(item => item.id === id)\n items.splice(index, 1)\n }\n\n // If mandatory and nothing is selected, then select first non-disabled item\n function forceMandatoryValue () {\n const item = items.find(item => !item.disabled)\n if (item && props.mandatory === 'force' && !selected.value.length) {\n selected.value = [item.id]\n }\n }\n\n onMounted(() => {\n forceMandatoryValue()\n })\n\n onBeforeUnmount(() => {\n isUnmounted = true\n })\n\n function select (id: number, value?: boolean) {\n const item = items.find(item => item.id === id)\n if (value && item?.disabled) return\n\n if (props.multiple) {\n const internalValue = selected.value.slice()\n const index = internalValue.findIndex(v => v === id)\n const isSelected = ~index\n value = value ?? !isSelected\n\n // We can't remove value if group is\n // mandatory, value already exists,\n // and it is the only value\n if (\n isSelected &&\n props.mandatory &&\n internalValue.length <= 1\n ) return\n\n // We can't add value if it would\n // cause max limit to be exceeded\n if (\n !isSelected &&\n props.max != null &&\n internalValue.length + 1 > props.max\n ) return\n\n if (index < 0 && value) internalValue.push(id)\n else if (index >= 0 && !value) internalValue.splice(index, 1)\n\n selected.value = internalValue\n } else {\n const isSelected = selected.value.includes(id)\n if (props.mandatory && isSelected) return\n\n selected.value = (value ?? !isSelected) ? [id] : []\n }\n }\n\n function step (offset: number) {\n // getting an offset from selected value obviously won't work with multiple values\n if (props.multiple) consoleWarn('This method is not supported when using \"multiple\" prop')\n\n if (!selected.value.length) {\n const item = items.find(item => !item.disabled)\n item && (selected.value = [item.id])\n } else {\n const currentId = selected.value[0]\n const currentIndex = items.findIndex(i => i.id === currentId)\n\n let newIndex = (currentIndex + offset) % items.length\n let newItem = items[newIndex]\n\n while (newItem.disabled && newIndex !== currentIndex) {\n newIndex = (newIndex + offset) % items.length\n newItem = items[newIndex]\n }\n\n if (newItem.disabled) return\n\n selected.value = [items[newIndex].id]\n }\n }\n\n const state: GroupProvide = {\n register,\n unregister,\n selected,\n select,\n disabled: toRef(props, 'disabled'),\n prev: () => step(items.length - 1),\n next: () => step(1),\n isSelected: (id: number) => selected.value.includes(id),\n selectedClass: computed(() => props.selectedClass),\n items: computed(() => items),\n getItemIndex: (value: unknown) => getItemIndex(items, value),\n }\n\n provide(injectKey, state)\n\n return state\n}\n\nfunction getItemIndex (items: UnwrapRef<GroupItem[]>, value: unknown) {\n const ids = getIds(items, [value])\n\n if (!ids.length) return -1\n\n return items.findIndex(item => item.id === ids[0])\n}\n\nfunction getIds (items: UnwrapRef<GroupItem[]>, modelValue: any[]) {\n const ids = []\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (item.value != null) {\n if (modelValue.find(value => deepEqual(value, item.value)) != null) {\n ids.push(item.id)\n }\n } else if (modelValue.includes(i)) {\n ids.push(item.id)\n }\n }\n\n return ids\n}\n\nfunction getValues (items: UnwrapRef<GroupItem[]>, ids: any[]) {\n const values = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n\n if (ids.includes(item.id)) {\n values.push(item.value != null ? item.value : i)\n }\n }\n\n return values\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"hydration.mjs","names":["getCurrentInstance","IN_BROWSER","onMounted","useHydration","callback","vm","rootEl","root","appContext","app","_container","__vue_app__"],"sources":["../../src/composables/hydration.ts"],"sourcesContent":["// Utilities\nimport { getCurrentInstance, IN_BROWSER } from '@/util'\nimport { onMounted } from 'vue'\n\nexport function useHydration (callback: () => void) {\n if (!IN_BROWSER) return\n\n const vm = getCurrentInstance('useHydration')\n const rootEl = vm?.root?.appContext?.app?._container\n\n return rootEl?.__vue_app__ ? callback() : onMounted(callback)\n}\n"],"mappings":"AAAA;SACSA,kB,EAAoBC,U;AAC7B,SAASC,SAAT,QAA0B,KAA1B;AAEA,OAAO,SAASC,YAAT,CAAuBC,QAAvB,EAA6C;EAAA;;EAClD,IAAI,CAACH,UAAL,EAAiB;EAEjB,MAAMI,EAAE,GAAGL,kBAAkB,CAAC,cAAD,CAA7B;EACA,MAAMM,MAAM,GAAGD,EAAH,gCAAGA,EAAE,CAAEE,IAAP,4CAAG,SAAUC,UAAb,8CAAG,oBAAsBC,GAAzB,qBAAG,sBAA2BC,UAA1C;EAEA,OAAOJ,MAAM,QAAN,IAAAA,MAAM,CAAEK,WAAR,GAAsBP,QAAQ,EAA9B,GAAmCF,SAAS,CAACE,QAAD,CAAnD;AACD"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
|
|
2
|
-
//
|
|
2
|
+
// Icons
|
|
3
|
+
import { aliases, mdi } from "../iconsets/mdi.mjs"; // Utilities
|
|
4
|
+
|
|
3
5
|
import { computed, inject, isRef } from 'vue';
|
|
4
|
-
import { defineComponent, propsFactory } from "../util/index.mjs"; // Types
|
|
6
|
+
import { defineComponent, mergeDeep, propsFactory } from "../util/index.mjs"; // Types
|
|
5
7
|
|
|
8
|
+
export const IconValue = [String, Function, Object];
|
|
6
9
|
export const IconSymbol = Symbol.for('vuetify:icons');
|
|
7
10
|
export const makeIconProps = propsFactory({
|
|
8
11
|
icon: {
|
|
9
|
-
type:
|
|
12
|
+
type: IconValue,
|
|
10
13
|
required: true
|
|
11
14
|
},
|
|
12
15
|
// Could not remove this and use makeTagProps, types complained because it is not required
|
|
@@ -90,6 +93,15 @@ export const defaultSets = {
|
|
|
90
93
|
}
|
|
91
94
|
}; // Composables
|
|
92
95
|
|
|
96
|
+
export function createIcons(options) {
|
|
97
|
+
return mergeDeep({
|
|
98
|
+
defaultSet: 'mdi',
|
|
99
|
+
sets: { ...defaultSets,
|
|
100
|
+
mdi
|
|
101
|
+
},
|
|
102
|
+
aliases
|
|
103
|
+
}, options);
|
|
104
|
+
}
|
|
93
105
|
export const useIcon = props => {
|
|
94
106
|
const icons = inject(IconSymbol);
|
|
95
107
|
if (!icons) throw new Error('Missing Vuetify Icons provide!');
|
|
@@ -115,7 +127,7 @@ export const useIcon = props => {
|
|
|
115
127
|
|
|
116
128
|
const iconSetName = Object.keys(icons.sets).find(setName => typeof icon === 'string' && icon.startsWith(`${setName}:`));
|
|
117
129
|
const iconName = iconSetName ? icon.slice(iconSetName.length + 1) : icon;
|
|
118
|
-
const iconSet = icons.sets[iconSetName
|
|
130
|
+
const iconSet = icons.sets[iconSetName ?? icons.defaultSet];
|
|
119
131
|
return {
|
|
120
132
|
component: iconSet.component,
|
|
121
133
|
icon: iconName
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"icons.mjs","names":["aliases","mdi","computed","inject","isRef","defineComponent","mergeDeep","propsFactory","IconValue","String","Function","Object","IconSymbol","Symbol","for","makeIconProps","icon","type","required","tag","VComponentIcon","name","props","setup","VSvgIcon","inheritAttrs","attrs","VLigatureIcon","VClassIcon","defaultSets","svg","component","class","createIcons","options","defaultSet","sets","useIcon","icons","Error","iconData","iconAlias","value","includes","slice","indexOf","iconSetName","keys","find","setName","startsWith","iconName","length","iconSet"],"sources":["../../src/composables/icons.tsx"],"sourcesContent":["// Icons\nimport { aliases, mdi } from '@/iconsets/mdi'\n\n// Utilities\nimport { computed, inject, isRef } from 'vue'\nimport { defineComponent, mergeDeep, propsFactory } from '@/util'\n\n// Types\nimport type { InjectionKey, JSXComponent, PropType, Ref } from 'vue'\n\nexport type IconValue = string | JSXComponent\nexport const IconValue = [String, Function, Object] as PropType<IconValue>\n\nexport interface IconAliases {\n [name: string]: IconValue\n complete: IconValue\n cancel: IconValue\n close: IconValue\n delete: IconValue\n clear: IconValue\n success: IconValue\n info: IconValue\n warning: IconValue\n error: IconValue\n prev: IconValue\n next: IconValue\n checkboxOn: IconValue\n checkboxOff: IconValue\n checkboxIndeterminate: IconValue\n delimiter: IconValue\n sort: IconValue\n expand: IconValue\n menu: IconValue\n subgroup: IconValue\n dropdown: IconValue\n radioOn: IconValue\n radioOff: IconValue\n edit: IconValue\n ratingEmpty: IconValue\n ratingFull: IconValue\n ratingHalf: IconValue\n loading: IconValue\n first: IconValue\n last: IconValue\n unfold: IconValue\n file: IconValue\n plus: IconValue\n minus: IconValue\n}\n\nexport interface IconProps {\n tag: string\n icon: IconValue\n disabled?: Boolean\n}\n\ntype IconComponent = JSXComponent<IconProps>\n\nexport interface IconSet {\n component: IconComponent\n}\n\nexport type IconOptions = {\n defaultSet: string\n aliases?: Partial<IconAliases>\n sets: Record<string, IconSet>\n}\n\ntype IconInstance = {\n component: IconComponent\n icon: IconValue\n}\n\nexport const IconSymbol: InjectionKey<IconOptions> = Symbol.for('vuetify:icons')\n\nexport const makeIconProps = propsFactory({\n icon: {\n type: IconValue,\n required: true,\n },\n // Could not remove this and use makeTagProps, types complained because it is not required\n tag: {\n type: String,\n required: true,\n },\n}, 'icon')\n\nexport const VComponentIcon = defineComponent({\n name: 'VComponentIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return (\n <props.tag>\n <props.icon />\n </props.tag>\n )\n }\n },\n})\n\nexport const VSvgIcon = defineComponent({\n name: 'VSvgIcon',\n\n inheritAttrs: false,\n\n props: makeIconProps(),\n\n setup (props, { attrs }) {\n return () => {\n return (\n <props.tag { ...attrs } style={ null }>\n <svg\n class=\"v-icon__svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n role=\"img\"\n aria-hidden=\"true\"\n >\n <path d={ props.icon as string }></path>\n </svg>\n </props.tag>\n )\n }\n },\n})\n\nexport const VLigatureIcon = defineComponent({\n name: 'VLigatureIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return <props.tag>{ props.icon }</props.tag>\n }\n },\n})\n\nexport const VClassIcon = defineComponent({\n name: 'VClassIcon',\n\n props: makeIconProps(),\n\n setup (props) {\n return () => {\n return <props.tag class={ props.icon }></props.tag>\n }\n },\n})\n\nexport const defaultSets: Record<string, IconSet> = {\n svg: {\n component: VSvgIcon,\n },\n class: {\n component: VClassIcon,\n },\n}\n\n// Composables\nexport function createIcons (options?: IconOptions) {\n return mergeDeep({\n defaultSet: 'mdi',\n sets: {\n ...defaultSets,\n mdi,\n },\n aliases,\n }, options)\n}\n\nexport const useIcon = (props: Ref<string | undefined> | { icon?: IconValue }) => {\n const icons = inject(IconSymbol)\n\n if (!icons) throw new Error('Missing Vuetify Icons provide!')\n\n const iconData: Ref<IconInstance> = computed(() => {\n const iconAlias = isRef(props) ? props.value : props.icon\n\n if (!iconAlias) throw new Error('Icon value is undefined or null')\n\n let icon: IconValue | undefined = iconAlias\n\n if (typeof iconAlias === 'string' && iconAlias.includes('$')) {\n icon = icons.aliases?.[iconAlias.slice(iconAlias.indexOf('$') + 1)]\n }\n\n if (!icon) throw new Error(`Could not find aliased icon \"${iconAlias}\"`)\n\n if (typeof icon !== 'string') {\n return {\n component: VComponentIcon,\n icon,\n }\n }\n\n const iconSetName = Object.keys(icons.sets).find(\n setName => typeof icon === 'string' && icon.startsWith(`${setName}:`)\n )\n\n const iconName = iconSetName ? icon.slice(iconSetName.length + 1) : icon\n const iconSet = icons.sets[iconSetName ?? icons.defaultSet]\n\n return {\n component: iconSet.component,\n icon: iconName,\n }\n })\n\n return { iconData }\n}\n"],"mappings":";AAAA;SACSA,O,EAASC,G,+BAElB;;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,KAA3B,QAAwC,KAAxC;SACSC,e,EAAiBC,S,EAAWC,Y,6BAErC;;AAIA,OAAO,MAAMC,SAAS,GAAG,CAACC,MAAD,EAASC,QAAT,EAAmBC,MAAnB,CAAlB;AA8DP,OAAO,MAAMC,UAAqC,GAAGC,MAAM,CAACC,GAAP,CAAW,eAAX,CAA9C;AAEP,OAAO,MAAMC,aAAa,GAAGR,YAAY,CAAC;EACxCS,IAAI,EAAE;IACJC,IAAI,EAAET,SADF;IAEJU,QAAQ,EAAE;EAFN,CADkC;EAKxC;EACAC,GAAG,EAAE;IACHF,IAAI,EAAER,MADH;IAEHS,QAAQ,EAAE;EAFP;AANmC,CAAD,EAUtC,MAVsC,CAAlC;AAYP,OAAO,MAAME,cAAc,GAAGf,eAAe,CAAC;EAC5CgB,IAAI,EAAE,gBADsC;EAG5CC,KAAK,EAAEP,aAAa,EAHwB;;EAK5CQ,KAAK,CAAED,KAAF,EAAS;IACZ,OAAO,MAAM;MACX;QAAA;MAAA;IAKD,CAND;EAOD;;AAb2C,CAAD,CAAtC;AAgBP,OAAO,MAAME,QAAQ,GAAGnB,eAAe,CAAC;EACtCgB,IAAI,EAAE,UADgC;EAGtCI,YAAY,EAAE,KAHwB;EAKtCH,KAAK,EAAEP,aAAa,EALkB;;EAOtCQ,KAAK,CAAED,KAAF,QAAoB;IAAA,IAAX;MAAEI;IAAF,CAAW;IACvB,OAAO,MAAM;MACX,2CACkBA,KADlB;QAAA,SACkC;MADlC;QAAA;UAAA,SAGY,aAHZ;UAAA,SAIY,4BAJZ;UAAA,WAKc,WALd;UAAA,QAMW,KANX;UAAA,eAOkB;QAPlB;UAAA,KASgBJ,KAAK,CAACN;QATtB;MAAA;IAaD,CAdD;EAeD;;AAvBqC,CAAD,CAAhC;AA0BP,OAAO,MAAMW,aAAa,GAAGtB,eAAe,CAAC;EAC3CgB,IAAI,EAAE,eADqC;EAG3CC,KAAK,EAAEP,aAAa,EAHuB;;EAK3CQ,KAAK,CAAED,KAAF,EAAS;IACZ,OAAO,MAAM;MACX;QAAA,gBAAoBA,KAAK,CAACN,IAA1B;MAAA;IACD,CAFD;EAGD;;AAT0C,CAAD,CAArC;AAYP,OAAO,MAAMY,UAAU,GAAGvB,eAAe,CAAC;EACxCgB,IAAI,EAAE,YADkC;EAGxCC,KAAK,EAAEP,aAAa,EAHoB;;EAKxCQ,KAAK,CAAED,KAAF,EAAS;IACZ,OAAO,MAAM;MACX;QAAA,SAA0BA,KAAK,CAACN;MAAhC;IACD,CAFD;EAGD;;AATuC,CAAD,CAAlC;AAYP,OAAO,MAAMa,WAAoC,GAAG;EAClDC,GAAG,EAAE;IACHC,SAAS,EAAEP;EADR,CAD6C;EAIlDQ,KAAK,EAAE;IACLD,SAAS,EAAEH;EADN;AAJ2C,CAA7C,C,CASP;;AACA,OAAO,SAASK,WAAT,CAAsBC,OAAtB,EAA6C;EAClD,OAAO5B,SAAS,CAAC;IACf6B,UAAU,EAAE,KADG;IAEfC,IAAI,EAAE,EACJ,GAAGP,WADC;MAEJ5B;IAFI,CAFS;IAMfD;EANe,CAAD,EAObkC,OAPa,CAAhB;AAQD;AAED,OAAO,MAAMG,OAAO,GAAIf,KAAD,IAA2D;EAChF,MAAMgB,KAAK,GAAGnC,MAAM,CAACS,UAAD,CAApB;EAEA,IAAI,CAAC0B,KAAL,EAAY,MAAM,IAAIC,KAAJ,CAAU,gCAAV,CAAN;EAEZ,MAAMC,QAA2B,GAAGtC,QAAQ,CAAC,MAAM;IACjD,MAAMuC,SAAS,GAAGrC,KAAK,CAACkB,KAAD,CAAL,GAAeA,KAAK,CAACoB,KAArB,GAA6BpB,KAAK,CAACN,IAArD;IAEA,IAAI,CAACyB,SAAL,EAAgB,MAAM,IAAIF,KAAJ,CAAU,iCAAV,CAAN;IAEhB,IAAIvB,IAA2B,GAAGyB,SAAlC;;IAEA,IAAI,OAAOA,SAAP,KAAqB,QAArB,IAAiCA,SAAS,CAACE,QAAV,CAAmB,GAAnB,CAArC,EAA8D;MAAA;;MAC5D3B,IAAI,qBAAGsB,KAAK,CAACtC,OAAT,qBAAG,eAAgByC,SAAS,CAACG,KAAV,CAAgBH,SAAS,CAACI,OAAV,CAAkB,GAAlB,IAAyB,CAAzC,CAAhB,CAAP;IACD;;IAED,IAAI,CAAC7B,IAAL,EAAW,MAAM,IAAIuB,KAAJ,CAAW,gCAA+BE,SAAU,GAApD,CAAN;;IAEX,IAAI,OAAOzB,IAAP,KAAgB,QAApB,EAA8B;MAC5B,OAAO;QACLe,SAAS,EAAEX,cADN;QAELJ;MAFK,CAAP;IAID;;IAED,MAAM8B,WAAW,GAAGnC,MAAM,CAACoC,IAAP,CAAYT,KAAK,CAACF,IAAlB,EAAwBY,IAAxB,CAClBC,OAAO,IAAI,OAAOjC,IAAP,KAAgB,QAAhB,IAA4BA,IAAI,CAACkC,UAAL,CAAiB,GAAED,OAAQ,GAA3B,CADrB,CAApB;IAIA,MAAME,QAAQ,GAAGL,WAAW,GAAG9B,IAAI,CAAC4B,KAAL,CAAWE,WAAW,CAACM,MAAZ,GAAqB,CAAhC,CAAH,GAAwCpC,IAApE;IACA,MAAMqC,OAAO,GAAGf,KAAK,CAACF,IAAN,CAAWU,WAAW,IAAIR,KAAK,CAACH,UAAhC,CAAhB;IAEA,OAAO;MACLJ,SAAS,EAAEsB,OAAO,CAACtB,SADd;MAELf,IAAI,EAAEmC;IAFD,CAAP;EAID,CA/B2C,CAA5C;EAiCA,OAAO;IAAEX;EAAF,CAAP;AACD,CAvCM"}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Imports in our code should be to the composable directly, not this file
|
|
4
4
|
*/
|
|
5
5
|
export { useDisplay } from "./display.mjs";
|
|
6
|
-
export { useTheme } from "./theme.mjs";
|
|
7
|
-
export { provideRtl, useRtl } from "./rtl.mjs";
|
|
8
6
|
export { useLayout } from "./layout.mjs";
|
|
7
|
+
export { useLocale } from "./locale.mjs";
|
|
8
|
+
export { provideRtl, useRtl } from "./rtl.mjs";
|
|
9
|
+
export { useTheme } from "./theme.mjs";
|
|
9
10
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["useDisplay","useLayout","useLocale","provideRtl","useRtl","useTheme"],"sources":["../../src/composables/index.ts"],"sourcesContent":["/*\n * PUBLIC INTERFACES ONLY\n * Imports in our code should be to the composable directly, not this file\n */\n\nexport { useDisplay } from './display'\nexport { useLayout } from './layout'\nexport { useLocale } from './locale'\nexport { provideRtl, useRtl } from './rtl'\nexport { useTheme } from './theme'\n\nexport type { DefaultsInstance } from './defaults'\nexport type { DisplayBreakpoint, DisplayInstance, DisplayThresholds } from './display'\nexport type { SubmitEventPromise } from './form'\nexport type { IconAliases, IconProps, IconSet, IconOptions } from './icons'\nexport type { LocaleAdapter, LocaleInstance } from './locale'\nexport type { RtlInstance } from './rtl'\nexport type { ThemeDefinition, ThemeInstance } from './theme'\n"],"mappings":"AAAA;AACA;AACA;AACA;SAESA,U;SACAC,S;SACAC,S;SACAC,U,EAAYC,M;SACZC,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"intersectionObserver.mjs","names":["onBeforeUnmount","ref","watch","SUPPORTS_INTERSECTION","useIntersectionObserver","callback","intersectionRef","isIntersecting","observer","IntersectionObserver","entries","value","find","entry","disconnect","newValue","oldValue","unobserve","observe","flush"],"sources":["../../src/composables/intersectionObserver.ts"],"sourcesContent":["// Utilities\nimport { onBeforeUnmount, ref, watch } from 'vue'\nimport { SUPPORTS_INTERSECTION } from '@/util'\n\nexport function useIntersectionObserver (callback?: IntersectionObserverCallback) {\n const intersectionRef = ref<HTMLElement>()\n const isIntersecting = ref(false)\n\n if (SUPPORTS_INTERSECTION) {\n const observer = new IntersectionObserver((entries: IntersectionObserverEntry[]) => {\n callback?.(entries, observer)\n\n isIntersecting.value = !!entries.find(entry => entry.isIntersecting)\n })\n\n onBeforeUnmount(() => {\n observer.disconnect()\n })\n\n watch(intersectionRef, (newValue, oldValue) => {\n if (oldValue) {\n observer.unobserve(oldValue)\n isIntersecting.value = false\n }\n\n if (newValue) observer.observe(newValue)\n }, {\n flush: 'post',\n })\n }\n\n return { intersectionRef, isIntersecting }\n}\n"],"mappings":"AAAA;AACA,SAASA,eAAT,EAA0BC,GAA1B,EAA+BC,KAA/B,QAA4C,KAA5C;SACSC,qB;AAET,OAAO,SAASC,uBAAT,CAAkCC,QAAlC,EAA2E;EAChF,MAAMC,eAAe,GAAGL,GAAG,EAA3B;EACA,MAAMM,cAAc,GAAGN,GAAG,CAAC,KAAD,CAA1B;;EAEA,IAAIE,qBAAJ,EAA2B;IACzB,MAAMK,QAAQ,GAAG,IAAIC,oBAAJ,CAA0BC,OAAD,IAA0C;MAClFL,QAAQ,QAAR,YAAAA,QAAQ,CAAGK,OAAH,EAAYF,QAAZ,CAAR;MAEAD,cAAc,CAACI,KAAf,GAAuB,CAAC,CAACD,OAAO,CAACE,IAAR,CAAaC,KAAK,IAAIA,KAAK,CAACN,cAA5B,CAAzB;IACD,CAJgB,CAAjB;IAMAP,eAAe,CAAC,MAAM;MACpBQ,QAAQ,CAACM,UAAT;IACD,CAFc,CAAf;IAIAZ,KAAK,CAACI,eAAD,EAAkB,CAACS,QAAD,EAAWC,QAAX,KAAwB;MAC7C,IAAIA,QAAJ,EAAc;QACZR,QAAQ,CAACS,SAAT,CAAmBD,QAAnB;QACAT,cAAc,CAACI,KAAf,GAAuB,KAAvB;MACD;;MAED,IAAII,QAAJ,EAAcP,QAAQ,CAACU,OAAT,CAAiBH,QAAjB;IACf,CAPI,EAOF;MACDI,KAAK,EAAE;IADN,CAPE,CAAL;EAUD;;EAED,OAAO;IAAEb,eAAF;IAAmBC;EAAnB,CAAP;AACD"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// Utilities
|
|
2
|
+
import { computed } from 'vue';
|
|
3
|
+
import { getPropertyFromItem, pick, propsFactory } from "../util/index.mjs"; // Types
|
|
4
|
+
|
|
5
|
+
// Composables
|
|
6
|
+
export const makeItemsProps = propsFactory({
|
|
7
|
+
items: {
|
|
8
|
+
type: Array,
|
|
9
|
+
default: () => []
|
|
10
|
+
},
|
|
11
|
+
itemTitle: {
|
|
12
|
+
type: [String, Array, Function],
|
|
13
|
+
default: 'title'
|
|
14
|
+
},
|
|
15
|
+
itemValue: {
|
|
16
|
+
type: [String, Array, Function],
|
|
17
|
+
default: 'value'
|
|
18
|
+
},
|
|
19
|
+
itemChildren: {
|
|
20
|
+
type: [Boolean, String, Array, Function],
|
|
21
|
+
default: 'children'
|
|
22
|
+
},
|
|
23
|
+
itemProps: {
|
|
24
|
+
type: [Boolean, String, Array, Function],
|
|
25
|
+
default: 'props'
|
|
26
|
+
},
|
|
27
|
+
returnObject: Boolean
|
|
28
|
+
}, 'item');
|
|
29
|
+
export function transformItem(props, item) {
|
|
30
|
+
const title = getPropertyFromItem(item, props.itemTitle, item);
|
|
31
|
+
const value = getPropertyFromItem(item, props.itemValue, title);
|
|
32
|
+
const children = getPropertyFromItem(item, props.itemChildren);
|
|
33
|
+
const itemProps = props.itemProps === true ? typeof item === 'object' && item != null && !Array.isArray(item) ? 'children' in item ? pick(item, ['children'])[1] : item : undefined : getPropertyFromItem(item, props.itemProps);
|
|
34
|
+
const _props = {
|
|
35
|
+
title,
|
|
36
|
+
value,
|
|
37
|
+
...itemProps
|
|
38
|
+
};
|
|
39
|
+
return {
|
|
40
|
+
title: String(_props.title ?? ''),
|
|
41
|
+
value: _props.value,
|
|
42
|
+
props: _props,
|
|
43
|
+
children: Array.isArray(children) ? transformItems(props, children) : undefined,
|
|
44
|
+
raw: item
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export function transformItems(props, items) {
|
|
48
|
+
const array = [];
|
|
49
|
+
|
|
50
|
+
for (const item of items) {
|
|
51
|
+
array.push(transformItem(props, item));
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
return array;
|
|
55
|
+
}
|
|
56
|
+
export function useItems(props) {
|
|
57
|
+
const items = computed(() => transformItems(props, props.items));
|
|
58
|
+
|
|
59
|
+
function transformIn(value) {
|
|
60
|
+
return value.map(item => transformItem(props, item));
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function transformOut(value) {
|
|
64
|
+
if (props.returnObject) return value.map(_ref => {
|
|
65
|
+
let {
|
|
66
|
+
raw: item
|
|
67
|
+
} = _ref;
|
|
68
|
+
return item;
|
|
69
|
+
});
|
|
70
|
+
return value.map(_ref2 => {
|
|
71
|
+
let {
|
|
72
|
+
props
|
|
73
|
+
} = _ref2;
|
|
74
|
+
return props.value;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
return {
|
|
79
|
+
items,
|
|
80
|
+
transformIn,
|
|
81
|
+
transformOut
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=items.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"items.mjs","names":["computed","getPropertyFromItem","pick","propsFactory","makeItemsProps","items","type","Array","default","itemTitle","String","Function","itemValue","itemChildren","Boolean","itemProps","returnObject","transformItem","props","item","title","value","children","isArray","undefined","_props","transformItems","raw","array","push","useItems","transformIn","map","transformOut"],"sources":["../../src/composables/items.ts"],"sourcesContent":["// Utilities\nimport { computed } from 'vue'\nimport { getPropertyFromItem, pick, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { SelectItemKey } from '@/util'\n\nexport interface InternalItem<T = any> {\n title: string\n value: any\n props: {\n [key: string]: any\n title: string\n value: any\n }\n children?: InternalItem[]\n raw: T\n}\n\nexport interface ItemProps {\n items: any[]\n itemTitle: SelectItemKey\n itemValue: SelectItemKey\n itemChildren: SelectItemKey\n itemProps: SelectItemKey\n returnObject: boolean\n}\n\n// Composables\nexport const makeItemsProps = propsFactory({\n items: {\n type: Array as PropType<ItemProps['items']>,\n default: () => ([]),\n },\n itemTitle: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'title',\n },\n itemValue: {\n type: [String, Array, Function] as PropType<SelectItemKey>,\n default: 'value',\n },\n itemChildren: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'children',\n },\n itemProps: {\n type: [Boolean, String, Array, Function] as PropType<SelectItemKey>,\n default: 'props',\n },\n returnObject: Boolean,\n}, 'item')\n\nexport function transformItem (props: Omit<ItemProps, 'items'>, item: any) {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, title)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true\n ? typeof item === 'object' && item != null && !Array.isArray(item)\n ? 'children' in item\n ? pick(item, ['children'])[1]\n : item\n : undefined\n : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n title: String(_props.title ?? ''),\n value: _props.value,\n props: _props,\n children: Array.isArray(children) ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nexport function transformItems (props: Omit<ItemProps, 'items'>, items: ItemProps['items']) {\n const array: InternalItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nexport function useItems (props: ItemProps) {\n const items = computed(() => transformItems(props, props.items))\n\n function transformIn (value: any[]): InternalItem[] {\n return value.map(item => transformItem(props, item))\n }\n\n function transformOut (value: InternalItem[]) {\n if (props.returnObject) return value.map(({ raw: item }) => item)\n return value.map(({ props }) => props.value)\n }\n\n return { items, transformIn, transformOut }\n}\n"],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { computed, inject, onActivated, onBeforeUnmount, onDeactivated, onMounte
|
|
|
5
5
|
import { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from "../util/index.mjs"; // Types
|
|
6
6
|
|
|
7
7
|
export const VuetifyLayoutKey = Symbol.for('vuetify:layout');
|
|
8
|
+
export const VuetifyLayoutItemKey = Symbol.for('vuetify:layout-item');
|
|
8
9
|
const ROOT_ZINDEX = 1000;
|
|
9
10
|
export const makeLayoutProps = propsFactory({
|
|
10
11
|
overlaps: {
|
|
@@ -18,7 +19,7 @@ export const makeLayoutItemProps = propsFactory({
|
|
|
18
19
|
name: {
|
|
19
20
|
type: String
|
|
20
21
|
},
|
|
21
|
-
|
|
22
|
+
order: {
|
|
22
23
|
type: [Number, String],
|
|
23
24
|
default: 0
|
|
24
25
|
},
|
|
@@ -30,12 +31,13 @@ export function useLayout() {
|
|
|
30
31
|
return layout;
|
|
31
32
|
}
|
|
32
33
|
export function useLayoutItem(options) {
|
|
33
|
-
var _options$id;
|
|
34
|
-
|
|
35
34
|
const layout = inject(VuetifyLayoutKey);
|
|
36
35
|
if (!layout) throw new Error('Could not find injected Vuetify layout');
|
|
37
|
-
const id =
|
|
36
|
+
const id = options.id ?? `layout-item-${getUid()}`;
|
|
38
37
|
const vm = getCurrentInstance('useLayoutItem');
|
|
38
|
+
provide(VuetifyLayoutItemKey, {
|
|
39
|
+
id
|
|
40
|
+
});
|
|
39
41
|
const isKeptAlive = ref(false);
|
|
40
42
|
onDeactivated(() => isKeptAlive.value = true);
|
|
41
43
|
onActivated(() => isKeptAlive.value = false);
|
|
@@ -99,10 +101,8 @@ export function createLayout(props) {
|
|
|
99
101
|
contentRect: layoutRect
|
|
100
102
|
} = useResizeObserver();
|
|
101
103
|
const computedOverlaps = computed(() => {
|
|
102
|
-
var _props$overlaps;
|
|
103
|
-
|
|
104
104
|
const map = new Map();
|
|
105
|
-
const overlaps =
|
|
105
|
+
const overlaps = props.overlaps ?? [];
|
|
106
106
|
|
|
107
107
|
for (const overlap of overlaps.filter(item => item.includes(':'))) {
|
|
108
108
|
const [top, bottom] = overlap.split(':');
|
|
@@ -145,11 +145,10 @@ export function createLayout(props) {
|
|
|
145
145
|
const mainStyles = computed(() => {
|
|
146
146
|
const layer = layers.value[layers.value.length - 1].layer;
|
|
147
147
|
return {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
paddingBottom: convertToUnit(layer.bottom),
|
|
148
|
+
'--v-layout-left': convertToUnit(layer.left),
|
|
149
|
+
'--v-layout-right': convertToUnit(layer.right),
|
|
150
|
+
'--v-layout-top': convertToUnit(layer.top),
|
|
151
|
+
'--v-layout-bottom': convertToUnit(layer.bottom),
|
|
153
152
|
...(transitionsEnabled.value ? undefined : {
|
|
154
153
|
transition: 'none'
|
|
155
154
|
})
|
|
@@ -185,7 +184,7 @@ export function createLayout(props) {
|
|
|
185
184
|
register: (vm, _ref2) => {
|
|
186
185
|
let {
|
|
187
186
|
id,
|
|
188
|
-
|
|
187
|
+
order,
|
|
189
188
|
position,
|
|
190
189
|
layoutSize,
|
|
191
190
|
elementSize,
|
|
@@ -193,12 +192,12 @@ export function createLayout(props) {
|
|
|
193
192
|
disableTransitions,
|
|
194
193
|
absolute
|
|
195
194
|
} = _ref2;
|
|
196
|
-
priorities.set(id,
|
|
195
|
+
priorities.set(id, order);
|
|
197
196
|
positions.set(id, position);
|
|
198
197
|
layoutSizes.set(id, layoutSize);
|
|
199
198
|
activeItems.set(id, active);
|
|
200
199
|
disableTransitions && disabledTransitions.set(id, disableTransitions);
|
|
201
|
-
const instances = findChildrenWithProvide(
|
|
200
|
+
const instances = findChildrenWithProvide(VuetifyLayoutItemKey, rootVm == null ? void 0 : rootVm.vnode);
|
|
202
201
|
const instanceIndex = instances.indexOf(vm);
|
|
203
202
|
if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id);else registered.value.push(id);
|
|
204
203
|
const index = computed(() => items.value.findIndex(i => i.id === id));
|
|
@@ -227,17 +226,16 @@ export function createLayout(props) {
|
|
|
227
226
|
}
|
|
228
227
|
|
|
229
228
|
return { ...styles,
|
|
230
|
-
height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : `${elementSize.value}px
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : `${elementSize.value}px`
|
|
229
|
+
height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : elementSize.value ? `${elementSize.value}px` : undefined,
|
|
230
|
+
left: isOppositeHorizontal ? undefined : `${item.left}px`,
|
|
231
|
+
right: isOppositeHorizontal ? `${item.right}px` : undefined,
|
|
232
|
+
top: position.value !== 'bottom' ? `${item.top}px` : undefined,
|
|
233
|
+
bottom: position.value !== 'top' ? `${item.bottom}px` : undefined,
|
|
234
|
+
width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : elementSize.value ? `${elementSize.value}px` : undefined
|
|
236
235
|
};
|
|
237
236
|
});
|
|
238
237
|
const layoutItemScrimStyles = computed(() => ({
|
|
239
|
-
zIndex: zIndex.value - 1
|
|
240
|
-
position: rootZIndex.value === ROOT_ZINDEX ? 'fixed' : 'absolute'
|
|
238
|
+
zIndex: zIndex.value - 1
|
|
241
239
|
}));
|
|
242
240
|
return {
|
|
243
241
|
layoutItemStyles,
|
|
@@ -263,7 +261,9 @@ export function createLayout(props) {
|
|
|
263
261
|
'v-layout--full-height': props.fullHeight
|
|
264
262
|
}]);
|
|
265
263
|
const layoutStyles = computed(() => ({
|
|
266
|
-
zIndex: rootZIndex.value
|
|
264
|
+
zIndex: rootZIndex.value,
|
|
265
|
+
position: parentLayout ? 'relative' : undefined,
|
|
266
|
+
overflow: parentLayout ? 'hidden' : undefined
|
|
267
267
|
}));
|
|
268
268
|
return {
|
|
269
269
|
layoutClasses,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/composables/layout.ts"],"names":["useResizeObserver","computed","inject","onActivated","onBeforeUnmount","onDeactivated","onMounted","provide","reactive","ref","convertToUnit","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","VuetifyLayoutKey","Symbol","for","ROOT_ZINDEX","makeLayoutProps","overlaps","type","Array","default","fullHeight","Boolean","makeLayoutItemProps","name","String","priority","Number","absolute","useLayout","layout","Error","useLayoutItem","options","id","vm","isKeptAlive","value","layoutItemStyles","layoutItemScrimStyles","register","active","unregister","layoutRect","generateLayers","positions","layoutSizes","activeItems","previousLayer","top","left","right","bottom","layers","layer","position","get","amount","parseInt","push","createLayout","props","parentLayout","rootZIndex","registered","Map","priorities","disabledTransitions","resizeRef","contentRect","computedOverlaps","map","overlap","filter","item","includes","split","topPosition","bottomPosition","topAmount","bottomAmount","set","uniquePriorities","Set","values","p","sort","a","b","items","transitionsEnabled","from","some","mainStyles","length","paddingLeft","paddingRight","paddingTop","paddingBottom","undefined","transition","slice","index","size","getLayoutItem","find","rootVm","isMounted","layoutSize","elementSize","disableTransitions","instances","vnode","instanceIndex","indexOf","splice","findIndex","i","zIndex","isHorizontal","isOppositeHorizontal","isOppositeVertical","styles","transform","height","marginLeft","marginRight","marginTop","marginBottom","width","delete","v","layoutClasses","layoutStyles","layoutRef"],"mappings":"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","sourcesContent":["// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport { computed, inject, onActivated, onBeforeUnmount, onDeactivated, onMounted, provide, reactive, ref } from 'vue'\nimport { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, InjectionKey, Prop, Ref } from 'vue'\n\ntype Position = 'top' | 'left' | 'right' | 'bottom'\n\ntype LayoutItem = {\n id: string\n top: number\n bottom: number\n left: number\n right: number\n size: number\n}\n\ninterface LayoutProvide {\n register: (\n vm: ComponentInternalInstance,\n options: {\n id: string\n priority: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n }\n ) => {\n layoutItemStyles: Ref<Record<string, unknown>>\n layoutItemScrimStyles: Ref<Record<string, unknown>>\n zIndex: Ref<number>\n }\n unregister: (id: string) => void\n mainStyles: Ref<Record<string, unknown>>\n getLayoutItem: (id: string) => LayoutItem | undefined\n items: Ref<LayoutItem[]>\n layoutRect: Ref<DOMRectReadOnly | undefined>\n rootZIndex: Ref<number>\n}\n\nexport const VuetifyLayoutKey: InjectionKey<LayoutProvide> = Symbol.for('vuetify:layout')\n\nconst ROOT_ZINDEX = 1000\n\nexport const makeLayoutProps = propsFactory({\n overlaps: {\n type: Array,\n default: () => ([]),\n } as Prop<string[]>,\n fullHeight: Boolean,\n}, 'layout')\n\n// Composables\nexport const makeLayoutItemProps = propsFactory({\n name: {\n type: String,\n },\n priority: {\n type: [Number, String],\n default: 0,\n },\n absolute: Boolean,\n}, 'layout-item')\n\nexport function useLayout () {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n return layout\n}\n\nexport function useLayoutItem (options: {\n id: string | undefined\n priority: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n}) {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n const id = options.id ?? `layout-item-${getUid()}`\n\n const vm = getCurrentInstance('useLayoutItem')\n\n const isKeptAlive = ref(false)\n onDeactivated(() => isKeptAlive.value = true)\n onActivated(() => isKeptAlive.value = false)\n\n const {\n layoutItemStyles,\n layoutItemScrimStyles,\n } = layout.register(vm, {\n ...options,\n active: computed(() => isKeptAlive.value ? false : options.active.value),\n id,\n })\n\n onBeforeUnmount(() => layout.unregister(id))\n\n return { layoutItemStyles, layoutRect: layout.layoutRect, layoutItemScrimStyles }\n}\n\nconst generateLayers = (\n layout: string[],\n positions: Map<string, Ref<Position>>,\n layoutSizes: Map<string, Ref<number | string>>,\n activeItems: Map<string, Ref<boolean>>,\n) => {\n let previousLayer = { top: 0, left: 0, right: 0, bottom: 0 }\n const layers = [{ id: '', layer: { ...previousLayer } }]\n for (const id of layout) {\n const position = positions.get(id)\n const amount = layoutSizes.get(id)\n const active = activeItems.get(id)\n if (!position || !amount || !active) continue\n\n const layer = {\n ...previousLayer,\n [position.value]: parseInt(previousLayer[position.value], 10) + (active.value ? parseInt(amount.value, 10) : 0),\n }\n\n layers.push({\n id,\n layer,\n })\n\n previousLayer = layer\n }\n\n return layers\n}\n\nexport function createLayout (props: { overlaps?: string[], fullHeight?: boolean }) {\n const parentLayout = inject(VuetifyLayoutKey, null)\n const rootZIndex = computed(() => parentLayout ? parentLayout.rootZIndex.value - 100 : ROOT_ZINDEX)\n const registered = ref<string[]>([])\n const positions = reactive(new Map<string, Ref<Position>>())\n const layoutSizes = reactive(new Map<string, Ref<number | string>>())\n const priorities = reactive(new Map<string, Ref<number>>())\n const activeItems = reactive(new Map<string, Ref<boolean>>())\n const disabledTransitions = reactive(new Map<string, Ref<boolean>>())\n const { resizeRef, contentRect: layoutRect } = useResizeObserver()\n\n const computedOverlaps = computed(() => {\n const map = new Map<string, { position: Position, amount: number }>()\n const overlaps = props.overlaps ?? []\n for (const overlap of overlaps.filter(item => item.includes(':'))) {\n const [top, bottom] = overlap.split(':')\n if (!registered.value.includes(top) || !registered.value.includes(bottom)) continue\n\n const topPosition = positions.get(top)\n const bottomPosition = positions.get(bottom)\n const topAmount = layoutSizes.get(top)\n const bottomAmount = layoutSizes.get(bottom)\n\n if (!topPosition || !bottomPosition || !topAmount || !bottomAmount) continue\n\n map.set(bottom, { position: topPosition.value, amount: parseInt(topAmount.value, 10) })\n map.set(top, { position: bottomPosition.value, amount: -parseInt(bottomAmount.value, 10) })\n }\n\n return map\n })\n\n const layers = computed(() => {\n const uniquePriorities = [...new Set([...priorities.values()].map(p => p.value))].sort((a, b) => a - b)\n const layout = []\n for (const p of uniquePriorities) {\n const items = registered.value.filter(id => priorities.get(id)?.value === p)\n layout.push(...items)\n }\n return generateLayers(layout, positions, layoutSizes, activeItems)\n })\n\n const transitionsEnabled = computed(() => {\n return !Array.from(disabledTransitions.values()).some(ref => ref.value)\n })\n\n const mainStyles = computed(() => {\n const layer = layers.value[layers.value.length - 1].layer\n\n return {\n position: 'relative',\n paddingLeft: convertToUnit(layer.left),\n paddingRight: convertToUnit(layer.right),\n paddingTop: convertToUnit(layer.top),\n paddingBottom: convertToUnit(layer.bottom),\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n })\n\n const items = computed(() => {\n return layers.value.slice(1).map(({ id }, index) => {\n const { layer } = layers.value[index]\n const size = layoutSizes.get(id)\n\n return {\n id,\n ...layer,\n size: Number(size!.value),\n }\n })\n })\n\n const getLayoutItem = (id: string) => {\n return items.value.find(item => item.id === id)\n }\n\n const rootVm = getCurrentInstance('createLayout')\n\n const isMounted = ref(false)\n onMounted(() => {\n isMounted.value = true\n })\n\n provide(VuetifyLayoutKey, {\n register: (\n vm: ComponentInternalInstance,\n {\n id,\n priority,\n position,\n layoutSize,\n elementSize,\n active,\n disableTransitions,\n absolute,\n }\n ) => {\n priorities.set(id, priority)\n positions.set(id, position)\n layoutSizes.set(id, layoutSize)\n activeItems.set(id, active)\n disableTransitions && disabledTransitions.set(id, disableTransitions)\n\n const instances = findChildrenWithProvide(VuetifyLayoutKey, rootVm?.vnode)\n const instanceIndex = instances.indexOf(vm)\n\n if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id)\n else registered.value.push(id)\n\n const index = computed(() => items.value.findIndex(i => i.id === id))\n const zIndex = computed(() => rootZIndex.value + (layers.value.length * 2) - (index.value * 2))\n\n const layoutItemStyles = computed(() => {\n const isHorizontal = position.value === 'left' || position.value === 'right'\n const isOppositeHorizontal = position.value === 'right'\n const isOppositeVertical = position.value === 'bottom'\n\n const styles = {\n [position.value]: 0,\n zIndex: zIndex.value,\n transform: `translate${isHorizontal ? 'X' : 'Y'}(${(active.value ? 0 : -110) * (isOppositeHorizontal || isOppositeVertical ? -1 : 1)}%)`,\n position: absolute.value || rootZIndex.value !== ROOT_ZINDEX ? 'absolute' : 'fixed',\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n\n if (!isMounted.value) return styles\n\n if (index.value < 0) throw new Error(`Layout item \"${id}\" is missing`)\n\n const item = items.value[index.value]\n\n if (!item) throw new Error(`Could not find layout item \"${id}`)\n\n const overlap = computedOverlaps.value.get(id)\n if (overlap) {\n item[overlap.position] += overlap.amount\n }\n\n return {\n ...styles,\n height: isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)` : `${elementSize.value}px`,\n marginLeft: isOppositeHorizontal ? undefined : `${item.left}px`,\n marginRight: isOppositeHorizontal ? `${item.right}px` : undefined,\n marginTop: position.value !== 'bottom' ? `${item.top}px` : undefined,\n marginBottom: position.value !== 'top' ? `${item.bottom}px` : undefined,\n width: !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)` : `${elementSize.value}px`,\n }\n })\n\n const layoutItemScrimStyles = computed(() => ({\n zIndex: zIndex.value - 1,\n position: rootZIndex.value === ROOT_ZINDEX ? 'fixed' : 'absolute',\n }))\n\n return { layoutItemStyles, layoutItemScrimStyles, zIndex }\n },\n unregister: (id: string) => {\n priorities.delete(id)\n positions.delete(id)\n layoutSizes.delete(id)\n activeItems.delete(id)\n disabledTransitions.delete(id)\n registered.value = registered.value.filter(v => v !== id)\n },\n mainStyles,\n getLayoutItem,\n items,\n layoutRect,\n rootZIndex,\n })\n\n const layoutClasses = computed(() => [\n 'v-layout',\n { 'v-layout--full-height': props.fullHeight },\n ])\n\n const layoutStyles = computed(() => ({\n zIndex: rootZIndex.value,\n }))\n\n return {\n layoutClasses,\n layoutStyles,\n getLayoutItem,\n items,\n layoutRect,\n layoutRef: resizeRef,\n }\n}\n"],"file":"layout.mjs"}
|
|
1
|
+
{"version":3,"file":"layout.mjs","names":["useResizeObserver","computed","inject","onActivated","onBeforeUnmount","onDeactivated","onMounted","provide","reactive","ref","convertToUnit","findChildrenWithProvide","getCurrentInstance","getUid","propsFactory","VuetifyLayoutKey","Symbol","for","VuetifyLayoutItemKey","ROOT_ZINDEX","makeLayoutProps","overlaps","type","Array","default","fullHeight","Boolean","makeLayoutItemProps","name","String","order","Number","absolute","useLayout","layout","Error","useLayoutItem","options","id","vm","isKeptAlive","value","layoutItemStyles","layoutItemScrimStyles","register","active","unregister","layoutRect","generateLayers","positions","layoutSizes","activeItems","previousLayer","top","left","right","bottom","layers","layer","position","get","amount","parseInt","push","createLayout","props","parentLayout","rootZIndex","registered","Map","priorities","disabledTransitions","resizeRef","contentRect","computedOverlaps","map","overlap","filter","item","includes","split","topPosition","bottomPosition","topAmount","bottomAmount","set","uniquePriorities","Set","values","p","sort","a","b","items","transitionsEnabled","from","some","mainStyles","length","undefined","transition","slice","index","size","getLayoutItem","find","rootVm","isMounted","layoutSize","elementSize","disableTransitions","instances","vnode","instanceIndex","indexOf","splice","findIndex","i","zIndex","isHorizontal","isOppositeHorizontal","isOppositeVertical","styles","transform","height","width","delete","v","layoutClasses","layoutStyles","overflow","layoutRef"],"sources":["../../src/composables/layout.ts"],"sourcesContent":["// Composables\nimport { useResizeObserver } from '@/composables/resizeObserver'\n\n// Utilities\nimport {\n computed,\n inject,\n onActivated,\n onBeforeUnmount,\n onDeactivated,\n onMounted,\n provide,\n reactive,\n ref,\n} from 'vue'\nimport { convertToUnit, findChildrenWithProvide, getCurrentInstance, getUid, propsFactory } from '@/util'\n\n// Types\nimport type { ComponentInternalInstance, CSSProperties, InjectionKey, Prop, Ref } from 'vue'\n\ntype Position = 'top' | 'left' | 'right' | 'bottom'\n\ntype LayoutItem = {\n id: string\n top: number\n bottom: number\n left: number\n right: number\n size: number\n}\n\ninterface LayoutProvide {\n register: (\n vm: ComponentInternalInstance,\n options: {\n id: string\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n }\n ) => {\n layoutItemStyles: Ref<CSSProperties>\n layoutItemScrimStyles: Ref<CSSProperties>\n zIndex: Ref<number>\n }\n unregister: (id: string) => void\n mainStyles: Ref<CSSProperties>\n getLayoutItem: (id: string) => LayoutItem | undefined\n items: Ref<LayoutItem[]>\n layoutRect: Ref<DOMRectReadOnly | undefined>\n rootZIndex: Ref<number>\n}\n\nexport const VuetifyLayoutKey: InjectionKey<LayoutProvide> = Symbol.for('vuetify:layout')\nexport const VuetifyLayoutItemKey: InjectionKey<{ id: string }> = Symbol.for('vuetify:layout-item')\n\nconst ROOT_ZINDEX = 1000\n\nexport const makeLayoutProps = propsFactory({\n overlaps: {\n type: Array,\n default: () => ([]),\n } as Prop<string[]>,\n fullHeight: Boolean,\n}, 'layout')\n\n// Composables\nexport const makeLayoutItemProps = propsFactory({\n name: {\n type: String,\n },\n order: {\n type: [Number, String],\n default: 0,\n },\n absolute: Boolean,\n}, 'layout-item')\n\nexport function useLayout () {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n return layout\n}\n\nexport function useLayoutItem (options: {\n id: string | undefined\n order: Ref<number>\n position: Ref<Position>\n layoutSize: Ref<number | string>\n elementSize: Ref<number | string | undefined>\n active: Ref<boolean>\n disableTransitions?: Ref<boolean>\n absolute: Ref<boolean | undefined>\n}) {\n const layout = inject(VuetifyLayoutKey)\n\n if (!layout) throw new Error('Could not find injected Vuetify layout')\n\n const id = options.id ?? `layout-item-${getUid()}`\n\n const vm = getCurrentInstance('useLayoutItem')\n\n provide(VuetifyLayoutItemKey, { id })\n\n const isKeptAlive = ref(false)\n onDeactivated(() => isKeptAlive.value = true)\n onActivated(() => isKeptAlive.value = false)\n\n const {\n layoutItemStyles,\n layoutItemScrimStyles,\n } = layout.register(vm, {\n ...options,\n active: computed(() => isKeptAlive.value ? false : options.active.value),\n id,\n })\n\n onBeforeUnmount(() => layout.unregister(id))\n\n return { layoutItemStyles, layoutRect: layout.layoutRect, layoutItemScrimStyles }\n}\n\nconst generateLayers = (\n layout: string[],\n positions: Map<string, Ref<Position>>,\n layoutSizes: Map<string, Ref<number | string>>,\n activeItems: Map<string, Ref<boolean>>,\n) => {\n let previousLayer = { top: 0, left: 0, right: 0, bottom: 0 }\n const layers = [{ id: '', layer: { ...previousLayer } }]\n for (const id of layout) {\n const position = positions.get(id)\n const amount = layoutSizes.get(id)\n const active = activeItems.get(id)\n if (!position || !amount || !active) continue\n\n const layer = {\n ...previousLayer,\n [position.value]: parseInt(previousLayer[position.value], 10) + (active.value ? parseInt(amount.value, 10) : 0),\n }\n\n layers.push({\n id,\n layer,\n })\n\n previousLayer = layer\n }\n\n return layers\n}\n\nexport function createLayout (props: { overlaps?: string[], fullHeight?: boolean }) {\n const parentLayout = inject(VuetifyLayoutKey, null)\n const rootZIndex = computed(() => parentLayout ? parentLayout.rootZIndex.value - 100 : ROOT_ZINDEX)\n const registered = ref<string[]>([])\n const positions = reactive(new Map<string, Ref<Position>>())\n const layoutSizes = reactive(new Map<string, Ref<number | string>>())\n const priorities = reactive(new Map<string, Ref<number>>())\n const activeItems = reactive(new Map<string, Ref<boolean>>())\n const disabledTransitions = reactive(new Map<string, Ref<boolean>>())\n const { resizeRef, contentRect: layoutRect } = useResizeObserver()\n\n const computedOverlaps = computed(() => {\n const map = new Map<string, { position: Position, amount: number }>()\n const overlaps = props.overlaps ?? []\n for (const overlap of overlaps.filter(item => item.includes(':'))) {\n const [top, bottom] = overlap.split(':')\n if (!registered.value.includes(top) || !registered.value.includes(bottom)) continue\n\n const topPosition = positions.get(top)\n const bottomPosition = positions.get(bottom)\n const topAmount = layoutSizes.get(top)\n const bottomAmount = layoutSizes.get(bottom)\n\n if (!topPosition || !bottomPosition || !topAmount || !bottomAmount) continue\n\n map.set(bottom, { position: topPosition.value, amount: parseInt(topAmount.value, 10) })\n map.set(top, { position: bottomPosition.value, amount: -parseInt(bottomAmount.value, 10) })\n }\n\n return map\n })\n\n const layers = computed(() => {\n const uniquePriorities = [...new Set([...priorities.values()].map(p => p.value))].sort((a, b) => a - b)\n const layout = []\n for (const p of uniquePriorities) {\n const items = registered.value.filter(id => priorities.get(id)?.value === p)\n layout.push(...items)\n }\n return generateLayers(layout, positions, layoutSizes, activeItems)\n })\n\n const transitionsEnabled = computed(() => {\n return !Array.from(disabledTransitions.values()).some(ref => ref.value)\n })\n\n const mainStyles = computed<CSSProperties>(() => {\n const layer = layers.value[layers.value.length - 1].layer\n\n return {\n '--v-layout-left': convertToUnit(layer.left),\n '--v-layout-right': convertToUnit(layer.right),\n '--v-layout-top': convertToUnit(layer.top),\n '--v-layout-bottom': convertToUnit(layer.bottom),\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n }\n })\n\n const items = computed(() => {\n return layers.value.slice(1).map(({ id }, index) => {\n const { layer } = layers.value[index]\n const size = layoutSizes.get(id)\n\n return {\n id,\n ...layer,\n size: Number(size!.value),\n }\n })\n })\n\n const getLayoutItem = (id: string) => {\n return items.value.find(item => item.id === id)\n }\n\n const rootVm = getCurrentInstance('createLayout')\n\n const isMounted = ref(false)\n onMounted(() => {\n isMounted.value = true\n })\n\n provide(VuetifyLayoutKey, {\n register: (\n vm: ComponentInternalInstance,\n {\n id,\n order,\n position,\n layoutSize,\n elementSize,\n active,\n disableTransitions,\n absolute,\n }\n ) => {\n priorities.set(id, order)\n positions.set(id, position)\n layoutSizes.set(id, layoutSize)\n activeItems.set(id, active)\n disableTransitions && disabledTransitions.set(id, disableTransitions)\n\n const instances = findChildrenWithProvide(VuetifyLayoutItemKey, rootVm?.vnode)\n const instanceIndex = instances.indexOf(vm)\n\n if (instanceIndex > -1) registered.value.splice(instanceIndex, 0, id)\n else registered.value.push(id)\n\n const index = computed(() => items.value.findIndex(i => i.id === id))\n const zIndex = computed(() => rootZIndex.value + (layers.value.length * 2) - (index.value * 2))\n\n const layoutItemStyles = computed<CSSProperties>(() => {\n const isHorizontal = position.value === 'left' || position.value === 'right'\n const isOppositeHorizontal = position.value === 'right'\n const isOppositeVertical = position.value === 'bottom'\n\n const styles = {\n [position.value]: 0,\n zIndex: zIndex.value,\n transform: `translate${isHorizontal ? 'X' : 'Y'}(${(active.value ? 0 : -110) * (isOppositeHorizontal || isOppositeVertical ? -1 : 1)}%)`,\n position: absolute.value || rootZIndex.value !== ROOT_ZINDEX ? 'absolute' : 'fixed',\n ...(transitionsEnabled.value ? undefined : { transition: 'none' }),\n } as const\n\n if (!isMounted.value) return styles\n\n if (index.value < 0) throw new Error(`Layout item \"${id}\" is missing`)\n\n const item = items.value[index.value]\n\n if (!item) throw new Error(`Could not find layout item \"${id}`)\n\n const overlap = computedOverlaps.value.get(id)\n if (overlap) {\n item[overlap.position] += overlap.amount\n }\n\n return {\n ...styles,\n height:\n isHorizontal ? `calc(100% - ${item.top}px - ${item.bottom}px)`\n : elementSize.value ? `${elementSize.value}px`\n : undefined,\n left: isOppositeHorizontal ? undefined : `${item.left}px`,\n right: isOppositeHorizontal ? `${item.right}px` : undefined,\n top: position.value !== 'bottom' ? `${item.top}px` : undefined,\n bottom: position.value !== 'top' ? `${item.bottom}px` : undefined,\n width:\n !isHorizontal ? `calc(100% - ${item.left}px - ${item.right}px)`\n : elementSize.value ? `${elementSize.value}px`\n : undefined,\n }\n })\n\n const layoutItemScrimStyles = computed<CSSProperties>(() => ({\n zIndex: zIndex.value - 1,\n }))\n\n return { layoutItemStyles, layoutItemScrimStyles, zIndex }\n },\n unregister: (id: string) => {\n priorities.delete(id)\n positions.delete(id)\n layoutSizes.delete(id)\n activeItems.delete(id)\n disabledTransitions.delete(id)\n registered.value = registered.value.filter(v => v !== id)\n },\n mainStyles,\n getLayoutItem,\n items,\n layoutRect,\n rootZIndex,\n })\n\n const layoutClasses = computed(() => [\n 'v-layout',\n { 'v-layout--full-height': props.fullHeight },\n ])\n\n const layoutStyles = computed(() => ({\n zIndex: rootZIndex.value,\n position: parentLayout ? 'relative' as const : undefined,\n overflow: parentLayout ? 'hidden' : undefined,\n }))\n\n return {\n layoutClasses,\n layoutStyles,\n getLayoutItem,\n items,\n layoutRect,\n layoutRef: resizeRef,\n }\n}\n"],"mappings":"AAAA;SACSA,iB,gCAET;;AACA,SACEC,QADF,EAEEC,MAFF,EAGEC,WAHF,EAIEC,eAJF,EAKEC,aALF,EAMEC,SANF,EAOEC,OAPF,EAQEC,QARF,EASEC,GATF,QAUO,KAVP;SAWSC,a,EAAeC,uB,EAAyBC,kB,EAAoBC,M,EAAQC,Y,6BAE7E;;AAwCA,OAAO,MAAMC,gBAA6C,GAAGC,MAAM,CAACC,GAAP,CAAW,gBAAX,CAAtD;AACP,OAAO,MAAMC,oBAAkD,GAAGF,MAAM,CAACC,GAAP,CAAW,qBAAX,CAA3D;AAEP,MAAME,WAAW,GAAG,IAApB;AAEA,OAAO,MAAMC,eAAe,GAAGN,YAAY,CAAC;EAC1CO,QAAQ,EAAE;IACRC,IAAI,EAAEC,KADE;IAERC,OAAO,EAAE,MAAO;EAFR,CADgC;EAK1CC,UAAU,EAAEC;AAL8B,CAAD,EAMxC,QANwC,CAApC,C,CAQP;;AACA,OAAO,MAAMC,mBAAmB,GAAGb,YAAY,CAAC;EAC9Cc,IAAI,EAAE;IACJN,IAAI,EAAEO;EADF,CADwC;EAI9CC,KAAK,EAAE;IACLR,IAAI,EAAE,CAACS,MAAD,EAASF,MAAT,CADD;IAELL,OAAO,EAAE;EAFJ,CAJuC;EAQ9CQ,QAAQ,EAAEN;AARoC,CAAD,EAS5C,aAT4C,CAAxC;AAWP,OAAO,SAASO,SAAT,GAAsB;EAC3B,MAAMC,MAAM,GAAGhC,MAAM,CAACa,gBAAD,CAArB;EAEA,IAAI,CAACmB,MAAL,EAAa,MAAM,IAAIC,KAAJ,CAAU,wCAAV,CAAN;EAEb,OAAOD,MAAP;AACD;AAED,OAAO,SAASE,aAAT,CAAwBC,OAAxB,EASJ;EACD,MAAMH,MAAM,GAAGhC,MAAM,CAACa,gBAAD,CAArB;EAEA,IAAI,CAACmB,MAAL,EAAa,MAAM,IAAIC,KAAJ,CAAU,wCAAV,CAAN;EAEb,MAAMG,EAAE,GAAGD,OAAO,CAACC,EAAR,IAAe,eAAczB,MAAM,EAAG,EAAjD;EAEA,MAAM0B,EAAE,GAAG3B,kBAAkB,CAAC,eAAD,CAA7B;EAEAL,OAAO,CAACW,oBAAD,EAAuB;IAAEoB;EAAF,CAAvB,CAAP;EAEA,MAAME,WAAW,GAAG/B,GAAG,CAAC,KAAD,CAAvB;EACAJ,aAAa,CAAC,MAAMmC,WAAW,CAACC,KAAZ,GAAoB,IAA3B,CAAb;EACAtC,WAAW,CAAC,MAAMqC,WAAW,CAACC,KAAZ,GAAoB,KAA3B,CAAX;EAEA,MAAM;IACJC,gBADI;IAEJC;EAFI,IAGFT,MAAM,CAACU,QAAP,CAAgBL,EAAhB,EAAoB,EACtB,GAAGF,OADmB;IAEtBQ,MAAM,EAAE5C,QAAQ,CAAC,MAAMuC,WAAW,CAACC,KAAZ,GAAoB,KAApB,GAA4BJ,OAAO,CAACQ,MAAR,CAAeJ,KAAlD,CAFM;IAGtBH;EAHsB,CAApB,CAHJ;EASAlC,eAAe,CAAC,MAAM8B,MAAM,CAACY,UAAP,CAAkBR,EAAlB,CAAP,CAAf;EAEA,OAAO;IAAEI,gBAAF;IAAoBK,UAAU,EAAEb,MAAM,CAACa,UAAvC;IAAmDJ;EAAnD,CAAP;AACD;;AAED,MAAMK,cAAc,GAAG,CACrBd,MADqB,EAErBe,SAFqB,EAGrBC,WAHqB,EAIrBC,WAJqB,KAKlB;EACH,IAAIC,aAAa,GAAG;IAAEC,GAAG,EAAE,CAAP;IAAUC,IAAI,EAAE,CAAhB;IAAmBC,KAAK,EAAE,CAA1B;IAA6BC,MAAM,EAAE;EAArC,CAApB;EACA,MAAMC,MAAM,GAAG,CAAC;IAAEnB,EAAE,EAAE,EAAN;IAAUoB,KAAK,EAAE,EAAE,GAAGN;IAAL;EAAjB,CAAD,CAAf;;EACA,KAAK,MAAMd,EAAX,IAAiBJ,MAAjB,EAAyB;IACvB,MAAMyB,QAAQ,GAAGV,SAAS,CAACW,GAAV,CAActB,EAAd,CAAjB;IACA,MAAMuB,MAAM,GAAGX,WAAW,CAACU,GAAZ,CAAgBtB,EAAhB,CAAf;IACA,MAAMO,MAAM,GAAGM,WAAW,CAACS,GAAZ,CAAgBtB,EAAhB,CAAf;IACA,IAAI,CAACqB,QAAD,IAAa,CAACE,MAAd,IAAwB,CAAChB,MAA7B,EAAqC;IAErC,MAAMa,KAAK,GAAG,EACZ,GAAGN,aADS;MAEZ,CAACO,QAAQ,CAAClB,KAAV,GAAkBqB,QAAQ,CAACV,aAAa,CAACO,QAAQ,CAAClB,KAAV,CAAd,EAAgC,EAAhC,CAAR,IAA+CI,MAAM,CAACJ,KAAP,GAAeqB,QAAQ,CAACD,MAAM,CAACpB,KAAR,EAAe,EAAf,CAAvB,GAA4C,CAA3F;IAFN,CAAd;IAKAgB,MAAM,CAACM,IAAP,CAAY;MACVzB,EADU;MAEVoB;IAFU,CAAZ;IAKAN,aAAa,GAAGM,KAAhB;EACD;;EAED,OAAOD,MAAP;AACD,CA5BD;;AA8BA,OAAO,SAASO,YAAT,CAAuBC,KAAvB,EAA6E;EAClF,MAAMC,YAAY,GAAGhE,MAAM,CAACa,gBAAD,EAAmB,IAAnB,CAA3B;EACA,MAAMoD,UAAU,GAAGlE,QAAQ,CAAC,MAAMiE,YAAY,GAAGA,YAAY,CAACC,UAAb,CAAwB1B,KAAxB,GAAgC,GAAnC,GAAyCtB,WAA5D,CAA3B;EACA,MAAMiD,UAAU,GAAG3D,GAAG,CAAW,EAAX,CAAtB;EACA,MAAMwC,SAAS,GAAGzC,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA1B;EACA,MAAMnB,WAAW,GAAG1C,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA5B;EACA,MAAMC,UAAU,GAAG9D,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA3B;EACA,MAAMlB,WAAW,GAAG3C,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAA5B;EACA,MAAME,mBAAmB,GAAG/D,QAAQ,CAAC,IAAI6D,GAAJ,EAAD,CAApC;EACA,MAAM;IAAEG,SAAF;IAAaC,WAAW,EAAE1B;EAA1B,IAAyC/C,iBAAiB,EAAhE;EAEA,MAAM0E,gBAAgB,GAAGzE,QAAQ,CAAC,MAAM;IACtC,MAAM0E,GAAG,GAAG,IAAIN,GAAJ,EAAZ;IACA,MAAMhD,QAAQ,GAAG4C,KAAK,CAAC5C,QAAN,IAAkB,EAAnC;;IACA,KAAK,MAAMuD,OAAX,IAAsBvD,QAAQ,CAACwD,MAAT,CAAgBC,IAAI,IAAIA,IAAI,CAACC,QAAL,CAAc,GAAd,CAAxB,CAAtB,EAAmE;MACjE,MAAM,CAAC1B,GAAD,EAAMG,MAAN,IAAgBoB,OAAO,CAACI,KAAR,CAAc,GAAd,CAAtB;MACA,IAAI,CAACZ,UAAU,CAAC3B,KAAX,CAAiBsC,QAAjB,CAA0B1B,GAA1B,CAAD,IAAmC,CAACe,UAAU,CAAC3B,KAAX,CAAiBsC,QAAjB,CAA0BvB,MAA1B,CAAxC,EAA2E;MAE3E,MAAMyB,WAAW,GAAGhC,SAAS,CAACW,GAAV,CAAcP,GAAd,CAApB;MACA,MAAM6B,cAAc,GAAGjC,SAAS,CAACW,GAAV,CAAcJ,MAAd,CAAvB;MACA,MAAM2B,SAAS,GAAGjC,WAAW,CAACU,GAAZ,CAAgBP,GAAhB,CAAlB;MACA,MAAM+B,YAAY,GAAGlC,WAAW,CAACU,GAAZ,CAAgBJ,MAAhB,CAArB;MAEA,IAAI,CAACyB,WAAD,IAAgB,CAACC,cAAjB,IAAmC,CAACC,SAApC,IAAiD,CAACC,YAAtD,EAAoE;MAEpET,GAAG,CAACU,GAAJ,CAAQ7B,MAAR,EAAgB;QAAEG,QAAQ,EAAEsB,WAAW,CAACxC,KAAxB;QAA+BoB,MAAM,EAAEC,QAAQ,CAACqB,SAAS,CAAC1C,KAAX,EAAkB,EAAlB;MAA/C,CAAhB;MACAkC,GAAG,CAACU,GAAJ,CAAQhC,GAAR,EAAa;QAAEM,QAAQ,EAAEuB,cAAc,CAACzC,KAA3B;QAAkCoB,MAAM,EAAE,CAACC,QAAQ,CAACsB,YAAY,CAAC3C,KAAd,EAAqB,EAArB;MAAnD,CAAb;IACD;;IAED,OAAOkC,GAAP;EACD,CAnBgC,CAAjC;EAqBA,MAAMlB,MAAM,GAAGxD,QAAQ,CAAC,MAAM;IAC5B,MAAMqF,gBAAgB,GAAG,CAAC,GAAG,IAAIC,GAAJ,CAAQ,CAAC,GAAGjB,UAAU,CAACkB,MAAX,EAAJ,EAAyBb,GAAzB,CAA6Bc,CAAC,IAAIA,CAAC,CAAChD,KAApC,CAAR,CAAJ,EAAyDiD,IAAzD,CAA8D,CAACC,CAAD,EAAIC,CAAJ,KAAUD,CAAC,GAAGC,CAA5E,CAAzB;IACA,MAAM1D,MAAM,GAAG,EAAf;;IACA,KAAK,MAAMuD,CAAX,IAAgBH,gBAAhB,EAAkC;MAChC,MAAMO,KAAK,GAAGzB,UAAU,CAAC3B,KAAX,CAAiBoC,MAAjB,CAAwBvC,EAAE;QAAA;;QAAA,OAAI,oBAAAgC,UAAU,CAACV,GAAX,CAAetB,EAAf,sCAAoBG,KAApB,MAA8BgD,CAAlC;MAAA,CAA1B,CAAd;MACAvD,MAAM,CAAC6B,IAAP,CAAY,GAAG8B,KAAf;IACD;;IACD,OAAO7C,cAAc,CAACd,MAAD,EAASe,SAAT,EAAoBC,WAApB,EAAiCC,WAAjC,CAArB;EACD,CARsB,CAAvB;EAUA,MAAM2C,kBAAkB,GAAG7F,QAAQ,CAAC,MAAM;IACxC,OAAO,CAACsB,KAAK,CAACwE,IAAN,CAAWxB,mBAAmB,CAACiB,MAApB,EAAX,EAAyCQ,IAAzC,CAA8CvF,GAAG,IAAIA,GAAG,CAACgC,KAAzD,CAAR;EACD,CAFkC,CAAnC;EAIA,MAAMwD,UAAU,GAAGhG,QAAQ,CAAgB,MAAM;IAC/C,MAAMyD,KAAK,GAAGD,MAAM,CAAChB,KAAP,CAAagB,MAAM,CAAChB,KAAP,CAAayD,MAAb,GAAsB,CAAnC,EAAsCxC,KAApD;IAEA,OAAO;MACL,mBAAmBhD,aAAa,CAACgD,KAAK,CAACJ,IAAP,CAD3B;MAEL,oBAAoB5C,aAAa,CAACgD,KAAK,CAACH,KAAP,CAF5B;MAGL,kBAAkB7C,aAAa,CAACgD,KAAK,CAACL,GAAP,CAH1B;MAIL,qBAAqB3C,aAAa,CAACgD,KAAK,CAACF,MAAP,CAJ7B;MAKL,IAAIsC,kBAAkB,CAACrD,KAAnB,GAA2B0D,SAA3B,GAAuC;QAAEC,UAAU,EAAE;MAAd,CAA3C;IALK,CAAP;EAOD,CAV0B,CAA3B;EAYA,MAAMP,KAAK,GAAG5F,QAAQ,CAAC,MAAM;IAC3B,OAAOwD,MAAM,CAAChB,KAAP,CAAa4D,KAAb,CAAmB,CAAnB,EAAsB1B,GAAtB,CAA0B,OAAS2B,KAAT,KAAmB;MAAA,IAAlB;QAAEhE;MAAF,CAAkB;MAClD,MAAM;QAAEoB;MAAF,IAAYD,MAAM,CAAChB,KAAP,CAAa6D,KAAb,CAAlB;MACA,MAAMC,IAAI,GAAGrD,WAAW,CAACU,GAAZ,CAAgBtB,EAAhB,CAAb;MAEA,OAAO;QACLA,EADK;QAEL,GAAGoB,KAFE;QAGL6C,IAAI,EAAExE,MAAM,CAACwE,IAAI,CAAE9D,KAAP;MAHP,CAAP;IAKD,CATM,CAAP;EAUD,CAXqB,CAAtB;;EAaA,MAAM+D,aAAa,GAAIlE,EAAD,IAAgB;IACpC,OAAOuD,KAAK,CAACpD,KAAN,CAAYgE,IAAZ,CAAiB3B,IAAI,IAAIA,IAAI,CAACxC,EAAL,KAAYA,EAArC,CAAP;EACD,CAFD;;EAIA,MAAMoE,MAAM,GAAG9F,kBAAkB,CAAC,cAAD,CAAjC;EAEA,MAAM+F,SAAS,GAAGlG,GAAG,CAAC,KAAD,CAArB;EACAH,SAAS,CAAC,MAAM;IACdqG,SAAS,CAAClE,KAAV,GAAkB,IAAlB;EACD,CAFQ,CAAT;EAIAlC,OAAO,CAACQ,gBAAD,EAAmB;IACxB6B,QAAQ,EAAE,CACRL,EADQ,YAYL;MAAA,IAVH;QACED,EADF;QAEER,KAFF;QAGE6B,QAHF;QAIEiD,UAJF;QAKEC,WALF;QAMEhE,MANF;QAOEiE,kBAPF;QAQE9E;MARF,CAUG;MACHsC,UAAU,CAACe,GAAX,CAAe/C,EAAf,EAAmBR,KAAnB;MACAmB,SAAS,CAACoC,GAAV,CAAc/C,EAAd,EAAkBqB,QAAlB;MACAT,WAAW,CAACmC,GAAZ,CAAgB/C,EAAhB,EAAoBsE,UAApB;MACAzD,WAAW,CAACkC,GAAZ,CAAgB/C,EAAhB,EAAoBO,MAApB;MACAiE,kBAAkB,IAAIvC,mBAAmB,CAACc,GAApB,CAAwB/C,EAAxB,EAA4BwE,kBAA5B,CAAtB;MAEA,MAAMC,SAAS,GAAGpG,uBAAuB,CAACO,oBAAD,EAAuBwF,MAAvB,oBAAuBA,MAAM,CAAEM,KAA/B,CAAzC;MACA,MAAMC,aAAa,GAAGF,SAAS,CAACG,OAAV,CAAkB3E,EAAlB,CAAtB;MAEA,IAAI0E,aAAa,GAAG,CAAC,CAArB,EAAwB7C,UAAU,CAAC3B,KAAX,CAAiB0E,MAAjB,CAAwBF,aAAxB,EAAuC,CAAvC,EAA0C3E,EAA1C,EAAxB,KACK8B,UAAU,CAAC3B,KAAX,CAAiBsB,IAAjB,CAAsBzB,EAAtB;MAEL,MAAMgE,KAAK,GAAGrG,QAAQ,CAAC,MAAM4F,KAAK,CAACpD,KAAN,CAAY2E,SAAZ,CAAsBC,CAAC,IAAIA,CAAC,CAAC/E,EAAF,KAASA,EAApC,CAAP,CAAtB;MACA,MAAMgF,MAAM,GAAGrH,QAAQ,CAAC,MAAMkE,UAAU,CAAC1B,KAAX,GAAoBgB,MAAM,CAAChB,KAAP,CAAayD,MAAb,GAAsB,CAA1C,GAAgDI,KAAK,CAAC7D,KAAN,GAAc,CAArE,CAAvB;MAEA,MAAMC,gBAAgB,GAAGzC,QAAQ,CAAgB,MAAM;QACrD,MAAMsH,YAAY,GAAG5D,QAAQ,CAAClB,KAAT,KAAmB,MAAnB,IAA6BkB,QAAQ,CAAClB,KAAT,KAAmB,OAArE;QACA,MAAM+E,oBAAoB,GAAG7D,QAAQ,CAAClB,KAAT,KAAmB,OAAhD;QACA,MAAMgF,kBAAkB,GAAG9D,QAAQ,CAAClB,KAAT,KAAmB,QAA9C;QAEA,MAAMiF,MAAM,GAAG;UACb,CAAC/D,QAAQ,CAAClB,KAAV,GAAkB,CADL;UAEb6E,MAAM,EAAEA,MAAM,CAAC7E,KAFF;UAGbkF,SAAS,EAAG,YAAWJ,YAAY,GAAG,GAAH,GAAS,GAAI,IAAG,CAAC1E,MAAM,CAACJ,KAAP,GAAe,CAAf,GAAmB,CAAC,GAArB,KAA6B+E,oBAAoB,IAAIC,kBAAxB,GAA6C,CAAC,CAA9C,GAAkD,CAA/E,CAAkF,IAHxH;UAIb9D,QAAQ,EAAE3B,QAAQ,CAACS,KAAT,IAAkB0B,UAAU,CAAC1B,KAAX,KAAqBtB,WAAvC,GAAqD,UAArD,GAAkE,OAJ/D;UAKb,IAAI2E,kBAAkB,CAACrD,KAAnB,GAA2B0D,SAA3B,GAAuC;YAAEC,UAAU,EAAE;UAAd,CAA3C;QALa,CAAf;QAQA,IAAI,CAACO,SAAS,CAAClE,KAAf,EAAsB,OAAOiF,MAAP;QAEtB,IAAIpB,KAAK,CAAC7D,KAAN,GAAc,CAAlB,EAAqB,MAAM,IAAIN,KAAJ,CAAW,gBAAeG,EAAG,cAA7B,CAAN;QAErB,MAAMwC,IAAI,GAAGe,KAAK,CAACpD,KAAN,CAAY6D,KAAK,CAAC7D,KAAlB,CAAb;QAEA,IAAI,CAACqC,IAAL,EAAW,MAAM,IAAI3C,KAAJ,CAAW,+BAA8BG,EAAG,EAA5C,CAAN;QAEX,MAAMsC,OAAO,GAAGF,gBAAgB,CAACjC,KAAjB,CAAuBmB,GAAvB,CAA2BtB,EAA3B,CAAhB;;QACA,IAAIsC,OAAJ,EAAa;UACXE,IAAI,CAACF,OAAO,CAACjB,QAAT,CAAJ,IAA0BiB,OAAO,CAACf,MAAlC;QACD;;QAED,OAAO,EACL,GAAG6D,MADE;UAELE,MAAM,EACJL,YAAY,GAAI,eAAczC,IAAI,CAACzB,GAAI,QAAOyB,IAAI,CAACtB,MAAO,KAA9C,GACVqD,WAAW,CAACpE,KAAZ,GAAqB,GAAEoE,WAAW,CAACpE,KAAM,IAAzC,GACA0D,SALC;UAML7C,IAAI,EAAEkE,oBAAoB,GAAGrB,SAAH,GAAgB,GAAErB,IAAI,CAACxB,IAAK,IANjD;UAOLC,KAAK,EAAEiE,oBAAoB,GAAI,GAAE1C,IAAI,CAACvB,KAAM,IAAjB,GAAuB4C,SAP7C;UAQL9C,GAAG,EAAEM,QAAQ,CAAClB,KAAT,KAAmB,QAAnB,GAA+B,GAAEqC,IAAI,CAACzB,GAAI,IAA1C,GAAgD8C,SARhD;UASL3C,MAAM,EAAEG,QAAQ,CAAClB,KAAT,KAAmB,KAAnB,GAA4B,GAAEqC,IAAI,CAACtB,MAAO,IAA1C,GAAgD2C,SATnD;UAUL0B,KAAK,EACH,CAACN,YAAD,GAAiB,eAAczC,IAAI,CAACxB,IAAK,QAAOwB,IAAI,CAACvB,KAAM,KAA3D,GACEsD,WAAW,CAACpE,KAAZ,GAAqB,GAAEoE,WAAW,CAACpE,KAAM,IAAzC,GACA0D;QAbC,CAAP;MAeD,CAzCgC,CAAjC;MA2CA,MAAMxD,qBAAqB,GAAG1C,QAAQ,CAAgB,OAAO;QAC3DqH,MAAM,EAAEA,MAAM,CAAC7E,KAAP,GAAe;MADoC,CAAP,CAAhB,CAAtC;MAIA,OAAO;QAAEC,gBAAF;QAAoBC,qBAApB;QAA2C2E;MAA3C,CAAP;IACD,CA7EuB;IA8ExBxE,UAAU,EAAGR,EAAD,IAAgB;MAC1BgC,UAAU,CAACwD,MAAX,CAAkBxF,EAAlB;MACAW,SAAS,CAAC6E,MAAV,CAAiBxF,EAAjB;MACAY,WAAW,CAAC4E,MAAZ,CAAmBxF,EAAnB;MACAa,WAAW,CAAC2E,MAAZ,CAAmBxF,EAAnB;MACAiC,mBAAmB,CAACuD,MAApB,CAA2BxF,EAA3B;MACA8B,UAAU,CAAC3B,KAAX,GAAmB2B,UAAU,CAAC3B,KAAX,CAAiBoC,MAAjB,CAAwBkD,CAAC,IAAIA,CAAC,KAAKzF,EAAnC,CAAnB;IACD,CArFuB;IAsFxB2D,UAtFwB;IAuFxBO,aAvFwB;IAwFxBX,KAxFwB;IAyFxB9C,UAzFwB;IA0FxBoB;EA1FwB,CAAnB,CAAP;EA6FA,MAAM6D,aAAa,GAAG/H,QAAQ,CAAC,MAAM,CACnC,UADmC,EAEnC;IAAE,yBAAyBgE,KAAK,CAACxC;EAAjC,CAFmC,CAAP,CAA9B;EAKA,MAAMwG,YAAY,GAAGhI,QAAQ,CAAC,OAAO;IACnCqH,MAAM,EAAEnD,UAAU,CAAC1B,KADgB;IAEnCkB,QAAQ,EAAEO,YAAY,GAAG,UAAH,GAAyBiC,SAFZ;IAGnC+B,QAAQ,EAAEhE,YAAY,GAAG,QAAH,GAAciC;EAHD,CAAP,CAAD,CAA7B;EAMA,OAAO;IACL6B,aADK;IAELC,YAFK;IAGLzB,aAHK;IAILX,KAJK;IAKL9C,UALK;IAMLoF,SAAS,EAAE3D;EANN,CAAP;AAQD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"lazy.mjs","names":["computed","ref","watch","propsFactory","makeLazyProps","eager","Boolean","useLazy","props","active","isBooted","hasContent","value","onAfterLeave"],"sources":["../../src/composables/lazy.ts"],"sourcesContent":["// Utilities\nimport { computed, ref, watch } from 'vue'\n\n// Types\nimport type { Ref } from 'vue'\nimport { propsFactory } from '@/util'\n\nexport const makeLazyProps = propsFactory({\n eager: Boolean,\n}, 'lazy')\n\nexport function useLazy (props: { eager: boolean }, active: Ref<boolean>) {\n const isBooted = ref(false)\n const hasContent = computed(() => isBooted.value || props.eager || active.value)\n\n watch(active, () => isBooted.value = true)\n\n function onAfterLeave () {\n if (!props.eager) isBooted.value = false\n }\n\n return { isBooted, hasContent, onAfterLeave }\n}\n"],"mappings":"AAAA;AACA,SAASA,QAAT,EAAmBC,GAAnB,EAAwBC,KAAxB,QAAqC,KAArC,C,CAEA;;SAESC,Y;AAET,OAAO,MAAMC,aAAa,GAAGD,YAAY,CAAC;EACxCE,KAAK,EAAEC;AADiC,CAAD,EAEtC,MAFsC,CAAlC;AAIP,OAAO,SAASC,OAAT,CAAkBC,KAAlB,EAA6CC,MAA7C,EAAmE;EACxE,MAAMC,QAAQ,GAAGT,GAAG,CAAC,KAAD,CAApB;EACA,MAAMU,UAAU,GAAGX,QAAQ,CAAC,MAAMU,QAAQ,CAACE,KAAT,IAAkBJ,KAAK,CAACH,KAAxB,IAAiCI,MAAM,CAACG,KAA/C,CAA3B;EAEAV,KAAK,CAACO,MAAD,EAAS,MAAMC,QAAQ,CAACE,KAAT,GAAiB,IAAhC,CAAL;;EAEA,SAASC,YAAT,GAAyB;IACvB,IAAI,CAACL,KAAK,CAACH,KAAX,EAAkBK,QAAQ,CAACE,KAAT,GAAiB,KAAjB;EACnB;;EAED,OAAO;IAAEF,QAAF;IAAYC,UAAZ;IAAwBE;EAAxB,CAAP;AACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"loader.mjs","names":["VProgressLinear","computed","getCurrentInstanceName","propsFactory","makeLoaderProps","loading","Boolean","useLoader","props","name","loaderClasses","LoaderSlot","slots","default","color","isActive","active"],"sources":["../../src/composables/loader.tsx"],"sourcesContent":["// Components\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Utilities\nimport { computed } from 'vue'\nimport { getCurrentInstanceName, propsFactory } from '@/util'\n\n// Types\nimport type { ExtractPropTypes, SetupContext } from 'vue'\nimport type { MakeSlots, SlotsToProps } from '@/util'\n\nexport interface LoaderSlotProps {\n color: string | undefined\n isActive: boolean\n}\n\nexport interface LoaderProps {\n loading: boolean | string\n}\n\n// Composables\nexport const makeLoaderProps = propsFactory({\n loading: Boolean,\n}, 'loader')\n\nexport function useLoader (\n props: LoaderProps,\n name = getCurrentInstanceName(),\n) {\n const loaderClasses = computed(() => ({\n [`${name}--loading`]: props.loading,\n }))\n\n return { loaderClasses }\n}\n\nexport function LoaderSlot (\n props: {\n active: boolean\n name: string\n color?: string\n } & ExtractPropTypes<SlotsToProps<MakeSlots<{\n default: [LoaderSlotProps]\n }>>>,\n { slots }: SetupContext,\n) {\n return (\n <div class={`${props.name}__loader`}>\n { slots.default?.({\n color: props.color,\n isActive: props.active,\n } as LoaderSlotProps) || (\n <VProgressLinear\n active={ props.active }\n color={ props.color }\n height=\"2\"\n indeterminate\n />\n )}\n </div>\n )\n}\n"],"mappings":";AAAA;SACSA,e,mDAET;;AACA,SAASC,QAAT,QAAyB,KAAzB;SACSC,sB,EAAwBC,Y,6BAEjC;;AAaA;AACA,OAAO,MAAMC,eAAe,GAAGD,YAAY,CAAC;EAC1CE,OAAO,EAAEC;AADiC,CAAD,EAExC,QAFwC,CAApC;AAIP,OAAO,SAASC,SAAT,CACLC,KADK,EAGL;EAAA,IADAC,IACA,uEADOP,sBAAsB,EAC7B;EACA,MAAMQ,aAAa,GAAGT,QAAQ,CAAC,OAAO;IACpC,CAAE,GAAEQ,IAAK,WAAT,GAAsBD,KAAK,CAACH;EADQ,CAAP,CAAD,CAA9B;EAIA,OAAO;IAAEK;EAAF,CAAP;AACD;AAED,OAAO,SAASC,UAAT,CACLH,KADK,QASL;EAAA;;EAAA,IADA;IAAEI;EAAF,CACA;EACA;IAAA,SACe,GAAEJ,KAAK,CAACC,IAAK;EAD5B,IAEM,mBAAAG,KAAK,CAACC,OAAN,yCAAAD,KAAK,EAAW;IAChBE,KAAK,EAAEN,KAAK,CAACM,KADG;IAEhBC,QAAQ,EAAEP,KAAK,CAACQ;EAFA,CAAX,CAAL;IAAA,UAKWR,KAAK,CAACQ,MALjB;IAAA,SAMUR,KAAK,CAACM,KANhB;IAAA,UAOS,GAPT;IAAA;EAAA,QAFN;AAeD"}
|