@vuetify/nightly 3.2.0-dev-20230322.0 → 3.2.0-dev-20230405.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -2
- package/dist/_component-variables-labs.sass +2 -1
- package/dist/json/attributes.json +4333 -4117
- package/dist/json/importMap-labs.json +8 -4
- package/dist/json/importMap.json +176 -176
- package/dist/json/tags.json +603 -544
- package/dist/json/web-types.json +14307 -13728
- package/dist/vuetify-labs.css +331 -113
- package/dist/vuetify-labs.d.ts +1881 -993
- package/dist/vuetify-labs.esm.js +686 -488
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +685 -489
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +108 -110
- package/dist/vuetify.d.ts +1393 -764
- package/dist/vuetify.esm.js +523 -474
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +523 -476
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +353 -346
- 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 +2 -3
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +39 -39
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.css +1 -0
- package/lib/components/VBadge/VBadge.mjs +1 -1
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/VBadge.sass +1 -0
- 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 +2 -2
- 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 +41 -50
- package/lib/components/VChip/VChip.mjs.map +1 -1
- 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 +11 -4
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +39 -39
- 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.css +11 -18
- package/lib/components/VDialog/VDialog.mjs +2 -2
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/VDialog.sass +8 -15
- 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 +5 -1
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +9 -9
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VGrid/VCol.mjs +2 -2
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +2 -2
- 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.map +1 -1
- package/lib/components/VImg/index.d.ts +9 -9
- package/lib/components/VInput/InputIcon.mjs.map +1 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- 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.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.mjs.map +1 -1
- 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/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.css +1 -1
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/VOverlay.sass +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.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.mjs.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.css +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- 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.map +1 -1
- package/lib/components/VSelect/index.d.ts +39 -39
- 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/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/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 +7 -5
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextarea/VTextarea.mjs +1 -1
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- 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.mjs.map +1 -1
- 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 +1270 -641
- 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 +29 -15
- 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.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.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 +45 -45
- package/lib/labs/VDataTable/VDataTable.mjs +3 -1
- 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 +5 -4
- package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +3 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- 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 +14 -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 +303 -260
- 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 +518 -261
- 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/globals.mjs +1 -1
- package/lib/util/globals.mjs.map +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 +24 -24
- 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
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
.v-skeleton-loader {
|
|
2
|
+
align-items: center;
|
|
3
|
+
background: rgb(var(--v-theme-surface));
|
|
4
|
+
border-radius: 4px;
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-wrap: wrap;
|
|
7
|
+
position: relative;
|
|
8
|
+
vertical-align: top;
|
|
9
|
+
}
|
|
10
|
+
.v-skeleton-loader__actions {
|
|
11
|
+
justify-content: end;
|
|
12
|
+
}
|
|
13
|
+
.v-skeleton-loader .v-skeleton-loader__avatar,
|
|
14
|
+
.v-skeleton-loader .v-skeleton-loader__button,
|
|
15
|
+
.v-skeleton-loader .v-skeleton-loader__chip,
|
|
16
|
+
.v-skeleton-loader .v-skeleton-loader__divider,
|
|
17
|
+
.v-skeleton-loader .v-skeleton-loader__heading,
|
|
18
|
+
.v-skeleton-loader .v-skeleton-loader__image,
|
|
19
|
+
.v-skeleton-loader .v-skeleton-loader__text {
|
|
20
|
+
background: rgba(var(--v-theme-on-surface), var(--v-border-opacity));
|
|
21
|
+
}
|
|
22
|
+
.v-skeleton-loader .v-skeleton-loader__list-item,
|
|
23
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-avatar,
|
|
24
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-text,
|
|
25
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-two-line,
|
|
26
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-avatar-two-line,
|
|
27
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-three-line,
|
|
28
|
+
.v-skeleton-loader .v-skeleton-loader__list-item-avatar-three-line {
|
|
29
|
+
border-radius: 4px;
|
|
30
|
+
}
|
|
31
|
+
.v-skeleton-loader__bone {
|
|
32
|
+
align-items: center;
|
|
33
|
+
border-radius: inherit;
|
|
34
|
+
display: flex;
|
|
35
|
+
flex: 1 1 100%;
|
|
36
|
+
flex-wrap: wrap;
|
|
37
|
+
overflow: hidden;
|
|
38
|
+
position: relative;
|
|
39
|
+
}
|
|
40
|
+
.v-skeleton-loader__bone::after {
|
|
41
|
+
content: "";
|
|
42
|
+
position: absolute;
|
|
43
|
+
top: 0;
|
|
44
|
+
left: 0;
|
|
45
|
+
width: 100%;
|
|
46
|
+
height: 100%;
|
|
47
|
+
animation: loading 1.5s infinite;
|
|
48
|
+
background: linear-gradient(90deg, rgba(var(--v-theme-surface), 0), rgba(var(--v-theme-surface), 0.3), rgba(var(--v-theme-surface), 0));
|
|
49
|
+
transform: translateX(-100%);
|
|
50
|
+
z-index: 1;
|
|
51
|
+
}
|
|
52
|
+
.v-skeleton-loader__avatar {
|
|
53
|
+
border-radius: 50%;
|
|
54
|
+
flex: 0 1 auto;
|
|
55
|
+
margin: 8px 16px;
|
|
56
|
+
max-height: 48px;
|
|
57
|
+
min-height: 48px;
|
|
58
|
+
height: 48px;
|
|
59
|
+
max-width: 48px;
|
|
60
|
+
min-width: 48px;
|
|
61
|
+
width: 48px;
|
|
62
|
+
}
|
|
63
|
+
.v-skeleton-loader__avatar + .v-skeleton-loader__bone {
|
|
64
|
+
flex: 1 1 auto;
|
|
65
|
+
margin-inline-start: 0;
|
|
66
|
+
}
|
|
67
|
+
.v-skeleton-loader__avatar + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
|
|
68
|
+
.v-skeleton-loader__avatar + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
|
|
69
|
+
margin-inline-start: 0;
|
|
70
|
+
}
|
|
71
|
+
.v-skeleton-loader__button {
|
|
72
|
+
border-radius: 4px;
|
|
73
|
+
height: 36px;
|
|
74
|
+
margin: 16px;
|
|
75
|
+
max-width: 64px;
|
|
76
|
+
}
|
|
77
|
+
.v-skeleton-loader__button + .v-skeleton-loader__bone {
|
|
78
|
+
flex: 1 1 auto;
|
|
79
|
+
margin-inline-start: 0;
|
|
80
|
+
}
|
|
81
|
+
.v-skeleton-loader__button + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
|
|
82
|
+
.v-skeleton-loader__button + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
|
|
83
|
+
margin-inline-start: 0;
|
|
84
|
+
}
|
|
85
|
+
.v-skeleton-loader__chip {
|
|
86
|
+
border-radius: 16px;
|
|
87
|
+
margin: 16px;
|
|
88
|
+
height: 32px;
|
|
89
|
+
max-width: 96px;
|
|
90
|
+
}
|
|
91
|
+
.v-skeleton-loader__chip + .v-skeleton-loader__bone {
|
|
92
|
+
flex: 1 1 auto;
|
|
93
|
+
margin-inline-start: 0;
|
|
94
|
+
}
|
|
95
|
+
.v-skeleton-loader__chip + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
|
|
96
|
+
.v-skeleton-loader__chip + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
|
|
97
|
+
margin-inline-start: 0;
|
|
98
|
+
}
|
|
99
|
+
.v-skeleton-loader__date-picker {
|
|
100
|
+
border-radius: inherit;
|
|
101
|
+
}
|
|
102
|
+
.v-skeleton-loader__date-picker .v-skeleton-loader__list-item:first-child .v-skeleton-loader__text {
|
|
103
|
+
max-width: 88px;
|
|
104
|
+
width: 20%;
|
|
105
|
+
}
|
|
106
|
+
.v-skeleton-loader__date-picker .v-skeleton-loader__heading {
|
|
107
|
+
max-width: 256px;
|
|
108
|
+
width: 40%;
|
|
109
|
+
}
|
|
110
|
+
.v-skeleton-loader__date-picker-days {
|
|
111
|
+
flex-wrap: wrap;
|
|
112
|
+
margin: 16px;
|
|
113
|
+
}
|
|
114
|
+
.v-skeleton-loader__date-picker-days .v-skeleton-loader__avatar {
|
|
115
|
+
border-radius: 4px;
|
|
116
|
+
margin: 4px;
|
|
117
|
+
max-width: 100%;
|
|
118
|
+
}
|
|
119
|
+
.v-skeleton-loader__date-picker-options {
|
|
120
|
+
flex-wrap: nowrap;
|
|
121
|
+
}
|
|
122
|
+
.v-skeleton-loader__date-picker-options .v-skeleton-loader__text {
|
|
123
|
+
flex: 1 1 auto;
|
|
124
|
+
}
|
|
125
|
+
.v-skeleton-loader__divider {
|
|
126
|
+
border-radius: 1px;
|
|
127
|
+
height: 2px;
|
|
128
|
+
}
|
|
129
|
+
.v-skeleton-loader__heading {
|
|
130
|
+
border-radius: 12px;
|
|
131
|
+
margin: 16px;
|
|
132
|
+
height: 24px;
|
|
133
|
+
}
|
|
134
|
+
.v-skeleton-loader__heading + .v-skeleton-loader__subtitle {
|
|
135
|
+
margin-top: -16px;
|
|
136
|
+
}
|
|
137
|
+
.v-skeleton-loader__image {
|
|
138
|
+
height: 150px;
|
|
139
|
+
border-radius: 0;
|
|
140
|
+
}
|
|
141
|
+
.v-skeleton-loader__card .v-skeleton-loader__image {
|
|
142
|
+
border-radius: 0;
|
|
143
|
+
}
|
|
144
|
+
.v-skeleton-loader__list-item {
|
|
145
|
+
margin: 16px;
|
|
146
|
+
}
|
|
147
|
+
.v-skeleton-loader__list-item .v-skeleton-loader__text {
|
|
148
|
+
margin: 0;
|
|
149
|
+
}
|
|
150
|
+
.v-skeleton-loader__table-thead {
|
|
151
|
+
justify-content: space-between;
|
|
152
|
+
}
|
|
153
|
+
.v-skeleton-loader__table-thead .v-skeleton-loader__heading {
|
|
154
|
+
margin-top: 16px;
|
|
155
|
+
max-width: 16px;
|
|
156
|
+
}
|
|
157
|
+
.v-skeleton-loader__table-tfoot {
|
|
158
|
+
flex-wrap: nowrap;
|
|
159
|
+
}
|
|
160
|
+
.v-skeleton-loader__table-tfoot > .v-skeleton-loader__text.v-skeleton-loader__bone {
|
|
161
|
+
margin-top: 16px;
|
|
162
|
+
}
|
|
163
|
+
.v-skeleton-loader__table-row {
|
|
164
|
+
align-items: baseline;
|
|
165
|
+
margin: 0 8px;
|
|
166
|
+
justify-content: space-evenly;
|
|
167
|
+
flex-wrap: nowrap;
|
|
168
|
+
}
|
|
169
|
+
.v-skeleton-loader__table-row > .v-skeleton-loader__text.v-skeleton-loader__bone {
|
|
170
|
+
margin-inline-start: 8px;
|
|
171
|
+
margin-inline-end: 8px;
|
|
172
|
+
}
|
|
173
|
+
.v-skeleton-loader__table-row + .v-skeleton-loader__divider {
|
|
174
|
+
margin: 0 16px;
|
|
175
|
+
}
|
|
176
|
+
.v-skeleton-loader__table-cell {
|
|
177
|
+
align-items: center;
|
|
178
|
+
display: flex;
|
|
179
|
+
height: 48px;
|
|
180
|
+
width: 88px;
|
|
181
|
+
}
|
|
182
|
+
.v-skeleton-loader__table-cell .v-skeleton-loader__text {
|
|
183
|
+
margin-bottom: 0;
|
|
184
|
+
}
|
|
185
|
+
.v-skeleton-loader__subtitle {
|
|
186
|
+
max-width: 70%;
|
|
187
|
+
}
|
|
188
|
+
.v-skeleton-loader__subtitle > .v-skeleton-loader__text {
|
|
189
|
+
height: 16px;
|
|
190
|
+
border-radius: 8px;
|
|
191
|
+
}
|
|
192
|
+
.v-skeleton-loader__text {
|
|
193
|
+
border-radius: 6px;
|
|
194
|
+
margin: 16px;
|
|
195
|
+
height: 12px;
|
|
196
|
+
}
|
|
197
|
+
.v-skeleton-loader__text + .v-skeleton-loader__text {
|
|
198
|
+
margin-top: -8px;
|
|
199
|
+
max-width: 50%;
|
|
200
|
+
}
|
|
201
|
+
.v-skeleton-loader__text + .v-skeleton-loader__text + .v-skeleton-loader__text {
|
|
202
|
+
max-width: 70%;
|
|
203
|
+
}
|
|
204
|
+
.v-skeleton-loader--boilerplate .v-skeleton-loader__bone:after {
|
|
205
|
+
display: none;
|
|
206
|
+
}
|
|
207
|
+
.v-skeleton-loader--is-loading {
|
|
208
|
+
overflow: hidden;
|
|
209
|
+
}
|
|
210
|
+
.v-skeleton-loader--tile {
|
|
211
|
+
border-radius: 0;
|
|
212
|
+
}
|
|
213
|
+
.v-skeleton-loader--tile .v-skeleton-loader__bone {
|
|
214
|
+
border-radius: 0;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
@keyframes loading {
|
|
218
|
+
100% {
|
|
219
|
+
transform: translateX(100%);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { createVNode as _createVNode } from "vue";
|
|
2
|
+
// Styles
|
|
3
|
+
import "./VSkeletonLoader.css";
|
|
4
|
+
|
|
5
|
+
// Composables
|
|
6
|
+
import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
|
|
7
|
+
import { makeElevationProps, useElevation } from "../../composables/elevation.mjs";
|
|
8
|
+
import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
|
|
9
|
+
import { useBackgroundColor } from "../../composables/color.mjs";
|
|
10
|
+
import { useLocale } from "../../composables/locale.mjs"; // Utilities
|
|
11
|
+
import { computed, toRef } from 'vue';
|
|
12
|
+
import { genericComponent, useRender, wrapInArray } from "../../util/index.mjs"; // Types
|
|
13
|
+
export const rootTypes = {
|
|
14
|
+
actions: 'button@2',
|
|
15
|
+
article: 'heading, paragraph',
|
|
16
|
+
avatar: 'avatar',
|
|
17
|
+
button: 'button',
|
|
18
|
+
card: 'image, heading',
|
|
19
|
+
'card-avatar': 'image, list-item-avatar',
|
|
20
|
+
chip: 'chip',
|
|
21
|
+
'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',
|
|
22
|
+
'date-picker-options': 'text, avatar@2',
|
|
23
|
+
'date-picker-days': 'avatar@28',
|
|
24
|
+
heading: 'heading',
|
|
25
|
+
image: 'image',
|
|
26
|
+
'list-item': 'text',
|
|
27
|
+
'list-item-avatar': 'avatar, text',
|
|
28
|
+
'list-item-two-line': 'sentences',
|
|
29
|
+
'list-item-avatar-two-line': 'avatar, sentences',
|
|
30
|
+
'list-item-three-line': 'paragraph',
|
|
31
|
+
'list-item-avatar-three-line': 'avatar, paragraph',
|
|
32
|
+
paragraph: 'text@3',
|
|
33
|
+
sentences: 'text@2',
|
|
34
|
+
subtitle: 'text',
|
|
35
|
+
table: 'table-heading, table-thead, table-tbody, table-tfoot',
|
|
36
|
+
'table-heading': 'chip, text',
|
|
37
|
+
'table-thead': 'heading@6',
|
|
38
|
+
'table-tbody': 'table-row-divider@6',
|
|
39
|
+
'table-row-divider': 'table-row, divider',
|
|
40
|
+
'table-row': 'text@6',
|
|
41
|
+
'table-tfoot': 'text@2, avatar@2',
|
|
42
|
+
text: 'text'
|
|
43
|
+
};
|
|
44
|
+
function genBone(type) {
|
|
45
|
+
let children = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
46
|
+
return _createVNode("div", {
|
|
47
|
+
"class": ['v-skeleton-loader__bone', `v-skeleton-loader__${type}`]
|
|
48
|
+
}, [children]);
|
|
49
|
+
}
|
|
50
|
+
function genBones(bone) {
|
|
51
|
+
// e.g. 'text@3'
|
|
52
|
+
const [type, length] = bone.split('@');
|
|
53
|
+
|
|
54
|
+
// Generate a length array based upon
|
|
55
|
+
// value after @ in the bone string
|
|
56
|
+
return Array.from({
|
|
57
|
+
length
|
|
58
|
+
}).map(() => genStructure(type));
|
|
59
|
+
}
|
|
60
|
+
function genStructure(type) {
|
|
61
|
+
let children = [];
|
|
62
|
+
if (!type) return children;
|
|
63
|
+
|
|
64
|
+
// TODO: figure out a better way to type this
|
|
65
|
+
const bone = rootTypes[type];
|
|
66
|
+
|
|
67
|
+
// End of recursion, do nothing
|
|
68
|
+
/* eslint-disable-next-line no-empty, brace-style */
|
|
69
|
+
if (type === bone) {}
|
|
70
|
+
// Array of values - e.g. 'heading, paragraph, text@2'
|
|
71
|
+
else if (type.includes(',')) return mapBones(type);
|
|
72
|
+
// Array of values - e.g. 'paragraph@4'
|
|
73
|
+
else if (type.includes('@')) return genBones(type);
|
|
74
|
+
// Array of values - e.g. 'card@2'
|
|
75
|
+
else if (bone.includes(',')) children = mapBones(bone);
|
|
76
|
+
// Array of values - e.g. 'list-item@2'
|
|
77
|
+
else if (bone.includes('@')) children = genBones(bone);
|
|
78
|
+
// Single value - e.g. 'card-heading'
|
|
79
|
+
else if (bone) children.push(genStructure(bone));
|
|
80
|
+
return [genBone(type, children)];
|
|
81
|
+
}
|
|
82
|
+
function mapBones(bones) {
|
|
83
|
+
// Remove spaces and return array of structures
|
|
84
|
+
return bones.replace(/\s/g, '').split(',').map(genStructure);
|
|
85
|
+
}
|
|
86
|
+
export const VSkeletonLoader = genericComponent()({
|
|
87
|
+
name: 'VSkeletonLoader',
|
|
88
|
+
props: {
|
|
89
|
+
boilerplate: Boolean,
|
|
90
|
+
color: String,
|
|
91
|
+
loading: Boolean,
|
|
92
|
+
loadingText: {
|
|
93
|
+
type: String,
|
|
94
|
+
default: '$vuetify.loading'
|
|
95
|
+
},
|
|
96
|
+
type: {
|
|
97
|
+
type: [String, Array],
|
|
98
|
+
default: 'image'
|
|
99
|
+
},
|
|
100
|
+
...makeDimensionProps(),
|
|
101
|
+
...makeElevationProps(),
|
|
102
|
+
...makeThemeProps()
|
|
103
|
+
},
|
|
104
|
+
setup(props, _ref) {
|
|
105
|
+
let {
|
|
106
|
+
slots
|
|
107
|
+
} = _ref;
|
|
108
|
+
const {
|
|
109
|
+
backgroundColorClasses,
|
|
110
|
+
backgroundColorStyles
|
|
111
|
+
} = useBackgroundColor(toRef(props, 'color'));
|
|
112
|
+
const {
|
|
113
|
+
dimensionStyles
|
|
114
|
+
} = useDimension(props);
|
|
115
|
+
const {
|
|
116
|
+
elevationClasses
|
|
117
|
+
} = useElevation(props);
|
|
118
|
+
const {
|
|
119
|
+
themeClasses
|
|
120
|
+
} = provideTheme(props);
|
|
121
|
+
const {
|
|
122
|
+
t
|
|
123
|
+
} = useLocale();
|
|
124
|
+
const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
|
|
125
|
+
useRender(() => {
|
|
126
|
+
const isLoading = !slots.default || props.loading;
|
|
127
|
+
return _createVNode("div", {
|
|
128
|
+
"class": ['v-skeleton-loader', {
|
|
129
|
+
'v-skeleton-loader--boilerplate': props.boilerplate
|
|
130
|
+
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
|
|
131
|
+
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}],
|
|
132
|
+
"aria-busy": !props.boilerplate ? isLoading : undefined,
|
|
133
|
+
"aria-live": !props.boilerplate ? 'polite' : undefined,
|
|
134
|
+
"aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
|
|
135
|
+
"role": !props.boilerplate ? 'alert' : undefined
|
|
136
|
+
}, [isLoading ? items.value : slots.default?.()]);
|
|
137
|
+
});
|
|
138
|
+
return {};
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
//# sourceMappingURL=VSkeletonLoader.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VSkeletonLoader.mjs","names":["makeDimensionProps","useDimension","makeElevationProps","useElevation","makeThemeProps","provideTheme","useBackgroundColor","useLocale","computed","toRef","genericComponent","useRender","wrapInArray","rootTypes","actions","article","avatar","button","card","chip","heading","image","paragraph","sentences","subtitle","table","text","genBone","type","children","arguments","length","undefined","_createVNode","genBones","bone","split","Array","from","map","genStructure","includes","mapBones","push","bones","replace","VSkeletonLoader","name","props","boilerplate","Boolean","color","String","loading","loadingText","default","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","dimensionStyles","elevationClasses","themeClasses","t","items","join","isLoading","value"],"sources":["../../../src/labs/VSkeletonLoader/VSkeletonLoader.tsx"],"sourcesContent":["// Styles\nimport './VSkeletonLoader.sass'\n\n// Composables\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useBackgroundColor } from '@/composables/color'\nimport { useLocale } from '@/composables/locale'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, useRender, wrapInArray } from '@/util'\n\n// Types\nimport type { PropType, VNode } from 'vue'\n\ntype VSkeletonBone<T> = T | VSkeletonBone<T>[]\n\nexport type VSkeletonBones = VSkeletonBone<VNode>\nexport type VSkeletonLoaderType = keyof typeof rootTypes\nexport type VSkeletonLoaderSlots = {\n default: []\n}\n\nexport const rootTypes = {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, heading',\n 'card-avatar': 'image, list-item-avatar',\n chip: 'chip',\n 'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n subtitle: 'text',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'chip, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'text@6',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n} as const\n\nfunction genBone (type: string, children: VSkeletonBones = []) {\n return (\n <div\n class={[\n 'v-skeleton-loader__bone',\n `v-skeleton-loader__${type}`,\n ]}\n >\n { children }\n </div>\n )\n}\n\nfunction genBones (bone: string) {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [VSkeletonLoaderType, number]\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(() => genStructure(type))\n}\n\nfunction genStructure (type?: string): VSkeletonBones {\n let children: VSkeletonBones = []\n\n if (!type) return children\n\n // TODO: figure out a better way to type this\n const bone = (rootTypes as Record<string, string>)[type]\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.includes(',')) return mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.includes('@')) return genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.includes(',')) children = mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.includes('@')) children = genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(genStructure(bone))\n\n return [genBone(type, children)]\n}\n\nfunction mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(genStructure)\n}\n\nexport const VSkeletonLoader = genericComponent<VSkeletonLoaderSlots>()({\n name: 'VSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n color: String,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n type: {\n type: [String, Array] as PropType<VSkeletonLoaderType | VSkeletonLoaderType[]>,\n default: 'image',\n },\n\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeThemeProps(),\n },\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { themeClasses } = provideTheme(props)\n const { t } = useLocale()\n\n const items = computed(() => genStructure(wrapInArray(props.type).join(',')))\n\n useRender(() => {\n const isLoading = !slots.default || props.loading\n\n return (\n <div\n class={[\n 'v-skeleton-loader',\n {\n 'v-skeleton-loader--boilerplate': props.boilerplate,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n elevationClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n isLoading ? dimensionStyles.value : {},\n ]}\n aria-busy={ !props.boilerplate ? isLoading : undefined }\n aria-live={ !props.boilerplate ? 'polite' : undefined }\n aria-label={ !props.boilerplate ? t(props.loadingText) : undefined }\n role={ !props.boilerplate ? 'alert' : undefined }\n >\n { isLoading ? items.value : slots.default?.() }\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VSkeletonLoader = InstanceType<typeof VSkeletonLoader>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
// Imports
|
|
2
|
+
@use '../../styles/settings'
|
|
3
|
+
@use '../../styles/tools'
|
|
4
|
+
@use './variables' as *
|
|
5
|
+
|
|
6
|
+
.v-skeleton-loader
|
|
7
|
+
align-items: center
|
|
8
|
+
background: $skeleton-loader-background
|
|
9
|
+
border-radius: $skeleton-loader-border-radius
|
|
10
|
+
display: flex
|
|
11
|
+
flex-wrap: wrap
|
|
12
|
+
position: relative
|
|
13
|
+
vertical-align: top
|
|
14
|
+
|
|
15
|
+
&__actions
|
|
16
|
+
justify-content: end
|
|
17
|
+
|
|
18
|
+
.v-skeleton-loader__avatar,
|
|
19
|
+
.v-skeleton-loader__button,
|
|
20
|
+
.v-skeleton-loader__chip,
|
|
21
|
+
.v-skeleton-loader__divider,
|
|
22
|
+
.v-skeleton-loader__heading,
|
|
23
|
+
.v-skeleton-loader__image,
|
|
24
|
+
.v-skeleton-loader__text
|
|
25
|
+
background: $skeleton-loader-text-background
|
|
26
|
+
|
|
27
|
+
.v-skeleton-loader__list-item,
|
|
28
|
+
.v-skeleton-loader__list-item-avatar,
|
|
29
|
+
.v-skeleton-loader__list-item-text,
|
|
30
|
+
.v-skeleton-loader__list-item-two-line,
|
|
31
|
+
.v-skeleton-loader__list-item-avatar-two-line,
|
|
32
|
+
.v-skeleton-loader__list-item-three-line,
|
|
33
|
+
.v-skeleton-loader__list-item-avatar-three-line
|
|
34
|
+
border-radius: $skeleton-loader-border-radius
|
|
35
|
+
|
|
36
|
+
&__bone
|
|
37
|
+
align-items: center
|
|
38
|
+
border-radius: inherit
|
|
39
|
+
display: flex
|
|
40
|
+
flex: 1 1 100%
|
|
41
|
+
flex-wrap: wrap
|
|
42
|
+
overflow: hidden
|
|
43
|
+
position: relative
|
|
44
|
+
|
|
45
|
+
&::after
|
|
46
|
+
@include tools.absolute(true)
|
|
47
|
+
|
|
48
|
+
animation: $skeleton-loader-loading-animation
|
|
49
|
+
background: $skeleton-loader-bone-background
|
|
50
|
+
transform: $skeleton-loader-loading-transform
|
|
51
|
+
z-index: 1
|
|
52
|
+
|
|
53
|
+
&__avatar
|
|
54
|
+
border-radius: 50%
|
|
55
|
+
flex: 0 1 auto
|
|
56
|
+
margin: $skeleton-loader-avatar-margin
|
|
57
|
+
max-height: $skeleton-loader-avatar-height
|
|
58
|
+
min-height: $skeleton-loader-avatar-height
|
|
59
|
+
height: $skeleton-loader-avatar-height
|
|
60
|
+
max-width: $skeleton-loader-avatar-width
|
|
61
|
+
min-width: $skeleton-loader-avatar-width
|
|
62
|
+
width: $skeleton-loader-avatar-width
|
|
63
|
+
|
|
64
|
+
+ .v-skeleton-loader__bone
|
|
65
|
+
flex: 1 1 auto
|
|
66
|
+
margin-inline-start: 0
|
|
67
|
+
|
|
68
|
+
+ .v-skeleton-loader__sentences,
|
|
69
|
+
+ .v-skeleton-loader__paragraph
|
|
70
|
+
> .v-skeleton-loader__text
|
|
71
|
+
margin-inline-start: 0
|
|
72
|
+
|
|
73
|
+
&__button
|
|
74
|
+
border-radius: $skeleton-loader-button-border-radius
|
|
75
|
+
height: $skeleton-loader-button-height
|
|
76
|
+
margin: $skeleton-loader-gutter
|
|
77
|
+
max-width: $skeleton-loader-button-width
|
|
78
|
+
|
|
79
|
+
+ .v-skeleton-loader__bone
|
|
80
|
+
flex: 1 1 auto
|
|
81
|
+
margin-inline-start: 0
|
|
82
|
+
|
|
83
|
+
+ .v-skeleton-loader__sentences,
|
|
84
|
+
+ .v-skeleton-loader__paragraph
|
|
85
|
+
> .v-skeleton-loader__text
|
|
86
|
+
margin-inline-start: 0
|
|
87
|
+
|
|
88
|
+
&__chip
|
|
89
|
+
border-radius: $skeleton-loader-chip-border-radius
|
|
90
|
+
margin: $skeleton-loader-gutter
|
|
91
|
+
height: $skeleton-loader-chip-height
|
|
92
|
+
max-width: $skeleton-loader-chip-width
|
|
93
|
+
|
|
94
|
+
+ .v-skeleton-loader__bone
|
|
95
|
+
flex: 1 1 auto
|
|
96
|
+
margin-inline-start: 0
|
|
97
|
+
|
|
98
|
+
+ .v-skeleton-loader__sentences,
|
|
99
|
+
+ .v-skeleton-loader__paragraph
|
|
100
|
+
> .v-skeleton-loader__text
|
|
101
|
+
margin-inline-start: 0
|
|
102
|
+
|
|
103
|
+
&__date-picker
|
|
104
|
+
border-radius: $skeleton-loader-date-picker-border-radius
|
|
105
|
+
|
|
106
|
+
.v-skeleton-loader__list-item:first-child
|
|
107
|
+
.v-skeleton-loader__text
|
|
108
|
+
max-width: $skeleton-loader-date-picker-text-max-width
|
|
109
|
+
width: $skeleton-loader-date-picker-text-width
|
|
110
|
+
|
|
111
|
+
.v-skeleton-loader__heading
|
|
112
|
+
max-width: $skeleton-loader-date-picker-heading-max-width
|
|
113
|
+
width: $skeleton-loader-date-picker-heading-width
|
|
114
|
+
|
|
115
|
+
&__date-picker-days
|
|
116
|
+
flex-wrap: wrap
|
|
117
|
+
margin: $skeleton-loader-gutter
|
|
118
|
+
|
|
119
|
+
.v-skeleton-loader__avatar
|
|
120
|
+
border-radius: $skeleton-loader-border-radius
|
|
121
|
+
margin: $skeleton-loader-date-picker-days-margin
|
|
122
|
+
max-width: 100%
|
|
123
|
+
|
|
124
|
+
&__date-picker-options
|
|
125
|
+
flex-wrap: nowrap
|
|
126
|
+
|
|
127
|
+
.v-skeleton-loader__text
|
|
128
|
+
flex: 1 1 auto
|
|
129
|
+
|
|
130
|
+
&__divider
|
|
131
|
+
border-radius: $skeleton-loader-divider-border-radius
|
|
132
|
+
height: $skeleton-loader-divider-height
|
|
133
|
+
|
|
134
|
+
&__heading
|
|
135
|
+
border-radius: $skeleton-loader-heading-border-radius
|
|
136
|
+
margin: $skeleton-loader-gutter
|
|
137
|
+
height: $skeleton-loader-heading-height
|
|
138
|
+
|
|
139
|
+
+ .v-skeleton-loader__subtitle
|
|
140
|
+
margin-top: -$skeleton-loader-gutter
|
|
141
|
+
|
|
142
|
+
&__image
|
|
143
|
+
height: $skeleton-loader-image-height
|
|
144
|
+
border-radius: 0
|
|
145
|
+
|
|
146
|
+
&__card
|
|
147
|
+
.v-skeleton-loader__image
|
|
148
|
+
border-radius: 0
|
|
149
|
+
|
|
150
|
+
&__list-item
|
|
151
|
+
margin: $skeleton-loader-gutter
|
|
152
|
+
|
|
153
|
+
.v-skeleton-loader__text
|
|
154
|
+
margin: 0
|
|
155
|
+
|
|
156
|
+
&__table-thead
|
|
157
|
+
justify-content: space-between
|
|
158
|
+
|
|
159
|
+
.v-skeleton-loader__heading
|
|
160
|
+
margin-top: $skeleton-loader-gutter
|
|
161
|
+
max-width: $skeleton-loader-gutter
|
|
162
|
+
|
|
163
|
+
&__table-tfoot
|
|
164
|
+
flex-wrap: nowrap
|
|
165
|
+
|
|
166
|
+
> .v-skeleton-loader__text.v-skeleton-loader__bone
|
|
167
|
+
margin-top: $skeleton-loader-gutter
|
|
168
|
+
|
|
169
|
+
&__table-row
|
|
170
|
+
align-items: baseline
|
|
171
|
+
margin: $skeleton-loader-table-row-margin
|
|
172
|
+
justify-content: space-evenly
|
|
173
|
+
flex-wrap: nowrap
|
|
174
|
+
|
|
175
|
+
> .v-skeleton-loader__text.v-skeleton-loader__bone
|
|
176
|
+
margin-inline-start: $skeleton-loader-table-row-text-margin
|
|
177
|
+
margin-inline-end: $skeleton-loader-table-row-text-margin
|
|
178
|
+
|
|
179
|
+
+ .v-skeleton-loader__divider
|
|
180
|
+
margin: 0 $skeleton-loader-gutter
|
|
181
|
+
|
|
182
|
+
&__table-cell
|
|
183
|
+
align-items: center
|
|
184
|
+
display: flex
|
|
185
|
+
height: $skeleton-loader-table-cell-height
|
|
186
|
+
width: $skeleton-loader-table-cell-width
|
|
187
|
+
|
|
188
|
+
.v-skeleton-loader__text
|
|
189
|
+
margin-bottom: 0
|
|
190
|
+
|
|
191
|
+
&__subtitle
|
|
192
|
+
max-width: $skeleton-loader-subtitle-max-width
|
|
193
|
+
|
|
194
|
+
> .v-skeleton-loader__text
|
|
195
|
+
height: $skeleton-loader-subtitle-text-height
|
|
196
|
+
border-radius: $skeleton-loader-subtitle-text-border-radius
|
|
197
|
+
|
|
198
|
+
&__text
|
|
199
|
+
border-radius: $skeleton-loader-text-border-radius
|
|
200
|
+
margin: $skeleton-loader-gutter
|
|
201
|
+
height: $skeleton-loader-text-height
|
|
202
|
+
|
|
203
|
+
+ .v-skeleton-loader__text
|
|
204
|
+
margin-top: $skeleton-loader-text-two-text-margin-top
|
|
205
|
+
max-width: $skeleton-loader-text-two-text-max-width
|
|
206
|
+
|
|
207
|
+
+ .v-skeleton-loader__text
|
|
208
|
+
max-width: $skeleton-loader-text-three-text-max-width
|
|
209
|
+
|
|
210
|
+
&--boilerplate
|
|
211
|
+
.v-skeleton-loader__bone:after
|
|
212
|
+
display: none
|
|
213
|
+
|
|
214
|
+
&--is-loading
|
|
215
|
+
overflow: hidden
|
|
216
|
+
|
|
217
|
+
&--tile
|
|
218
|
+
border-radius: 0
|
|
219
|
+
|
|
220
|
+
.v-skeleton-loader__bone
|
|
221
|
+
border-radius: 0
|
|
222
|
+
|
|
223
|
+
@keyframes loading
|
|
224
|
+
100%
|
|
225
|
+
transform: translateX(100%)
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
@use '../../styles/settings';
|
|
2
|
+
@use '../../styles/tools';
|
|
3
|
+
|
|
4
|
+
$skeleton-loader-actions-button-margin: 12px !default;
|
|
5
|
+
$skeleton-loader-actions-padding: 16px 16px 8px !default;
|
|
6
|
+
$skeleton-loader-avatar-height: 48px !default;
|
|
7
|
+
$skeleton-loader-avatar-margin: 8px 16px !default;
|
|
8
|
+
$skeleton-loader-avatar-width: 48px !default;
|
|
9
|
+
$skeleton-loader-background: rgb(var(--v-theme-surface)) !default;
|
|
10
|
+
$skeleton-loader-bone-background: linear-gradient(90deg, rgba(var(--v-theme-surface), 0), rgba(var(--v-theme-surface), .3), rgba(var(--v-theme-surface), 0)) !default;
|
|
11
|
+
$skeleton-loader-border-radius: settings.$border-radius-root !default;
|
|
12
|
+
$skeleton-loader-button-border-radius: settings.$border-radius-root !default;
|
|
13
|
+
$skeleton-loader-button-height: 36px !default;
|
|
14
|
+
$skeleton-loader-button-width: 64px !default;
|
|
15
|
+
$skeleton-loader-chip-border-radius: 16px !default;
|
|
16
|
+
$skeleton-loader-chip-height: 32px !default;
|
|
17
|
+
$skeleton-loader-chip-width: 96px !default;
|
|
18
|
+
$skeleton-loader-date-picker-border-radius: inherit !default;
|
|
19
|
+
$skeleton-loader-date-picker-days-margin: 4px !default;
|
|
20
|
+
$skeleton-loader-date-picker-heading-max-width: 256px !default;
|
|
21
|
+
$skeleton-loader-date-picker-heading-width: 40% !default;
|
|
22
|
+
$skeleton-loader-date-picker-text-max-width: 88px !default;
|
|
23
|
+
$skeleton-loader-date-picker-text-width: 20% !default;
|
|
24
|
+
$skeleton-loader-divider-border-radius: 1px !default;
|
|
25
|
+
$skeleton-loader-divider-height: 2px !default;
|
|
26
|
+
$skeleton-loader-gutter: 16px !default;
|
|
27
|
+
$skeleton-loader-heading-border-radius: 12px !default;
|
|
28
|
+
$skeleton-loader-heading-height: 24px !default;
|
|
29
|
+
$skeleton-loader-image-height: 150px !default;
|
|
30
|
+
$skeleton-loader-loading-animation: loading 1.5s infinite !default;
|
|
31
|
+
$skeleton-loader-loading-transform: translateX(-100%) !default;
|
|
32
|
+
$skeleton-loader-subtitle-max-width: 70% !default;
|
|
33
|
+
$skeleton-loader-subtitle-text-border-radius: 8px !default;
|
|
34
|
+
$skeleton-loader-subtitle-text-height: 16px !default;
|
|
35
|
+
$skeleton-loader-table-cell-height: 48px !default;
|
|
36
|
+
$skeleton-loader-table-cell-width: 88px !default;
|
|
37
|
+
$skeleton-loader-table-row-margin: 0 8px !default;
|
|
38
|
+
$skeleton-loader-table-row-text-margin: 8px !default;
|
|
39
|
+
$skeleton-loader-text-background: rgba(var(--v-theme-on-surface), var(--v-border-opacity)) !default;
|
|
40
|
+
$skeleton-loader-text-border-radius: 6px !default;
|
|
41
|
+
$skeleton-loader-text-height: 12px !default;
|
|
42
|
+
$skeleton-loader-text-three-text-max-width: 70% !default;
|
|
43
|
+
$skeleton-loader-text-two-text-margin-top: -8px !default;
|
|
44
|
+
$skeleton-loader-text-two-text-max-width: 50% !default;
|