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.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
|
*/
|
|
@@ -343,7 +343,7 @@
|
|
|
343
343
|
}
|
|
344
344
|
const onRE = /^on[^a-z]/;
|
|
345
345
|
const isOn = key => onRE.test(key);
|
|
346
|
-
const EventProp = [Function, Array];
|
|
346
|
+
const EventProp = () => [Function, Array];
|
|
347
347
|
function hasEvent(props, name) {
|
|
348
348
|
name = 'on' + vue.capitalize(name);
|
|
349
349
|
return !!(props[name] || props[`${name}Once`] || props[`${name}Capture`] || props[`${name}OnceCapture`] || props[`${name}CaptureOnce`]);
|
|
@@ -983,7 +983,7 @@
|
|
|
983
983
|
}
|
|
984
984
|
return properties;
|
|
985
985
|
}
|
|
986
|
-
return mergeDeep(properties.prev, properties);
|
|
986
|
+
return properties.prev ? mergeDeep(properties.prev, properties) : properties;
|
|
987
987
|
});
|
|
988
988
|
vue.provide(DefaultsSymbol, newDefaults);
|
|
989
989
|
return newDefaults;
|
|
@@ -1703,7 +1703,7 @@
|
|
|
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 @@
|
|
|
1841
1841
|
});
|
|
1842
1842
|
const model = vue.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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 ? vue.TransitionGroup : vue.Transition;
|
|
2231
2281
|
return vue.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 @@
|
|
|
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 @@
|
|
|
2297
2307
|
} = _ref2;
|
|
2298
2308
|
return () => {
|
|
2299
2309
|
return vue.h(vue.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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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
|
vue.nextTick(() => {
|
|
6175
6204
|
el.selectionStart = caretPosition[0];
|
|
@@ -6234,9 +6263,6 @@
|
|
|
6234
6263
|
...slotProps
|
|
6235
6264
|
}
|
|
6236
6265
|
} = _ref3;
|
|
6237
|
-
const placeholder = vue.computed(() => {
|
|
6238
|
-
return (props.persistentPlaceholder || isFocused.value) && !isDirty.value ? props.placeholder : '';
|
|
6239
|
-
});
|
|
6240
6266
|
const inputNode = vue.withDirectives(vue.createVNode("input", vue.mergeProps({
|
|
6241
6267
|
"ref": inputRef,
|
|
6242
6268
|
"value": model.value,
|
|
@@ -6245,7 +6271,7 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
7561
7587
|
} = useNestedItem(vue.toRef(props, 'value'), true);
|
|
7562
7588
|
const id = vue.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 @@
|
|
|
7570
7599
|
id: id.value
|
|
7571
7600
|
}));
|
|
7572
7601
|
const toggleIcon = vue.computed(() => isOpen.value ? props.collapseIcon : props.expandIcon);
|
|
7602
|
+
const activatorDefaults = vue.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(() => vue.createVNode(props.tag, {
|
|
7574
7614
|
"class": ['v-list-group', {
|
|
7575
7615
|
'v-list-group--prepend': list?.hasPrepend.value,
|
|
@@ -7579,17 +7619,7 @@
|
|
|
7579
7619
|
}]
|
|
7580
7620
|
}, {
|
|
7581
7621
|
default: () => [slots.activator && vue.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: () => [vue.createVNode(VListGroupActivator, null, {
|
|
7595
7625
|
default: () => [slots.activator({
|
|
@@ -7597,7 +7627,12 @@
|
|
|
7597
7627
|
isOpen: isOpen.value
|
|
7598
7628
|
})]
|
|
7599
7629
|
})]
|
|
7600
|
-
}), vue.createVNode(
|
|
7630
|
+
}), vue.createVNode(MaybeTransition, {
|
|
7631
|
+
"transition": {
|
|
7632
|
+
component: VExpandTransition
|
|
7633
|
+
},
|
|
7634
|
+
"disabled": !isBooted.value
|
|
7635
|
+
}, {
|
|
7601
7636
|
default: () => [vue.withDirectives(vue.createVNode("div", {
|
|
7602
7637
|
"class": "v-list-group__items",
|
|
7603
7638
|
"role": "group",
|
|
@@ -7645,8 +7680,8 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
9895
9932
|
});
|
|
9896
9933
|
});
|
|
9897
9934
|
const selected = vue.computed(() => selections.value.map(selection => selection.props.value));
|
|
9935
|
+
const isFocused = vue.ref(false);
|
|
9936
|
+
let keyboardLookupPrefix = '';
|
|
9937
|
+
let keyboardLookupLastTime;
|
|
9898
9938
|
const displayItems = vue.computed(() => {
|
|
9899
9939
|
if (props.hideSelected) {
|
|
9900
9940
|
return items.value.filter(item => !selections.value.some(s => s === item));
|
|
@@ -9931,6 +9971,26 @@
|
|
|
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 @@
|
|
|
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 vue.createVNode(VTextField, vue.mergeProps({
|
|
9965
10027
|
"ref": vTextFieldRef
|
|
9966
10028
|
}, textFieldProps, {
|
|
@@ -9968,8 +10030,10 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
10026
10091
|
} = _ref2;
|
|
10027
10092
|
return props.multiple && !props.hideSelected ? vue.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 @@
|
|
|
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 vue.createVNode(VTextField, vue.mergeProps({
|
|
10358
10425
|
"ref": vTextFieldRef
|
|
@@ -10362,7 +10429,7 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
10402
10470
|
}, {
|
|
10403
10471
|
default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? vue.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: vue.mergeProps(item.props, {
|
|
10409
10476
|
onClick: () => select(item)
|
|
10410
10477
|
})
|
|
10411
10478
|
}) ?? vue.createVNode(VListItem, vue.mergeProps({
|
|
10412
|
-
"key":
|
|
10479
|
+
"key": item.value
|
|
10413
10480
|
}, item.props, {
|
|
10414
10481
|
"onClick": () => select(item)
|
|
10415
10482
|
}), {
|
|
@@ -10419,7 +10486,8 @@
|
|
|
10419
10486
|
} = _ref2;
|
|
10420
10487
|
return props.multiple && !props.hideSelected ? vue.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 @@
|
|
|
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 vue.createVNode(props.tag, vue.mergeProps({
|
|
10550
10618
|
"class": ['v-badge', {
|
|
@@ -11341,47 +11409,48 @@
|
|
|
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 @@
|
|
|
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 = vue.inject(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 = vue.ref(false);
|
|
11543
|
-
const hasTransition = vue.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
|
-
vue.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 = vue.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(() => vue.createVNode(MaybeTransition, {
|
|
11608
|
-
"transition": isBooted.value && transition.value
|
|
11609
|
-
}, {
|
|
11610
|
-
default: () => [vue.withDirectives(vue.createVNode("div", {
|
|
11611
|
-
"class": ['v-window-item', groupItem.selectedClass.value]
|
|
11612
|
-
}, [hasContent.value && slots.default?.()]), [[vue.vShow, groupItem.isSelected.value]])]
|
|
11613
|
-
}));
|
|
11614
|
-
return {};
|
|
11615
|
-
}
|
|
11616
|
-
});
|
|
11617
|
-
|
|
11618
11581
|
// Types
|
|
11619
11582
|
|
|
11620
11583
|
const VCarousel = genericComponent()({
|
|
@@ -11635,16 +11598,15 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 = vue.inject(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 = vue.ref(false);
|
|
11731
|
+
const hasTransition = vue.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
|
+
vue.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 = vue.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(() => vue.createVNode(MaybeTransition, {
|
|
11796
|
+
"transition": transition.value,
|
|
11797
|
+
"disabled": !isBooted.value
|
|
11798
|
+
}, {
|
|
11799
|
+
default: () => [vue.withDirectives(vue.createVNode("div", {
|
|
11800
|
+
"class": ['v-window-item', groupItem.selectedClass.value]
|
|
11801
|
+
}, [hasContent.value && slots.default?.()]), [[vue.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(() => vue.createVNode(VWindowItem, {
|
|
11821
|
+
"class": "v-carousel-item",
|
|
11822
|
+
"value": props.value
|
|
11823
|
+
}, {
|
|
11824
|
+
default: () => [vue.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(vue.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(() => vue.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 @@
|
|
|
12300
12423
|
});
|
|
12301
12424
|
const min = vue.computed(() => parseFloat(props.min));
|
|
12302
12425
|
const max = vue.computed(() => parseFloat(props.max));
|
|
12303
|
-
const step = vue.computed(() => props.step > 0 ? parseFloat(props.step) : 0);
|
|
12426
|
+
const step = vue.computed(() => +props.step > 0 ? parseFloat(props.step) : 0);
|
|
12304
12427
|
const decimals = vue.computed(() => Math.max(getDecimals(step.value), getDecimals(min.value)));
|
|
12305
12428
|
const thumbSize = vue.computed(() => parseInt(props.thumbSize, 10));
|
|
12306
12429
|
const tickSize = vue.computed(() => parseInt(props.tickSize, 10));
|
|
@@ -12794,7 +12917,7 @@
|
|
|
12794
12917
|
}), {
|
|
12795
12918
|
...slots,
|
|
12796
12919
|
prepend: hasPrepend ? slotProps => vue.createVNode(vue.Fragment, null, [slots.label?.(slotProps) ?? props.label ? vue.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 @@
|
|
|
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(vue.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(() => vue.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 @@
|
|
|
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 @@
|
|
|
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 vue.createVNode(VSheet, vue.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 && vue.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) && vue.createVNode("div", {
|
|
13506
|
+
"key": "controls",
|
|
13507
|
+
"class": "v-color-picker__controls"
|
|
13508
|
+
}, [!props.hideSliders && vue.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 && vue.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 && vue.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 @@
|
|
|
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 @@
|
|
|
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 vue.createVNode(VTextField, vue.mergeProps({
|
|
13716
13787
|
"ref": vTextFieldRef
|
|
@@ -13720,7 +13791,7 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
13759
13831
|
}, {
|
|
13760
13832
|
default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? vue.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: vue.mergeProps(item.props, {
|
|
13766
13837
|
onClick: () => select(item)
|
|
13767
13838
|
})
|
|
13768
13839
|
}) ?? vue.createVNode(VListItem, vue.mergeProps({
|
|
13769
|
-
"key":
|
|
13840
|
+
"key": item.value
|
|
13770
13841
|
}, item.props, {
|
|
13771
13842
|
"onClick": () => select(item)
|
|
13772
13843
|
}), {
|
|
@@ -13776,7 +13847,8 @@
|
|
|
13776
13847
|
} = _ref2;
|
|
13777
13848
|
return props.multiple && !props.hideSelected ? vue.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 @@
|
|
|
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 @@
|
|
|
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 vue.createVNode(vue.Fragment, null, [vue.createVNode(props.tag, vue.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 @@
|
|
|
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 @@
|
|
|
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
|
vue.nextTick(updateFocus);
|
|
15846
15923
|
} else if (e.key === keyValues.right && !props.disabled && page.value < start.value + length.value - 1) {
|
|
@@ -16544,35 +16621,36 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
17333
17405
|
hideSlider: vue.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 vue.createVNode(VSlideGroup, vue.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 => vue.createVNode(VTab, vue.mergeProps(item, {
|
|
17425
|
+
"key": item.title
|
|
17426
|
+
}), null))]
|
|
17427
|
+
});
|
|
17428
|
+
});
|
|
17356
17429
|
return {};
|
|
17357
17430
|
}
|
|
17358
17431
|
});
|
|
@@ -17429,6 +17502,7 @@
|
|
|
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 @@
|
|
|
17468
17542
|
const textareaRef = vue.ref();
|
|
17469
17543
|
const isActive = vue.computed(() => isFocused.value || props.persistentPlaceholder);
|
|
17470
17544
|
const messages = vue.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 @@
|
|
|
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
|
+
vue.nextTick(() => {
|
|
17574
|
+
el.selectionStart = caretPosition[0];
|
|
17575
|
+
el.selectionEnd = caretPosition[1];
|
|
17576
|
+
});
|
|
17577
|
+
}
|
|
17502
17578
|
}
|
|
17503
17579
|
const sizerRef = vue.ref();
|
|
17504
17580
|
function calculateInputHeight() {
|
|
@@ -17989,12 +18065,12 @@
|
|
|
17989
18065
|
|
|
17990
18066
|
var components = /*#__PURE__*/Object.freeze({
|
|
17991
18067
|
__proto__: null,
|
|
18068
|
+
VAlert: VAlert,
|
|
18069
|
+
VAlertTitle: VAlertTitle,
|
|
17992
18070
|
VApp: VApp,
|
|
17993
18071
|
VAppBar: VAppBar,
|
|
17994
18072
|
VAppBarNavIcon: VAppBarNavIcon,
|
|
17995
18073
|
VAppBarTitle: VAppBarTitle,
|
|
17996
|
-
VAlert: VAlert,
|
|
17997
|
-
VAlertTitle: VAlertTitle,
|
|
17998
18074
|
VAutocomplete: VAutocomplete,
|
|
17999
18075
|
VAvatar: VAvatar,
|
|
18000
18076
|
VBadge: VBadge,
|
|
@@ -18003,8 +18079,8 @@
|
|
|
18003
18079
|
VBannerText: VBannerText,
|
|
18004
18080
|
VBottomNavigation: VBottomNavigation,
|
|
18005
18081
|
VBreadcrumbs: VBreadcrumbs,
|
|
18006
|
-
VBreadcrumbsItem: VBreadcrumbsItem,
|
|
18007
18082
|
VBreadcrumbsDivider: VBreadcrumbsDivider,
|
|
18083
|
+
VBreadcrumbsItem: VBreadcrumbsItem,
|
|
18008
18084
|
VBtn: VBtn,
|
|
18009
18085
|
VBtnGroup: VBtnGroup,
|
|
18010
18086
|
VBtnToggle: VBtnToggle,
|
|
@@ -18020,41 +18096,45 @@
|
|
|
18020
18096
|
VCheckboxBtn: VCheckboxBtn,
|
|
18021
18097
|
VChip: VChip,
|
|
18022
18098
|
VChipGroup: VChipGroup,
|
|
18099
|
+
VClassIcon: VClassIcon,
|
|
18023
18100
|
VCode: VCode,
|
|
18101
|
+
VCol: VCol,
|
|
18024
18102
|
VColorPicker: VColorPicker,
|
|
18025
18103
|
VCombobox: VCombobox,
|
|
18104
|
+
VComponentIcon: VComponentIcon,
|
|
18105
|
+
VContainer: VContainer,
|
|
18026
18106
|
VCounter: VCounter,
|
|
18027
18107
|
VDefaultsProvider: VDefaultsProvider,
|
|
18028
18108
|
VDialog: VDialog,
|
|
18109
|
+
VDialogBottomTransition: VDialogBottomTransition,
|
|
18110
|
+
VDialogTopTransition: VDialogTopTransition,
|
|
18111
|
+
VDialogTransition: VDialogTransition,
|
|
18029
18112
|
VDivider: VDivider,
|
|
18030
|
-
|
|
18113
|
+
VExpandTransition: VExpandTransition,
|
|
18114
|
+
VExpandXTransition: VExpandXTransition,
|
|
18031
18115
|
VExpansionPanel: VExpansionPanel,
|
|
18032
18116
|
VExpansionPanelText: VExpansionPanelText,
|
|
18033
18117
|
VExpansionPanelTitle: VExpansionPanelTitle,
|
|
18118
|
+
VExpansionPanels: VExpansionPanels,
|
|
18119
|
+
VFabTransition: VFabTransition,
|
|
18120
|
+
VFadeTransition: VFadeTransition,
|
|
18034
18121
|
VField: VField,
|
|
18035
18122
|
VFieldLabel: VFieldLabel,
|
|
18036
18123
|
VFileInput: VFileInput,
|
|
18037
18124
|
VFooter: VFooter,
|
|
18038
18125
|
VForm: VForm,
|
|
18039
|
-
VContainer: VContainer,
|
|
18040
|
-
VCol: VCol,
|
|
18041
|
-
VRow: VRow,
|
|
18042
|
-
VSpacer: VSpacer,
|
|
18043
18126
|
VHover: VHover,
|
|
18044
18127
|
VIcon: VIcon,
|
|
18045
|
-
VComponentIcon: VComponentIcon,
|
|
18046
|
-
VSvgIcon: VSvgIcon,
|
|
18047
|
-
VLigatureIcon: VLigatureIcon,
|
|
18048
|
-
VClassIcon: VClassIcon,
|
|
18049
18128
|
VImg: VImg,
|
|
18050
18129
|
VInput: VInput,
|
|
18051
|
-
VItemGroup: VItemGroup,
|
|
18052
18130
|
VItem: VItem,
|
|
18131
|
+
VItemGroup: VItemGroup,
|
|
18053
18132
|
VKbd: VKbd,
|
|
18054
18133
|
VLabel: VLabel,
|
|
18055
18134
|
VLayout: VLayout,
|
|
18056
18135
|
VLayoutItem: VLayoutItem,
|
|
18057
18136
|
VLazy: VLazy,
|
|
18137
|
+
VLigatureIcon: VLigatureIcon,
|
|
18058
18138
|
VList: VList,
|
|
18059
18139
|
VListGroup: VListGroup,
|
|
18060
18140
|
VListImg: VListImg,
|
|
@@ -18080,47 +18160,43 @@
|
|
|
18080
18160
|
VRangeSlider: VRangeSlider,
|
|
18081
18161
|
VRating: VRating,
|
|
18082
18162
|
VResponsive: VResponsive,
|
|
18163
|
+
VRow: VRow,
|
|
18164
|
+
VScaleTransition: VScaleTransition,
|
|
18165
|
+
VScrollXReverseTransition: VScrollXReverseTransition,
|
|
18166
|
+
VScrollXTransition: VScrollXTransition,
|
|
18167
|
+
VScrollYReverseTransition: VScrollYReverseTransition,
|
|
18168
|
+
VScrollYTransition: VScrollYTransition,
|
|
18083
18169
|
VSelect: VSelect,
|
|
18084
18170
|
VSelectionControl: VSelectionControl,
|
|
18085
18171
|
VSelectionControlGroup: VSelectionControlGroup,
|
|
18086
18172
|
VSheet: VSheet,
|
|
18087
18173
|
VSlideGroup: VSlideGroup,
|
|
18088
18174
|
VSlideGroupItem: VSlideGroupItem,
|
|
18175
|
+
VSlideXReverseTransition: VSlideXReverseTransition,
|
|
18176
|
+
VSlideXTransition: VSlideXTransition,
|
|
18177
|
+
VSlideYReverseTransition: VSlideYReverseTransition,
|
|
18178
|
+
VSlideYTransition: VSlideYTransition,
|
|
18089
18179
|
VSlider: VSlider,
|
|
18090
18180
|
VSnackbar: VSnackbar,
|
|
18181
|
+
VSpacer: VSpacer,
|
|
18182
|
+
VSvgIcon: VSvgIcon,
|
|
18091
18183
|
VSwitch: VSwitch,
|
|
18092
18184
|
VSystemBar: VSystemBar,
|
|
18093
|
-
VTabs: VTabs,
|
|
18094
18185
|
VTab: VTab,
|
|
18095
18186
|
VTable: VTable,
|
|
18096
|
-
|
|
18187
|
+
VTabs: VTabs,
|
|
18097
18188
|
VTextField: VTextField,
|
|
18189
|
+
VTextarea: VTextarea,
|
|
18098
18190
|
VThemeProvider: VThemeProvider,
|
|
18099
18191
|
VTimeline: VTimeline,
|
|
18100
18192
|
VTimelineItem: VTimelineItem,
|
|
18101
18193
|
VToolbar: VToolbar,
|
|
18102
|
-
VToolbarTitle: VToolbarTitle,
|
|
18103
18194
|
VToolbarItems: VToolbarItems,
|
|
18195
|
+
VToolbarTitle: VToolbarTitle,
|
|
18104
18196
|
VTooltip: VTooltip,
|
|
18105
18197
|
VValidation: VValidation,
|
|
18106
18198
|
VWindow: VWindow,
|
|
18107
|
-
VWindowItem: VWindowItem
|
|
18108
|
-
VDialogTransition: VDialogTransition,
|
|
18109
|
-
VFabTransition: VFabTransition,
|
|
18110
|
-
VDialogBottomTransition: VDialogBottomTransition,
|
|
18111
|
-
VDialogTopTransition: VDialogTopTransition,
|
|
18112
|
-
VFadeTransition: VFadeTransition,
|
|
18113
|
-
VScaleTransition: VScaleTransition,
|
|
18114
|
-
VScrollXTransition: VScrollXTransition,
|
|
18115
|
-
VScrollXReverseTransition: VScrollXReverseTransition,
|
|
18116
|
-
VScrollYTransition: VScrollYTransition,
|
|
18117
|
-
VScrollYReverseTransition: VScrollYReverseTransition,
|
|
18118
|
-
VSlideXTransition: VSlideXTransition,
|
|
18119
|
-
VSlideXReverseTransition: VSlideXReverseTransition,
|
|
18120
|
-
VSlideYTransition: VSlideYTransition,
|
|
18121
|
-
VSlideYReverseTransition: VSlideYReverseTransition,
|
|
18122
|
-
VExpandTransition: VExpandTransition,
|
|
18123
|
-
VExpandXTransition: VExpandXTransition
|
|
18199
|
+
VWindowItem: VWindowItem
|
|
18124
18200
|
});
|
|
18125
18201
|
|
|
18126
18202
|
// Types
|
|
@@ -18331,7 +18407,7 @@
|
|
|
18331
18407
|
locale
|
|
18332
18408
|
};
|
|
18333
18409
|
}
|
|
18334
|
-
const version$1 = "3.1.
|
|
18410
|
+
const version$1 = "3.1.14";
|
|
18335
18411
|
createVuetify$1.version = version$1;
|
|
18336
18412
|
|
|
18337
18413
|
// Vue's inject() can only be used in setup
|
|
@@ -18351,7 +18427,7 @@
|
|
|
18351
18427
|
...options
|
|
18352
18428
|
});
|
|
18353
18429
|
};
|
|
18354
|
-
const version = "3.1.
|
|
18430
|
+
const version = "3.1.14";
|
|
18355
18431
|
createVuetify.version = version;
|
|
18356
18432
|
|
|
18357
18433
|
exports.components = components;
|
|
@@ -18364,7 +18440,5 @@
|
|
|
18364
18440
|
exports.useTheme = useTheme;
|
|
18365
18441
|
exports.version = version;
|
|
18366
18442
|
|
|
18367
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
18368
|
-
|
|
18369
18443
|
}));
|
|
18370
18444
|
//# sourceMappingURL=vuetify.js.map
|