vuetify 3.2.4 → 3.3.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/dist/_component-variables-labs.sass +1 -0
- package/dist/json/attributes.json +2503 -2151
- package/dist/json/importMap-labs.json +12 -4
- package/dist/json/importMap.json +28 -28
- package/dist/json/tags.json +107 -9
- package/dist/json/web-types.json +10785 -7110
- package/dist/vuetify-labs.css +263 -153
- package/dist/vuetify-labs.d.ts +35870 -16257
- package/dist/vuetify-labs.esm.js +1466 -934
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +1465 -933
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +246 -168
- package/dist/vuetify.d.ts +27883 -14061
- package/dist/vuetify.esm.js +477 -300
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +476 -299
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +811 -806
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/{index.d.ts → index.d.mts} +5 -1
- package/lib/blueprints/{md1.d.ts → md1.d.mts} +5 -1
- package/lib/blueprints/{md2.d.ts → md2.d.mts} +5 -1
- package/lib/blueprints/{md3.d.ts → md3.d.mts} +5 -1
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/{index.d.ts → index.d.mts} +284 -69
- package/lib/components/VApp/{index.d.ts → index.d.mts} +80 -19
- package/lib/components/VAppBar/{index.d.ts → index.d.mts} +391 -119
- package/lib/components/VAutocomplete/VAutocomplete.css +15 -9
- package/lib/components/VAutocomplete/VAutocomplete.mjs +82 -34
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.sass +15 -11
- package/lib/components/VAutocomplete/index.d.mts +2048 -0
- package/lib/components/VAvatar/{index.d.ts → index.d.mts} +85 -30
- package/lib/components/VBadge/_variables.scss +1 -1
- package/lib/components/VBadge/{index.d.ts → index.d.mts} +105 -42
- package/lib/components/VBanner/{index.d.ts → index.d.mts} +282 -63
- package/lib/components/VBottomNavigation/{index.d.ts → index.d.mts} +93 -45
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/{index.d.ts → index.d.mts} +348 -212
- package/lib/components/VBtn/{index.d.ts → index.d.mts} +139 -53
- package/lib/components/VBtnGroup/{index.d.ts → index.d.mts} +84 -27
- package/lib/components/VBtnToggle/{index.d.ts → index.d.mts} +88 -35
- package/lib/components/VCalendar/util/props.mjs.map +1 -1
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/{index.d.ts → index.d.mts} +957 -419
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/{index.d.ts → index.d.mts} +616 -111
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +3 -3
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
- package/lib/components/VCheckbox/{index.d.ts → index.d.mts} +408 -141
- package/lib/components/VChip/VChip.css +4 -2
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/VChip.sass +3 -2
- package/lib/components/VChip/{index.d.ts → index.d.mts} +376 -85
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.mts +470 -0
- package/lib/components/VCode/{index.d.ts → index.d.mts} +78 -17
- package/lib/components/VColorPicker/VColorPicker.mjs +9 -4
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +5 -4
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/{index.d.ts → index.d.mts} +241 -109
- package/lib/components/VColorPicker/util/index.mjs +2 -22
- package/lib/components/VColorPicker/util/index.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.css +15 -9
- package/lib/components/VCombobox/VCombobox.mjs +82 -37
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/VCombobox.sass +15 -11
- package/lib/components/VCombobox/index.d.mts +2060 -0
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/{index.d.ts → index.d.mts} +105 -45
- package/lib/components/VDefaultsProvider/{index.d.ts → index.d.mts} +82 -20
- package/lib/components/VDialog/{index.d.ts → index.d.mts} +571 -305
- package/lib/components/VDivider/{index.d.ts → index.d.mts} +81 -21
- package/lib/components/VExpansionPanel/{index.d.ts → index.d.mts} +374 -110
- package/lib/components/VField/VField.css +49 -16
- package/lib/components/VField/VField.mjs +12 -2
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +40 -11
- package/lib/components/VField/_variables.scss +8 -2
- package/lib/components/VField/index.d.mts +682 -0
- package/lib/components/VFileInput/VFileInput.css +3 -0
- package/lib/components/VFileInput/VFileInput.mjs +7 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/VFileInput.sass +6 -1
- package/lib/components/VFileInput/{index.d.ts → index.d.mts} +1033 -399
- package/lib/components/VFooter/{index.d.ts → index.d.mts} +85 -29
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VForm/index.d.mts +993 -0
- package/lib/components/VGrid/{index.d.ts → index.d.mts} +334 -100
- package/lib/components/VHover/VHover.mjs.map +1 -1
- package/lib/components/VHover/{index.d.ts → index.d.mts} +120 -37
- package/lib/components/VIcon/{index.d.ts → index.d.mts} +322 -81
- package/lib/components/VImg/VImg.css +2 -4
- package/lib/components/VImg/VImg.mjs +25 -24
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/VImg.sass +4 -3
- package/lib/components/VImg/{index.d.ts → index.d.mts} +177 -40
- package/lib/components/VInput/VInput.css +10 -4
- package/lib/components/VInput/VInput.mjs +9 -3
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/VInput.sass +7 -2
- package/lib/components/VInput/_variables.scss +1 -0
- package/lib/components/VInput/{index.d.ts → index.d.mts} +237 -93
- package/lib/components/VItemGroup/VItem.mjs +1 -1
- package/lib/components/VItemGroup/VItem.mjs.map +1 -1
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.mts +781 -0
- package/lib/components/VKbd/{index.d.ts → index.d.mts} +78 -17
- package/lib/components/VLabel/{index.d.ts → index.d.mts} +79 -18
- package/lib/components/VLayout/{index.d.ts → index.d.mts} +161 -42
- package/lib/components/VLazy/{index.d.ts → index.d.mts} +82 -27
- package/lib/components/VList/VList.mjs +6 -1
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs +4 -8
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +3 -0
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +11 -6
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/{index.d.ts → index.d.mts} +1245 -619
- package/lib/components/VLocaleProvider/{index.d.ts → index.d.mts} +80 -19
- package/lib/components/VMain/{index.d.ts → index.d.mts} +79 -19
- package/lib/components/VMenu/{index.d.ts → index.d.mts} +567 -299
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/{index.d.ts → index.d.mts} +87 -34
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +2 -0
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.sass +2 -0
- package/lib/components/VNavigationDrawer/{index.d.ts → index.d.mts} +139 -57
- package/lib/components/VOverlay/{index.d.ts → index.d.mts} +159 -75
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/{index.d.ts → index.d.mts} +229 -125
- package/lib/components/VParallax/{index.d.ts → index.d.mts} +118 -18
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/{index.d.ts → index.d.mts} +148 -45
- package/lib/components/VProgressLinear/{index.d.ts → index.d.mts} +119 -52
- package/lib/components/VRadio/{index.d.ts → index.d.mts} +139 -40
- package/lib/components/VRadioGroup/{index.d.ts → index.d.mts} +265 -93
- package/lib/components/VRangeSlider/VRangeSlider.mjs +4 -4
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/{index.d.ts → index.d.mts} +313 -132
- package/lib/components/VRating/{index.d.ts → index.d.mts} +108 -49
- package/lib/components/VResponsive/VResponsive.css +13 -5
- package/lib/components/VResponsive/VResponsive.mjs +4 -1
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VResponsive/VResponsive.sass +12 -4
- package/lib/components/VResponsive/{index.d.ts → index.d.mts} +99 -16
- package/lib/components/VSelect/VSelect.css +15 -9
- package/lib/components/VSelect/VSelect.mjs +23 -18
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/VSelect.sass +14 -11
- package/lib/components/VSelect/index.d.mts +1986 -0
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.mts +403 -0
- package/lib/components/VSelectionControlGroup/{index.d.ts → index.d.mts} +90 -38
- package/lib/components/VSheet/{index.d.ts → index.d.mts} +81 -21
- package/lib/components/VSlideGroup/{index.d.ts → index.d.mts} +236 -61
- package/lib/components/VSlider/VSlider.mjs +2 -2
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +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 → index.d.mts} +308 -126
- package/lib/components/VSlider/slider.mjs +8 -2
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/{index.d.ts → index.d.mts} +566 -297
- package/lib/components/VSwitch/VSwitch.css +3 -3
- package/lib/components/VSwitch/VSwitch.sass +4 -3
- package/lib/components/VSwitch/{index.d.ts → index.d.mts} +284 -101
- package/lib/components/VSystemBar/{index.d.ts → index.d.mts} +84 -27
- package/lib/components/VTable/{index.d.ts → index.d.mts} +122 -26
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/{index.d.ts → index.d.mts} +203 -113
- package/lib/components/VTextField/VTextField.css +9 -1
- package/lib/components/VTextField/VTextField.mjs +4 -2
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/VTextField.sass +8 -1
- package/lib/components/VTextField/index.d.mts +2735 -0
- package/lib/components/VTextarea/VTextarea.mjs +13 -4
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/{index.d.ts → index.d.mts} +933 -393
- package/lib/components/VThemeProvider/{index.d.ts → index.d.mts} +80 -20
- package/lib/components/VTimeline/{index.d.ts → index.d.mts} +201 -62
- package/lib/components/VToolbar/{index.d.ts → index.d.mts} +325 -73
- package/lib/components/VTooltip/{index.d.ts → index.d.mts} +568 -297
- package/lib/components/VValidation/VValidation.mjs.map +1 -1
- package/lib/components/VValidation/index.d.mts +634 -0
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
- package/lib/components/VVirtualScroll/index.d.mts +229 -0
- package/lib/components/VWindow/{index.d.ts → index.d.mts} +271 -68
- package/lib/components/{index.d.ts → index.d.mts} +27847 -14031
- package/lib/components/index.mjs +2 -3
- package/lib/components/index.mjs.map +1 -1
- package/lib/components/transitions/{index.d.ts → index.d.mts} +1330 -355
- package/lib/composables/display.mjs +6 -6
- package/lib/composables/display.mjs.map +1 -1
- package/lib/composables/filter.mjs +5 -4
- package/lib/composables/filter.mjs.map +1 -1
- package/lib/composables/form.mjs +2 -3
- package/lib/composables/form.mjs.map +1 -1
- package/lib/composables/forwardRefs.mjs.map +1 -1
- package/lib/composables/group.mjs +13 -13
- package/lib/composables/group.mjs.map +1 -1
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/{items.mjs → list-items.mjs} +9 -6
- package/lib/composables/list-items.mjs.map +1 -0
- package/lib/composables/nested/nested.mjs.map +1 -1
- package/lib/composables/nested/selectStrategies.mjs.map +1 -1
- package/lib/composables/scroll.mjs +2 -2
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/composables/validation.mjs +44 -16
- package/lib/composables/validation.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/framework.mjs +1 -1
- package/lib/framework.mjs.map +1 -1
- package/lib/{index.d.ts → index.d.mts} +16 -10
- package/lib/labs/VBottomSheet/VBottomSheet.css +33 -0
- package/lib/labs/VBottomSheet/VBottomSheet.mjs +40 -0
- package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +1 -0
- package/lib/labs/VBottomSheet/VBottomSheet.sass +37 -0
- package/lib/labs/VBottomSheet/_variables.scss +5 -0
- package/lib/labs/VBottomSheet/index.d.mts +871 -0
- package/lib/labs/VBottomSheet/index.mjs +2 -0
- package/lib/labs/VBottomSheet/index.mjs.map +1 -0
- package/lib/labs/VDataIterator/VDataIterator.mjs +160 -0
- package/lib/labs/VDataIterator/VDataIterator.mjs.map +1 -0
- package/lib/labs/VDataIterator/composables/items.mjs +37 -0
- package/lib/labs/VDataIterator/composables/items.mjs.map +1 -0
- package/lib/labs/VDataIterator/index.d.mts +704 -0
- package/lib/labs/VDataIterator/index.mjs +2 -0
- package/lib/labs/VDataIterator/index.mjs.map +1 -0
- package/lib/labs/VDataTable/VDataTable.mjs +58 -20
- package/lib/labs/VDataTable/VDataTable.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 +17 -10
- package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs +1 -1
- package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableServer.mjs +50 -14
- package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
- package/lib/labs/VDataTable/VDataTableVirtual.mjs +50 -13
- 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 +8 -6
- package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/headers.mjs +2 -3
- package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/items.mjs +31 -32
- package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/paginate.mjs +14 -2
- package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/select.mjs +3 -3
- package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
- package/lib/labs/VDataTable/composables/sort.mjs +17 -17
- 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.mts +9681 -0
- package/lib/labs/VDataTable/index.mjs +1 -1
- package/lib/labs/VDataTable/index.mjs.map +1 -1
- package/lib/labs/VDataTable/types.mjs.map +1 -1
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
- package/lib/labs/VInfiniteScroll/{index.d.ts → index.d.mts} +161 -54
- package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
- package/lib/labs/VSkeletonLoader/{index.d.ts → index.d.mts} +92 -31
- package/lib/labs/components.d.mts +11806 -0
- package/lib/labs/components.mjs +2 -0
- package/lib/labs/components.mjs.map +1 -1
- package/lib/labs/date/date.mjs.map +1 -1
- package/lib/labs/date/index.d.mts +70 -0
- package/lib/labs/date/index.mjs +1 -1
- package/lib/labs/date/index.mjs.map +1 -1
- package/lib/styles/settings/_variables.scss +3 -3
- package/lib/util/colorUtils.mjs +68 -3
- package/lib/util/colorUtils.mjs.map +1 -1
- package/lib/util/console.mjs +12 -81
- package/lib/util/console.mjs.map +1 -1
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/helpers.mjs +4 -18
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/propsFactory.mjs +2 -0
- package/lib/util/propsFactory.mjs.map +1 -1
- package/package.json +13 -9
- package/lib/components/VAutocomplete/index.d.ts +0 -2050
- package/lib/components/VBottomSheet/VBottomSheet.mjs +0 -29
- package/lib/components/VBottomSheet/VBottomSheet.mjs.map +0 -1
- package/lib/components/VBottomSheet/VBottomSheet.sass +0 -23
- package/lib/components/VBottomSheet/_variables.scss +0 -3
- package/lib/components/VBottomSheet/index.mjs +0 -4
- package/lib/components/VBottomSheet/index.mjs.map +0 -1
- package/lib/components/VChipGroup/index.d.ts +0 -280
- package/lib/components/VCombobox/index.d.ts +0 -2086
- package/lib/components/VData/VData.mjs +0 -374
- package/lib/components/VData/VData.mjs.map +0 -1
- package/lib/components/VData/index.mjs +0 -4
- package/lib/components/VData/index.mjs.map +0 -1
- package/lib/components/VDataIterator/VDataFooter.mjs +0 -194
- package/lib/components/VDataIterator/VDataFooter.mjs.map +0 -1
- package/lib/components/VDataIterator/VDataFooter.sass +0 -71
- package/lib/components/VDataIterator/VDataIterator.mjs +0 -316
- package/lib/components/VDataIterator/VDataIterator.mjs.map +0 -1
- package/lib/components/VDataIterator/_variables.scss +0 -13
- package/lib/components/VDataIterator/index.mjs +0 -10
- package/lib/components/VDataIterator/index.mjs.map +0 -1
- package/lib/components/VField/index.d.ts +0 -563
- package/lib/components/VForm/index.d.ts +0 -284
- package/lib/components/VItemGroup/index.d.ts +0 -396
- package/lib/components/VSelect/index.d.ts +0 -1981
- package/lib/components/VSelectionControl/index.d.ts +0 -387
- package/lib/components/VTextField/index.d.ts +0 -2061
- package/lib/components/VValidation/index.d.ts +0 -243
- package/lib/components/VVirtualScroll/index.d.ts +0 -197
- package/lib/composables/items.mjs.map +0 -1
- package/lib/labs/VDataTable/index.d.ts +0 -5415
- package/lib/labs/components.d.ts +0 -5945
- package/lib/labs/date/index.d.ts +0 -38
- /package/lib/components/VNoSsr/{index.d.ts → index.d.mts} +0 -0
- /package/lib/directives/{index.d.ts → index.d.mts} +0 -0
- /package/lib/iconsets/{fa-svg.d.ts → fa-svg.d.mts} +0 -0
- /package/lib/iconsets/{fa.d.ts → fa.d.mts} +0 -0
- /package/lib/iconsets/{fa4.d.ts → fa4.d.mts} +0 -0
- /package/lib/iconsets/{md.d.ts → md.d.mts} +0 -0
- /package/lib/iconsets/{mdi-svg.d.ts → mdi-svg.d.mts} +0 -0
- /package/lib/iconsets/{mdi.d.ts → mdi.d.mts} +0 -0
- /package/lib/labs/date/adapters/{vuetify.d.ts → vuetify.d.mts} +0 -0
- /package/lib/locale/adapters/{vue-i18n.d.ts → vue-i18n.d.mts} +0 -0
- /package/lib/locale/adapters/{vuetify.d.ts → vuetify.d.mts} +0 -0
- /package/lib/locale/{index.d.ts → index.d.mts} +0 -0
|
@@ -9,23 +9,15 @@ declare const VLazy: {
|
|
|
9
9
|
new (...args: any[]): {
|
|
10
10
|
$: vue.ComponentInternalInstance;
|
|
11
11
|
$data: {};
|
|
12
|
-
$props:
|
|
13
|
-
transition
|
|
14
|
-
component?: vue.Component | undefined;
|
|
15
|
-
})>;
|
|
16
|
-
style: vue.StyleValue;
|
|
17
|
-
options: IntersectionObserverInit;
|
|
18
|
-
tag: string;
|
|
19
|
-
modelValue: boolean;
|
|
20
|
-
}> & Omit<{
|
|
21
|
-
transition: NonNullable<string | boolean | (vue.TransitionProps & {
|
|
12
|
+
$props: {
|
|
13
|
+
transition?: NonNullable<string | boolean | (vue.TransitionProps & {
|
|
22
14
|
component?: vue.Component | undefined;
|
|
23
|
-
})
|
|
24
|
-
style
|
|
25
|
-
options
|
|
26
|
-
tag
|
|
27
|
-
modelValue
|
|
28
|
-
|
|
15
|
+
})> | undefined;
|
|
16
|
+
style?: vue.StyleValue | undefined;
|
|
17
|
+
options?: IntersectionObserverInit | undefined;
|
|
18
|
+
tag?: string | undefined;
|
|
19
|
+
modelValue?: boolean | undefined;
|
|
20
|
+
key?: string | number | symbol | undefined;
|
|
29
21
|
height?: string | number | undefined;
|
|
30
22
|
width?: string | number | undefined;
|
|
31
23
|
maxHeight?: string | number | undefined;
|
|
@@ -33,18 +25,59 @@ declare const VLazy: {
|
|
|
33
25
|
minHeight?: string | number | undefined;
|
|
34
26
|
minWidth?: string | number | undefined;
|
|
35
27
|
class?: any;
|
|
36
|
-
} & {
|
|
37
28
|
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
|
|
38
29
|
default?: (() => vue.VNodeChild) | undefined;
|
|
39
30
|
};
|
|
31
|
+
ref?: vue.VNodeRef | undefined;
|
|
32
|
+
ref_for?: boolean | undefined;
|
|
33
|
+
ref_key?: string | undefined;
|
|
34
|
+
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
|
|
40
35
|
'v-slots'?: {
|
|
41
36
|
default?: false | (() => vue.VNodeChild) | undefined;
|
|
42
37
|
} | undefined;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
38
|
+
$slots?: {
|
|
39
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
40
|
+
} | undefined;
|
|
41
|
+
onVnodeBeforeMount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
44
|
+
[key: string]: any;
|
|
45
|
+
}>) => void)[] | undefined;
|
|
46
|
+
onVnodeMounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
47
|
+
[key: string]: any;
|
|
48
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
49
|
+
[key: string]: any;
|
|
50
|
+
}>) => void)[] | undefined;
|
|
51
|
+
onVnodeBeforeUpdate?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
52
|
+
[key: string]: any;
|
|
53
|
+
}>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
54
|
+
[key: string]: any;
|
|
55
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
56
|
+
[key: string]: any;
|
|
57
|
+
}>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
58
|
+
[key: string]: any;
|
|
59
|
+
}>) => void)[] | undefined;
|
|
60
|
+
onVnodeUpdated?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
61
|
+
[key: string]: any;
|
|
62
|
+
}>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
63
|
+
[key: string]: any;
|
|
64
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
65
|
+
[key: string]: any;
|
|
66
|
+
}>, oldVNode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
67
|
+
[key: string]: any;
|
|
68
|
+
}>) => void)[] | undefined;
|
|
69
|
+
onVnodeBeforeUnmount?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
70
|
+
[key: string]: any;
|
|
71
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
72
|
+
[key: string]: any;
|
|
73
|
+
}>) => void)[] | undefined;
|
|
74
|
+
onVnodeUnmounted?: ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
75
|
+
[key: string]: any;
|
|
76
|
+
}>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
77
|
+
[key: string]: any;
|
|
78
|
+
}>) => void)[] | undefined;
|
|
46
79
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
47
|
-
}
|
|
80
|
+
};
|
|
48
81
|
$attrs: {
|
|
49
82
|
[x: string]: unknown;
|
|
50
83
|
};
|
|
@@ -52,10 +85,12 @@ declare const VLazy: {
|
|
|
52
85
|
[x: string]: unknown;
|
|
53
86
|
};
|
|
54
87
|
$slots: Readonly<{
|
|
55
|
-
|
|
88
|
+
default?: (() => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
89
|
+
[key: string]: any;
|
|
90
|
+
}>[]) | undefined;
|
|
56
91
|
}>;
|
|
57
|
-
$root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
|
|
58
|
-
$parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
|
|
92
|
+
$root: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
|
|
93
|
+
$parent: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
|
|
59
94
|
$emit: (event: "update:modelValue", value: boolean) => void;
|
|
60
95
|
$el: any;
|
|
61
96
|
$options: vue.ComponentOptionsBase<{
|
|
@@ -83,6 +118,10 @@ declare const VLazy: {
|
|
|
83
118
|
} | undefined;
|
|
84
119
|
} & {
|
|
85
120
|
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
|
|
121
|
+
} & {
|
|
122
|
+
$slots?: {
|
|
123
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
124
|
+
} | undefined;
|
|
86
125
|
} & {
|
|
87
126
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
88
127
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
@@ -95,7 +134,11 @@ declare const VLazy: {
|
|
|
95
134
|
options: IntersectionObserverInit;
|
|
96
135
|
tag: string;
|
|
97
136
|
modelValue: boolean;
|
|
98
|
-
}, {}, string
|
|
137
|
+
}, {}, string, vue.SlotsType<Partial<{
|
|
138
|
+
default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
139
|
+
[key: string]: any;
|
|
140
|
+
}>[];
|
|
141
|
+
}>>> & {
|
|
99
142
|
beforeCreate?: ((() => void) | (() => void)[]) | undefined;
|
|
100
143
|
created?: ((() => void) | (() => void)[]) | undefined;
|
|
101
144
|
beforeMount?: ((() => void) | (() => void)[]) | undefined;
|
|
@@ -110,7 +153,7 @@ declare const VLazy: {
|
|
|
110
153
|
unmounted?: ((() => void) | (() => void)[]) | undefined;
|
|
111
154
|
renderTracked?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
|
|
112
155
|
renderTriggered?: (((e: vue.DebuggerEvent) => void) | ((e: vue.DebuggerEvent) => void)[]) | undefined;
|
|
113
|
-
errorCaptured?: (((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void)[]) | undefined;
|
|
156
|
+
errorCaptured?: (((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: vue.ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, vue.ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
|
|
114
157
|
};
|
|
115
158
|
$forceUpdate: () => void;
|
|
116
159
|
$nextTick: typeof vue.nextTick;
|
|
@@ -140,6 +183,10 @@ declare const VLazy: {
|
|
|
140
183
|
} | undefined;
|
|
141
184
|
} & {
|
|
142
185
|
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
|
|
186
|
+
} & {
|
|
187
|
+
$slots?: {
|
|
188
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
189
|
+
} | undefined;
|
|
143
190
|
} & {
|
|
144
191
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
145
192
|
} & vue.ShallowUnwrapRef<{}> & {} & vue.ComponentCustomProperties & {};
|
|
@@ -171,6 +218,10 @@ declare const VLazy: {
|
|
|
171
218
|
} | undefined;
|
|
172
219
|
} & {
|
|
173
220
|
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
|
|
221
|
+
} & {
|
|
222
|
+
$slots?: {
|
|
223
|
+
default?: (() => vue.VNodeChild) | undefined;
|
|
224
|
+
} | undefined;
|
|
174
225
|
} & {
|
|
175
226
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
176
227
|
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
@@ -183,7 +234,11 @@ declare const VLazy: {
|
|
|
183
234
|
options: IntersectionObserverInit;
|
|
184
235
|
tag: string;
|
|
185
236
|
modelValue: boolean;
|
|
186
|
-
}, {}, string
|
|
237
|
+
}, {}, string, vue.SlotsType<Partial<{
|
|
238
|
+
default: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
|
|
239
|
+
[key: string]: any;
|
|
240
|
+
}>[];
|
|
241
|
+
}>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
|
|
187
242
|
transition: Omit<{
|
|
188
243
|
type: PropType<string | boolean | (vue.TransitionProps & {
|
|
189
244
|
component?: vue.Component | undefined;
|
|
@@ -10,7 +10,7 @@ import { makeComponentProps } from "../../composables/component.mjs";
|
|
|
10
10
|
import { makeDensityProps, useDensity } from "../../composables/density.mjs";
|
|
11
11
|
import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
|
|
12
12
|
import { makeElevationProps, useElevation } from "../../composables/elevation.mjs";
|
|
13
|
-
import { makeItemsProps } from "../../composables/items.mjs";
|
|
13
|
+
import { makeItemsProps } from "../../composables/list-items.mjs";
|
|
14
14
|
import { makeNestedProps, useNested } from "../../composables/nested/nested.mjs";
|
|
15
15
|
import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
|
|
16
16
|
import { makeTagProps } from "../../composables/tag.mjs";
|
|
@@ -57,6 +57,8 @@ function useListItems(props) {
|
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
export const makeVListProps = propsFactory({
|
|
60
|
+
baseColor: String,
|
|
61
|
+
/* @deprecated */
|
|
60
62
|
activeColor: String,
|
|
61
63
|
activeClass: String,
|
|
62
64
|
bgColor: String,
|
|
@@ -131,16 +133,19 @@ export const VList = genericComponent()({
|
|
|
131
133
|
} = useNested(props);
|
|
132
134
|
const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined);
|
|
133
135
|
const activeColor = toRef(props, 'activeColor');
|
|
136
|
+
const baseColor = toRef(props, 'baseColor');
|
|
134
137
|
const color = toRef(props, 'color');
|
|
135
138
|
createList();
|
|
136
139
|
provideDefaults({
|
|
137
140
|
VListGroup: {
|
|
138
141
|
activeColor,
|
|
142
|
+
baseColor,
|
|
139
143
|
color
|
|
140
144
|
},
|
|
141
145
|
VListItem: {
|
|
142
146
|
activeClass: toRef(props, 'activeClass'),
|
|
143
147
|
activeColor,
|
|
148
|
+
baseColor,
|
|
144
149
|
color,
|
|
145
150
|
density: toRef(props, 'density'),
|
|
146
151
|
disabled: toRef(props, 'disabled'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VList.mjs","names":["VListChildren","createList","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeItemsProps","makeNestedProps","useNested","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","provideDefaults","useBackgroundColor","computed","ref","shallowRef","toRef","focusChild","genericComponent","getPropertyFromItem","pick","propsFactory","useRender","isPrimitive","value","transformItem","props","item","type","itemType","title","itemTitle","itemValue","undefined","children","itemChildren","itemProps","_props","transformItems","raw","items","array","push","useListItems","makeVListProps","activeColor","String","activeClass","bgColor","disabled","Boolean","lines","default","nav","selectStrategy","openStrategy","variant","VList","name","emits","val","setup","_ref","slots","themeClasses","backgroundColorClasses","backgroundColorStyles","borderClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","open","select","lineClasses","color","VListGroup","VListItem","density","isFocused","contentRef","onFocusin","e","onFocusout","onFocus","relatedTarget","contains","focus","onKeydown","key","preventDefault","location","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VList.tsx"],"sourcesContent":["// Styles\nimport './VList.sass'\n\n// Components\nimport { VListChildren } from './VListChildren'\n\n// Composables\nimport { createList } from './list'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeItemsProps } from '@/composables/items'\nimport { makeNestedProps, useNested } from '@/composables/nested/nested'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef } from 'vue'\nimport { focusChild, genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\nimport type { InternalItem, ItemProps } from '@/composables/items'\nimport type { VListChildrenSlots } from './VListChildren'\nimport type { PropType } from 'vue'\n\nexport interface InternalListItem<T = any> extends InternalItem<T> {\n type?: 'item' | 'subheader' | 'divider'\n}\n\nfunction isPrimitive (value: unknown): value is string | number | boolean {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean'\n}\n\nfunction transformItem (props: ItemProps & { itemType: string }, item: any): InternalListItem {\n const type = getPropertyFromItem(item, props.itemType, 'item')\n const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle)\n const value = getPropertyFromItem(item, props.itemValue, undefined)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n type,\n title: _props.title,\n value: _props.value,\n props: _props,\n children: type === 'item' && children ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nfunction transformItems (props: ItemProps & { itemType: string }, items: (string | object)[]) {\n const array: InternalListItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nfunction useListItems (props: ItemProps & { itemType: string }) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n\nexport const makeVListProps = propsFactory({\n activeColor: String,\n activeClass: String,\n bgColor: String,\n disabled: Boolean,\n lines: {\n type: [Boolean, String] as PropType<'one' | 'two' | 'three' | false>,\n default: 'one',\n },\n nav: Boolean,\n\n ...makeNestedProps({\n selectStrategy: 'single-leaf' as const,\n openStrategy: 'list' as const,\n }),\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n itemType: {\n type: String,\n default: 'type',\n },\n ...makeItemsProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'v-list')\n\nexport const VList = genericComponent<new <T>(props: {\n items?: T[]\n}) => GenericProps<typeof props, VListChildrenSlots<T>>>()({\n name: 'VList',\n\n props: makeVListProps(),\n\n emits: {\n 'update:selected': (val: unknown[]) => true,\n 'update:opened': (val: unknown[]) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { open, select } = useNested(props)\n const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined)\n const activeColor = toRef(props, 'activeColor')\n const color = toRef(props, 'color')\n\n createList()\n\n provideDefaults({\n VListGroup: {\n activeColor,\n color,\n },\n VListItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n nav: toRef(props, 'nav'),\n variant: toRef(props, 'variant'),\n },\n })\n\n const isFocused = shallowRef(false)\n const contentRef = ref<HTMLElement>()\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n\n function onFocusout (e: FocusEvent) {\n isFocused.value = false\n }\n\n function onFocus (e: FocusEvent) {\n if (\n !isFocused.value &&\n !(e.relatedTarget && contentRef.value?.contains(e.relatedTarget as Node))\n ) focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (!contentRef.value) return\n\n if (e.key === 'ArrowDown') {\n focus('next')\n } else if (e.key === 'ArrowUp') {\n focus('prev')\n } else if (e.key === 'Home') {\n focus('first')\n } else if (e.key === 'End') {\n focus('last')\n } else {\n return\n }\n\n e.preventDefault()\n }\n\n function focus (location?: 'next' | 'prev' | 'first' | 'last') {\n if (contentRef.value) {\n return focusChild(contentRef.value, location)\n }\n }\n\n useRender(() => {\n return (\n <props.tag\n ref={ contentRef }\n class={[\n 'v-list',\n {\n 'v-list--disabled': props.disabled,\n 'v-list--nav': props.nav,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n props.style,\n ]}\n role=\"listbox\"\n aria-activedescendant={ undefined }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n onFocus={ onFocus }\n onKeydown={ onKeydown }\n >\n <VListChildren items={ items.value } v-slots={ slots }></VListChildren>\n </props.tag>\n )\n })\n\n return {\n open,\n select,\n focus,\n }\n },\n})\n\nexport type VList = InstanceType<typeof VList>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VList.mjs","names":["VListChildren","createList","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeItemsProps","makeNestedProps","useNested","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","provideDefaults","useBackgroundColor","computed","ref","shallowRef","toRef","focusChild","genericComponent","getPropertyFromItem","pick","propsFactory","useRender","isPrimitive","value","transformItem","props","item","type","itemType","title","itemTitle","itemValue","undefined","children","itemChildren","itemProps","_props","transformItems","raw","items","array","push","useListItems","makeVListProps","baseColor","String","activeColor","activeClass","bgColor","disabled","Boolean","lines","default","nav","selectStrategy","openStrategy","variant","VList","name","emits","val","setup","_ref","slots","themeClasses","backgroundColorClasses","backgroundColorStyles","borderClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","open","select","lineClasses","color","VListGroup","VListItem","density","isFocused","contentRef","onFocusin","e","onFocusout","onFocus","relatedTarget","contains","focus","onKeydown","key","preventDefault","location","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VList.tsx"],"sourcesContent":["// Styles\nimport './VList.sass'\n\n// Components\nimport { VListChildren } from './VListChildren'\n\n// Composables\nimport { createList } from './list'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeItemsProps } from '@/composables/list-items'\nimport { makeNestedProps, useNested } from '@/composables/nested/nested'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\nimport { provideDefaults } from '@/composables/defaults'\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef } from 'vue'\nimport { focusChild, genericComponent, getPropertyFromItem, pick, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { GenericProps } from '@/util'\nimport type { ItemProps, ListItem } from '@/composables/list-items'\nimport type { VListChildrenSlots } from './VListChildren'\nimport type { PropType } from 'vue'\n\nexport interface InternalListItem<T = any> extends ListItem<T> {\n type?: 'item' | 'subheader' | 'divider'\n}\n\nfunction isPrimitive (value: unknown): value is string | number | boolean {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean'\n}\n\nfunction transformItem (props: ItemProps & { itemType: string }, item: any): InternalListItem {\n const type = getPropertyFromItem(item, props.itemType, 'item')\n const title = isPrimitive(item) ? item : getPropertyFromItem(item, props.itemTitle)\n const value = getPropertyFromItem(item, props.itemValue, undefined)\n const children = getPropertyFromItem(item, props.itemChildren)\n const itemProps = props.itemProps === true ? pick(item, ['children'])[1] : getPropertyFromItem(item, props.itemProps)\n\n const _props = {\n title,\n value,\n ...itemProps,\n }\n\n return {\n type,\n title: _props.title,\n value: _props.value,\n props: _props,\n children: type === 'item' && children ? transformItems(props, children) : undefined,\n raw: item,\n }\n}\n\nfunction transformItems (props: ItemProps & { itemType: string }, items: (string | object)[]) {\n const array: InternalListItem[] = []\n\n for (const item of items) {\n array.push(transformItem(props, item))\n }\n\n return array\n}\n\nfunction useListItems (props: ItemProps & { itemType: string }) {\n const items = computed(() => transformItems(props, props.items))\n\n return { items }\n}\n\nexport const makeVListProps = propsFactory({\n baseColor: String,\n /* @deprecated */\n activeColor: String,\n activeClass: String,\n bgColor: String,\n disabled: Boolean,\n lines: {\n type: [Boolean, String] as PropType<'one' | 'two' | 'three' | false>,\n default: 'one',\n },\n nav: Boolean,\n\n ...makeNestedProps({\n selectStrategy: 'single-leaf' as const,\n openStrategy: 'list' as const,\n }),\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n itemType: {\n type: String,\n default: 'type',\n },\n ...makeItemsProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'v-list')\n\nexport const VList = genericComponent<new <T>(\n props: {\n items?: T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VList',\n\n props: makeVListProps(),\n\n emits: {\n 'update:selected': (val: unknown[]) => true,\n 'update:opened': (val: unknown[]) => true,\n 'click:open': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n 'click:select': (value: { id: unknown, value: boolean, path: unknown[] }) => true,\n },\n\n setup (props, { slots }) {\n const { items } = useListItems(props)\n const { themeClasses } = provideTheme(props)\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'bgColor'))\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { open, select } = useNested(props)\n const lineClasses = computed(() => props.lines ? `v-list--${props.lines}-line` : undefined)\n const activeColor = toRef(props, 'activeColor')\n const baseColor = toRef(props, 'baseColor')\n const color = toRef(props, 'color')\n\n createList()\n\n provideDefaults({\n VListGroup: {\n activeColor,\n baseColor,\n color,\n },\n VListItem: {\n activeClass: toRef(props, 'activeClass'),\n activeColor,\n baseColor,\n color,\n density: toRef(props, 'density'),\n disabled: toRef(props, 'disabled'),\n lines: toRef(props, 'lines'),\n nav: toRef(props, 'nav'),\n variant: toRef(props, 'variant'),\n },\n })\n\n const isFocused = shallowRef(false)\n const contentRef = ref<HTMLElement>()\n function onFocusin (e: FocusEvent) {\n isFocused.value = true\n }\n\n function onFocusout (e: FocusEvent) {\n isFocused.value = false\n }\n\n function onFocus (e: FocusEvent) {\n if (\n !isFocused.value &&\n !(e.relatedTarget && contentRef.value?.contains(e.relatedTarget as Node))\n ) focus()\n }\n\n function onKeydown (e: KeyboardEvent) {\n if (!contentRef.value) return\n\n if (e.key === 'ArrowDown') {\n focus('next')\n } else if (e.key === 'ArrowUp') {\n focus('prev')\n } else if (e.key === 'Home') {\n focus('first')\n } else if (e.key === 'End') {\n focus('last')\n } else {\n return\n }\n\n e.preventDefault()\n }\n\n function focus (location?: 'next' | 'prev' | 'first' | 'last') {\n if (contentRef.value) {\n return focusChild(contentRef.value, location)\n }\n }\n\n useRender(() => {\n return (\n <props.tag\n ref={ contentRef }\n class={[\n 'v-list',\n {\n 'v-list--disabled': props.disabled,\n 'v-list--nav': props.nav,\n },\n themeClasses.value,\n backgroundColorClasses.value,\n borderClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n props.class,\n ]}\n style={[\n backgroundColorStyles.value,\n dimensionStyles.value,\n props.style,\n ]}\n role=\"listbox\"\n aria-activedescendant={ undefined }\n onFocusin={ onFocusin }\n onFocusout={ onFocusout }\n onFocus={ onFocus }\n onKeydown={ onKeydown }\n >\n <VListChildren items={ items.value } v-slots={ slots }></VListChildren>\n </props.tag>\n )\n })\n\n return {\n open,\n select,\n focus,\n }\n },\n})\n\nexport type VList = InstanceType<typeof VList>\n"],"mappings":"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"}
|
|
@@ -32,9 +32,7 @@ export const VListChildren = genericComponent()({
|
|
|
32
32
|
if (type === 'subheader') {
|
|
33
33
|
return slots.subheader?.({
|
|
34
34
|
props: itemProps
|
|
35
|
-
}) ?? _createVNode(VListSubheader, itemProps,
|
|
36
|
-
default: slots.subheader
|
|
37
|
-
});
|
|
35
|
+
}) ?? _createVNode(VListSubheader, itemProps, null);
|
|
38
36
|
}
|
|
39
37
|
const slotsWithItem = {
|
|
40
38
|
subtitle: slots.subtitle ? slotProps => slots.subtitle?.({
|
|
@@ -49,10 +47,6 @@ export const VListChildren = genericComponent()({
|
|
|
49
47
|
...slotProps,
|
|
50
48
|
item
|
|
51
49
|
}) : undefined,
|
|
52
|
-
default: slots.default ? slotProps => slots.default?.({
|
|
53
|
-
...slotProps,
|
|
54
|
-
item
|
|
55
|
-
}) : undefined,
|
|
56
50
|
title: slots.title ? slotProps => slots.title?.({
|
|
57
51
|
...slotProps,
|
|
58
52
|
item
|
|
@@ -76,7 +70,9 @@ export const VListChildren = genericComponent()({
|
|
|
76
70
|
default: () => _createVNode(VListChildren, {
|
|
77
71
|
"items": children
|
|
78
72
|
}, slots)
|
|
79
|
-
}) : slots.item ? slots.item(
|
|
73
|
+
}) : slots.item ? slots.item({
|
|
74
|
+
props: itemProps
|
|
75
|
+
}) : _createVNode(VListItem, itemProps, slotsWithItem);
|
|
80
76
|
});
|
|
81
77
|
}
|
|
82
78
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VListChildren.mjs","names":["VDivider","VListGroup","VListItem","VListSubheader","createList","genericComponent","propsFactory","makeVListChildrenProps","items","Array","VListChildren","name","props","setup","_ref","slots","default","map","_ref2","children","itemProps","type","raw","item","divider","_createVNode","subheader","slotsWithItem","subtitle","slotProps","undefined","prepend","append","title","listGroupProps","_1","filterProps","_mergeProps","value","activator","_ref3","activatorProps","header"],"sources":["../../../src/components/VList/VListChildren.tsx"],"sourcesContent":["// Components\nimport { VDivider } from '../VDivider'\nimport { VListGroup } from './VListGroup'\nimport { VListItem } from './VListItem'\nimport { VListSubheader } from './VListSubheader'\n\n// Utilities\nimport { createList } from './list'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { InternalListItem } from './VList'\nimport type { VListItemSlots } from './VListItem'\nimport type { GenericProps } from '@/util'\nimport type { PropType } from 'vue'\n\nexport type VListChildrenSlots<T> = {\n [K in keyof VListItemSlots]: VListItemSlots[K] & [{ item: T }]\n} & {\n item: [
|
|
1
|
+
{"version":3,"file":"VListChildren.mjs","names":["VDivider","VListGroup","VListItem","VListSubheader","createList","genericComponent","propsFactory","makeVListChildrenProps","items","Array","VListChildren","name","props","setup","_ref","slots","default","map","_ref2","children","itemProps","type","raw","item","divider","_createVNode","subheader","slotsWithItem","subtitle","slotProps","undefined","prepend","append","title","listGroupProps","_1","filterProps","_mergeProps","value","activator","_ref3","activatorProps","header"],"sources":["../../../src/components/VList/VListChildren.tsx"],"sourcesContent":["// Components\nimport { VDivider } from '../VDivider'\nimport { VListGroup } from './VListGroup'\nimport { VListItem } from './VListItem'\nimport { VListSubheader } from './VListSubheader'\n\n// Utilities\nimport { createList } from './list'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { InternalListItem } from './VList'\nimport type { VListItemSlots } from './VListItem'\nimport type { GenericProps } from '@/util'\nimport type { PropType } from 'vue'\n\nexport type VListChildrenSlots<T> = {\n [K in keyof Omit<VListItemSlots, 'default'>]: VListItemSlots[K] & [{ item: T }]\n} & {\n default: []\n item: [{ props: InternalListItem['props'] }]\n divider: [{ props: InternalListItem['props'] }]\n subheader: [{ props: InternalListItem['props'] }]\n header: [{ props: InternalListItem['props'] }]\n}\n\nexport const makeVListChildrenProps = propsFactory({\n items: Array as PropType<readonly InternalListItem[]>,\n}, 'v-list-children')\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: readonly T[]\n },\n slots: VListChildrenSlots<T>\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VListChildren',\n\n props: makeVListChildrenProps(),\n\n setup (props, { slots }) {\n createList()\n\n return () => slots.default?.() ?? props.items?.map(({ children, props: itemProps, type, raw: item }) => {\n if (type === 'divider') {\n return slots.divider?.({ props: itemProps }) ?? (\n <VDivider { ...itemProps } />\n )\n }\n\n if (type === 'subheader') {\n return slots.subheader?.({ props: itemProps }) ?? (\n <VListSubheader { ...itemProps } />\n )\n }\n\n const slotsWithItem = {\n subtitle: slots.subtitle ? (slotProps: any) => slots.subtitle?.({ ...slotProps, item }) : undefined,\n prepend: slots.prepend ? (slotProps: any) => slots.prepend?.({ ...slotProps, item }) : undefined,\n append: slots.append ? (slotProps: any) => slots.append?.({ ...slotProps, item }) : undefined,\n title: slots.title ? (slotProps: any) => slots.title?.({ ...slotProps, item }) : undefined,\n }\n\n const [listGroupProps, _1] = VListGroup.filterProps(itemProps)\n\n return children ? (\n <VListGroup\n value={ itemProps?.value }\n { ...listGroupProps }\n >\n {{\n activator: ({ props: activatorProps }) => slots.header\n ? slots.header({ props: { ...itemProps, ...activatorProps } })\n : <VListItem { ...itemProps } { ...activatorProps } v-slots={ slotsWithItem } />,\n default: () => (\n <VListChildren items={ children } v-slots={ slots } />\n ),\n }}\n </VListGroup>\n ) : (\n slots.item ? slots.item({ props: itemProps }) : (\n <VListItem\n { ...itemProps }\n v-slots={ slotsWithItem }\n />\n )\n )\n })\n },\n})\n"],"mappings":"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"}
|
|
@@ -22,7 +22,9 @@ const VListGroupActivator = defineComponent({
|
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
24
|
export const makeVListGroupProps = propsFactory({
|
|
25
|
+
/* @deprecated */
|
|
25
26
|
activeColor: String,
|
|
27
|
+
baseColor: String,
|
|
26
28
|
color: String,
|
|
27
29
|
collapseIcon: {
|
|
28
30
|
type: IconValue,
|
|
@@ -71,6 +73,7 @@ export const VListGroup = genericComponent()({
|
|
|
71
73
|
VListItem: {
|
|
72
74
|
active: isOpen.value,
|
|
73
75
|
activeColor: props.activeColor,
|
|
76
|
+
baseColor: props.baseColor,
|
|
74
77
|
color: props.color,
|
|
75
78
|
prependIcon: props.prependIcon || props.subgroup && toggleIcon.value,
|
|
76
79
|
appendIcon: props.appendIcon || !props.subgroup && toggleIcon.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VListGroup.mjs","names":["VDefaultsProvider","VExpandTransition","IconValue","makeComponentProps","makeTagProps","MaybeTransition","useList","useNestedGroupActivator","useNestedItem","useSsrBoot","computed","toRef","defineComponent","genericComponent","propsFactory","useRender","VListGroupActivator","name","setup","_","_ref","slots","default","makeVListGroupProps","activeColor","String","color","collapseIcon","type","expandIcon","prependIcon","appendIcon","fluid","Boolean","subgroup","title","value","VListGroup","props","_ref2","isOpen","open","id","_id","list","isBooted","onClick","e","activatorProps","class","toggleIcon","activatorDefaults","VListItem","active","_createVNode","tag","hasPrepend","style","activator","component","_withDirectives","_vShow"],"sources":["../../../src/components/VList/VListGroup.tsx"],"sourcesContent":["// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VExpandTransition } from '@/components/transitions'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { MaybeTransition } from '@/composables/transition'\nimport { useList } from './list'\nimport { useNestedGroupActivator, useNestedItem } from '@/composables/nested/nested'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\nexport type VListGroupSlots = {\n default: []\n activator: [{ isOpen: boolean, props: Record<string, unknown> }]\n}\n\nconst VListGroupActivator = defineComponent({\n name: 'VListGroupActivator',\n\n setup (_, { slots }) {\n useNestedGroupActivator()\n\n return () => slots.default?.()\n },\n})\n\nexport const makeVListGroupProps = propsFactory({\n activeColor: String,\n color: String,\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n prependIcon: IconValue,\n appendIcon: IconValue,\n fluid: Boolean,\n subgroup: Boolean,\n title: String,\n value: null,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-group')\n\nexport const VListGroup = genericComponent<VListGroupSlots>()({\n name: 'VListGroup',\n\n props: makeVListGroupProps(),\n\n setup (props, { slots }) {\n const { isOpen, open, id: _id } = useNestedItem(toRef(props, 'value'), true)\n const id = computed(() => `v-list-group--id-${String(_id.value)}`)\n const list = useList()\n const { isBooted } = useSsrBoot()\n\n function onClick (e: Event) {\n open(!isOpen.value, e)\n }\n\n const activatorProps = computed(() => ({\n onClick,\n class: 'v-list-group__header',\n id: id.value,\n }))\n\n const toggleIcon = computed(() => isOpen.value ? props.collapseIcon : props.expandIcon)\n const activatorDefaults = computed(() => ({\n VListItem: {\n active: isOpen.value,\n activeColor: props.activeColor,\n color: props.color,\n prependIcon: props.prependIcon || (props.subgroup && toggleIcon.value),\n appendIcon: props.appendIcon || (!props.subgroup && toggleIcon.value),\n title: props.title,\n value: props.value,\n },\n }))\n\n useRender(() => (\n <props.tag\n class={[\n 'v-list-group',\n {\n 'v-list-group--prepend': list?.hasPrepend.value,\n 'v-list-group--fluid': props.fluid,\n 'v-list-group--subgroup': props.subgroup,\n 'v-list-group--open': isOpen.value,\n },\n props.class,\n ]}\n style={ props.style }\n >\n { slots.activator && (\n <VDefaultsProvider defaults={ activatorDefaults.value }>\n <VListGroupActivator>\n { slots.activator({ props: activatorProps.value, isOpen: isOpen.value }) }\n </VListGroupActivator>\n </VDefaultsProvider>\n )}\n\n <MaybeTransition transition={{ component: VExpandTransition }} disabled={ !isBooted.value }>\n <div class=\"v-list-group__items\" role=\"group\" aria-labelledby={ id.value } v-show={ isOpen.value }>\n { slots.default?.() }\n </div>\n </MaybeTransition>\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VListGroup = InstanceType<typeof VListGroup>\n"],"mappings":";AAAA;AAAA,SACSA,iBAAiB;AAAA,SACjBC,iBAAiB,oCAE1B;AAAA,SACSC,SAAS;AAAA,SACTC,kBAAkB;AAAA,SAClBC,YAAY;AAAA,SACZC,eAAe;AAAA,SACfC,OAAO;AAAA,SACPC,uBAAuB,EAAEC,aAAa;AAAA,SACtCC,UAAU,yCAEnB;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,eAAe,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAOnE,MAAMC,mBAAmB,GAAGJ,eAAe,CAAC;EAC1CK,IAAI,EAAE,qBAAqB;EAE3BC,KAAKA,CAAEC,CAAC,EAAAC,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACjBb,uBAAuB,EAAE;IAEzB,OAAO,MAAMc,KAAK,CAACC,OAAO,IAAI;EAChC;AACF,CAAC,CAAC;AAEF,OAAO,MAAMC,mBAAmB,GAAGT,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"VListGroup.mjs","names":["VDefaultsProvider","VExpandTransition","IconValue","makeComponentProps","makeTagProps","MaybeTransition","useList","useNestedGroupActivator","useNestedItem","useSsrBoot","computed","toRef","defineComponent","genericComponent","propsFactory","useRender","VListGroupActivator","name","setup","_","_ref","slots","default","makeVListGroupProps","activeColor","String","baseColor","color","collapseIcon","type","expandIcon","prependIcon","appendIcon","fluid","Boolean","subgroup","title","value","VListGroup","props","_ref2","isOpen","open","id","_id","list","isBooted","onClick","e","activatorProps","class","toggleIcon","activatorDefaults","VListItem","active","_createVNode","tag","hasPrepend","style","activator","component","_withDirectives","_vShow"],"sources":["../../../src/components/VList/VListGroup.tsx"],"sourcesContent":["// Components\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VExpandTransition } from '@/components/transitions'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { MaybeTransition } from '@/composables/transition'\nimport { useList } from './list'\nimport { useNestedGroupActivator, useNestedItem } from '@/composables/nested/nested'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { defineComponent, genericComponent, propsFactory, useRender } from '@/util'\n\nexport type VListGroupSlots = {\n default: []\n activator: [{ isOpen: boolean, props: Record<string, unknown> }]\n}\n\nconst VListGroupActivator = defineComponent({\n name: 'VListGroupActivator',\n\n setup (_, { slots }) {\n useNestedGroupActivator()\n\n return () => slots.default?.()\n },\n})\n\nexport const makeVListGroupProps = propsFactory({\n /* @deprecated */\n activeColor: String,\n baseColor: String,\n color: String,\n collapseIcon: {\n type: IconValue,\n default: '$collapse',\n },\n expandIcon: {\n type: IconValue,\n default: '$expand',\n },\n prependIcon: IconValue,\n appendIcon: IconValue,\n fluid: Boolean,\n subgroup: Boolean,\n title: String,\n value: null,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-group')\n\nexport const VListGroup = genericComponent<VListGroupSlots>()({\n name: 'VListGroup',\n\n props: makeVListGroupProps(),\n\n setup (props, { slots }) {\n const { isOpen, open, id: _id } = useNestedItem(toRef(props, 'value'), true)\n const id = computed(() => `v-list-group--id-${String(_id.value)}`)\n const list = useList()\n const { isBooted } = useSsrBoot()\n\n function onClick (e: Event) {\n open(!isOpen.value, e)\n }\n\n const activatorProps = computed(() => ({\n onClick,\n class: 'v-list-group__header',\n id: id.value,\n }))\n\n const toggleIcon = computed(() => isOpen.value ? props.collapseIcon : props.expandIcon)\n const activatorDefaults = computed(() => ({\n VListItem: {\n active: isOpen.value,\n activeColor: props.activeColor,\n baseColor: props.baseColor,\n color: props.color,\n prependIcon: props.prependIcon || (props.subgroup && toggleIcon.value),\n appendIcon: props.appendIcon || (!props.subgroup && toggleIcon.value),\n title: props.title,\n value: props.value,\n },\n }))\n\n useRender(() => (\n <props.tag\n class={[\n 'v-list-group',\n {\n 'v-list-group--prepend': list?.hasPrepend.value,\n 'v-list-group--fluid': props.fluid,\n 'v-list-group--subgroup': props.subgroup,\n 'v-list-group--open': isOpen.value,\n },\n props.class,\n ]}\n style={ props.style }\n >\n { slots.activator && (\n <VDefaultsProvider defaults={ activatorDefaults.value }>\n <VListGroupActivator>\n { slots.activator({ props: activatorProps.value, isOpen: isOpen.value }) }\n </VListGroupActivator>\n </VDefaultsProvider>\n )}\n\n <MaybeTransition transition={{ component: VExpandTransition }} disabled={ !isBooted.value }>\n <div class=\"v-list-group__items\" role=\"group\" aria-labelledby={ id.value } v-show={ isOpen.value }>\n { slots.default?.() }\n </div>\n </MaybeTransition>\n </props.tag>\n ))\n\n return {}\n },\n})\n\nexport type VListGroup = InstanceType<typeof VListGroup>\n"],"mappings":"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"}
|
|
@@ -23,16 +23,18 @@ import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
|
|
|
23
23
|
import { useList } from "./list.mjs";
|
|
24
24
|
import { useNestedItem } from "../../composables/nested/nested.mjs"; // Utilities
|
|
25
25
|
import { computed, watch } from 'vue';
|
|
26
|
-
import { EventProp, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
26
|
+
import { deprecate, EventProp, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
|
|
27
27
|
export const makeVListItemProps = propsFactory({
|
|
28
28
|
active: {
|
|
29
29
|
type: Boolean,
|
|
30
30
|
default: undefined
|
|
31
31
|
},
|
|
32
32
|
activeClass: String,
|
|
33
|
+
/* @deprecated */
|
|
33
34
|
activeColor: String,
|
|
34
35
|
appendAvatar: String,
|
|
35
36
|
appendIcon: IconValue,
|
|
37
|
+
baseColor: String,
|
|
36
38
|
disabled: Boolean,
|
|
37
39
|
lines: String,
|
|
38
40
|
link: {
|
|
@@ -95,8 +97,9 @@ export const VListItem = genericComponent()({
|
|
|
95
97
|
const isLink = computed(() => props.link !== false && link.isLink.value);
|
|
96
98
|
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || props.value != null && !!list));
|
|
97
99
|
const roundedProps = computed(() => props.rounded || props.nav);
|
|
100
|
+
const color = computed(() => props.color ?? props.activeColor);
|
|
98
101
|
const variantProps = computed(() => ({
|
|
99
|
-
color: isActive.value ?
|
|
102
|
+
color: isActive.value ? color.value ?? props.baseColor : props.baseColor,
|
|
100
103
|
variant: props.variant
|
|
101
104
|
}));
|
|
102
105
|
watch(() => link.isActive?.value, val => {
|
|
@@ -153,7 +156,6 @@ export const VListItem = genericComponent()({
|
|
|
153
156
|
}
|
|
154
157
|
useRender(() => {
|
|
155
158
|
const Tag = isLink.value ? 'a' : props.tag;
|
|
156
|
-
const hasColor = !list || isSelected.value || isActive.value;
|
|
157
159
|
const hasTitle = slots.title || props.title;
|
|
158
160
|
const hasSubtitle = slots.subtitle || props.subtitle;
|
|
159
161
|
const hasAppendMedia = !!(props.appendAvatar || props.appendIcon);
|
|
@@ -161,6 +163,9 @@ export const VListItem = genericComponent()({
|
|
|
161
163
|
const hasPrependMedia = !!(props.prependAvatar || props.prependIcon);
|
|
162
164
|
const hasPrepend = !!(hasPrependMedia || slots.prepend);
|
|
163
165
|
list?.updateHasPrepend(hasPrepend);
|
|
166
|
+
if (props.activeColor) {
|
|
167
|
+
deprecate('active-color', ['color', 'base-color']);
|
|
168
|
+
}
|
|
164
169
|
return _withDirectives(_createVNode(Tag, {
|
|
165
170
|
"class": ['v-list-item', {
|
|
166
171
|
'v-list-item--active': isActive.value,
|
|
@@ -169,10 +174,10 @@ export const VListItem = genericComponent()({
|
|
|
169
174
|
'v-list-item--nav': props.nav,
|
|
170
175
|
'v-list-item--prepend': !hasPrepend && list?.hasPrepend.value,
|
|
171
176
|
[`${props.activeClass}`]: props.activeClass && isActive.value
|
|
172
|
-
}, themeClasses.value, borderClasses.value,
|
|
173
|
-
"style": [
|
|
177
|
+
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
|
178
|
+
"style": [colorStyles.value, dimensionStyles.value, props.style],
|
|
174
179
|
"href": link.href.value,
|
|
175
|
-
"tabindex": isClickable.value ? 0 : undefined,
|
|
180
|
+
"tabindex": isClickable.value ? list ? -2 : 0 : undefined,
|
|
176
181
|
"onClick": onClick,
|
|
177
182
|
"onKeydown": isClickable.value && !isLink.value && onKeyDown
|
|
178
183
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VListItem.mjs","names":["VAvatar","VDefaultsProvider","VIcon","VListItemSubtitle","VListItemTitle","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","useList","useNestedItem","computed","watch","EventProp","genericComponent","propsFactory","useRender","makeVListItemProps","active","type","Boolean","default","undefined","activeClass","String","activeColor","appendAvatar","appendIcon","disabled","lines","link","nav","prependAvatar","prependIcon","ripple","subtitle","Number","title","value","onClick","onClickOnce","variant","VListItem","name","directives","props","emits","click","e","setup","_ref","attrs","slots","emit","id","href","select","isSelected","isIndeterminate","isGroupActivator","root","parent","openOnSelect","list","isActive","isLink","isClickable","roundedProps","rounded","variantProps","color","val","open","immediate","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","lineClasses","slotProps","navigate","onKeyDown","key","preventDefault","Tag","tag","hasColor","hasTitle","hasSubtitle","hasAppendMedia","hasAppend","append","hasPrependMedia","hasPrepend","prepend","updateHasPrepend","_withDirectives","_createVNode","class","style","_Fragment","density","image","icon","VListItemAction","start","end","_resolveDirective"],"sources":["../../../src/components/VList/VListItem.tsx"],"sourcesContent":["// Styles\nimport './VListItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VListItemSubtitle } from './VListItemSubtitle'\nimport { VListItemTitle } from './VListItemTitle'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useList } from './list'\nimport { useNestedItem } from '@/composables/nested/nested'\n\n// Utilities\nimport { computed, watch } from 'vue'\nimport { EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\ntype ListItemSlot = {\n isActive: boolean\n isSelected: boolean\n isIndeterminate: boolean\n select: (value: boolean) => void\n}\n\nexport type ListItemTitleSlot = {\n title?: string\n}\n\nexport type ListItemSubtitleSlot = {\n subtitle?: string\n}\n\nexport type VListItemSlots = {\n prepend: [ListItemSlot]\n append: [ListItemSlot]\n default: [ListItemSlot]\n title: [ListItemTitleSlot]\n subtitle: [ListItemSubtitleSlot]\n}\n\nexport const makeVListItemProps = propsFactory({\n active: {\n type: Boolean,\n default: undefined,\n },\n activeClass: String,\n activeColor: String,\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n lines: String as PropType<'one' | 'two' | 'three'>,\n link: {\n type: Boolean,\n default: undefined,\n },\n nav: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: [String, Number, Boolean],\n title: [String, Number, Boolean],\n value: null,\n\n onClick: EventProp<[MouseEvent]>(),\n onClickOnce: EventProp<[MouseEvent]>(),\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'v-list-item')\n\nexport const VListItem = genericComponent<VListItemSlots>()({\n name: 'VListItem',\n\n directives: { Ripple },\n\n props: makeVListItemProps(),\n\n emits: {\n click: (e: MouseEvent | KeyboardEvent) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const link = useLink(props, attrs)\n const id = computed(() => props.value ?? link.href.value)\n const { select, isSelected, isIndeterminate, isGroupActivator, root, parent, openOnSelect } = useNestedItem(id, false)\n const list = useList()\n const isActive = computed(() =>\n props.active !== false &&\n (props.active || link.isActive?.value || isSelected.value)\n )\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value || (props.value != null && !!list))\n )\n\n const roundedProps = computed(() => props.rounded || props.nav)\n const variantProps = computed(() => ({\n color: isActive.value ? props.activeColor ?? props.color : props.color,\n variant: props.variant,\n }))\n\n watch(() => link.isActive?.value, val => {\n if (val && parent.value != null) {\n root.open(parent.value, true)\n }\n\n if (val) {\n openOnSelect(val)\n }\n }, { immediate: true })\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(roundedProps)\n const lineClasses = computed(() => props.lines ? `v-list-item--${props.lines}-line` : undefined)\n\n const slotProps = computed(() => ({\n isActive: isActive.value,\n select,\n isSelected: isSelected.value,\n isIndeterminate: isIndeterminate.value,\n } satisfies ListItemSlot))\n\n function onClick (e: MouseEvent) {\n emit('click', e)\n\n if (isGroupActivator || !isClickable.value) return\n\n link.navigate?.(e)\n props.value != null && select(!isSelected.value, e)\n }\n\n function onKeyDown (e: KeyboardEvent) {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n onClick(e as any as MouseEvent)\n }\n }\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasColor = !list || isSelected.value || isActive.value\n const hasTitle = (slots.title || props.title)\n const hasSubtitle = (slots.subtitle || props.subtitle)\n const hasAppendMedia = !!(props.appendAvatar || props.appendIcon)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasPrependMedia = !!(props.prependAvatar || props.prependIcon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n list?.updateHasPrepend(hasPrepend)\n\n return (\n <Tag\n class={[\n 'v-list-item',\n {\n 'v-list-item--active': isActive.value,\n 'v-list-item--disabled': props.disabled,\n 'v-list-item--link': isClickable.value,\n 'v-list-item--nav': props.nav,\n 'v-list-item--prepend': !hasPrepend && list?.hasPrepend.value,\n [`${props.activeClass}`]: props.activeClass && isActive.value,\n },\n themeClasses.value,\n borderClasses.value,\n hasColor ? colorClasses.value : undefined,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n hasColor ? colorStyles.value : undefined,\n dimensionStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n tabindex={ isClickable.value ? 0 : undefined }\n onClick={ onClick }\n onKeydown={ isClickable.value && !isLink.value && onKeyDown }\n v-ripple={ isClickable.value && props.ripple }\n >\n { genOverlays(isClickable.value || isActive.value, 'v-list-item') }\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-list-item__prepend\">\n { !slots.prepend ? (\n <>\n { props.prependAvatar && (\n <VAvatar\n key=\"prepend-avatar\"\n density={ props.density }\n image={ props.prependAvatar }\n />\n )}\n\n { props.prependIcon && (\n <VIcon\n key=\"prepend-icon\"\n density={ props.density }\n icon={ props.prependIcon }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n image: props.prependAvatar,\n },\n VIcon: {\n density: props.density,\n icon: props.prependIcon,\n },\n VListItemAction: {\n start: true,\n },\n }}\n >\n { slots.prepend?.(slotProps.value) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n\n <div class=\"v-list-item__content\" data-no-activator=\"\">\n { hasTitle && (\n <VListItemTitle key=\"title\">\n { slots.title?.({ title: props.title }) ?? props.title }\n </VListItemTitle>\n )}\n\n { hasSubtitle && (\n <VListItemSubtitle key=\"subtitle\">\n { slots.subtitle?.({ subtitle: props.subtitle }) ?? props.subtitle }\n </VListItemSubtitle>\n )}\n\n { slots.default?.(slotProps.value) }\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-list-item__append\">\n { !slots.append ? (\n <>\n { props.appendIcon && (\n <VIcon\n key=\"append-icon\"\n density={ props.density }\n icon={ props.appendIcon }\n />\n )}\n\n { props.appendAvatar && (\n <VAvatar\n key=\"append-avatar\"\n density={ props.density }\n image={ props.appendAvatar }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n image: props.appendAvatar,\n },\n VIcon: {\n density: props.density,\n icon: props.appendIcon,\n },\n VListItemAction: {\n end: true,\n },\n }}\n >\n { slots.append?.(slotProps.value) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VListItem = InstanceType<typeof VListItem>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VListItem.mjs","names":["VAvatar","VDefaultsProvider","VIcon","VListItemSubtitle","VListItemTitle","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","useList","useNestedItem","computed","watch","deprecate","EventProp","genericComponent","propsFactory","useRender","makeVListItemProps","active","type","Boolean","default","undefined","activeClass","String","activeColor","appendAvatar","appendIcon","baseColor","disabled","lines","link","nav","prependAvatar","prependIcon","ripple","subtitle","Number","title","value","onClick","onClickOnce","variant","VListItem","name","directives","props","emits","click","e","setup","_ref","attrs","slots","emit","id","href","select","isSelected","isIndeterminate","isGroupActivator","root","parent","openOnSelect","list","isActive","isLink","isClickable","roundedProps","rounded","color","variantProps","val","open","immediate","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","roundedClasses","lineClasses","slotProps","navigate","onKeyDown","key","preventDefault","Tag","tag","hasTitle","hasSubtitle","hasAppendMedia","hasAppend","append","hasPrependMedia","hasPrepend","prepend","updateHasPrepend","_withDirectives","_createVNode","class","style","_Fragment","density","image","icon","VListItemAction","start","end","_resolveDirective"],"sources":["../../../src/components/VList/VListItem.tsx"],"sourcesContent":["// Styles\nimport './VListItem.sass'\n\n// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\nimport { VListItemSubtitle } from './VListItemSubtitle'\nimport { VListItemTitle } from './VListItemTitle'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useList } from './list'\nimport { useNestedItem } from '@/composables/nested/nested'\n\n// Utilities\nimport { computed, watch } from 'vue'\nimport { deprecate, EventProp, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\ntype ListItemSlot = {\n isActive: boolean\n isSelected: boolean\n isIndeterminate: boolean\n select: (value: boolean) => void\n}\n\nexport type ListItemTitleSlot = {\n title?: string | number | boolean\n}\n\nexport type ListItemSubtitleSlot = {\n subtitle?: string | number | boolean\n}\n\nexport type VListItemSlots = {\n prepend: [ListItemSlot]\n append: [ListItemSlot]\n default: [ListItemSlot]\n title: [ListItemTitleSlot]\n subtitle: [ListItemSubtitleSlot]\n}\n\nexport const makeVListItemProps = propsFactory({\n active: {\n type: Boolean,\n default: undefined,\n },\n activeClass: String,\n /* @deprecated */\n activeColor: String,\n appendAvatar: String,\n appendIcon: IconValue,\n baseColor: String,\n disabled: Boolean,\n lines: String as PropType<'one' | 'two' | 'three'>,\n link: {\n type: Boolean,\n default: undefined,\n },\n nav: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: [String, Number, Boolean],\n title: [String, Number, Boolean],\n value: null,\n\n onClick: EventProp<[MouseEvent]>(),\n onClickOnce: EventProp<[MouseEvent]>(),\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'text' } as const),\n}, 'v-list-item')\n\nexport const VListItem = genericComponent<VListItemSlots>()({\n name: 'VListItem',\n\n directives: { Ripple },\n\n props: makeVListItemProps(),\n\n emits: {\n click: (e: MouseEvent | KeyboardEvent) => true,\n },\n\n setup (props, { attrs, slots, emit }) {\n const link = useLink(props, attrs)\n const id = computed(() => props.value ?? link.href.value)\n const { select, isSelected, isIndeterminate, isGroupActivator, root, parent, openOnSelect } = useNestedItem(id, false)\n const list = useList()\n const isActive = computed(() =>\n props.active !== false &&\n (props.active || link.isActive?.value || isSelected.value)\n )\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value || (props.value != null && !!list))\n )\n\n const roundedProps = computed(() => props.rounded || props.nav)\n const color = computed(() => props.color ?? props.activeColor)\n const variantProps = computed(() => ({\n color: isActive.value ? color.value ?? props.baseColor : props.baseColor,\n variant: props.variant,\n }))\n\n watch(() => link.isActive?.value, val => {\n if (val && parent.value != null) {\n root.open(parent.value, true)\n }\n\n if (val) {\n openOnSelect(val)\n }\n }, { immediate: true })\n\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(roundedProps)\n const lineClasses = computed(() => props.lines ? `v-list-item--${props.lines}-line` : undefined)\n\n const slotProps = computed(() => ({\n isActive: isActive.value,\n select,\n isSelected: isSelected.value,\n isIndeterminate: isIndeterminate.value,\n } satisfies ListItemSlot))\n\n function onClick (e: MouseEvent) {\n emit('click', e)\n\n if (isGroupActivator || !isClickable.value) return\n\n link.navigate?.(e)\n props.value != null && select(!isSelected.value, e)\n }\n\n function onKeyDown (e: KeyboardEvent) {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n onClick(e as any as MouseEvent)\n }\n }\n\n useRender(() => {\n const Tag = isLink.value ? 'a' : props.tag\n const hasTitle = (slots.title || props.title)\n const hasSubtitle = (slots.subtitle || props.subtitle)\n const hasAppendMedia = !!(props.appendAvatar || props.appendIcon)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasPrependMedia = !!(props.prependAvatar || props.prependIcon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n list?.updateHasPrepend(hasPrepend)\n\n if (props.activeColor) {\n deprecate('active-color', ['color', 'base-color'])\n }\n\n return (\n <Tag\n class={[\n 'v-list-item',\n {\n 'v-list-item--active': isActive.value,\n 'v-list-item--disabled': props.disabled,\n 'v-list-item--link': isClickable.value,\n 'v-list-item--nav': props.nav,\n 'v-list-item--prepend': !hasPrepend && list?.hasPrepend.value,\n [`${props.activeClass}`]: props.activeClass && isActive.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n lineClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n tabindex={ isClickable.value ? (list ? -2 : 0) : undefined }\n onClick={ onClick }\n onKeydown={ isClickable.value && !isLink.value && onKeyDown }\n v-ripple={ isClickable.value && props.ripple }\n >\n { genOverlays(isClickable.value || isActive.value, 'v-list-item') }\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-list-item__prepend\">\n { !slots.prepend ? (\n <>\n { props.prependAvatar && (\n <VAvatar\n key=\"prepend-avatar\"\n density={ props.density }\n image={ props.prependAvatar }\n />\n )}\n\n { props.prependIcon && (\n <VIcon\n key=\"prepend-icon\"\n density={ props.density }\n icon={ props.prependIcon }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n image: props.prependAvatar,\n },\n VIcon: {\n density: props.density,\n icon: props.prependIcon,\n },\n VListItemAction: {\n start: true,\n },\n }}\n >\n { slots.prepend?.(slotProps.value) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n\n <div class=\"v-list-item__content\" data-no-activator=\"\">\n { hasTitle && (\n <VListItemTitle key=\"title\">\n { slots.title?.({ title: props.title }) ?? props.title }\n </VListItemTitle>\n )}\n\n { hasSubtitle && (\n <VListItemSubtitle key=\"subtitle\">\n { slots.subtitle?.({ subtitle: props.subtitle }) ?? props.subtitle }\n </VListItemSubtitle>\n )}\n\n { slots.default?.(slotProps.value) }\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-list-item__append\">\n { !slots.append ? (\n <>\n { props.appendIcon && (\n <VIcon\n key=\"append-icon\"\n density={ props.density }\n icon={ props.appendIcon }\n />\n )}\n\n { props.appendAvatar && (\n <VAvatar\n key=\"append-avatar\"\n density={ props.density }\n image={ props.appendAvatar }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n image: props.appendAvatar,\n },\n VIcon: {\n density: props.density,\n icon: props.appendIcon,\n },\n VListItemAction: {\n end: true,\n },\n }}\n >\n { slots.append?.(slotProps.value) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VListItem = InstanceType<typeof VListItem>\n"],"mappings":"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"}
|