vuetify 3.1.12 → 3.1.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_component-variables-labs.sass +2 -1
- package/dist/json/attributes.json +4138 -3902
- package/dist/json/importMap-labs.json +8 -4
- package/dist/json/importMap.json +154 -154
- package/dist/json/tags.json +608 -544
- package/dist/json/web-types.json +14730 -14109
- package/dist/vuetify-labs.css +479 -236
- package/dist/vuetify-labs.d.ts +2356 -1425
- package/dist/vuetify-labs.esm.js +716 -505
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +716 -507
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +156 -133
- package/dist/vuetify.d.ts +1772 -1110
- package/dist/vuetify.esm.js +556 -480
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +556 -482
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +202 -186
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/index.d.ts +2 -2
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs +7 -5
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +77 -71
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.mjs +1 -1
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/index.d.ts +13 -13
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/index.d.ts +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
- package/lib/components/VBtnToggle/VBtnToggle.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/mixins/calendar-base.mjs.map +1 -1
- 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/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.mjs.map +1 -1
- package/lib/components/VCard/VCardActions.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +1 -13
- package/lib/components/VCarousel/VCarousel.mjs +10 -10
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +197 -19
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.ts +14 -14
- package/lib/components/VChip/VChip.mjs +2 -2
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +14 -14
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPicker.mjs +58 -61
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/index.d.ts +113 -50
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.mjs +8 -6
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +77 -71
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/index.d.ts +123 -24
- package/lib/components/VData/VData.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/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/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/isDateAllowed.mjs.map +1 -1
- package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
- package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.ts +43 -43
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VField/VField.mjs +3 -3
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/index.d.ts +20 -20
- package/lib/components/VFileInput/VFileInput.mjs +0 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +59 -65
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VImg/VImg.mjs +3 -3
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +28 -28
- package/lib/components/VInput/InputIcon.mjs.map +1 -1
- package/lib/components/VInput/VInput.mjs +2 -2
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +14 -14
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.ts +2 -2
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VLazy/index.d.ts +13 -13
- package/lib/components/VList/VList.mjs +2 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +24 -13
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.css +12 -0
- package/lib/components/VList/VListItem.mjs +2 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItem.sass +5 -0
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +14 -14
- package/lib/components/VList/list.mjs.map +1 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +43 -43
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.ts +123 -24
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +8 -2
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
- 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 +1 -13
- package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
- package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +15 -15
- package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
- package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
- package/lib/components/VOverlay/useActivator.mjs +1 -0
- package/lib/components/VOverlay/useActivator.mjs.map +1 -1
- package/lib/components/VOverlay/util/point.mjs.map +1 -1
- package/lib/components/VPagination/VPagination.mjs +2 -2
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VPicker/VPicker.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.css +3 -1
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.sass +3 -1
- package/lib/components/VProgressCircular/_variables.scss +1 -0
- package/lib/components/VProgressLinear/VProgressLinear.css +6 -3
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.sass +3 -0
- package/lib/components/VProgressLinear/_variables.scss +1 -1
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +14 -14
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +14 -14
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/index.d.ts +2 -2
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.mjs +31 -2
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +77 -71
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs +29 -28
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
- package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +17 -17
- package/lib/components/VSlider/VSlider.mjs +1 -1
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +14 -14
- package/lib/components/VSlider/slider.mjs +1 -1
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.ts +43 -43
- 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/VSpeedDial/VSpeedDial.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/VSwitch/VSwitch.css +4 -0
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/VSwitch.sass +4 -0
- package/lib/components/VSwitch/index.d.ts +14 -14
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VTable/VTable.css +1 -1
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/VTable.sass +1 -1
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.mjs +25 -30
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +165 -28
- package/lib/components/VTextField/VTextField.mjs +3 -6
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +83 -77
- package/lib/components/VTextarea/VTextarea.mjs +9 -6
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +56 -50
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VTimePicker/SelectingTimes.mjs +3 -3
- 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/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.ts +8 -8
- package/lib/components/VToolbar/VToolbar.css +2 -0
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.sass +2 -0
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +43 -43
- package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
- package/lib/components/VTreeview/VTreeviewNode.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/VWindow/VWindow.mjs +38 -37
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +2 -1
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/index.d.ts +1655 -993
- package/lib/components/transitions/createTransition.mjs +59 -50
- package/lib/components/transitions/createTransition.mjs.map +1 -1
- 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 +150 -15
- package/lib/composables/border.mjs.map +1 -1
- package/lib/composables/color.mjs.map +1 -1
- package/lib/composables/defaults.mjs +1 -1
- package/lib/composables/defaults.mjs.map +1 -1
- 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.map +1 -1
- package/lib/composables/elevation.mjs.map +1 -1
- package/lib/composables/filter.mjs.map +1 -1
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs +17 -0
- package/lib/composables/forwardRefs.mjs.map +1 -1
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/hydration.mjs.map +1 -1
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/intersectionObserver.mjs.map +1 -1
- package/lib/composables/items.mjs.map +1 -1
- 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.map +1 -1
- package/lib/composables/location.mjs.map +1 -1
- package/lib/composables/mutationObserver.mjs.map +1 -1
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/openStrategies.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/position.mjs.map +1 -1
- package/lib/composables/proxiedModel.mjs +2 -1
- package/lib/composables/proxiedModel.mjs.map +1 -1
- package/lib/composables/refs.mjs.map +1 -1
- package/lib/composables/resizeObserver.mjs.map +1 -1
- package/lib/composables/rounded.mjs.map +1 -1
- package/lib/composables/router.mjs.map +1 -1
- package/lib/composables/scopeId.mjs.map +1 -1
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/composables/selectLink.mjs.map +1 -1
- package/lib/composables/size.mjs.map +1 -1
- package/lib/composables/ssrBoot.mjs.map +1 -1
- package/lib/composables/stack.mjs.map +1 -1
- package/lib/composables/teleport.mjs.map +1 -1
- package/lib/composables/theme.mjs +1 -1
- package/lib/composables/theme.mjs.map +1 -1
- package/lib/composables/toggleScope.mjs.map +1 -1
- package/lib/composables/touch.mjs.map +1 -1
- package/lib/composables/transition.mjs.map +1 -1
- package/lib/composables/validation.mjs +1 -1
- package/lib/composables/validation.mjs.map +1 -1
- 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/intersect/index.mjs.map +1 -1
- package/lib/directives/mutate/index.mjs.map +1 -1
- package/lib/directives/resize/index.mjs.map +1 -1
- package/lib/directives/ripple/index.mjs.map +1 -1
- package/lib/directives/scroll/index.mjs.map +1 -1
- package/lib/directives/touch/index.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/index.d.ts +39 -39
- package/lib/labs/VDataTable/VDataTable.mjs +7 -5
- package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +5 -7
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +4 -3
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +5 -3
- package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/options.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/virtual.mjs.map +1 -1
- package/lib/labs/VDataTable/index.d.ts +393 -340
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.css +221 -0
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +141 -0
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -0
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.sass +225 -0
- package/lib/labs/VSkeletonLoader/_variables.scss +44 -0
- package/lib/labs/VSkeletonLoader/index.d.ts +222 -0
- package/lib/labs/VSkeletonLoader/index.mjs +2 -0
- package/lib/labs/VSkeletonLoader/index.mjs.map +1 -0
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
- package/lib/labs/components.d.ts +608 -341
- package/lib/labs/components.mjs +1 -0
- package/lib/labs/components.mjs.map +1 -1
- package/lib/labs/entry-bundler.mjs.map +1 -1
- package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
- package/lib/locale/adapters/vuetify.mjs.map +1 -1
- package/lib/locale/af.mjs +2 -1
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs +2 -1
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs +2 -1
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs +2 -1
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs +2 -1
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs +2 -1
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs +2 -1
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs +2 -1
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs +2 -1
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs +2 -1
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs +2 -1
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs +2 -1
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs +2 -1
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs +2 -1
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs +2 -1
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs +2 -1
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs +2 -1
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs +2 -1
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs +2 -1
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs +2 -1
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.ts +42 -0
- package/lib/locale/it.mjs +2 -1
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs +2 -1
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/ko.mjs +2 -1
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs +2 -1
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs +2 -1
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs +2 -1
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs +2 -1
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +2 -1
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs +2 -1
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs +2 -1
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs +2 -1
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs +2 -1
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs +2 -1
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs +2 -1
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs +2 -1
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs +2 -1
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs +2 -1
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs +2 -1
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs +2 -1
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs +2 -1
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs +2 -1
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs +2 -1
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/services/goto/index.mjs.map +1 -1
- package/lib/services/goto/util.mjs.map +1 -1
- package/lib/util/anchor.mjs.map +1 -1
- package/lib/util/animation.mjs.map +1 -1
- 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.map +1 -1
- package/lib/util/console.mjs.map +1 -1
- package/lib/util/createSimpleFunctional.mjs.map +1 -1
- package/lib/util/dateTimeUtils.mjs.map +1 -1
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/dom.mjs.map +1 -1
- package/lib/util/getCurrentInstance.mjs.map +1 -1
- package/lib/util/getScrollParent.mjs.map +1 -1
- package/lib/util/helpers.mjs +1 -1
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/injectSelf.mjs.map +1 -1
- 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 +25 -25
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs +0 -179
- package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +0 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.sass +0 -377
- package/lib/components/VSkeletonLoader/_variables.scss +0 -54
- package/lib/components/VSkeletonLoader/index.mjs +0 -4
- package/lib/components/VSkeletonLoader/index.mjs.map +0 -1
package/dist/vuetify-labs.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.1.
|
|
2
|
+
* Vuetify v3.1.14
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -339,7 +339,7 @@ function includes(arr, val) {
|
|
|
339
339
|
}
|
|
340
340
|
const onRE = /^on[^a-z]/;
|
|
341
341
|
const isOn = key => onRE.test(key);
|
|
342
|
-
const EventProp = [Function, Array];
|
|
342
|
+
const EventProp = () => [Function, Array];
|
|
343
343
|
function hasEvent(props, name) {
|
|
344
344
|
name = 'on' + capitalize(name);
|
|
345
345
|
return !!(props[name] || props[`${name}Once`] || props[`${name}Capture`] || props[`${name}OnceCapture`] || props[`${name}CaptureOnce`]);
|
|
@@ -979,7 +979,7 @@ function provideDefaults(defaults, options) {
|
|
|
979
979
|
}
|
|
980
980
|
return properties;
|
|
981
981
|
}
|
|
982
|
-
return mergeDeep(properties.prev, properties);
|
|
982
|
+
return properties.prev ? mergeDeep(properties.prev, properties) : properties;
|
|
983
983
|
});
|
|
984
984
|
provide(DefaultsSymbol, newDefaults);
|
|
985
985
|
return newDefaults;
|
|
@@ -1703,7 +1703,7 @@ function createTheme(options) {
|
|
|
1703
1703
|
if (/^on-[a-z]/.test(key)) {
|
|
1704
1704
|
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
|
|
1705
1705
|
} else {
|
|
1706
|
-
createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
|
|
1706
|
+
createCssClass(bgLines, `.bg-${key}`, [`--v-theme-overlay-multiplier: var(--v-theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--v-theme-${key})) !important`, `color: rgb(var(--v-theme-on-${key})) !important`]);
|
|
1707
1707
|
createCssClass(fgLines, `.text-${key}`, [`color: rgb(var(--v-theme-${key})) !important`]);
|
|
1708
1708
|
createCssClass(fgLines, `.border-${key}`, [`--v-border-color: var(--v-theme-${key})`]);
|
|
1709
1709
|
}
|
|
@@ -1841,7 +1841,8 @@ function useProxiedModel(props, prop, defaultValue) {
|
|
|
1841
1841
|
});
|
|
1842
1842
|
const model = computed({
|
|
1843
1843
|
get() {
|
|
1844
|
-
|
|
1844
|
+
const externalValue = props[prop];
|
|
1845
|
+
return transformIn(isControlled.value ? externalValue : internal.value);
|
|
1845
1846
|
},
|
|
1846
1847
|
set(internalValue) {
|
|
1847
1848
|
const newValue = transformOut(internalValue);
|
|
@@ -1933,7 +1934,8 @@ var en = {
|
|
|
1933
1934
|
ariaLabel: {
|
|
1934
1935
|
item: 'Rating {0} of {1}'
|
|
1935
1936
|
}
|
|
1936
|
-
}
|
|
1937
|
+
},
|
|
1938
|
+
loading: 'Loading...'
|
|
1937
1939
|
};
|
|
1938
1940
|
|
|
1939
1941
|
const LANG_PREFIX = '$vuetify.';
|
|
@@ -2210,6 +2212,7 @@ function createCssTransition(name) {
|
|
|
2210
2212
|
return genericComponent()({
|
|
2211
2213
|
name,
|
|
2212
2214
|
props: {
|
|
2215
|
+
disabled: Boolean,
|
|
2213
2216
|
group: Boolean,
|
|
2214
2217
|
hideOnLeave: Boolean,
|
|
2215
2218
|
leaveAbsolute: Boolean,
|
|
@@ -2226,56 +2229,62 @@ function createCssTransition(name) {
|
|
|
2226
2229
|
let {
|
|
2227
2230
|
slots
|
|
2228
2231
|
} = _ref;
|
|
2232
|
+
const functions = {
|
|
2233
|
+
onBeforeEnter(el) {
|
|
2234
|
+
el.style.transformOrigin = props.origin;
|
|
2235
|
+
},
|
|
2236
|
+
onLeave(el) {
|
|
2237
|
+
if (props.leaveAbsolute) {
|
|
2238
|
+
const {
|
|
2239
|
+
offsetTop,
|
|
2240
|
+
offsetLeft,
|
|
2241
|
+
offsetWidth,
|
|
2242
|
+
offsetHeight
|
|
2243
|
+
} = el;
|
|
2244
|
+
el._transitionInitialStyles = {
|
|
2245
|
+
position: el.style.position,
|
|
2246
|
+
top: el.style.top,
|
|
2247
|
+
left: el.style.left,
|
|
2248
|
+
width: el.style.width,
|
|
2249
|
+
height: el.style.height
|
|
2250
|
+
};
|
|
2251
|
+
el.style.position = 'absolute';
|
|
2252
|
+
el.style.top = `${offsetTop}px`;
|
|
2253
|
+
el.style.left = `${offsetLeft}px`;
|
|
2254
|
+
el.style.width = `${offsetWidth}px`;
|
|
2255
|
+
el.style.height = `${offsetHeight}px`;
|
|
2256
|
+
}
|
|
2257
|
+
if (props.hideOnLeave) {
|
|
2258
|
+
el.style.setProperty('display', 'none', 'important');
|
|
2259
|
+
}
|
|
2260
|
+
},
|
|
2261
|
+
onAfterLeave(el) {
|
|
2262
|
+
if (props.leaveAbsolute && el?._transitionInitialStyles) {
|
|
2263
|
+
const {
|
|
2264
|
+
position,
|
|
2265
|
+
top,
|
|
2266
|
+
left,
|
|
2267
|
+
width,
|
|
2268
|
+
height
|
|
2269
|
+
} = el._transitionInitialStyles;
|
|
2270
|
+
delete el._transitionInitialStyles;
|
|
2271
|
+
el.style.position = position || '';
|
|
2272
|
+
el.style.top = top || '';
|
|
2273
|
+
el.style.left = left || '';
|
|
2274
|
+
el.style.width = width || '';
|
|
2275
|
+
el.style.height = height || '';
|
|
2276
|
+
}
|
|
2277
|
+
}
|
|
2278
|
+
};
|
|
2229
2279
|
return () => {
|
|
2230
2280
|
const tag = props.group ? TransitionGroup : Transition;
|
|
2231
2281
|
return h(tag, {
|
|
2232
|
-
name,
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
},
|
|
2237
|
-
|
|
2238
|
-
if (props.leaveAbsolute) {
|
|
2239
|
-
const {
|
|
2240
|
-
offsetTop,
|
|
2241
|
-
offsetLeft,
|
|
2242
|
-
offsetWidth,
|
|
2243
|
-
offsetHeight
|
|
2244
|
-
} = el;
|
|
2245
|
-
el._transitionInitialStyles = {
|
|
2246
|
-
position: el.style.position,
|
|
2247
|
-
top: el.style.top,
|
|
2248
|
-
left: el.style.left,
|
|
2249
|
-
width: el.style.width,
|
|
2250
|
-
height: el.style.height
|
|
2251
|
-
};
|
|
2252
|
-
el.style.position = 'absolute';
|
|
2253
|
-
el.style.top = `${offsetTop}px`;
|
|
2254
|
-
el.style.left = `${offsetLeft}px`;
|
|
2255
|
-
el.style.width = `${offsetWidth}px`;
|
|
2256
|
-
el.style.height = `${offsetHeight}px`;
|
|
2257
|
-
}
|
|
2258
|
-
if (props.hideOnLeave) {
|
|
2259
|
-
el.style.setProperty('display', 'none', 'important');
|
|
2260
|
-
}
|
|
2261
|
-
},
|
|
2262
|
-
onAfterLeave(el) {
|
|
2263
|
-
if (props.leaveAbsolute && el?._transitionInitialStyles) {
|
|
2264
|
-
const {
|
|
2265
|
-
position,
|
|
2266
|
-
top,
|
|
2267
|
-
left,
|
|
2268
|
-
width,
|
|
2269
|
-
height
|
|
2270
|
-
} = el._transitionInitialStyles;
|
|
2271
|
-
delete el._transitionInitialStyles;
|
|
2272
|
-
el.style.position = position || '';
|
|
2273
|
-
el.style.top = top || '';
|
|
2274
|
-
el.style.left = left || '';
|
|
2275
|
-
el.style.width = width || '';
|
|
2276
|
-
el.style.height = height || '';
|
|
2277
|
-
}
|
|
2278
|
-
}
|
|
2282
|
+
name: props.disabled ? '' : name,
|
|
2283
|
+
css: !props.disabled,
|
|
2284
|
+
...(props.group ? undefined : {
|
|
2285
|
+
mode: props.mode
|
|
2286
|
+
}),
|
|
2287
|
+
...(props.disabled ? {} : functions)
|
|
2279
2288
|
}, slots.default);
|
|
2280
2289
|
};
|
|
2281
2290
|
}
|
|
@@ -2289,7 +2298,8 @@ function createJavascriptTransition(name, functions) {
|
|
|
2289
2298
|
mode: {
|
|
2290
2299
|
type: String,
|
|
2291
2300
|
default: mode
|
|
2292
|
-
}
|
|
2301
|
+
},
|
|
2302
|
+
disabled: Boolean
|
|
2293
2303
|
},
|
|
2294
2304
|
setup(props, _ref2) {
|
|
2295
2305
|
let {
|
|
@@ -2297,9 +2307,10 @@ function createJavascriptTransition(name, functions) {
|
|
|
2297
2307
|
} = _ref2;
|
|
2298
2308
|
return () => {
|
|
2299
2309
|
return h(Transition, {
|
|
2300
|
-
name,
|
|
2310
|
+
name: props.disabled ? '' : name,
|
|
2311
|
+
css: !props.disabled,
|
|
2301
2312
|
// mode: props.mode, // TODO: vuejs/vue-next#3104
|
|
2302
|
-
...functions
|
|
2313
|
+
...(props.disabled ? {} : functions)
|
|
2303
2314
|
}, slots.default);
|
|
2304
2315
|
};
|
|
2305
2316
|
}
|
|
@@ -2705,9 +2716,9 @@ const VImg = genericComponent()({
|
|
|
2705
2716
|
...makeTransitionProps()
|
|
2706
2717
|
},
|
|
2707
2718
|
emits: {
|
|
2708
|
-
loadstart:
|
|
2709
|
-
load:
|
|
2710
|
-
error:
|
|
2719
|
+
loadstart: value => true,
|
|
2720
|
+
load: value => true,
|
|
2721
|
+
error: value => true
|
|
2711
2722
|
},
|
|
2712
2723
|
setup(props, _ref) {
|
|
2713
2724
|
let {
|
|
@@ -5332,9 +5343,9 @@ const makeVFieldProps = propsFactory({
|
|
|
5332
5343
|
default: 'filled',
|
|
5333
5344
|
validator: v => allowedVariants$1.includes(v)
|
|
5334
5345
|
},
|
|
5335
|
-
'onClick:clear': EventProp,
|
|
5336
|
-
'onClick:appendInner': EventProp,
|
|
5337
|
-
'onClick:prependInner': EventProp,
|
|
5346
|
+
'onClick:clear': EventProp(),
|
|
5347
|
+
'onClick:appendInner': EventProp(),
|
|
5348
|
+
'onClick:prependInner': EventProp(),
|
|
5338
5349
|
...makeThemeProps(),
|
|
5339
5350
|
...makeLoaderProps()
|
|
5340
5351
|
}, 'v-field');
|
|
@@ -5833,7 +5844,7 @@ function useValidation(props) {
|
|
|
5833
5844
|
const results = [];
|
|
5834
5845
|
isValidating.value = true;
|
|
5835
5846
|
for (const rule of props.rules) {
|
|
5836
|
-
if (results.length >= (props.maxErrors ?? 1)) {
|
|
5847
|
+
if (results.length >= +(props.maxErrors ?? 1)) {
|
|
5837
5848
|
break;
|
|
5838
5849
|
}
|
|
5839
5850
|
const handler = typeof rule === 'function' ? rule : () => rule;
|
|
@@ -5880,8 +5891,8 @@ const makeVInputProps = propsFactory({
|
|
|
5880
5891
|
default: 'horizontal',
|
|
5881
5892
|
validator: v => ['horizontal', 'vertical'].includes(v)
|
|
5882
5893
|
},
|
|
5883
|
-
'onClick:prepend': EventProp,
|
|
5884
|
-
'onClick:append': EventProp,
|
|
5894
|
+
'onClick:prepend': EventProp(),
|
|
5895
|
+
'onClick:append': EventProp(),
|
|
5885
5896
|
...makeDensityProps(),
|
|
5886
5897
|
...makeValidationProps()
|
|
5887
5898
|
}, 'v-input');
|
|
@@ -6038,6 +6049,9 @@ function forwardRefs(target) {
|
|
|
6038
6049
|
if (Reflect.has(target, key)) {
|
|
6039
6050
|
return Reflect.get(target, key);
|
|
6040
6051
|
}
|
|
6052
|
+
|
|
6053
|
+
// Skip internal properties
|
|
6054
|
+
if (typeof key === 'symbol' || key.startsWith('__')) return;
|
|
6041
6055
|
for (const ref of refs) {
|
|
6042
6056
|
if (ref.value && Reflect.has(ref.value, key)) {
|
|
6043
6057
|
const val = Reflect.get(ref.value, key);
|
|
@@ -6045,6 +6059,20 @@ function forwardRefs(target) {
|
|
|
6045
6059
|
}
|
|
6046
6060
|
}
|
|
6047
6061
|
},
|
|
6062
|
+
has(target, key) {
|
|
6063
|
+
if (Reflect.has(target, key)) {
|
|
6064
|
+
return true;
|
|
6065
|
+
}
|
|
6066
|
+
|
|
6067
|
+
// Skip internal properties
|
|
6068
|
+
if (typeof key === 'symbol' || key.startsWith('__')) return false;
|
|
6069
|
+
for (const ref of refs) {
|
|
6070
|
+
if (ref.value && Reflect.has(ref.value, key)) {
|
|
6071
|
+
return true;
|
|
6072
|
+
}
|
|
6073
|
+
}
|
|
6074
|
+
return false;
|
|
6075
|
+
},
|
|
6048
6076
|
getOwnPropertyDescriptor(target, key) {
|
|
6049
6077
|
const descriptor = Reflect.getOwnPropertyDescriptor(target, key);
|
|
6050
6078
|
if (descriptor) return descriptor;
|
|
@@ -6095,6 +6123,7 @@ const makeVTextFieldProps = propsFactory({
|
|
|
6095
6123
|
type: String,
|
|
6096
6124
|
default: 'text'
|
|
6097
6125
|
},
|
|
6126
|
+
modelModifiers: Object,
|
|
6098
6127
|
...makeVInputProps(),
|
|
6099
6128
|
...makeVFieldProps()
|
|
6100
6129
|
}, 'v-text-field');
|
|
@@ -6169,7 +6198,7 @@ const VTextField = genericComponent()({
|
|
|
6169
6198
|
function onInput(e) {
|
|
6170
6199
|
const el = e.target;
|
|
6171
6200
|
model.value = el.value;
|
|
6172
|
-
if (['text', 'search', 'password', 'tel', 'url'].includes(props.type)) {
|
|
6201
|
+
if (props.modelModifiers?.trim && ['text', 'search', 'password', 'tel', 'url'].includes(props.type)) {
|
|
6173
6202
|
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
6174
6203
|
nextTick(() => {
|
|
6175
6204
|
el.selectionStart = caretPosition[0];
|
|
@@ -6234,9 +6263,6 @@ const VTextField = genericComponent()({
|
|
|
6234
6263
|
...slotProps
|
|
6235
6264
|
}
|
|
6236
6265
|
} = _ref3;
|
|
6237
|
-
const placeholder = computed(() => {
|
|
6238
|
-
return (props.persistentPlaceholder || isFocused.value) && !isDirty.value ? props.placeholder : '';
|
|
6239
|
-
});
|
|
6240
6266
|
const inputNode = withDirectives(createVNode("input", mergeProps({
|
|
6241
6267
|
"ref": inputRef,
|
|
6242
6268
|
"value": model.value,
|
|
@@ -6245,7 +6271,7 @@ const VTextField = genericComponent()({
|
|
|
6245
6271
|
"readonly": isReadonly.value,
|
|
6246
6272
|
"disabled": isDisabled.value,
|
|
6247
6273
|
"name": props.name,
|
|
6248
|
-
"placeholder": placeholder
|
|
6274
|
+
"placeholder": props.placeholder,
|
|
6249
6275
|
"size": 1,
|
|
6250
6276
|
"type": props.type,
|
|
6251
6277
|
"onFocus": onFocus,
|
|
@@ -6809,8 +6835,8 @@ const VChip = genericComponent()({
|
|
|
6809
6835
|
type: Boolean,
|
|
6810
6836
|
default: true
|
|
6811
6837
|
},
|
|
6812
|
-
onClick: EventProp,
|
|
6813
|
-
onClickOnce: EventProp,
|
|
6838
|
+
onClick: EventProp(),
|
|
6839
|
+
onClickOnce: EventProp(),
|
|
6814
6840
|
...makeBorderProps(),
|
|
6815
6841
|
...makeDensityProps(),
|
|
6816
6842
|
...makeElevationProps(),
|
|
@@ -7561,6 +7587,9 @@ const VListGroup = genericComponent()({
|
|
|
7561
7587
|
} = useNestedItem(toRef(props, 'value'), true);
|
|
7562
7588
|
const id = computed(() => `v-list-group--id-${String(_id.value)}`);
|
|
7563
7589
|
const list = useList();
|
|
7590
|
+
const {
|
|
7591
|
+
isBooted
|
|
7592
|
+
} = useSsrBoot();
|
|
7564
7593
|
function onClick(e) {
|
|
7565
7594
|
open(!isOpen.value, e);
|
|
7566
7595
|
}
|
|
@@ -7570,6 +7599,17 @@ const VListGroup = genericComponent()({
|
|
|
7570
7599
|
id: id.value
|
|
7571
7600
|
}));
|
|
7572
7601
|
const toggleIcon = computed(() => isOpen.value ? props.collapseIcon : props.expandIcon);
|
|
7602
|
+
const activatorDefaults = computed(() => ({
|
|
7603
|
+
VListItem: {
|
|
7604
|
+
active: isOpen.value,
|
|
7605
|
+
activeColor: props.activeColor,
|
|
7606
|
+
color: props.color,
|
|
7607
|
+
prependIcon: props.prependIcon || props.subgroup && toggleIcon.value,
|
|
7608
|
+
appendIcon: props.appendIcon || !props.subgroup && toggleIcon.value,
|
|
7609
|
+
title: props.title,
|
|
7610
|
+
value: props.value
|
|
7611
|
+
}
|
|
7612
|
+
}));
|
|
7573
7613
|
useRender(() => createVNode(props.tag, {
|
|
7574
7614
|
"class": ['v-list-group', {
|
|
7575
7615
|
'v-list-group--prepend': list?.hasPrepend.value,
|
|
@@ -7579,17 +7619,7 @@ const VListGroup = genericComponent()({
|
|
|
7579
7619
|
}]
|
|
7580
7620
|
}, {
|
|
7581
7621
|
default: () => [slots.activator && createVNode(VDefaultsProvider, {
|
|
7582
|
-
"defaults":
|
|
7583
|
-
VListItem: {
|
|
7584
|
-
active: isOpen.value,
|
|
7585
|
-
activeColor: props.activeColor,
|
|
7586
|
-
color: props.color,
|
|
7587
|
-
prependIcon: props.prependIcon || props.subgroup && toggleIcon.value,
|
|
7588
|
-
appendIcon: props.appendIcon || !props.subgroup && toggleIcon.value,
|
|
7589
|
-
title: props.title,
|
|
7590
|
-
value: props.value
|
|
7591
|
-
}
|
|
7592
|
-
}
|
|
7622
|
+
"defaults": activatorDefaults.value
|
|
7593
7623
|
}, {
|
|
7594
7624
|
default: () => [createVNode(VListGroupActivator, null, {
|
|
7595
7625
|
default: () => [slots.activator({
|
|
@@ -7597,7 +7627,12 @@ const VListGroup = genericComponent()({
|
|
|
7597
7627
|
isOpen: isOpen.value
|
|
7598
7628
|
})]
|
|
7599
7629
|
})]
|
|
7600
|
-
}), createVNode(
|
|
7630
|
+
}), createVNode(MaybeTransition, {
|
|
7631
|
+
"transition": {
|
|
7632
|
+
component: VExpandTransition
|
|
7633
|
+
},
|
|
7634
|
+
"disabled": !isBooted.value
|
|
7635
|
+
}, {
|
|
7601
7636
|
default: () => [withDirectives(createVNode("div", {
|
|
7602
7637
|
"class": "v-list-group__items",
|
|
7603
7638
|
"role": "group",
|
|
@@ -7645,8 +7680,8 @@ const VListItem = genericComponent()({
|
|
|
7645
7680
|
subtitle: [String, Number, Boolean],
|
|
7646
7681
|
title: [String, Number, Boolean],
|
|
7647
7682
|
value: null,
|
|
7648
|
-
onClick: EventProp,
|
|
7649
|
-
onClickOnce: EventProp,
|
|
7683
|
+
onClick: EventProp(),
|
|
7684
|
+
onClickOnce: EventProp(),
|
|
7650
7685
|
...makeBorderProps(),
|
|
7651
7686
|
...makeDensityProps(),
|
|
7652
7687
|
...makeDimensionProps(),
|
|
@@ -8188,7 +8223,8 @@ const VList = genericComponent()({
|
|
|
8188
8223
|
}
|
|
8189
8224
|
function focus(location) {
|
|
8190
8225
|
if (!contentRef.value) return;
|
|
8191
|
-
const
|
|
8226
|
+
const targets = ['button', '[href]', 'input', 'select', 'textarea', '[tabindex]'].map(s => `${s}:not([tabindex="-1"])`).join(', ');
|
|
8227
|
+
const focusable = [...contentRef.value.querySelectorAll(targets)].filter(el => !el.hasAttribute('disabled'));
|
|
8192
8228
|
const idx = focusable.indexOf(document.activeElement);
|
|
8193
8229
|
if (!location) {
|
|
8194
8230
|
if (!contentRef.value.contains(document.activeElement)) {
|
|
@@ -8369,6 +8405,7 @@ function useActivator(props, _ref) {
|
|
|
8369
8405
|
isActive.value = !isActive.value;
|
|
8370
8406
|
},
|
|
8371
8407
|
mouseenter: e => {
|
|
8408
|
+
if (e.sourceCapabilities?.firesTouchEvents) return;
|
|
8372
8409
|
isHovered = true;
|
|
8373
8410
|
activatorEl.value = e.currentTarget || e.target;
|
|
8374
8411
|
runOpenDelay();
|
|
@@ -9895,6 +9932,9 @@ const VSelect = genericComponent()({
|
|
|
9895
9932
|
});
|
|
9896
9933
|
});
|
|
9897
9934
|
const selected = computed(() => selections.value.map(selection => selection.props.value));
|
|
9935
|
+
const isFocused = ref(false);
|
|
9936
|
+
let keyboardLookupPrefix = '';
|
|
9937
|
+
let keyboardLookupLastTime;
|
|
9898
9938
|
const displayItems = computed(() => {
|
|
9899
9939
|
if (props.hideSelected) {
|
|
9900
9940
|
return items.value.filter(item => !selections.value.some(s => s === item));
|
|
@@ -9931,6 +9971,26 @@ const VSelect = genericComponent()({
|
|
|
9931
9971
|
} else if (e.key === 'End') {
|
|
9932
9972
|
listRef.value?.focus('last');
|
|
9933
9973
|
}
|
|
9974
|
+
|
|
9975
|
+
// html select hotkeys
|
|
9976
|
+
const KEYBOARD_LOOKUP_THRESHOLD = 1000; // milliseconds
|
|
9977
|
+
|
|
9978
|
+
function checkPrintable(e) {
|
|
9979
|
+
const isPrintableChar = e.key.length === 1;
|
|
9980
|
+
const noModifier = !e.ctrlKey && !e.metaKey && !e.altKey;
|
|
9981
|
+
return isPrintableChar && noModifier;
|
|
9982
|
+
}
|
|
9983
|
+
if (props.multiple || !checkPrintable(e)) return;
|
|
9984
|
+
const now = performance.now();
|
|
9985
|
+
if (now - keyboardLookupLastTime > KEYBOARD_LOOKUP_THRESHOLD) {
|
|
9986
|
+
keyboardLookupPrefix = '';
|
|
9987
|
+
}
|
|
9988
|
+
keyboardLookupPrefix += e.key.toLowerCase();
|
|
9989
|
+
keyboardLookupLastTime = now;
|
|
9990
|
+
const item = items.value.find(item => item.title.toLowerCase().startsWith(keyboardLookupPrefix));
|
|
9991
|
+
if (item !== undefined) {
|
|
9992
|
+
model.value = [item];
|
|
9993
|
+
}
|
|
9934
9994
|
}
|
|
9935
9995
|
function select(item) {
|
|
9936
9996
|
if (props.multiple) {
|
|
@@ -9960,7 +10020,9 @@ const VSelect = genericComponent()({
|
|
|
9960
10020
|
useRender(() => {
|
|
9961
10021
|
const hasChips = !!(props.chips || slots.chip);
|
|
9962
10022
|
const hasList = !!(!props.hideNoData || displayItems.value.length || slots.prepend || slots.append || slots['no-data']);
|
|
10023
|
+
const isDirty = model.value.length > 0;
|
|
9963
10024
|
const [textFieldProps] = VTextField.filterProps(props);
|
|
10025
|
+
const placeholder = isDirty || !isFocused.value && props.label && !props.persistentPlaceholder ? undefined : props.placeholder;
|
|
9964
10026
|
return createVNode(VTextField, mergeProps({
|
|
9965
10027
|
"ref": vTextFieldRef
|
|
9966
10028
|
}, textFieldProps, {
|
|
@@ -9968,8 +10030,10 @@ const VSelect = genericComponent()({
|
|
|
9968
10030
|
"onUpdate:modelValue": v => {
|
|
9969
10031
|
if (v == null) model.value = [];
|
|
9970
10032
|
},
|
|
10033
|
+
"focused": isFocused.value,
|
|
10034
|
+
"onUpdate:focused": $event => isFocused.value = $event,
|
|
9971
10035
|
"validationValue": model.externalValue,
|
|
9972
|
-
"dirty":
|
|
10036
|
+
"dirty": isDirty,
|
|
9973
10037
|
"class": ['v-select', {
|
|
9974
10038
|
'v-select--active-menu': menu.value,
|
|
9975
10039
|
'v-select--chips': !!props.chips,
|
|
@@ -9978,6 +10042,7 @@ const VSelect = genericComponent()({
|
|
|
9978
10042
|
}],
|
|
9979
10043
|
"appendInnerIcon": props.menuIcon,
|
|
9980
10044
|
"readonly": true,
|
|
10045
|
+
"placeholder": placeholder,
|
|
9981
10046
|
"onClick:clear": onClear,
|
|
9982
10047
|
"onMousedown:control": onMousedownControl,
|
|
9983
10048
|
"onBlur": onBlur,
|
|
@@ -10026,7 +10091,8 @@ const VSelect = genericComponent()({
|
|
|
10026
10091
|
} = _ref2;
|
|
10027
10092
|
return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
|
|
10028
10093
|
"modelValue": isSelected,
|
|
10029
|
-
"ripple": false
|
|
10094
|
+
"ripple": false,
|
|
10095
|
+
"tabindex": "-1"
|
|
10030
10096
|
}, null) : undefined;
|
|
10031
10097
|
}
|
|
10032
10098
|
});
|
|
@@ -10353,6 +10419,7 @@ const VAutocomplete = genericComponent()({
|
|
|
10353
10419
|
useRender(() => {
|
|
10354
10420
|
const hasChips = !!(props.chips || slots.chip);
|
|
10355
10421
|
const hasList = !!(!props.hideNoData || displayItems.value.length || slots.prepend || slots.append || slots['no-data']);
|
|
10422
|
+
const isDirty = model.value.length > 0;
|
|
10356
10423
|
const [textFieldProps] = VTextField.filterProps(props);
|
|
10357
10424
|
return createVNode(VTextField, mergeProps({
|
|
10358
10425
|
"ref": vTextFieldRef
|
|
@@ -10362,7 +10429,7 @@ const VAutocomplete = genericComponent()({
|
|
|
10362
10429
|
if (v == null) model.value = [];
|
|
10363
10430
|
},
|
|
10364
10431
|
"validationValue": model.externalValue,
|
|
10365
|
-
"dirty":
|
|
10432
|
+
"dirty": isDirty,
|
|
10366
10433
|
"onInput": onInput,
|
|
10367
10434
|
"class": ['v-autocomplete', {
|
|
10368
10435
|
'v-autocomplete--active-menu': menu.value,
|
|
@@ -10372,6 +10439,7 @@ const VAutocomplete = genericComponent()({
|
|
|
10372
10439
|
}],
|
|
10373
10440
|
"appendInnerIcon": props.menuIcon,
|
|
10374
10441
|
"readonly": props.readonly,
|
|
10442
|
+
"placeholder": isDirty ? undefined : props.placeholder,
|
|
10375
10443
|
"onClick:clear": onClear,
|
|
10376
10444
|
"onMousedown:control": onMousedownControl,
|
|
10377
10445
|
"onFocus": () => isFocused.value = true,
|
|
@@ -10402,14 +10470,13 @@ const VAutocomplete = genericComponent()({
|
|
|
10402
10470
|
}, {
|
|
10403
10471
|
default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
|
|
10404
10472
|
"title": t(props.noDataText)
|
|
10405
|
-
}, null)), slots['prepend-item']?.(), displayItems.value.map(
|
|
10473
|
+
}, null)), slots['prepend-item']?.(), displayItems.value.map(item => slots.item?.({
|
|
10406
10474
|
item,
|
|
10407
|
-
index,
|
|
10408
10475
|
props: mergeProps(item.props, {
|
|
10409
10476
|
onClick: () => select(item)
|
|
10410
10477
|
})
|
|
10411
10478
|
}) ?? createVNode(VListItem, mergeProps({
|
|
10412
|
-
"key":
|
|
10479
|
+
"key": item.value
|
|
10413
10480
|
}, item.props, {
|
|
10414
10481
|
"onClick": () => select(item)
|
|
10415
10482
|
}), {
|
|
@@ -10419,7 +10486,8 @@ const VAutocomplete = genericComponent()({
|
|
|
10419
10486
|
} = _ref2;
|
|
10420
10487
|
return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
|
|
10421
10488
|
"modelValue": isSelected,
|
|
10422
|
-
"ripple": false
|
|
10489
|
+
"ripple": false,
|
|
10490
|
+
"tabindex": "-1"
|
|
10423
10491
|
}, null) : undefined;
|
|
10424
10492
|
},
|
|
10425
10493
|
title: () => {
|
|
@@ -10544,7 +10612,7 @@ const VBadge = genericComponent()({
|
|
|
10544
10612
|
});
|
|
10545
10613
|
useRender(() => {
|
|
10546
10614
|
const value = Number(props.content);
|
|
10547
|
-
const content = !props.max || isNaN(value) ? props.content : value <= props.max ? value : `${props.max}+`;
|
|
10615
|
+
const content = !props.max || isNaN(value) ? props.content : value <= +props.max ? value : `${props.max}+`;
|
|
10548
10616
|
const [badgeAttrs, attrs] = pick(ctx.attrs, ['aria-atomic', 'aria-label', 'aria-live', 'role', 'title']);
|
|
10549
10617
|
return createVNode(props.tag, mergeProps({
|
|
10550
10618
|
"class": ['v-badge', {
|
|
@@ -11341,47 +11409,48 @@ const Touch = {
|
|
|
11341
11409
|
|
|
11342
11410
|
const VWindowSymbol = Symbol.for('vuetify:v-window');
|
|
11343
11411
|
const VWindowGroupSymbol = Symbol.for('vuetify:v-window-group');
|
|
11412
|
+
const makeVWindowProps = propsFactory({
|
|
11413
|
+
continuous: Boolean,
|
|
11414
|
+
nextIcon: {
|
|
11415
|
+
type: [Boolean, String, Function, Object],
|
|
11416
|
+
default: '$next'
|
|
11417
|
+
},
|
|
11418
|
+
prevIcon: {
|
|
11419
|
+
type: [Boolean, String, Function, Object],
|
|
11420
|
+
default: '$prev'
|
|
11421
|
+
},
|
|
11422
|
+
reverse: Boolean,
|
|
11423
|
+
showArrows: {
|
|
11424
|
+
type: [Boolean, String],
|
|
11425
|
+
validator: v => typeof v === 'boolean' || v === 'hover'
|
|
11426
|
+
},
|
|
11427
|
+
touch: {
|
|
11428
|
+
type: [Object, Boolean],
|
|
11429
|
+
default: undefined
|
|
11430
|
+
},
|
|
11431
|
+
direction: {
|
|
11432
|
+
type: String,
|
|
11433
|
+
default: 'horizontal'
|
|
11434
|
+
},
|
|
11435
|
+
modelValue: null,
|
|
11436
|
+
disabled: Boolean,
|
|
11437
|
+
selectedClass: {
|
|
11438
|
+
type: String,
|
|
11439
|
+
default: 'v-window-item--active'
|
|
11440
|
+
},
|
|
11441
|
+
// TODO: mandatory should probably not be exposed but do this for now
|
|
11442
|
+
mandatory: {
|
|
11443
|
+
default: 'force'
|
|
11444
|
+
},
|
|
11445
|
+
...makeTagProps(),
|
|
11446
|
+
...makeThemeProps()
|
|
11447
|
+
}, 'v-window');
|
|
11344
11448
|
const VWindow = genericComponent()({
|
|
11345
11449
|
name: 'VWindow',
|
|
11346
11450
|
directives: {
|
|
11347
11451
|
Touch
|
|
11348
11452
|
},
|
|
11349
|
-
props:
|
|
11350
|
-
continuous: Boolean,
|
|
11351
|
-
nextIcon: {
|
|
11352
|
-
type: [Boolean, String, Function, Object],
|
|
11353
|
-
default: '$next'
|
|
11354
|
-
},
|
|
11355
|
-
prevIcon: {
|
|
11356
|
-
type: [Boolean, String, Function, Object],
|
|
11357
|
-
default: '$prev'
|
|
11358
|
-
},
|
|
11359
|
-
reverse: Boolean,
|
|
11360
|
-
showArrows: {
|
|
11361
|
-
type: [Boolean, String],
|
|
11362
|
-
validator: v => typeof v === 'boolean' || v === 'hover'
|
|
11363
|
-
},
|
|
11364
|
-
touch: {
|
|
11365
|
-
type: [Object, Boolean],
|
|
11366
|
-
default: undefined
|
|
11367
|
-
},
|
|
11368
|
-
direction: {
|
|
11369
|
-
type: String,
|
|
11370
|
-
default: 'horizontal'
|
|
11371
|
-
},
|
|
11372
|
-
modelValue: null,
|
|
11373
|
-
disabled: Boolean,
|
|
11374
|
-
selectedClass: {
|
|
11375
|
-
type: String,
|
|
11376
|
-
default: 'v-window-item--active'
|
|
11377
|
-
},
|
|
11378
|
-
// TODO: mandatory should probably not be exposed but do this for now
|
|
11379
|
-
mandatory: {
|
|
11380
|
-
default: 'force'
|
|
11381
|
-
},
|
|
11382
|
-
...makeTagProps(),
|
|
11383
|
-
...makeThemeProps()
|
|
11384
|
-
},
|
|
11453
|
+
props: makeVWindowProps(),
|
|
11385
11454
|
emits: {
|
|
11386
11455
|
'update:modelValue': v => true
|
|
11387
11456
|
},
|
|
@@ -11509,112 +11578,6 @@ const VWindow = genericComponent()({
|
|
|
11509
11578
|
}
|
|
11510
11579
|
});
|
|
11511
11580
|
|
|
11512
|
-
const VWindowItem = genericComponent()({
|
|
11513
|
-
name: 'VWindowItem',
|
|
11514
|
-
directives: {
|
|
11515
|
-
Touch
|
|
11516
|
-
},
|
|
11517
|
-
props: {
|
|
11518
|
-
reverseTransition: {
|
|
11519
|
-
type: [Boolean, String],
|
|
11520
|
-
default: undefined
|
|
11521
|
-
},
|
|
11522
|
-
transition: {
|
|
11523
|
-
type: [Boolean, String],
|
|
11524
|
-
default: undefined
|
|
11525
|
-
},
|
|
11526
|
-
...makeGroupItemProps(),
|
|
11527
|
-
...makeLazyProps()
|
|
11528
|
-
},
|
|
11529
|
-
emits: {
|
|
11530
|
-
'group:selected': val => true
|
|
11531
|
-
},
|
|
11532
|
-
setup(props, _ref) {
|
|
11533
|
-
let {
|
|
11534
|
-
slots
|
|
11535
|
-
} = _ref;
|
|
11536
|
-
const window = inject$1(VWindowSymbol);
|
|
11537
|
-
const groupItem = useGroupItem(props, VWindowGroupSymbol);
|
|
11538
|
-
const {
|
|
11539
|
-
isBooted
|
|
11540
|
-
} = useSsrBoot();
|
|
11541
|
-
if (!window || !groupItem) throw new Error('[Vuetify] VWindowItem must be used inside VWindow');
|
|
11542
|
-
const isTransitioning = ref(false);
|
|
11543
|
-
const hasTransition = computed(() => window.isReversed.value ? props.reverseTransition !== false : props.transition !== false);
|
|
11544
|
-
function onAfterTransition() {
|
|
11545
|
-
if (!isTransitioning.value || !window) {
|
|
11546
|
-
return;
|
|
11547
|
-
}
|
|
11548
|
-
|
|
11549
|
-
// Finalize transition state.
|
|
11550
|
-
isTransitioning.value = false;
|
|
11551
|
-
if (window.transitionCount.value > 0) {
|
|
11552
|
-
window.transitionCount.value -= 1;
|
|
11553
|
-
|
|
11554
|
-
// Remove container height if we are out of transition.
|
|
11555
|
-
if (window.transitionCount.value === 0) {
|
|
11556
|
-
window.transitionHeight.value = undefined;
|
|
11557
|
-
}
|
|
11558
|
-
}
|
|
11559
|
-
}
|
|
11560
|
-
function onBeforeTransition() {
|
|
11561
|
-
if (isTransitioning.value || !window) {
|
|
11562
|
-
return;
|
|
11563
|
-
}
|
|
11564
|
-
|
|
11565
|
-
// Initialize transition state here.
|
|
11566
|
-
isTransitioning.value = true;
|
|
11567
|
-
if (window.transitionCount.value === 0) {
|
|
11568
|
-
// Set initial height for height transition.
|
|
11569
|
-
window.transitionHeight.value = convertToUnit(window.rootRef.value?.clientHeight);
|
|
11570
|
-
}
|
|
11571
|
-
window.transitionCount.value += 1;
|
|
11572
|
-
}
|
|
11573
|
-
function onTransitionCancelled() {
|
|
11574
|
-
onAfterTransition(); // This should have the same path as normal transition end.
|
|
11575
|
-
}
|
|
11576
|
-
|
|
11577
|
-
function onEnterTransition(el) {
|
|
11578
|
-
if (!isTransitioning.value) {
|
|
11579
|
-
return;
|
|
11580
|
-
}
|
|
11581
|
-
nextTick(() => {
|
|
11582
|
-
// Do not set height if no transition or cancelled.
|
|
11583
|
-
if (!hasTransition.value || !isTransitioning.value || !window) {
|
|
11584
|
-
return;
|
|
11585
|
-
}
|
|
11586
|
-
|
|
11587
|
-
// Set transition target height.
|
|
11588
|
-
window.transitionHeight.value = convertToUnit(el.clientHeight);
|
|
11589
|
-
});
|
|
11590
|
-
}
|
|
11591
|
-
const transition = computed(() => {
|
|
11592
|
-
const name = window.isReversed.value ? props.reverseTransition : props.transition;
|
|
11593
|
-
return !hasTransition.value ? false : {
|
|
11594
|
-
name: typeof name !== 'string' ? window.transition.value : name,
|
|
11595
|
-
onBeforeEnter: onBeforeTransition,
|
|
11596
|
-
onAfterEnter: onAfterTransition,
|
|
11597
|
-
onEnterCancelled: onTransitionCancelled,
|
|
11598
|
-
onBeforeLeave: onBeforeTransition,
|
|
11599
|
-
onAfterLeave: onAfterTransition,
|
|
11600
|
-
onLeaveCancelled: onTransitionCancelled,
|
|
11601
|
-
onEnter: onEnterTransition
|
|
11602
|
-
};
|
|
11603
|
-
});
|
|
11604
|
-
const {
|
|
11605
|
-
hasContent
|
|
11606
|
-
} = useLazy(props, groupItem.isSelected);
|
|
11607
|
-
useRender(() => createVNode(MaybeTransition, {
|
|
11608
|
-
"transition": isBooted.value && transition.value
|
|
11609
|
-
}, {
|
|
11610
|
-
default: () => [withDirectives(createVNode("div", {
|
|
11611
|
-
"class": ['v-window-item', groupItem.selectedClass.value]
|
|
11612
|
-
}, [hasContent.value && slots.default?.()]), [[vShow, groupItem.isSelected.value]])]
|
|
11613
|
-
}));
|
|
11614
|
-
return {};
|
|
11615
|
-
}
|
|
11616
|
-
});
|
|
11617
|
-
|
|
11618
11581
|
// Types
|
|
11619
11582
|
|
|
11620
11583
|
const VCarousel = genericComponent()({
|
|
@@ -11635,16 +11598,15 @@ const VCarousel = genericComponent()({
|
|
|
11635
11598
|
interval: {
|
|
11636
11599
|
type: [Number, String],
|
|
11637
11600
|
default: 6000,
|
|
11638
|
-
validator: value => value > 0
|
|
11601
|
+
validator: value => Number(value) > 0
|
|
11639
11602
|
},
|
|
11640
|
-
modelValue: null,
|
|
11641
11603
|
progress: [Boolean, String],
|
|
11642
|
-
|
|
11643
|
-
|
|
11644
|
-
|
|
11645
|
-
|
|
11646
|
-
|
|
11647
|
-
|
|
11604
|
+
verticalDelimiters: [Boolean, String],
|
|
11605
|
+
...makeVWindowProps({
|
|
11606
|
+
continuous: true,
|
|
11607
|
+
mandatory: 'force',
|
|
11608
|
+
showArrows: true
|
|
11609
|
+
})
|
|
11648
11610
|
},
|
|
11649
11611
|
emits: {
|
|
11650
11612
|
'update:modelValue': val => true
|
|
@@ -11712,6 +11674,7 @@ const VCarousel = genericComponent()({
|
|
|
11712
11674
|
}, {
|
|
11713
11675
|
default: () => [group.items.value.map((item, index) => {
|
|
11714
11676
|
const props = {
|
|
11677
|
+
id: `carousel-item-${item.id}`,
|
|
11715
11678
|
'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),
|
|
11716
11679
|
class: [group.isSelected(item.id) && 'v-btn--active'],
|
|
11717
11680
|
onClick: () => group.select(item.id, true)
|
|
@@ -11734,29 +11697,189 @@ const VCarousel = genericComponent()({
|
|
|
11734
11697
|
}
|
|
11735
11698
|
});
|
|
11736
11699
|
|
|
11737
|
-
|
|
11738
|
-
|
|
11739
|
-
|
|
11740
|
-
|
|
11741
|
-
|
|
11700
|
+
const VWindowItem = genericComponent()({
|
|
11701
|
+
name: 'VWindowItem',
|
|
11702
|
+
directives: {
|
|
11703
|
+
Touch
|
|
11704
|
+
},
|
|
11742
11705
|
props: {
|
|
11743
|
-
|
|
11706
|
+
reverseTransition: {
|
|
11707
|
+
type: [Boolean, String],
|
|
11708
|
+
default: undefined
|
|
11709
|
+
},
|
|
11710
|
+
transition: {
|
|
11711
|
+
type: [Boolean, String],
|
|
11712
|
+
default: undefined
|
|
11713
|
+
},
|
|
11714
|
+
...makeGroupItemProps(),
|
|
11715
|
+
...makeLazyProps()
|
|
11716
|
+
},
|
|
11717
|
+
emits: {
|
|
11718
|
+
'group:selected': val => true
|
|
11744
11719
|
},
|
|
11745
11720
|
setup(props, _ref) {
|
|
11746
11721
|
let {
|
|
11747
|
-
slots
|
|
11748
|
-
attrs
|
|
11722
|
+
slots
|
|
11749
11723
|
} = _ref;
|
|
11750
|
-
|
|
11751
|
-
|
|
11752
|
-
|
|
11753
|
-
|
|
11754
|
-
|
|
11755
|
-
|
|
11756
|
-
|
|
11757
|
-
|
|
11758
|
-
|
|
11759
|
-
|
|
11724
|
+
const window = inject$1(VWindowSymbol);
|
|
11725
|
+
const groupItem = useGroupItem(props, VWindowGroupSymbol);
|
|
11726
|
+
const {
|
|
11727
|
+
isBooted
|
|
11728
|
+
} = useSsrBoot();
|
|
11729
|
+
if (!window || !groupItem) throw new Error('[Vuetify] VWindowItem must be used inside VWindow');
|
|
11730
|
+
const isTransitioning = ref(false);
|
|
11731
|
+
const hasTransition = computed(() => window.isReversed.value ? props.reverseTransition !== false : props.transition !== false);
|
|
11732
|
+
function onAfterTransition() {
|
|
11733
|
+
if (!isTransitioning.value || !window) {
|
|
11734
|
+
return;
|
|
11735
|
+
}
|
|
11736
|
+
|
|
11737
|
+
// Finalize transition state.
|
|
11738
|
+
isTransitioning.value = false;
|
|
11739
|
+
if (window.transitionCount.value > 0) {
|
|
11740
|
+
window.transitionCount.value -= 1;
|
|
11741
|
+
|
|
11742
|
+
// Remove container height if we are out of transition.
|
|
11743
|
+
if (window.transitionCount.value === 0) {
|
|
11744
|
+
window.transitionHeight.value = undefined;
|
|
11745
|
+
}
|
|
11746
|
+
}
|
|
11747
|
+
}
|
|
11748
|
+
function onBeforeTransition() {
|
|
11749
|
+
if (isTransitioning.value || !window) {
|
|
11750
|
+
return;
|
|
11751
|
+
}
|
|
11752
|
+
|
|
11753
|
+
// Initialize transition state here.
|
|
11754
|
+
isTransitioning.value = true;
|
|
11755
|
+
if (window.transitionCount.value === 0) {
|
|
11756
|
+
// Set initial height for height transition.
|
|
11757
|
+
window.transitionHeight.value = convertToUnit(window.rootRef.value?.clientHeight);
|
|
11758
|
+
}
|
|
11759
|
+
window.transitionCount.value += 1;
|
|
11760
|
+
}
|
|
11761
|
+
function onTransitionCancelled() {
|
|
11762
|
+
onAfterTransition(); // This should have the same path as normal transition end.
|
|
11763
|
+
}
|
|
11764
|
+
|
|
11765
|
+
function onEnterTransition(el) {
|
|
11766
|
+
if (!isTransitioning.value) {
|
|
11767
|
+
return;
|
|
11768
|
+
}
|
|
11769
|
+
nextTick(() => {
|
|
11770
|
+
// Do not set height if no transition or cancelled.
|
|
11771
|
+
if (!hasTransition.value || !isTransitioning.value || !window) {
|
|
11772
|
+
return;
|
|
11773
|
+
}
|
|
11774
|
+
|
|
11775
|
+
// Set transition target height.
|
|
11776
|
+
window.transitionHeight.value = convertToUnit(el.clientHeight);
|
|
11777
|
+
});
|
|
11778
|
+
}
|
|
11779
|
+
const transition = computed(() => {
|
|
11780
|
+
const name = window.isReversed.value ? props.reverseTransition : props.transition;
|
|
11781
|
+
return !hasTransition.value ? false : {
|
|
11782
|
+
name: typeof name !== 'string' ? window.transition.value : name,
|
|
11783
|
+
onBeforeEnter: onBeforeTransition,
|
|
11784
|
+
onAfterEnter: onAfterTransition,
|
|
11785
|
+
onEnterCancelled: onTransitionCancelled,
|
|
11786
|
+
onBeforeLeave: onBeforeTransition,
|
|
11787
|
+
onAfterLeave: onAfterTransition,
|
|
11788
|
+
onLeaveCancelled: onTransitionCancelled,
|
|
11789
|
+
onEnter: onEnterTransition
|
|
11790
|
+
};
|
|
11791
|
+
});
|
|
11792
|
+
const {
|
|
11793
|
+
hasContent
|
|
11794
|
+
} = useLazy(props, groupItem.isSelected);
|
|
11795
|
+
useRender(() => createVNode(MaybeTransition, {
|
|
11796
|
+
"transition": transition.value,
|
|
11797
|
+
"disabled": !isBooted.value
|
|
11798
|
+
}, {
|
|
11799
|
+
default: () => [withDirectives(createVNode("div", {
|
|
11800
|
+
"class": ['v-window-item', groupItem.selectedClass.value]
|
|
11801
|
+
}, [hasContent.value && slots.default?.()]), [[vShow, groupItem.isSelected.value]])]
|
|
11802
|
+
}));
|
|
11803
|
+
return {};
|
|
11804
|
+
}
|
|
11805
|
+
});
|
|
11806
|
+
|
|
11807
|
+
// Types
|
|
11808
|
+
|
|
11809
|
+
const VCarouselItem = genericComponent()({
|
|
11810
|
+
name: 'VCarouselItem',
|
|
11811
|
+
inheritAttrs: false,
|
|
11812
|
+
props: {
|
|
11813
|
+
value: null
|
|
11814
|
+
},
|
|
11815
|
+
setup(props, _ref) {
|
|
11816
|
+
let {
|
|
11817
|
+
slots,
|
|
11818
|
+
attrs
|
|
11819
|
+
} = _ref;
|
|
11820
|
+
useRender(() => createVNode(VWindowItem, {
|
|
11821
|
+
"class": "v-carousel-item",
|
|
11822
|
+
"value": props.value
|
|
11823
|
+
}, {
|
|
11824
|
+
default: () => [createVNode(VImg, attrs, slots)]
|
|
11825
|
+
}));
|
|
11826
|
+
}
|
|
11827
|
+
});
|
|
11828
|
+
|
|
11829
|
+
const VCode = createSimpleFunctional('v-code');
|
|
11830
|
+
|
|
11831
|
+
const makeVSheetProps = propsFactory({
|
|
11832
|
+
color: String,
|
|
11833
|
+
...makeBorderProps(),
|
|
11834
|
+
...makeDimensionProps(),
|
|
11835
|
+
...makeElevationProps(),
|
|
11836
|
+
...makeLocationProps(),
|
|
11837
|
+
...makePositionProps(),
|
|
11838
|
+
...makeRoundedProps(),
|
|
11839
|
+
...makeTagProps(),
|
|
11840
|
+
...makeThemeProps()
|
|
11841
|
+
}, 'v-sheet');
|
|
11842
|
+
const VSheet = genericComponent()({
|
|
11843
|
+
name: 'VSheet',
|
|
11844
|
+
props: {
|
|
11845
|
+
...makeVSheetProps()
|
|
11846
|
+
},
|
|
11847
|
+
setup(props, _ref) {
|
|
11848
|
+
let {
|
|
11849
|
+
slots
|
|
11850
|
+
} = _ref;
|
|
11851
|
+
const {
|
|
11852
|
+
themeClasses
|
|
11853
|
+
} = provideTheme(props);
|
|
11854
|
+
const {
|
|
11855
|
+
backgroundColorClasses,
|
|
11856
|
+
backgroundColorStyles
|
|
11857
|
+
} = useBackgroundColor(toRef(props, 'color'));
|
|
11858
|
+
const {
|
|
11859
|
+
borderClasses
|
|
11860
|
+
} = useBorder(props);
|
|
11861
|
+
const {
|
|
11862
|
+
dimensionStyles
|
|
11863
|
+
} = useDimension(props);
|
|
11864
|
+
const {
|
|
11865
|
+
elevationClasses
|
|
11866
|
+
} = useElevation(props);
|
|
11867
|
+
const {
|
|
11868
|
+
locationStyles
|
|
11869
|
+
} = useLocation(props);
|
|
11870
|
+
const {
|
|
11871
|
+
positionClasses
|
|
11872
|
+
} = usePosition(props);
|
|
11873
|
+
const {
|
|
11874
|
+
roundedClasses
|
|
11875
|
+
} = useRounded(props);
|
|
11876
|
+
useRender(() => createVNode(props.tag, {
|
|
11877
|
+
"class": ['v-sheet', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value],
|
|
11878
|
+
"style": [backgroundColorStyles.value, dimensionStyles.value, locationStyles.value]
|
|
11879
|
+
}, slots));
|
|
11880
|
+
return {};
|
|
11881
|
+
}
|
|
11882
|
+
});
|
|
11760
11883
|
|
|
11761
11884
|
// Types
|
|
11762
11885
|
|
|
@@ -12300,7 +12423,7 @@ const useSlider = _ref => {
|
|
|
12300
12423
|
});
|
|
12301
12424
|
const min = computed(() => parseFloat(props.min));
|
|
12302
12425
|
const max = computed(() => parseFloat(props.max));
|
|
12303
|
-
const step = computed(() => props.step > 0 ? parseFloat(props.step) : 0);
|
|
12426
|
+
const step = computed(() => +props.step > 0 ? parseFloat(props.step) : 0);
|
|
12304
12427
|
const decimals = computed(() => Math.max(getDecimals(step.value), getDecimals(min.value)));
|
|
12305
12428
|
const thumbSize = computed(() => parseInt(props.thumbSize, 10));
|
|
12306
12429
|
const tickSize = computed(() => parseInt(props.tickSize, 10));
|
|
@@ -12794,7 +12917,7 @@ const VSlider = genericComponent()({
|
|
|
12794
12917
|
}), {
|
|
12795
12918
|
...slots,
|
|
12796
12919
|
prepend: hasPrepend ? slotProps => createVNode(Fragment, null, [slots.label?.(slotProps) ?? props.label ? createVNode(VLabel, {
|
|
12797
|
-
"id": slotProps.id,
|
|
12920
|
+
"id": slotProps.id.value,
|
|
12798
12921
|
"class": "v-slider__label",
|
|
12799
12922
|
"text": props.label
|
|
12800
12923
|
}, null) : undefined, slots.prepend?.(slotProps)]) : undefined,
|
|
@@ -13279,59 +13402,6 @@ const VColorPickerSwatches = defineComponent({
|
|
|
13279
13402
|
}
|
|
13280
13403
|
});
|
|
13281
13404
|
|
|
13282
|
-
const makeVSheetProps = propsFactory({
|
|
13283
|
-
color: String,
|
|
13284
|
-
...makeBorderProps(),
|
|
13285
|
-
...makeDimensionProps(),
|
|
13286
|
-
...makeElevationProps(),
|
|
13287
|
-
...makeLocationProps(),
|
|
13288
|
-
...makePositionProps(),
|
|
13289
|
-
...makeRoundedProps(),
|
|
13290
|
-
...makeTagProps(),
|
|
13291
|
-
...makeThemeProps()
|
|
13292
|
-
}, 'v-sheet');
|
|
13293
|
-
const VSheet = genericComponent()({
|
|
13294
|
-
name: 'VSheet',
|
|
13295
|
-
props: {
|
|
13296
|
-
...makeVSheetProps()
|
|
13297
|
-
},
|
|
13298
|
-
setup(props, _ref) {
|
|
13299
|
-
let {
|
|
13300
|
-
slots
|
|
13301
|
-
} = _ref;
|
|
13302
|
-
const {
|
|
13303
|
-
themeClasses
|
|
13304
|
-
} = provideTheme(props);
|
|
13305
|
-
const {
|
|
13306
|
-
backgroundColorClasses,
|
|
13307
|
-
backgroundColorStyles
|
|
13308
|
-
} = useBackgroundColor(toRef(props, 'color'));
|
|
13309
|
-
const {
|
|
13310
|
-
borderClasses
|
|
13311
|
-
} = useBorder(props);
|
|
13312
|
-
const {
|
|
13313
|
-
dimensionStyles
|
|
13314
|
-
} = useDimension(props);
|
|
13315
|
-
const {
|
|
13316
|
-
elevationClasses
|
|
13317
|
-
} = useElevation(props);
|
|
13318
|
-
const {
|
|
13319
|
-
locationStyles
|
|
13320
|
-
} = useLocation(props);
|
|
13321
|
-
const {
|
|
13322
|
-
positionClasses
|
|
13323
|
-
} = usePosition(props);
|
|
13324
|
-
const {
|
|
13325
|
-
roundedClasses
|
|
13326
|
-
} = useRounded(props);
|
|
13327
|
-
useRender(() => createVNode(props.tag, {
|
|
13328
|
-
"class": ['v-sheet', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value],
|
|
13329
|
-
"style": [backgroundColorStyles.value, dimensionStyles.value, locationStyles.value]
|
|
13330
|
-
}, slots));
|
|
13331
|
-
return {};
|
|
13332
|
-
}
|
|
13333
|
-
});
|
|
13334
|
-
|
|
13335
13405
|
// Types
|
|
13336
13406
|
|
|
13337
13407
|
const VColorPicker = defineComponent({
|
|
@@ -13368,13 +13438,9 @@ const VColorPicker = defineComponent({
|
|
|
13368
13438
|
modelValue: {
|
|
13369
13439
|
type: [Object, String]
|
|
13370
13440
|
},
|
|
13371
|
-
|
|
13372
|
-
|
|
13373
|
-
|
|
13374
|
-
},
|
|
13375
|
-
...makeElevationProps(),
|
|
13376
|
-
...makeRoundedProps(),
|
|
13377
|
-
...makeThemeProps()
|
|
13441
|
+
...omit(makeVSheetProps({
|
|
13442
|
+
width: 300
|
|
13443
|
+
}), ['height', 'location', 'minHeight', 'maxHeight', 'minWidth', 'maxWidth'])
|
|
13378
13444
|
},
|
|
13379
13445
|
emits: {
|
|
13380
13446
|
'update:modelValue': color => true,
|
|
@@ -13412,53 +13478,57 @@ const VColorPicker = defineComponent({
|
|
|
13412
13478
|
trackFillColor: undefined
|
|
13413
13479
|
}
|
|
13414
13480
|
});
|
|
13415
|
-
useRender(() =>
|
|
13416
|
-
|
|
13417
|
-
|
|
13418
|
-
|
|
13419
|
-
|
|
13420
|
-
|
|
13421
|
-
'
|
|
13422
|
-
|
|
13423
|
-
|
|
13424
|
-
|
|
13425
|
-
|
|
13426
|
-
|
|
13427
|
-
|
|
13428
|
-
|
|
13429
|
-
"
|
|
13430
|
-
|
|
13431
|
-
|
|
13432
|
-
|
|
13433
|
-
|
|
13434
|
-
|
|
13435
|
-
|
|
13436
|
-
|
|
13437
|
-
|
|
13438
|
-
|
|
13439
|
-
|
|
13440
|
-
|
|
13441
|
-
|
|
13442
|
-
|
|
13443
|
-
|
|
13444
|
-
|
|
13445
|
-
|
|
13446
|
-
|
|
13447
|
-
|
|
13448
|
-
|
|
13449
|
-
|
|
13450
|
-
|
|
13451
|
-
|
|
13452
|
-
|
|
13453
|
-
|
|
13454
|
-
|
|
13455
|
-
|
|
13456
|
-
|
|
13457
|
-
|
|
13458
|
-
|
|
13459
|
-
|
|
13460
|
-
|
|
13461
|
-
|
|
13481
|
+
useRender(() => {
|
|
13482
|
+
const [sheetProps] = VSheet.filterProps(props);
|
|
13483
|
+
return createVNode(VSheet, mergeProps({
|
|
13484
|
+
"rounded": props.rounded,
|
|
13485
|
+
"elevation": props.elevation,
|
|
13486
|
+
"theme": props.theme,
|
|
13487
|
+
"class": ['v-color-picker'],
|
|
13488
|
+
"style": {
|
|
13489
|
+
'--v-color-picker-color-hsv': HSVtoCSS({
|
|
13490
|
+
...(currentColor.value ?? nullColor),
|
|
13491
|
+
a: 1
|
|
13492
|
+
})
|
|
13493
|
+
}
|
|
13494
|
+
}, sheetProps, {
|
|
13495
|
+
"maxWidth": props.width
|
|
13496
|
+
}), {
|
|
13497
|
+
default: () => [!props.hideCanvas && createVNode(VColorPickerCanvas, {
|
|
13498
|
+
"key": "canvas",
|
|
13499
|
+
"color": currentColor.value,
|
|
13500
|
+
"onUpdate:color": updateColor,
|
|
13501
|
+
"disabled": props.disabled,
|
|
13502
|
+
"dotSize": props.dotSize,
|
|
13503
|
+
"width": props.width,
|
|
13504
|
+
"height": props.canvasHeight
|
|
13505
|
+
}, null), (!props.hideSliders || !props.hideInputs) && createVNode("div", {
|
|
13506
|
+
"key": "controls",
|
|
13507
|
+
"class": "v-color-picker__controls"
|
|
13508
|
+
}, [!props.hideSliders && createVNode(VColorPickerPreview, {
|
|
13509
|
+
"key": "preview",
|
|
13510
|
+
"color": currentColor.value,
|
|
13511
|
+
"onUpdate:color": updateColor,
|
|
13512
|
+
"hideAlpha": !mode.value.endsWith('a'),
|
|
13513
|
+
"disabled": props.disabled
|
|
13514
|
+
}, null), !props.hideInputs && createVNode(VColorPickerEdit, {
|
|
13515
|
+
"key": "edit",
|
|
13516
|
+
"modes": props.modes,
|
|
13517
|
+
"mode": mode.value,
|
|
13518
|
+
"onUpdate:mode": m => mode.value = m,
|
|
13519
|
+
"color": currentColor.value,
|
|
13520
|
+
"onUpdate:color": updateColor,
|
|
13521
|
+
"disabled": props.disabled
|
|
13522
|
+
}, null)]), props.showSwatches && createVNode(VColorPickerSwatches, {
|
|
13523
|
+
"key": "swatches",
|
|
13524
|
+
"color": currentColor.value,
|
|
13525
|
+
"onUpdate:color": updateColor,
|
|
13526
|
+
"maxHeight": props.swatchesMaxHeight,
|
|
13527
|
+
"swatches": props.swatches,
|
|
13528
|
+
"disabled": props.disabled
|
|
13529
|
+
}, null)]
|
|
13530
|
+
});
|
|
13531
|
+
});
|
|
13462
13532
|
return {};
|
|
13463
13533
|
}
|
|
13464
13534
|
});
|
|
@@ -13533,7 +13603,7 @@ const VCombobox = genericComponent()({
|
|
|
13533
13603
|
textColorClasses,
|
|
13534
13604
|
textColorStyles
|
|
13535
13605
|
} = useTextColor(color);
|
|
13536
|
-
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(wrapInArray(v
|
|
13606
|
+
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(wrapInArray(v)), v => {
|
|
13537
13607
|
const transformed = transformOut(v);
|
|
13538
13608
|
return props.multiple ? transformed : transformed[0] ?? null;
|
|
13539
13609
|
});
|
|
@@ -13711,6 +13781,7 @@ const VCombobox = genericComponent()({
|
|
|
13711
13781
|
useRender(() => {
|
|
13712
13782
|
const hasChips = !!(props.chips || slots.chip);
|
|
13713
13783
|
const hasList = !!(!props.hideNoData || displayItems.value.length || slots.prepend || slots.append || slots['no-data']);
|
|
13784
|
+
const isDirty = model.value.length > 0;
|
|
13714
13785
|
const [textFieldProps] = VTextField.filterProps(props);
|
|
13715
13786
|
return createVNode(VTextField, mergeProps({
|
|
13716
13787
|
"ref": vTextFieldRef
|
|
@@ -13720,7 +13791,7 @@ const VCombobox = genericComponent()({
|
|
|
13720
13791
|
if (v == null) model.value = [];
|
|
13721
13792
|
}],
|
|
13722
13793
|
"validationValue": model.externalValue,
|
|
13723
|
-
"dirty":
|
|
13794
|
+
"dirty": isDirty,
|
|
13724
13795
|
"class": ['v-combobox', {
|
|
13725
13796
|
'v-combobox--active-menu': menu.value,
|
|
13726
13797
|
'v-combobox--chips': !!props.chips,
|
|
@@ -13729,6 +13800,7 @@ const VCombobox = genericComponent()({
|
|
|
13729
13800
|
}],
|
|
13730
13801
|
"appendInnerIcon": props.items.length ? props.menuIcon : undefined,
|
|
13731
13802
|
"readonly": props.readonly,
|
|
13803
|
+
"placeholder": isDirty ? undefined : props.placeholder,
|
|
13732
13804
|
"onClick:clear": onClear,
|
|
13733
13805
|
"onMousedown:control": onMousedownControl,
|
|
13734
13806
|
"onFocus": () => isFocused.value = true,
|
|
@@ -13759,14 +13831,13 @@ const VCombobox = genericComponent()({
|
|
|
13759
13831
|
}, {
|
|
13760
13832
|
default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
|
|
13761
13833
|
"title": t(props.noDataText)
|
|
13762
|
-
}, null)), slots['prepend-item']?.(), displayItems.value.map(
|
|
13834
|
+
}, null)), slots['prepend-item']?.(), displayItems.value.map(item => slots.item?.({
|
|
13763
13835
|
item,
|
|
13764
|
-
index,
|
|
13765
13836
|
props: mergeProps(item.props, {
|
|
13766
13837
|
onClick: () => select(item)
|
|
13767
13838
|
})
|
|
13768
13839
|
}) ?? createVNode(VListItem, mergeProps({
|
|
13769
|
-
"key":
|
|
13840
|
+
"key": item.value
|
|
13770
13841
|
}, item.props, {
|
|
13771
13842
|
"onClick": () => select(item)
|
|
13772
13843
|
}), {
|
|
@@ -13776,7 +13847,8 @@ const VCombobox = genericComponent()({
|
|
|
13776
13847
|
} = _ref2;
|
|
13777
13848
|
return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
|
|
13778
13849
|
"modelValue": isSelected,
|
|
13779
|
-
"ripple": false
|
|
13850
|
+
"ripple": false,
|
|
13851
|
+
"tabindex": "-1"
|
|
13780
13852
|
}, null) : undefined;
|
|
13781
13853
|
},
|
|
13782
13854
|
title: () => {
|
|
@@ -14186,7 +14258,6 @@ const VFileInput = genericComponent()({
|
|
|
14186
14258
|
multiple: Boolean,
|
|
14187
14259
|
hint: String,
|
|
14188
14260
|
persistentHint: Boolean,
|
|
14189
|
-
placeholder: String,
|
|
14190
14261
|
showSize: {
|
|
14191
14262
|
type: [Boolean, Number],
|
|
14192
14263
|
default: false,
|
|
@@ -15510,12 +15581,18 @@ const VNavigationDrawer = genericComponent()({
|
|
|
15510
15581
|
bgColor: 'transparent'
|
|
15511
15582
|
}
|
|
15512
15583
|
});
|
|
15584
|
+
function onMouseenter() {
|
|
15585
|
+
isHovering.value = true;
|
|
15586
|
+
}
|
|
15587
|
+
function onMouseleave() {
|
|
15588
|
+
isHovering.value = false;
|
|
15589
|
+
}
|
|
15513
15590
|
useRender(() => {
|
|
15514
15591
|
const hasImage = slots.image || props.image;
|
|
15515
15592
|
return createVNode(Fragment, null, [createVNode(props.tag, mergeProps({
|
|
15516
15593
|
"ref": rootEl,
|
|
15517
|
-
"onMouseenter":
|
|
15518
|
-
"onMouseleave":
|
|
15594
|
+
"onMouseenter": onMouseenter,
|
|
15595
|
+
"onMouseleave": onMouseleave,
|
|
15519
15596
|
"class": ['v-navigation-drawer', `v-navigation-drawer--${location.value}`, {
|
|
15520
15597
|
'v-navigation-drawer--expand-on-hover': props.expandOnHover,
|
|
15521
15598
|
'v-navigation-drawer--floating': props.floating,
|
|
@@ -15791,7 +15868,7 @@ const VPagination = genericComponent()({
|
|
|
15791
15868
|
ref,
|
|
15792
15869
|
ellipsis: false,
|
|
15793
15870
|
icon: true,
|
|
15794
|
-
disabled: !!props.disabled || props.length < 2,
|
|
15871
|
+
disabled: !!props.disabled || +props.length < 2,
|
|
15795
15872
|
color: isActive ? props.activeColor : props.color,
|
|
15796
15873
|
ariaCurrent: isActive,
|
|
15797
15874
|
ariaLabel: t(isActive ? props.currentPageAriaLabel : props.pageAriaLabel, item),
|
|
@@ -15840,7 +15917,7 @@ const VPagination = genericComponent()({
|
|
|
15840
15917
|
refs.value[currentIndex]?.$el.focus();
|
|
15841
15918
|
}
|
|
15842
15919
|
function onKeydown(e) {
|
|
15843
|
-
if (e.key === keyValues.left && !props.disabled && page.value > props.start) {
|
|
15920
|
+
if (e.key === keyValues.left && !props.disabled && page.value > +props.start) {
|
|
15844
15921
|
page.value = page.value - 1;
|
|
15845
15922
|
nextTick(updateFocus);
|
|
15846
15923
|
} else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {
|
|
@@ -16544,35 +16621,36 @@ function calculateCenteredOffset(_ref2) {
|
|
|
16544
16621
|
// Types
|
|
16545
16622
|
|
|
16546
16623
|
const VSlideGroupSymbol = Symbol.for('vuetify:v-slide-group');
|
|
16624
|
+
const makeVSlideGroupProps = propsFactory({
|
|
16625
|
+
centerActive: Boolean,
|
|
16626
|
+
direction: {
|
|
16627
|
+
type: String,
|
|
16628
|
+
default: 'horizontal'
|
|
16629
|
+
},
|
|
16630
|
+
symbol: {
|
|
16631
|
+
type: null,
|
|
16632
|
+
default: VSlideGroupSymbol
|
|
16633
|
+
},
|
|
16634
|
+
nextIcon: {
|
|
16635
|
+
type: IconValue,
|
|
16636
|
+
default: '$next'
|
|
16637
|
+
},
|
|
16638
|
+
prevIcon: {
|
|
16639
|
+
type: IconValue,
|
|
16640
|
+
default: '$prev'
|
|
16641
|
+
},
|
|
16642
|
+
showArrows: {
|
|
16643
|
+
type: [Boolean, String],
|
|
16644
|
+
validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile'].includes(v)
|
|
16645
|
+
},
|
|
16646
|
+
...makeTagProps(),
|
|
16647
|
+
...makeGroupProps({
|
|
16648
|
+
selectedClass: 'v-slide-group-item--active'
|
|
16649
|
+
})
|
|
16650
|
+
}, 'v-slide-group');
|
|
16547
16651
|
const VSlideGroup = genericComponent()({
|
|
16548
16652
|
name: 'VSlideGroup',
|
|
16549
|
-
props:
|
|
16550
|
-
centerActive: Boolean,
|
|
16551
|
-
direction: {
|
|
16552
|
-
type: String,
|
|
16553
|
-
default: 'horizontal'
|
|
16554
|
-
},
|
|
16555
|
-
symbol: {
|
|
16556
|
-
type: null,
|
|
16557
|
-
default: VSlideGroupSymbol
|
|
16558
|
-
},
|
|
16559
|
-
nextIcon: {
|
|
16560
|
-
type: IconValue,
|
|
16561
|
-
default: '$next'
|
|
16562
|
-
},
|
|
16563
|
-
prevIcon: {
|
|
16564
|
-
type: IconValue,
|
|
16565
|
-
default: '$prev'
|
|
16566
|
-
},
|
|
16567
|
-
showArrows: {
|
|
16568
|
-
type: [Boolean, String],
|
|
16569
|
-
validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile'].includes(v)
|
|
16570
|
-
},
|
|
16571
|
-
...makeTagProps(),
|
|
16572
|
-
...makeGroupProps({
|
|
16573
|
-
selectedClass: 'v-slide-group-item--active'
|
|
16574
|
-
})
|
|
16575
|
-
},
|
|
16653
|
+
props: makeVSlideGroupProps(),
|
|
16576
16654
|
emits: {
|
|
16577
16655
|
'update:modelValue': value => true
|
|
16578
16656
|
},
|
|
@@ -17281,10 +17359,6 @@ const VTabs = genericComponent()({
|
|
|
17281
17359
|
default: 'start'
|
|
17282
17360
|
},
|
|
17283
17361
|
color: String,
|
|
17284
|
-
direction: {
|
|
17285
|
-
type: String,
|
|
17286
|
-
default: 'horizontal'
|
|
17287
|
-
},
|
|
17288
17362
|
fixedTabs: Boolean,
|
|
17289
17363
|
items: {
|
|
17290
17364
|
type: Array,
|
|
@@ -17299,11 +17373,9 @@ const VTabs = genericComponent()({
|
|
|
17299
17373
|
},
|
|
17300
17374
|
hideSlider: Boolean,
|
|
17301
17375
|
sliderColor: String,
|
|
17302
|
-
|
|
17303
|
-
|
|
17304
|
-
|
|
17305
|
-
default: 'force'
|
|
17306
|
-
},
|
|
17376
|
+
...makeVSlideGroupProps({
|
|
17377
|
+
mandatory: 'force'
|
|
17378
|
+
}),
|
|
17307
17379
|
...makeDensityProps(),
|
|
17308
17380
|
...makeTagProps()
|
|
17309
17381
|
},
|
|
@@ -17333,26 +17405,27 @@ const VTabs = genericComponent()({
|
|
|
17333
17405
|
hideSlider: toRef(props, 'hideSlider')
|
|
17334
17406
|
}
|
|
17335
17407
|
});
|
|
17336
|
-
useRender(() =>
|
|
17337
|
-
|
|
17338
|
-
|
|
17339
|
-
|
|
17340
|
-
|
|
17341
|
-
'v-tabs
|
|
17342
|
-
|
|
17343
|
-
|
|
17344
|
-
|
|
17345
|
-
|
|
17346
|
-
|
|
17347
|
-
|
|
17348
|
-
|
|
17349
|
-
|
|
17350
|
-
|
|
17351
|
-
|
|
17352
|
-
|
|
17353
|
-
|
|
17354
|
-
|
|
17355
|
-
|
|
17408
|
+
useRender(() => {
|
|
17409
|
+
const [slideGroupProps] = VSlideGroup.filterProps(props);
|
|
17410
|
+
return createVNode(VSlideGroup, mergeProps(slideGroupProps, {
|
|
17411
|
+
"modelValue": model.value,
|
|
17412
|
+
"onUpdate:modelValue": $event => model.value = $event,
|
|
17413
|
+
"class": ['v-tabs', `v-tabs--${props.direction}`, `v-tabs--align-tabs-${props.alignTabs}`, {
|
|
17414
|
+
'v-tabs--fixed-tabs': props.fixedTabs,
|
|
17415
|
+
'v-tabs--grow': props.grow,
|
|
17416
|
+
'v-tabs--stacked': props.stacked
|
|
17417
|
+
}, densityClasses.value, backgroundColorClasses.value],
|
|
17418
|
+
"style": [{
|
|
17419
|
+
'--v-tabs-height': convertToUnit(props.height)
|
|
17420
|
+
}, backgroundColorStyles.value],
|
|
17421
|
+
"role": "tablist",
|
|
17422
|
+
"symbol": VTabsSymbol
|
|
17423
|
+
}), {
|
|
17424
|
+
default: () => [slots.default ? slots.default() : parsedItems.value.map(item => createVNode(VTab, mergeProps(item, {
|
|
17425
|
+
"key": item.title
|
|
17426
|
+
}), null))]
|
|
17427
|
+
});
|
|
17428
|
+
});
|
|
17356
17429
|
return {};
|
|
17357
17430
|
}
|
|
17358
17431
|
});
|
|
@@ -17429,6 +17502,7 @@ const VTextarea = genericComponent()({
|
|
|
17429
17502
|
validator: v => !isNaN(parseFloat(v))
|
|
17430
17503
|
},
|
|
17431
17504
|
suffix: String,
|
|
17505
|
+
modelModifiers: Object,
|
|
17432
17506
|
...makeVInputProps(),
|
|
17433
17507
|
...makeVFieldProps()
|
|
17434
17508
|
},
|
|
@@ -17468,7 +17542,7 @@ const VTextarea = genericComponent()({
|
|
|
17468
17542
|
const textareaRef = ref();
|
|
17469
17543
|
const isActive = computed(() => isFocused.value || props.persistentPlaceholder);
|
|
17470
17544
|
const messages = computed(() => {
|
|
17471
|
-
return props.messages.length ? props.messages :
|
|
17545
|
+
return props.messages.length ? props.messages : isFocused.value || props.persistentHint ? props.hint : '';
|
|
17472
17546
|
});
|
|
17473
17547
|
function onFocus() {
|
|
17474
17548
|
if (textareaRef.value !== document.activeElement) {
|
|
@@ -17493,12 +17567,14 @@ const VTextarea = genericComponent()({
|
|
|
17493
17567
|
}
|
|
17494
17568
|
function onInput(e) {
|
|
17495
17569
|
const el = e.target;
|
|
17496
|
-
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
17497
17570
|
model.value = el.value;
|
|
17498
|
-
|
|
17499
|
-
el.selectionStart
|
|
17500
|
-
|
|
17501
|
-
|
|
17571
|
+
if (props.modelModifiers?.trim) {
|
|
17572
|
+
const caretPosition = [el.selectionStart, el.selectionEnd];
|
|
17573
|
+
nextTick(() => {
|
|
17574
|
+
el.selectionStart = caretPosition[0];
|
|
17575
|
+
el.selectionEnd = caretPosition[1];
|
|
17576
|
+
});
|
|
17577
|
+
}
|
|
17502
17578
|
}
|
|
17503
17579
|
const sizerRef = ref();
|
|
17504
17580
|
function calculateInputHeight() {
|
|
@@ -18842,10 +18918,8 @@ const VDataTableRows = genericComponent()({
|
|
|
18842
18918
|
type: String,
|
|
18843
18919
|
default: '$vuetify.noDataText'
|
|
18844
18920
|
},
|
|
18845
|
-
rowHeight: Number
|
|
18846
|
-
|
|
18847
|
-
emits: {
|
|
18848
|
-
'click:row': (event, value) => true
|
|
18921
|
+
rowHeight: Number,
|
|
18922
|
+
'onClick:row': Function
|
|
18849
18923
|
},
|
|
18850
18924
|
setup(props, _ref) {
|
|
18851
18925
|
let {
|
|
@@ -18909,14 +18983,14 @@ const VDataTableRows = genericComponent()({
|
|
|
18909
18983
|
};
|
|
18910
18984
|
return createVNode(Fragment, null, [slots.item ? slots.item(slotProps) : createVNode(VDataTableRow, {
|
|
18911
18985
|
"key": `item_${item.value}`,
|
|
18912
|
-
"onClick": event => {
|
|
18986
|
+
"onClick": expandOnClick.value || props['onClick:row'] ? event => {
|
|
18913
18987
|
if (expandOnClick.value) {
|
|
18914
18988
|
toggleExpand(item);
|
|
18915
18989
|
}
|
|
18916
|
-
|
|
18990
|
+
props['onClick:row']?.(event, {
|
|
18917
18991
|
item
|
|
18918
18992
|
});
|
|
18919
|
-
},
|
|
18993
|
+
} : undefined,
|
|
18920
18994
|
"index": index,
|
|
18921
18995
|
"item": item
|
|
18922
18996
|
}, slots), isExpanded(item) && slots['expanded-row']?.(slotProps)]);
|
|
@@ -19219,6 +19293,7 @@ const makeVDataTableProps = propsFactory({
|
|
|
19219
19293
|
...makeDataTableItemProps(),
|
|
19220
19294
|
...makeDataTableHeaderProps(),
|
|
19221
19295
|
hideNoData: Boolean,
|
|
19296
|
+
hover: Boolean,
|
|
19222
19297
|
noDataText: {
|
|
19223
19298
|
type: String,
|
|
19224
19299
|
default: '$vuetify.noDataText'
|
|
@@ -19226,7 +19301,8 @@ const makeVDataTableProps = propsFactory({
|
|
|
19226
19301
|
height: [String, Number],
|
|
19227
19302
|
width: [String, Number],
|
|
19228
19303
|
fixedHeader: Boolean,
|
|
19229
|
-
fixedFooter: Boolean
|
|
19304
|
+
fixedFooter: Boolean,
|
|
19305
|
+
'onClick:row': Function
|
|
19230
19306
|
}, 'v-data-table');
|
|
19231
19307
|
const VDataTable = genericComponent()({
|
|
19232
19308
|
name: 'VDataTable',
|
|
@@ -19247,8 +19323,7 @@ const VDataTable = genericComponent()({
|
|
|
19247
19323
|
'update:sortBy': value => true,
|
|
19248
19324
|
'update:options': value => true,
|
|
19249
19325
|
'update:groupBy': value => true,
|
|
19250
|
-
'update:expanded': value => true
|
|
19251
|
-
'click:row': (event, value) => true
|
|
19326
|
+
'update:expanded': value => true
|
|
19252
19327
|
},
|
|
19253
19328
|
setup(props, _ref) {
|
|
19254
19329
|
let {
|
|
@@ -19343,7 +19418,8 @@ const VDataTable = genericComponent()({
|
|
|
19343
19418
|
}],
|
|
19344
19419
|
"fixedHeader": props.fixedHeader,
|
|
19345
19420
|
"fixedFooter": props.fixedFooter,
|
|
19346
|
-
"height": props.height
|
|
19421
|
+
"height": props.height,
|
|
19422
|
+
"hover": props.hover
|
|
19347
19423
|
}, {
|
|
19348
19424
|
top: slots.top,
|
|
19349
19425
|
default: slots.default ?? (() => createVNode(Fragment, null, [slots.colgroup?.({
|
|
@@ -19353,7 +19429,7 @@ const VDataTable = genericComponent()({
|
|
|
19353
19429
|
"multiSort": props.multiSort
|
|
19354
19430
|
}, slots)]), slots.thead?.(), createVNode("tbody", null, [slots.body ? slots.body() : createVNode(VDataTableRows, {
|
|
19355
19431
|
"items": paginatedItems.value,
|
|
19356
|
-
"onClick:row":
|
|
19432
|
+
"onClick:row": props['onClick:row']
|
|
19357
19433
|
}, slots)]), slots.tbody?.(), slots.tfoot?.()])),
|
|
19358
19434
|
bottom: slots.bottom ?? (() => createVNode(VDataTableFooter, null, {
|
|
19359
19435
|
prepend: slots['footer.prepend']
|
|
@@ -19464,7 +19540,7 @@ const VDataTableVirtual = genericComponent()({
|
|
|
19464
19540
|
'update:options': value => true,
|
|
19465
19541
|
'update:groupBy': value => true,
|
|
19466
19542
|
'update:expanded': value => true,
|
|
19467
|
-
'click:row': (
|
|
19543
|
+
'click:row': (e, value) => true
|
|
19468
19544
|
},
|
|
19469
19545
|
setup(props, _ref) {
|
|
19470
19546
|
let {
|
|
@@ -19548,8 +19624,10 @@ const VDataTableVirtual = genericComponent()({
|
|
|
19548
19624
|
"style": {
|
|
19549
19625
|
'--v-table-row-height': convertToUnit(itemHeight.value)
|
|
19550
19626
|
},
|
|
19627
|
+
"fixedHeader": props.fixedHeader,
|
|
19628
|
+
"fixedFooter": props.fixedFooter,
|
|
19551
19629
|
"height": props.height,
|
|
19552
|
-
"
|
|
19630
|
+
"hover": props.hover
|
|
19553
19631
|
}, {
|
|
19554
19632
|
top: slots.top,
|
|
19555
19633
|
wrapper: () => createVNode("div", {
|
|
@@ -19575,7 +19653,7 @@ const VDataTableVirtual = genericComponent()({
|
|
|
19575
19653
|
}
|
|
19576
19654
|
}, null)]), createVNode(VDataTableRows, {
|
|
19577
19655
|
"items": visibleItems.value,
|
|
19578
|
-
"onClick:row":
|
|
19656
|
+
"onClick:row": props['onClick:row']
|
|
19579
19657
|
}, slots), createVNode("tr", {
|
|
19580
19658
|
"style": {
|
|
19581
19659
|
height: convertToUnit(paddingBottom.value),
|
|
@@ -19625,7 +19703,7 @@ const VDataTableServer = genericComponent()({
|
|
|
19625
19703
|
'update:options': options => true,
|
|
19626
19704
|
'update:expanded': options => true,
|
|
19627
19705
|
'update:groupBy': value => true,
|
|
19628
|
-
'click:row': (
|
|
19706
|
+
'click:row': (e, value) => true
|
|
19629
19707
|
},
|
|
19630
19708
|
setup(props, _ref) {
|
|
19631
19709
|
let {
|
|
@@ -19703,7 +19781,8 @@ const VDataTableServer = genericComponent()({
|
|
|
19703
19781
|
}],
|
|
19704
19782
|
"fixedHeader": props.fixedHeader,
|
|
19705
19783
|
"fixedFooter": props.fixedFooter,
|
|
19706
|
-
"height": props.height
|
|
19784
|
+
"height": props.height,
|
|
19785
|
+
"hover": props.hover
|
|
19707
19786
|
}, {
|
|
19708
19787
|
top: slots.top,
|
|
19709
19788
|
default: slots.default ?? (() => createVNode(Fragment, null, [slots.colgroup?.({
|
|
@@ -19720,7 +19799,7 @@ const VDataTableServer = genericComponent()({
|
|
|
19720
19799
|
"role": "rowgroup"
|
|
19721
19800
|
}, [slots.body ? slots.body() : createVNode(VDataTableRows, {
|
|
19722
19801
|
"items": flatItems.value,
|
|
19723
|
-
"onClick:row":
|
|
19802
|
+
"onClick:row": props['onClick:row']
|
|
19724
19803
|
}, slots)]), slots.tbody?.(), slots.tfoot?.()])),
|
|
19725
19804
|
bottom: slots.bottom ?? (() => createVNode(VDataTableFooter, null, {
|
|
19726
19805
|
prepend: slots['footer.prepend']
|
|
@@ -19729,6 +19808,137 @@ const VDataTableServer = genericComponent()({
|
|
|
19729
19808
|
}
|
|
19730
19809
|
});
|
|
19731
19810
|
|
|
19811
|
+
// Types
|
|
19812
|
+
|
|
19813
|
+
const rootTypes = {
|
|
19814
|
+
actions: 'button@2',
|
|
19815
|
+
article: 'heading, paragraph',
|
|
19816
|
+
avatar: 'avatar',
|
|
19817
|
+
button: 'button',
|
|
19818
|
+
card: 'image, heading',
|
|
19819
|
+
'card-avatar': 'image, list-item-avatar',
|
|
19820
|
+
chip: 'chip',
|
|
19821
|
+
'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',
|
|
19822
|
+
'date-picker-options': 'text, avatar@2',
|
|
19823
|
+
'date-picker-days': 'avatar@28',
|
|
19824
|
+
heading: 'heading',
|
|
19825
|
+
image: 'image',
|
|
19826
|
+
'list-item': 'text',
|
|
19827
|
+
'list-item-avatar': 'avatar, text',
|
|
19828
|
+
'list-item-two-line': 'sentences',
|
|
19829
|
+
'list-item-avatar-two-line': 'avatar, sentences',
|
|
19830
|
+
'list-item-three-line': 'paragraph',
|
|
19831
|
+
'list-item-avatar-three-line': 'avatar, paragraph',
|
|
19832
|
+
paragraph: 'text@3',
|
|
19833
|
+
sentences: 'text@2',
|
|
19834
|
+
subtitle: 'text',
|
|
19835
|
+
table: 'table-heading, table-thead, table-tbody, table-tfoot',
|
|
19836
|
+
'table-heading': 'chip, text',
|
|
19837
|
+
'table-thead': 'heading@6',
|
|
19838
|
+
'table-tbody': 'table-row-divider@6',
|
|
19839
|
+
'table-row-divider': 'table-row, divider',
|
|
19840
|
+
'table-row': 'text@6',
|
|
19841
|
+
'table-tfoot': 'text@2, avatar@2',
|
|
19842
|
+
text: 'text'
|
|
19843
|
+
};
|
|
19844
|
+
function genBone(type) {
|
|
19845
|
+
let children = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
19846
|
+
return createVNode("div", {
|
|
19847
|
+
"class": ['v-skeleton-loader__bone', `v-skeleton-loader__${type}`]
|
|
19848
|
+
}, [children]);
|
|
19849
|
+
}
|
|
19850
|
+
function genBones(bone) {
|
|
19851
|
+
// e.g. 'text@3'
|
|
19852
|
+
const [type, length] = bone.split('@');
|
|
19853
|
+
|
|
19854
|
+
// Generate a length array based upon
|
|
19855
|
+
// value after @ in the bone string
|
|
19856
|
+
return Array.from({
|
|
19857
|
+
length
|
|
19858
|
+
}).map(() => genStructure(type));
|
|
19859
|
+
}
|
|
19860
|
+
function genStructure(type) {
|
|
19861
|
+
let children = [];
|
|
19862
|
+
if (!type) return children;
|
|
19863
|
+
|
|
19864
|
+
// TODO: figure out a better way to type this
|
|
19865
|
+
const bone = rootTypes[type];
|
|
19866
|
+
|
|
19867
|
+
// End of recursion, do nothing
|
|
19868
|
+
/* eslint-disable-next-line no-empty, brace-style */
|
|
19869
|
+
if (type === bone) ;
|
|
19870
|
+
// Array of values - e.g. 'heading, paragraph, text@2'
|
|
19871
|
+
else if (type.includes(',')) return mapBones(type);
|
|
19872
|
+
// Array of values - e.g. 'paragraph@4'
|
|
19873
|
+
else if (type.includes('@')) return genBones(type);
|
|
19874
|
+
// Array of values - e.g. 'card@2'
|
|
19875
|
+
else if (bone.includes(',')) children = mapBones(bone);
|
|
19876
|
+
// Array of values - e.g. 'list-item@2'
|
|
19877
|
+
else if (bone.includes('@')) children = genBones(bone);
|
|
19878
|
+
// Single value - e.g. 'card-heading'
|
|
19879
|
+
else if (bone) children.push(genStructure(bone));
|
|
19880
|
+
return [genBone(type, children)];
|
|
19881
|
+
}
|
|
19882
|
+
function mapBones(bones) {
|
|
19883
|
+
// Remove spaces and return array of structures
|
|
19884
|
+
return bones.replace(/\s/g, '').split(',').map(genStructure);
|
|
19885
|
+
}
|
|
19886
|
+
const VSkeletonLoader = genericComponent()({
|
|
19887
|
+
name: 'VSkeletonLoader',
|
|
19888
|
+
props: {
|
|
19889
|
+
boilerplate: Boolean,
|
|
19890
|
+
color: String,
|
|
19891
|
+
loading: Boolean,
|
|
19892
|
+
loadingText: {
|
|
19893
|
+
type: String,
|
|
19894
|
+
default: '$vuetify.loading'
|
|
19895
|
+
},
|
|
19896
|
+
type: {
|
|
19897
|
+
type: [String, Array],
|
|
19898
|
+
default: 'image'
|
|
19899
|
+
},
|
|
19900
|
+
...makeDimensionProps(),
|
|
19901
|
+
...makeElevationProps(),
|
|
19902
|
+
...makeThemeProps()
|
|
19903
|
+
},
|
|
19904
|
+
setup(props, _ref) {
|
|
19905
|
+
let {
|
|
19906
|
+
slots
|
|
19907
|
+
} = _ref;
|
|
19908
|
+
const {
|
|
19909
|
+
backgroundColorClasses,
|
|
19910
|
+
backgroundColorStyles
|
|
19911
|
+
} = useBackgroundColor(toRef(props, 'color'));
|
|
19912
|
+
const {
|
|
19913
|
+
dimensionStyles
|
|
19914
|
+
} = useDimension(props);
|
|
19915
|
+
const {
|
|
19916
|
+
elevationClasses
|
|
19917
|
+
} = useElevation(props);
|
|
19918
|
+
const {
|
|
19919
|
+
themeClasses
|
|
19920
|
+
} = provideTheme(props);
|
|
19921
|
+
const {
|
|
19922
|
+
t
|
|
19923
|
+
} = useLocale();
|
|
19924
|
+
const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
|
|
19925
|
+
useRender(() => {
|
|
19926
|
+
const isLoading = !slots.default || props.loading;
|
|
19927
|
+
return createVNode("div", {
|
|
19928
|
+
"class": ['v-skeleton-loader', {
|
|
19929
|
+
'v-skeleton-loader--boilerplate': props.boilerplate
|
|
19930
|
+
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
|
|
19931
|
+
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}],
|
|
19932
|
+
"aria-busy": !props.boilerplate ? isLoading : undefined,
|
|
19933
|
+
"aria-live": !props.boilerplate ? 'polite' : undefined,
|
|
19934
|
+
"aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
|
|
19935
|
+
"role": !props.boilerplate ? 'alert' : undefined
|
|
19936
|
+
}, [isLoading ? items.value : slots.default?.()]);
|
|
19937
|
+
});
|
|
19938
|
+
return {};
|
|
19939
|
+
}
|
|
19940
|
+
});
|
|
19941
|
+
|
|
19732
19942
|
const VVirtualScrollItem = genericComponent()({
|
|
19733
19943
|
name: 'VVirtualScrollItem',
|
|
19734
19944
|
props: {
|
|
@@ -19902,12 +20112,12 @@ const VVirtualScroll = genericComponent()({
|
|
|
19902
20112
|
|
|
19903
20113
|
var components = /*#__PURE__*/Object.freeze({
|
|
19904
20114
|
__proto__: null,
|
|
20115
|
+
VAlert: VAlert,
|
|
20116
|
+
VAlertTitle: VAlertTitle,
|
|
19905
20117
|
VApp: VApp,
|
|
19906
20118
|
VAppBar: VAppBar,
|
|
19907
20119
|
VAppBarNavIcon: VAppBarNavIcon,
|
|
19908
20120
|
VAppBarTitle: VAppBarTitle,
|
|
19909
|
-
VAlert: VAlert,
|
|
19910
|
-
VAlertTitle: VAlertTitle,
|
|
19911
20121
|
VAutocomplete: VAutocomplete,
|
|
19912
20122
|
VAvatar: VAvatar,
|
|
19913
20123
|
VBadge: VBadge,
|
|
@@ -19916,8 +20126,8 @@ var components = /*#__PURE__*/Object.freeze({
|
|
|
19916
20126
|
VBannerText: VBannerText,
|
|
19917
20127
|
VBottomNavigation: VBottomNavigation,
|
|
19918
20128
|
VBreadcrumbs: VBreadcrumbs,
|
|
19919
|
-
VBreadcrumbsItem: VBreadcrumbsItem,
|
|
19920
20129
|
VBreadcrumbsDivider: VBreadcrumbsDivider,
|
|
20130
|
+
VBreadcrumbsItem: VBreadcrumbsItem,
|
|
19921
20131
|
VBtn: VBtn,
|
|
19922
20132
|
VBtnGroup: VBtnGroup,
|
|
19923
20133
|
VBtnToggle: VBtnToggle,
|
|
@@ -19933,41 +20143,51 @@ var components = /*#__PURE__*/Object.freeze({
|
|
|
19933
20143
|
VCheckboxBtn: VCheckboxBtn,
|
|
19934
20144
|
VChip: VChip,
|
|
19935
20145
|
VChipGroup: VChipGroup,
|
|
20146
|
+
VClassIcon: VClassIcon,
|
|
19936
20147
|
VCode: VCode,
|
|
20148
|
+
VCol: VCol,
|
|
19937
20149
|
VColorPicker: VColorPicker,
|
|
19938
20150
|
VCombobox: VCombobox,
|
|
20151
|
+
VComponentIcon: VComponentIcon,
|
|
20152
|
+
VContainer: VContainer,
|
|
19939
20153
|
VCounter: VCounter,
|
|
20154
|
+
VDataTable: VDataTable,
|
|
20155
|
+
VDataTableFooter: VDataTableFooter,
|
|
20156
|
+
VDataTableRow: VDataTableRow,
|
|
20157
|
+
VDataTableRows: VDataTableRows,
|
|
20158
|
+
VDataTableServer: VDataTableServer,
|
|
20159
|
+
VDataTableVirtual: VDataTableVirtual,
|
|
19940
20160
|
VDefaultsProvider: VDefaultsProvider,
|
|
19941
20161
|
VDialog: VDialog,
|
|
20162
|
+
VDialogBottomTransition: VDialogBottomTransition,
|
|
20163
|
+
VDialogTopTransition: VDialogTopTransition,
|
|
20164
|
+
VDialogTransition: VDialogTransition,
|
|
19942
20165
|
VDivider: VDivider,
|
|
19943
|
-
|
|
20166
|
+
VExpandTransition: VExpandTransition,
|
|
20167
|
+
VExpandXTransition: VExpandXTransition,
|
|
19944
20168
|
VExpansionPanel: VExpansionPanel,
|
|
19945
20169
|
VExpansionPanelText: VExpansionPanelText,
|
|
19946
20170
|
VExpansionPanelTitle: VExpansionPanelTitle,
|
|
20171
|
+
VExpansionPanels: VExpansionPanels,
|
|
20172
|
+
VFabTransition: VFabTransition,
|
|
20173
|
+
VFadeTransition: VFadeTransition,
|
|
19947
20174
|
VField: VField,
|
|
19948
20175
|
VFieldLabel: VFieldLabel,
|
|
19949
20176
|
VFileInput: VFileInput,
|
|
19950
20177
|
VFooter: VFooter,
|
|
19951
20178
|
VForm: VForm,
|
|
19952
|
-
VContainer: VContainer,
|
|
19953
|
-
VCol: VCol,
|
|
19954
|
-
VRow: VRow,
|
|
19955
|
-
VSpacer: VSpacer,
|
|
19956
20179
|
VHover: VHover,
|
|
19957
20180
|
VIcon: VIcon,
|
|
19958
|
-
VComponentIcon: VComponentIcon,
|
|
19959
|
-
VSvgIcon: VSvgIcon,
|
|
19960
|
-
VLigatureIcon: VLigatureIcon,
|
|
19961
|
-
VClassIcon: VClassIcon,
|
|
19962
20181
|
VImg: VImg,
|
|
19963
20182
|
VInput: VInput,
|
|
19964
|
-
VItemGroup: VItemGroup,
|
|
19965
20183
|
VItem: VItem,
|
|
20184
|
+
VItemGroup: VItemGroup,
|
|
19966
20185
|
VKbd: VKbd,
|
|
19967
20186
|
VLabel: VLabel,
|
|
19968
20187
|
VLayout: VLayout,
|
|
19969
20188
|
VLayoutItem: VLayoutItem,
|
|
19970
20189
|
VLazy: VLazy,
|
|
20190
|
+
VLigatureIcon: VLigatureIcon,
|
|
19971
20191
|
VList: VList,
|
|
19972
20192
|
VListGroup: VListGroup,
|
|
19973
20193
|
VListImg: VListImg,
|
|
@@ -19993,54 +20213,45 @@ var components = /*#__PURE__*/Object.freeze({
|
|
|
19993
20213
|
VRangeSlider: VRangeSlider,
|
|
19994
20214
|
VRating: VRating,
|
|
19995
20215
|
VResponsive: VResponsive,
|
|
20216
|
+
VRow: VRow,
|
|
20217
|
+
VScaleTransition: VScaleTransition,
|
|
20218
|
+
VScrollXReverseTransition: VScrollXReverseTransition,
|
|
20219
|
+
VScrollXTransition: VScrollXTransition,
|
|
20220
|
+
VScrollYReverseTransition: VScrollYReverseTransition,
|
|
20221
|
+
VScrollYTransition: VScrollYTransition,
|
|
19996
20222
|
VSelect: VSelect,
|
|
19997
20223
|
VSelectionControl: VSelectionControl,
|
|
19998
20224
|
VSelectionControlGroup: VSelectionControlGroup,
|
|
19999
20225
|
VSheet: VSheet,
|
|
20226
|
+
VSkeletonLoader: VSkeletonLoader,
|
|
20000
20227
|
VSlideGroup: VSlideGroup,
|
|
20001
20228
|
VSlideGroupItem: VSlideGroupItem,
|
|
20229
|
+
VSlideXReverseTransition: VSlideXReverseTransition,
|
|
20230
|
+
VSlideXTransition: VSlideXTransition,
|
|
20231
|
+
VSlideYReverseTransition: VSlideYReverseTransition,
|
|
20232
|
+
VSlideYTransition: VSlideYTransition,
|
|
20002
20233
|
VSlider: VSlider,
|
|
20003
20234
|
VSnackbar: VSnackbar,
|
|
20235
|
+
VSpacer: VSpacer,
|
|
20236
|
+
VSvgIcon: VSvgIcon,
|
|
20004
20237
|
VSwitch: VSwitch,
|
|
20005
20238
|
VSystemBar: VSystemBar,
|
|
20006
|
-
VTabs: VTabs,
|
|
20007
20239
|
VTab: VTab,
|
|
20008
20240
|
VTable: VTable,
|
|
20009
|
-
|
|
20241
|
+
VTabs: VTabs,
|
|
20010
20242
|
VTextField: VTextField,
|
|
20243
|
+
VTextarea: VTextarea,
|
|
20011
20244
|
VThemeProvider: VThemeProvider,
|
|
20012
20245
|
VTimeline: VTimeline,
|
|
20013
20246
|
VTimelineItem: VTimelineItem,
|
|
20014
20247
|
VToolbar: VToolbar,
|
|
20015
|
-
VToolbarTitle: VToolbarTitle,
|
|
20016
20248
|
VToolbarItems: VToolbarItems,
|
|
20249
|
+
VToolbarTitle: VToolbarTitle,
|
|
20017
20250
|
VTooltip: VTooltip,
|
|
20018
20251
|
VValidation: VValidation,
|
|
20252
|
+
VVirtualScroll: VVirtualScroll,
|
|
20019
20253
|
VWindow: VWindow,
|
|
20020
|
-
VWindowItem: VWindowItem
|
|
20021
|
-
VDialogTransition: VDialogTransition,
|
|
20022
|
-
VFabTransition: VFabTransition,
|
|
20023
|
-
VDialogBottomTransition: VDialogBottomTransition,
|
|
20024
|
-
VDialogTopTransition: VDialogTopTransition,
|
|
20025
|
-
VFadeTransition: VFadeTransition,
|
|
20026
|
-
VScaleTransition: VScaleTransition,
|
|
20027
|
-
VScrollXTransition: VScrollXTransition,
|
|
20028
|
-
VScrollXReverseTransition: VScrollXReverseTransition,
|
|
20029
|
-
VScrollYTransition: VScrollYTransition,
|
|
20030
|
-
VScrollYReverseTransition: VScrollYReverseTransition,
|
|
20031
|
-
VSlideXTransition: VSlideXTransition,
|
|
20032
|
-
VSlideXReverseTransition: VSlideXReverseTransition,
|
|
20033
|
-
VSlideYTransition: VSlideYTransition,
|
|
20034
|
-
VSlideYReverseTransition: VSlideYReverseTransition,
|
|
20035
|
-
VExpandTransition: VExpandTransition,
|
|
20036
|
-
VExpandXTransition: VExpandXTransition,
|
|
20037
|
-
VDataTable: VDataTable,
|
|
20038
|
-
VDataTableRows: VDataTableRows,
|
|
20039
|
-
VDataTableRow: VDataTableRow,
|
|
20040
|
-
VDataTableVirtual: VDataTableVirtual,
|
|
20041
|
-
VDataTableServer: VDataTableServer,
|
|
20042
|
-
VDataTableFooter: VDataTableFooter,
|
|
20043
|
-
VVirtualScroll: VVirtualScroll
|
|
20254
|
+
VWindowItem: VWindowItem
|
|
20044
20255
|
});
|
|
20045
20256
|
|
|
20046
20257
|
// Types
|
|
@@ -20251,7 +20462,7 @@ function createVuetify$1() {
|
|
|
20251
20462
|
locale
|
|
20252
20463
|
};
|
|
20253
20464
|
}
|
|
20254
|
-
const version$1 = "3.1.
|
|
20465
|
+
const version$1 = "3.1.14";
|
|
20255
20466
|
createVuetify$1.version = version$1;
|
|
20256
20467
|
|
|
20257
20468
|
// Vue's inject() can only be used in setup
|
|
@@ -20263,7 +20474,7 @@ function inject(key) {
|
|
|
20263
20474
|
}
|
|
20264
20475
|
}
|
|
20265
20476
|
|
|
20266
|
-
const version = "3.1.
|
|
20477
|
+
const version = "3.1.14";
|
|
20267
20478
|
|
|
20268
20479
|
const createVuetify = function () {
|
|
20269
20480
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|