@vuetify/nightly 4.0.0-dev-20230511.0 → 4.0.0-dev-20230512.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.
Files changed (398) hide show
  1. package/CHANGELOG.md +6 -14
  2. package/dist/json/attributes.json +564 -256
  3. package/dist/json/importMap-labs.json +4 -4
  4. package/dist/json/tags.json +80 -2
  5. package/dist/json/web-types.json +2399 -606
  6. package/dist/vuetify-labs.css +45 -42
  7. package/dist/vuetify-labs.d.ts +26350 -24518
  8. package/dist/vuetify-labs.esm.js +2485 -2382
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +2485 -2382
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.css +11 -8
  13. package/dist/vuetify.d.ts +23046 -23682
  14. package/dist/vuetify.esm.js +1865 -1748
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +1865 -1748
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +2 -2
  19. package/dist/vuetify.min.js +658 -658
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.d.mts +1 -3
  22. package/lib/blueprints/md1.d.mts +1 -3
  23. package/lib/blueprints/md2.d.mts +1 -3
  24. package/lib/blueprints/md3.d.mts +1 -3
  25. package/lib/components/VAlert/VAlert.mjs +48 -48
  26. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  27. package/lib/components/VAlert/index.d.mts +228 -71
  28. package/lib/components/VApp/VApp.mjs +9 -8
  29. package/lib/components/VApp/VApp.mjs.map +1 -1
  30. package/lib/components/VApp/index.d.mts +65 -19
  31. package/lib/components/VAppBar/VAppBar.mjs +23 -22
  32. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  33. package/lib/components/VAppBar/VAppBarNavIcon.mjs +9 -7
  34. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  35. package/lib/components/VAppBar/VAppBarTitle.mjs +1 -2
  36. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  37. package/lib/components/VAppBar/index.d.mts +314 -123
  38. package/lib/components/VAutocomplete/VAutocomplete.css +0 -4
  39. package/lib/components/VAutocomplete/VAutocomplete.mjs +36 -39
  40. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  41. package/lib/components/VAutocomplete/VAutocomplete.sass +0 -5
  42. package/lib/components/VAutocomplete/index.d.mts +1264 -2467
  43. package/lib/components/VAvatar/index.d.mts +70 -30
  44. package/lib/components/VBadge/VBadge.mjs +33 -32
  45. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  46. package/lib/components/VBadge/index.d.mts +86 -42
  47. package/lib/components/VBanner/VBanner.mjs +21 -20
  48. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  49. package/lib/components/VBanner/VBannerActions.mjs +7 -6
  50. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  51. package/lib/components/VBanner/index.d.mts +227 -65
  52. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +35 -34
  53. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  54. package/lib/components/VBottomNavigation/index.d.mts +78 -45
  55. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +24 -23
  56. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  57. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -5
  58. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  59. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -14
  60. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  61. package/lib/components/VBreadcrumbs/index.d.mts +311 -208
  62. package/lib/components/VBtn/index.d.mts +112 -53
  63. package/lib/components/VBtnGroup/index.d.mts +69 -27
  64. package/lib/components/VBtnToggle/VBtnToggle.mjs +6 -5
  65. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  66. package/lib/components/VBtnToggle/index.d.mts +73 -35
  67. package/lib/components/VCard/VCard.mjs +38 -37
  68. package/lib/components/VCard/VCard.mjs.map +1 -1
  69. package/lib/components/VCard/VCardItem.mjs +12 -11
  70. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  71. package/lib/components/VCard/index.d.mts +764 -368
  72. package/lib/components/VCarousel/VCarousel.mjs +28 -27
  73. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  74. package/lib/components/VCarousel/VCarouselItem.mjs +18 -16
  75. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  76. package/lib/components/VCarousel/index.d.mts +600 -103
  77. package/lib/components/VCheckbox/VCheckbox.mjs +6 -5
  78. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  79. package/lib/components/VCheckbox/index.d.mts +304 -125
  80. package/lib/components/VChip/VChip.css +7 -0
  81. package/lib/components/VChip/VChip.mjs +60 -57
  82. package/lib/components/VChip/VChip.mjs.map +1 -1
  83. package/lib/components/VChip/VChip.sass +9 -0
  84. package/lib/components/VChip/index.d.mts +318 -90
  85. package/lib/components/VChipGroup/VChipGroup.mjs +19 -18
  86. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  87. package/lib/components/VChipGroup/index.d.mts +204 -53
  88. package/lib/components/VCode/index.d.mts +63 -17
  89. package/lib/components/VColorPicker/VColorPicker.mjs +44 -39
  90. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  91. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +26 -25
  92. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  93. package/lib/components/VColorPicker/VColorPickerEdit.mjs +17 -16
  94. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  95. package/lib/components/VColorPicker/VColorPickerPreview.mjs +10 -9
  96. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  97. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +12 -11
  98. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  99. package/lib/components/VColorPicker/index.d.mts +74 -85
  100. package/lib/components/VColorPicker/util/index.mjs +2 -2
  101. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  102. package/lib/components/VCombobox/VCombobox.mjs +39 -42
  103. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  104. package/lib/components/VCombobox/index.d.mts +1264 -2488
  105. package/lib/components/VCounter/VCounter.mjs +16 -15
  106. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  107. package/lib/components/VCounter/index.d.mts +113 -1817
  108. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +9 -8
  109. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  110. package/lib/components/VDefaultsProvider/index.d.mts +67 -20
  111. package/lib/components/VDialog/VDialog.mjs +18 -17
  112. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  113. package/lib/components/VDialog/index.d.mts +551 -1401
  114. package/lib/components/VDivider/VDivider.mjs +11 -10
  115. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  116. package/lib/components/VDivider/index.d.mts +66 -21
  117. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -15
  118. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  119. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +6 -5
  120. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  121. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -5
  122. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  123. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -14
  124. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  125. package/lib/components/VExpansionPanel/index.d.mts +317 -125
  126. package/lib/components/VField/VField.mjs +7 -2
  127. package/lib/components/VField/VField.mjs.map +1 -1
  128. package/lib/components/VField/VFieldLabel.mjs +6 -5
  129. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  130. package/lib/components/VField/index.d.mts +310 -230
  131. package/lib/components/VFileInput/VFileInput.mjs +35 -34
  132. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  133. package/lib/components/VFileInput/index.d.mts +760 -320
  134. package/lib/components/VFooter/VFooter.mjs +21 -20
  135. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  136. package/lib/components/VFooter/index.d.mts +70 -29
  137. package/lib/components/VForm/VForm.mjs +6 -5
  138. package/lib/components/VForm/VForm.mjs.map +1 -1
  139. package/lib/components/VForm/index.d.mts +568 -52
  140. package/lib/components/VGrid/VCol.mjs +26 -25
  141. package/lib/components/VGrid/VCol.mjs.map +1 -1
  142. package/lib/components/VGrid/VContainer.mjs +16 -11
  143. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  144. package/lib/components/VGrid/VRow.mjs +26 -25
  145. package/lib/components/VGrid/VRow.mjs.map +1 -1
  146. package/lib/components/VGrid/index.d.mts +274 -100
  147. package/lib/components/VHover/VHover.mjs +10 -9
  148. package/lib/components/VHover/VHover.mjs.map +1 -1
  149. package/lib/components/VHover/index.d.mts +93 -37
  150. package/lib/components/VIcon/VIcon.mjs +28 -29
  151. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  152. package/lib/components/VIcon/index.d.mts +292 -81
  153. package/lib/components/VImg/VImg.mjs +34 -33
  154. package/lib/components/VImg/VImg.mjs.map +1 -1
  155. package/lib/components/VImg/index.d.mts +118 -53
  156. package/lib/components/VInput/VInput.mjs +1 -1
  157. package/lib/components/VInput/VInput.mjs.map +1 -1
  158. package/lib/components/VInput/index.d.mts +137 -50
  159. package/lib/components/VItemGroup/VItem.mjs +1 -1
  160. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  161. package/lib/components/VItemGroup/VItemGroup.mjs +10 -9
  162. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  163. package/lib/components/VItemGroup/index.d.mts +414 -111
  164. package/lib/components/VKbd/index.d.mts +63 -17
  165. package/lib/components/VLabel/VLabel.mjs +8 -7
  166. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  167. package/lib/components/VLabel/index.d.mts +64 -18
  168. package/lib/components/VLayout/VLayout.mjs +6 -5
  169. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  170. package/lib/components/VLayout/VLayoutItem.mjs +15 -14
  171. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  172. package/lib/components/VLayout/index.d.mts +131 -42
  173. package/lib/components/VLazy/VLazy.mjs +21 -20
  174. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  175. package/lib/components/VLazy/index.d.mts +67 -27
  176. package/lib/components/VList/VList.mjs +37 -36
  177. package/lib/components/VList/VList.mjs.map +1 -1
  178. package/lib/components/VList/VListChildren.mjs +9 -12
  179. package/lib/components/VList/VListChildren.mjs.map +1 -1
  180. package/lib/components/VList/VListGroup.mjs +2 -4
  181. package/lib/components/VList/VListGroup.mjs.map +1 -1
  182. package/lib/components/VList/VListItem.mjs +44 -43
  183. package/lib/components/VList/VListItem.mjs.map +1 -1
  184. package/lib/components/VList/VListItemAction.mjs +8 -7
  185. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  186. package/lib/components/VList/VListItemMedia.mjs +8 -7
  187. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  188. package/lib/components/VList/VListSubheader.mjs +10 -9
  189. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  190. package/lib/components/VList/index.d.mts +1069 -617
  191. package/lib/components/VList/list.mjs +4 -4
  192. package/lib/components/VList/list.mjs.map +1 -1
  193. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +12 -11
  194. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  195. package/lib/components/VLocaleProvider/index.d.mts +65 -19
  196. package/lib/components/VMain/VMain.mjs +9 -8
  197. package/lib/components/VMain/VMain.mjs.map +1 -1
  198. package/lib/components/VMain/index.d.mts +64 -19
  199. package/lib/components/VMenu/VMenu.mjs +21 -20
  200. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  201. package/lib/components/VMenu/index.d.mts +479 -1327
  202. package/lib/components/VMessages/VMessages.mjs +18 -17
  203. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  204. package/lib/components/VMessages/index.d.mts +88 -1799
  205. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +50 -49
  206. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  207. package/lib/components/VNavigationDrawer/index.d.mts +115 -60
  208. package/lib/components/VNavigationDrawer/sticky.mjs +14 -7
  209. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  210. package/lib/components/VNavigationDrawer/touch.mjs +4 -4
  211. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  212. package/lib/components/VOverlay/index.d.mts +120 -75
  213. package/lib/components/VOverlay/locationStrategies.mjs +5 -3
  214. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  215. package/lib/components/VPagination/VPagination.mjs +84 -83
  216. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  217. package/lib/components/VPagination/index.d.mts +203 -130
  218. package/lib/components/VParallax/VParallax.mjs +9 -8
  219. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  220. package/lib/components/VParallax/index.d.mts +91 -18
  221. package/lib/components/VProgressCircular/VProgressCircular.mjs +25 -24
  222. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  223. package/lib/components/VProgressCircular/index.d.mts +125 -45
  224. package/lib/components/VProgressLinear/VProgressLinear.mjs +44 -42
  225. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  226. package/lib/components/VProgressLinear/index.d.mts +97 -57
  227. package/lib/components/VRadio/VRadio.mjs +8 -7
  228. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  229. package/lib/components/VRadio/index.d.mts +121 -51
  230. package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -21
  231. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  232. package/lib/components/VRadioGroup/index.d.mts +189 -76
  233. package/lib/components/VRangeSlider/VRangeSlider.mjs +18 -13
  234. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  235. package/lib/components/VRangeSlider/index.d.mts +192 -80
  236. package/lib/components/VRating/VRating.mjs +49 -45
  237. package/lib/components/VRating/VRating.mjs.map +1 -1
  238. package/lib/components/VRating/index.d.mts +94 -54
  239. package/lib/components/VResponsive/index.d.mts +73 -18
  240. package/lib/components/VSelect/VSelect.mjs +22 -21
  241. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  242. package/lib/components/VSelect/index.d.mts +1192 -3713
  243. package/lib/components/VSelectionControl/VSelectionControl.mjs +3 -3
  244. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  245. package/lib/components/VSelectionControl/index.d.mts +212 -194
  246. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -10
  247. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  248. package/lib/components/VSelectionControlGroup/index.d.mts +100 -63
  249. package/lib/components/VSheet/VSheet.mjs +1 -3
  250. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  251. package/lib/components/VSheet/index.d.mts +66 -21
  252. package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
  253. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  254. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +1 -3
  255. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  256. package/lib/components/VSlideGroup/index.d.mts +181 -64
  257. package/lib/components/VSlider/VSlider.mjs +18 -13
  258. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  259. package/lib/components/VSlider/VSliderThumb.mjs +26 -25
  260. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  261. package/lib/components/VSlider/VSliderTrack.mjs +13 -12
  262. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  263. package/lib/components/VSlider/index.d.mts +194 -81
  264. package/lib/components/VSlider/slider.mjs +3 -3
  265. package/lib/components/VSlider/slider.mjs.map +1 -1
  266. package/lib/components/VSnackbar/VSnackbar.mjs +20 -19
  267. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  268. package/lib/components/VSnackbar/index.d.mts +444 -297
  269. package/lib/components/VSwitch/VSwitch.css +3 -3
  270. package/lib/components/VSwitch/VSwitch.mjs +13 -12
  271. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  272. package/lib/components/VSwitch/VSwitch.sass +4 -3
  273. package/lib/components/VSwitch/index.d.mts +206 -86
  274. package/lib/components/VSystemBar/VSystemBar.mjs +15 -14
  275. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  276. package/lib/components/VSystemBar/index.d.mts +69 -27
  277. package/lib/components/VTable/VTable.mjs +12 -11
  278. package/lib/components/VTable/VTable.mjs.map +1 -1
  279. package/lib/components/VTable/index.d.mts +95 -26
  280. package/lib/components/VTabs/VTab.mjs +19 -19
  281. package/lib/components/VTabs/VTab.mjs.map +1 -1
  282. package/lib/components/VTabs/VTabs.mjs +28 -27
  283. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  284. package/lib/components/VTabs/index.d.mts +175 -115
  285. package/lib/components/VTextField/VTextField.mjs +1 -1
  286. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  287. package/lib/components/VTextField/index.d.mts +1254 -770
  288. package/lib/components/VTextarea/VTextarea.mjs +32 -28
  289. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  290. package/lib/components/VTextarea/index.d.mts +683 -313
  291. package/lib/components/VThemeProvider/VThemeProvider.mjs +8 -7
  292. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  293. package/lib/components/VThemeProvider/index.d.mts +65 -20
  294. package/lib/components/VTimeline/VTimeline.mjs +46 -41
  295. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  296. package/lib/components/VTimeline/VTimelineDivider.mjs +14 -13
  297. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  298. package/lib/components/VTimeline/VTimelineItem.mjs +23 -22
  299. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  300. package/lib/components/VTimeline/index.d.mts +163 -62
  301. package/lib/components/VToolbar/VToolbar.mjs +8 -4
  302. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  303. package/lib/components/VToolbar/VToolbarItems.mjs +8 -7
  304. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  305. package/lib/components/VToolbar/index.d.mts +265 -82
  306. package/lib/components/VTooltip/VTooltip.mjs +20 -19
  307. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  308. package/lib/components/VTooltip/index.d.mts +442 -297
  309. package/lib/components/VValidation/VValidation.mjs +1 -3
  310. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  311. package/lib/components/VValidation/index.d.mts +358 -50
  312. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +14 -13
  313. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  314. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +6 -5
  315. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  316. package/lib/components/VVirtualScroll/index.d.mts +110 -82
  317. package/lib/components/VWindow/VWindow.mjs +3 -3
  318. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  319. package/lib/components/VWindow/VWindowItem.mjs +18 -17
  320. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  321. package/lib/components/VWindow/index.d.mts +204 -75
  322. package/lib/components/index.d.mts +23230 -23871
  323. package/lib/components/transitions/createTransition.mjs +16 -15
  324. package/lib/components/transitions/createTransition.mjs.map +1 -1
  325. package/lib/components/transitions/dialog-transition.mjs +5 -4
  326. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  327. package/lib/components/transitions/index.d.mts +1207 -472
  328. package/lib/composables/display.mjs +3 -3
  329. package/lib/composables/display.mjs.map +1 -1
  330. package/lib/composables/form.mjs +4 -4
  331. package/lib/composables/form.mjs.map +1 -1
  332. package/lib/composables/forwardRefs.mjs.map +1 -1
  333. package/lib/composables/group.mjs +13 -13
  334. package/lib/composables/group.mjs.map +1 -1
  335. package/lib/composables/hydration.mjs +6 -6
  336. package/lib/composables/hydration.mjs.map +1 -1
  337. package/lib/composables/icons.mjs +2 -2
  338. package/lib/composables/icons.mjs.map +1 -1
  339. package/lib/composables/intersectionObserver.mjs +2 -2
  340. package/lib/composables/intersectionObserver.mjs.map +1 -1
  341. package/lib/composables/layout.mjs +3 -3
  342. package/lib/composables/layout.mjs.map +1 -1
  343. package/lib/composables/lazy.mjs +2 -2
  344. package/lib/composables/lazy.mjs.map +1 -1
  345. package/lib/composables/nested/nested.mjs +5 -4
  346. package/lib/composables/nested/nested.mjs.map +1 -1
  347. package/lib/composables/scroll.mjs +6 -6
  348. package/lib/composables/scroll.mjs.map +1 -1
  349. package/lib/composables/ssrBoot.mjs +2 -2
  350. package/lib/composables/ssrBoot.mjs.map +1 -1
  351. package/lib/composables/stack.mjs +5 -4
  352. package/lib/composables/stack.mjs.map +1 -1
  353. package/lib/composables/theme.mjs +3 -3
  354. package/lib/composables/theme.mjs.map +1 -1
  355. package/lib/composables/transition.mjs +5 -2
  356. package/lib/composables/transition.mjs.map +1 -1
  357. package/lib/composables/validation.mjs +3 -3
  358. package/lib/composables/validation.mjs.map +1 -1
  359. package/lib/directives/click-outside/index.mjs +1 -1
  360. package/lib/directives/click-outside/index.mjs.map +1 -1
  361. package/lib/entry-bundler.mjs +1 -1
  362. package/lib/framework.mjs +1 -1
  363. package/lib/index.d.mts +10 -5
  364. package/lib/labs/VDataTable/VDataTable.mjs +54 -66
  365. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  366. package/lib/labs/VDataTable/VDataTableFooter.mjs +64 -63
  367. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  368. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +8 -7
  369. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  370. package/lib/labs/VDataTable/VDataTableHeaders.mjs +17 -16
  371. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  372. package/lib/labs/VDataTable/VDataTableRow.mjs +7 -6
  373. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  374. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -19
  375. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  376. package/lib/labs/VDataTable/VDataTableServer.mjs +54 -59
  377. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  378. package/lib/labs/VDataTable/VDataTableVirtual.mjs +72 -80
  379. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  380. package/lib/labs/VDataTable/composables/virtual.mjs +3 -3
  381. package/lib/labs/VDataTable/composables/virtual.mjs.map +1 -1
  382. package/lib/labs/VDataTable/index.d.mts +2974 -631
  383. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +54 -48
  384. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  385. package/lib/labs/VInfiniteScroll/index.d.mts +143 -52
  386. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +18 -17
  387. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  388. package/lib/labs/VSkeletonLoader/index.d.mts +77 -31
  389. package/lib/labs/components.d.mts +3188 -708
  390. package/lib/labs/date/date.mjs +7 -7
  391. package/lib/labs/date/date.mjs.map +1 -1
  392. package/lib/labs/date/index.d.mts +1 -3
  393. package/lib/locale/adapters/vuetify.mjs +8 -5
  394. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  395. package/lib/util/defineComponent.mjs.map +1 -1
  396. package/lib/util/propsFactory.mjs +2 -0
  397. package/lib/util/propsFactory.mjs.map +1 -1
  398. package/package.json +3 -3
@@ -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","toRef","focusChild","genericComponent","getPropertyFromItem","pick","useRender","isPrimitive","value","transformItem","props","item","type","itemType","title","itemTitle","itemValue","undefined","children","itemChildren","itemProps","_props","transformItems","raw","items","array","push","useListItems","VList","name","baseColor","String","activeColor","activeClass","bgColor","disabled","Boolean","lines","default","nav","selectStrategy","openStrategy","variant","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, toRef } from 'vue'\nimport { focusChild, genericComponent, getPropertyFromItem, pick, 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 VList = genericComponent<new <T>(props: {\n items?: T[]\n}) => GenericProps<typeof props, VListChildrenSlots<T>>>()({\n name: 'VList',\n\n props: {\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 },\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 = ref(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":";AAAA;AACA;;AAEA;AAAA,SACSA,aAAa,+BAEtB;AAAA,SACSC,UAAU;AAAA,SACVC,eAAe,EAAEC,SAAS;AAAA,SAC1BC,kBAAkB;AAAA,SAClBC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,kBAAkB,EAAEC,YAAY;AAAA,SAChCC,cAAc;AAAA,SACdC,eAAe,EAAEC,SAAS;AAAA,SAC1BC,gBAAgB,EAAEC,UAAU;AAAA,SAC5BC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,gBAAgB;AAAA,SAChBC,eAAe;AAAA,SACfC,kBAAkB,uCAE3B;AACA,SAASC,QAAQ,EAAEC,GAAG,EAAEC,KAAK,QAAQ,KAAK;AAAA,SACjCC,UAAU,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAEC,IAAI,EAAEC,SAAS,gCAE3E;AAUA,SAASC,WAAWA,CAAEC,KAAc,EAAsC;EACxE,OAAO,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,SAAS;AAC7F;AAEA,SAASC,aAAaA,CAAEC,KAAuC,EAAEC,IAAS,EAAoB;EAC5F,MAAMC,IAAI,GAAGR,mBAAmB,CAACO,IAAI,EAAED,KAAK,CAACG,QAAQ,EAAE,MAAM,CAAC;EAC9D,MAAMC,KAAK,GAAGP,WAAW,CAACI,IAAI,CAAC,GAAGA,IAAI,GAAGP,mBAAmB,CAACO,IAAI,EAAED,KAAK,CAACK,SAAS,CAAC;EACnF,MAAMP,KAAK,GAAGJ,mBAAmB,CAACO,IAAI,EAAED,KAAK,CAACM,SAAS,EAAEC,SAAS,CAAC;EACnE,MAAMC,QAAQ,GAAGd,mBAAmB,CAACO,IAAI,EAAED,KAAK,CAACS,YAAY,CAAC;EAC9D,MAAMC,SAAS,GAAGV,KAAK,CAACU,SAAS,KAAK,IAAI,GAAGf,IAAI,CAACM,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAGP,mBAAmB,CAACO,IAAI,EAAED,KAAK,CAACU,SAAS,CAAC;EAErH,MAAMC,MAAM,GAAG;IACbP,KAAK;IACLN,KAAK;IACL,GAAGY;EACL,CAAC;EAED,OAAO;IACLR,IAAI;IACJE,KAAK,EAAEO,MAAM,CAACP,KAAK;IACnBN,KAAK,EAAEa,MAAM,CAACb,KAAK;IACnBE,KAAK,EAAEW,MAAM;IACbH,QAAQ,EAAEN,IAAI,KAAK,MAAM,IAAIM,QAAQ,GAAGI,cAAc,CAACZ,KAAK,EAAEQ,QAAQ,CAAC,GAAGD,SAAS;IACnFM,GAAG,EAAEZ;EACP,CAAC;AACH;AAEA,SAASW,cAAcA,CAAEZ,KAAuC,EAAEc,KAA0B,EAAE;EAC5F,MAAMC,KAAyB,GAAG,EAAE;EAEpC,KAAK,MAAMd,IAAI,IAAIa,KAAK,EAAE;IACxBC,KAAK,CAACC,IAAI,CAACjB,aAAa,CAACC,KAAK,EAAEC,IAAI,CAAC,CAAC;EACxC;EAEA,OAAOc,KAAK;AACd;AAEA,SAASE,YAAYA,CAAEjB,KAAuC,EAAE;EAC9D,MAAMc,KAAK,GAAGzB,QAAQ,CAAC,MAAMuB,cAAc,CAACZ,KAAK,EAAEA,KAAK,CAACc,KAAK,CAAC,CAAC;EAEhE,OAAO;IAAEA;EAAM,CAAC;AAClB;AAEA,OAAO,MAAMI,KAAK,GAAGzB,gBAAgB,EAEqB,CAAC;EACzD0B,IAAI,EAAE,OAAO;EAEbnB,KAAK,EAAE;IACLoB,SAAS,EAAEC,MAAM;IACjB;IACAC,WAAW,EAAED,MAAM;IACnBE,WAAW,EAAEF,MAAM;IACnBG,OAAO,EAAEH,MAAM;IACfI,QAAQ,EAAEC,OAAO;IACjBC,KAAK,EAAE;MACLzB,IAAI,EAAE,CAACwB,OAAO,EAAEL,MAAM,CAA8C;MACpEO,OAAO,EAAE;IACX,CAAC;IACDC,GAAG,EAAEH,OAAO;IAEZ,GAAG/C,eAAe,CAAC;MACjBmD,cAAc,EAAE,aAAsB;MACtCC,YAAY,EAAE;IAChB,CAAC,CAAC;IACF,GAAG9D,eAAe,EAAE;IACpB,GAAGE,kBAAkB,EAAE;IACvB,GAAGC,gBAAgB,EAAE;IACrB,GAAGE,kBAAkB,EAAE;IACvB,GAAGE,kBAAkB,EAAE;IACvB2B,QAAQ,EAAE;MACRD,IAAI,EAAEmB,MAAM;MACZO,OAAO,EAAE;IACX,CAAC;IACD,GAAGlD,cAAc,EAAE;IACnB,GAAGG,gBAAgB,EAAE;IACrB,GAAGE,YAAY,EAAE;IACjB,GAAGC,cAAc,EAAE;IACnB,GAAGE,gBAAgB,CAAC;MAAE8C,OAAO,EAAE;IAAO,CAAC;EACzC,CAAC;EAEDC,KAAK,EAAE;IACL,iBAAiB,EAAGC,GAAc,IAAK,IAAI;IAC3C,eAAe,EAAGA,GAAc,IAAK,IAAI;IACzC,YAAY,EAAGpC,KAAuD,IAAK,IAAI;IAC/E,cAAc,EAAGA,KAAuD,IAAK;EAC/E,CAAC;EAEDqC,KAAKA,CAAEnC,KAAK,EAAAoC,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEtB;IAAM,CAAC,GAAGG,YAAY,CAACjB,KAAK,CAAC;IACrC,MAAM;MAAEsC;IAAa,CAAC,GAAGrD,YAAY,CAACe,KAAK,CAAC;IAC5C,MAAM;MAAEuC,sBAAsB;MAAEC;IAAsB,CAAC,GAAGpD,kBAAkB,CAACG,KAAK,CAACS,KAAK,EAAE,SAAS,CAAC,CAAC;IACrG,MAAM;MAAEyC;IAAc,CAAC,GAAGvE,SAAS,CAAC8B,KAAK,CAAC;IAC1C,MAAM;MAAE0C;IAAe,CAAC,GAAGrE,UAAU,CAAC2B,KAAK,CAAC;IAC5C,MAAM;MAAE2C;IAAgB,CAAC,GAAGpE,YAAY,CAACyB,KAAK,CAAC;IAC/C,MAAM;MAAE4C;IAAiB,CAAC,GAAGnE,YAAY,CAACuB,KAAK,CAAC;IAChD,MAAM;MAAE6C;IAAe,CAAC,GAAG/D,UAAU,CAACkB,KAAK,CAAC;IAC5C,MAAM;MAAE8C,IAAI;MAAEC;IAAO,CAAC,GAAGnE,SAAS,CAACoB,KAAK,CAAC;IACzC,MAAMgD,WAAW,GAAG3D,QAAQ,CAAC,MAAMW,KAAK,CAAC2B,KAAK,GAAI,WAAU3B,KAAK,CAAC2B,KAAM,OAAM,GAAGpB,SAAS,CAAC;IAC3F,MAAMe,WAAW,GAAG/B,KAAK,CAACS,KAAK,EAAE,aAAa,CAAC;IAC/C,MAAMoB,SAAS,GAAG7B,KAAK,CAACS,KAAK,EAAE,WAAW,CAAC;IAC3C,MAAMiD,KAAK,GAAG1D,KAAK,CAACS,KAAK,EAAE,OAAO,CAAC;IAEnChC,UAAU,EAAE;IAEZmB,eAAe,CAAC;MACd+D,UAAU,EAAE;QACV5B,WAAW;QACXF,SAAS;QACT6B;MACF,CAAC;MACDE,SAAS,EAAE;QACT5B,WAAW,EAAEhC,KAAK,CAACS,KAAK,EAAE,aAAa,CAAC;QACxCsB,WAAW;QACXF,SAAS;QACT6B,KAAK;QACLG,OAAO,EAAE7D,KAAK,CAACS,KAAK,EAAE,SAAS,CAAC;QAChCyB,QAAQ,EAAElC,KAAK,CAACS,KAAK,EAAE,UAAU,CAAC;QAClC2B,KAAK,EAAEpC,KAAK,CAACS,KAAK,EAAE,OAAO,CAAC;QAC5B6B,GAAG,EAAEtC,KAAK,CAACS,KAAK,EAAE,KAAK,CAAC;QACxBgC,OAAO,EAAEzC,KAAK,CAACS,KAAK,EAAE,SAAS;MACjC;IACF,CAAC,CAAC;IAEF,MAAMqD,SAAS,GAAG/D,GAAG,CAAC,KAAK,CAAC;IAC5B,MAAMgE,UAAU,GAAGhE,GAAG,EAAe;IACrC,SAASiE,SAASA,CAAEC,CAAa,EAAE;MACjCH,SAAS,CAACvD,KAAK,GAAG,IAAI;IACxB;IAEA,SAAS2D,UAAUA,CAAED,CAAa,EAAE;MAClCH,SAAS,CAACvD,KAAK,GAAG,KAAK;IACzB;IAEA,SAAS4D,OAAOA,CAAEF,CAAa,EAAE;MAC/B,IACE,CAACH,SAAS,CAACvD,KAAK,IAChB,EAAE0D,CAAC,CAACG,aAAa,IAAIL,UAAU,CAACxD,KAAK,EAAE8D,QAAQ,CAACJ,CAAC,CAACG,aAAa,CAAS,CAAC,EACzEE,KAAK,EAAE;IACX;IAEA,SAASC,SAASA,CAAEN,CAAgB,EAAE;MACpC,IAAI,CAACF,UAAU,CAACxD,KAAK,EAAE;MAEvB,IAAI0D,CAAC,CAACO,GAAG,KAAK,WAAW,EAAE;QACzBF,KAAK,CAAC,MAAM,CAAC;MACf,CAAC,MAAM,IAAIL,CAAC,CAACO,GAAG,KAAK,SAAS,EAAE;QAC9BF,KAAK,CAAC,MAAM,CAAC;MACf,CAAC,MAAM,IAAIL,CAAC,CAACO,GAAG,KAAK,MAAM,EAAE;QAC3BF,KAAK,CAAC,OAAO,CAAC;MAChB,CAAC,MAAM,IAAIL,CAAC,CAACO,GAAG,KAAK,KAAK,EAAE;QAC1BF,KAAK,CAAC,MAAM,CAAC;MACf,CAAC,MAAM;QACL;MACF;MAEAL,CAAC,CAACQ,cAAc,EAAE;IACpB;IAEA,SAASH,KAAKA,CAAEI,QAA6C,EAAE;MAC7D,IAAIX,UAAU,CAACxD,KAAK,EAAE;QACpB,OAAON,UAAU,CAAC8D,UAAU,CAACxD,KAAK,EAAEmE,QAAQ,CAAC;MAC/C;IACF;IAEArE,SAAS,CAAC,MAAM;MACd,OAAAsE,YAAA,CAAAlE,KAAA,CAAAmE,GAAA;QAAA,OAEUb,UAAU;QAAA,SACT,CACL,QAAQ,EACR;UACE,kBAAkB,EAAEtD,KAAK,CAACyB,QAAQ;UAClC,aAAa,EAAEzB,KAAK,CAAC6B;QACvB,CAAC,EACDS,YAAY,CAACxC,KAAK,EAClByC,sBAAsB,CAACzC,KAAK,EAC5B2C,aAAa,CAAC3C,KAAK,EACnB4C,cAAc,CAAC5C,KAAK,EACpB8C,gBAAgB,CAAC9C,KAAK,EACtBkD,WAAW,CAAClD,KAAK,EACjB+C,cAAc,CAAC/C,KAAK,EACpBE,KAAK,CAACoE,KAAK,CACZ;QAAA,SACM,CACL5B,qBAAqB,CAAC1C,KAAK,EAC3B6C,eAAe,CAAC7C,KAAK,EACrBE,KAAK,CAACqE,KAAK,CACZ;QAAA,QACI,SAAS;QAAA,yBACU9D,SAAS;QAAA,aACrBgD,SAAS;QAAA,cACRE,UAAU;QAAA,WACbC,OAAO;QAAA,aACLI;MAAS;QAAAlC,OAAA,EAAAA,CAAA,MAAAsC,YAAA,CAAAnG,aAAA;UAAA,SAEE+C,KAAK,CAAChB;QAAK,GAAauC,KAAK;MAAA;IAG1D,CAAC,CAAC;IAEF,OAAO;MACLS,IAAI;MACJC,MAAM;MACNc;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
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/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 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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"}
@@ -5,12 +5,13 @@ import { VListGroup } from "./VListGroup.mjs";
5
5
  import { VListItem } from "./VListItem.mjs";
6
6
  import { VListSubheader } from "./VListSubheader.mjs"; // Utilities
7
7
  import { createList } from "./list.mjs";
8
- import { genericComponent } from "../../util/index.mjs"; // Types
8
+ import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
9
+ export const makeVListChildrenProps = propsFactory({
10
+ items: Array
11
+ }, 'v-list-children');
9
12
  export const VListChildren = genericComponent()({
10
13
  name: 'VListChildren',
11
- props: {
12
- items: Array
13
- },
14
+ props: makeVListChildrenProps(),
14
15
  setup(props, _ref) {
15
16
  let {
16
17
  slots
@@ -31,9 +32,7 @@ export const VListChildren = genericComponent()({
31
32
  if (type === 'subheader') {
32
33
  return slots.subheader?.({
33
34
  props: itemProps
34
- }) ?? _createVNode(VListSubheader, itemProps, {
35
- default: slots.subheader
36
- });
35
+ }) ?? _createVNode(VListSubheader, itemProps, null);
37
36
  }
38
37
  const slotsWithItem = {
39
38
  subtitle: slots.subtitle ? slotProps => slots.subtitle?.({
@@ -48,10 +47,6 @@ export const VListChildren = genericComponent()({
48
47
  ...slotProps,
49
48
  item
50
49
  }) : undefined,
51
- default: slots.default ? slotProps => slots.default?.({
52
- ...slotProps,
53
- item
54
- }) : undefined,
55
50
  title: slots.title ? slotProps => slots.title?.({
56
51
  ...slotProps,
57
52
  item
@@ -75,7 +70,9 @@ export const VListChildren = genericComponent()({
75
70
  default: () => _createVNode(VListChildren, {
76
71
  "items": children
77
72
  }, slots)
78
- }) : slots.item ? slots.item(itemProps) : _createVNode(VListItem, itemProps, slotsWithItem);
73
+ }) : slots.item ? slots.item({
74
+ props: itemProps
75
+ }) : _createVNode(VListItem, itemProps, slotsWithItem);
79
76
  });
80
77
  }
81
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VListChildren.mjs","names":["VDivider","VListGroup","VListItem","VListSubheader","createList","genericComponent","VListChildren","name","props","items","Array","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 } 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: [T]\n divider: [{ props: T }]\n subheader: [{ props: T }]\n}\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>(props: {\n items?: T[]\n}) => GenericProps<typeof props, VListChildrenSlots<T>>>()({\n name: 'VListChildren',\n\n props: {\n items: Array as PropType<InternalListItem[]>,\n },\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\n { ...itemProps }\n v-slots={{ default: slots.subheader }}\n />\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 default: slots.default ? (slotProps: any) => slots.default?.({ ...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(itemProps) : (\n <VListItem\n { ...itemProps }\n v-slots={ slotsWithItem }\n />\n )\n )\n })\n },\n})\n"],"mappings":"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"}
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<InternalListItem[]>,\n}, 'v-list-children')\n\nexport const VListChildren = genericComponent<new <T extends InternalListItem>(\n props: {\n items?: 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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"}
@@ -38,16 +38,14 @@ export const makeVListGroupProps = propsFactory({
38
38
  appendIcon: IconValue,
39
39
  fluid: Boolean,
40
40
  subgroup: Boolean,
41
+ title: String,
41
42
  value: null,
42
43
  ...makeComponentProps(),
43
44
  ...makeTagProps()
44
45
  }, 'v-list-group');
45
46
  export const VListGroup = genericComponent()({
46
47
  name: 'VListGroup',
47
- props: {
48
- title: String,
49
- ...makeVListGroupProps()
50
- },
48
+ props: makeVListGroupProps(),
51
49
  setup(props, _ref2) {
52
50
  let {
53
51
  slots
@@ -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","baseColor","color","collapseIcon","type","expandIcon","prependIcon","appendIcon","fluid","Boolean","subgroup","value","VListGroup","props","title","_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 value: null,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-group')\n\nexport const VListGroup = genericComponent<VListGroupSlots>()({\n name: 'VListGroup',\n\n props: {\n title: String,\n\n ...makeVListGroupProps(),\n },\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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"}
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,54 +23,55 @@ 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 { deprecate, EventProp, genericComponent, useRender } from "../../util/index.mjs"; // Types
26
+ import { deprecate, EventProp, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
27
+ export const makeVListItemProps = propsFactory({
28
+ active: {
29
+ type: Boolean,
30
+ default: undefined
31
+ },
32
+ activeClass: String,
33
+ /* @deprecated */
34
+ activeColor: String,
35
+ appendAvatar: String,
36
+ appendIcon: IconValue,
37
+ baseColor: String,
38
+ disabled: Boolean,
39
+ lines: String,
40
+ link: {
41
+ type: Boolean,
42
+ default: undefined
43
+ },
44
+ nav: Boolean,
45
+ prependAvatar: String,
46
+ prependIcon: IconValue,
47
+ ripple: {
48
+ type: Boolean,
49
+ default: true
50
+ },
51
+ subtitle: [String, Number, Boolean],
52
+ title: [String, Number, Boolean],
53
+ value: null,
54
+ onClick: EventProp(),
55
+ onClickOnce: EventProp(),
56
+ ...makeBorderProps(),
57
+ ...makeComponentProps(),
58
+ ...makeDensityProps(),
59
+ ...makeDimensionProps(),
60
+ ...makeElevationProps(),
61
+ ...makeRoundedProps(),
62
+ ...makeRouterProps(),
63
+ ...makeTagProps(),
64
+ ...makeThemeProps(),
65
+ ...makeVariantProps({
66
+ variant: 'text'
67
+ })
68
+ }, 'v-list-item');
27
69
  export const VListItem = genericComponent()({
28
70
  name: 'VListItem',
29
71
  directives: {
30
72
  Ripple
31
73
  },
32
- props: {
33
- active: {
34
- type: Boolean,
35
- default: undefined
36
- },
37
- activeClass: String,
38
- /* @deprecated */
39
- activeColor: String,
40
- appendAvatar: String,
41
- appendIcon: IconValue,
42
- baseColor: String,
43
- disabled: Boolean,
44
- lines: String,
45
- link: {
46
- type: Boolean,
47
- default: undefined
48
- },
49
- nav: Boolean,
50
- prependAvatar: String,
51
- prependIcon: IconValue,
52
- ripple: {
53
- type: Boolean,
54
- default: true
55
- },
56
- subtitle: [String, Number, Boolean],
57
- title: [String, Number, Boolean],
58
- value: null,
59
- onClick: EventProp(),
60
- onClickOnce: EventProp(),
61
- ...makeBorderProps(),
62
- ...makeComponentProps(),
63
- ...makeDensityProps(),
64
- ...makeDimensionProps(),
65
- ...makeElevationProps(),
66
- ...makeRoundedProps(),
67
- ...makeRouterProps(),
68
- ...makeTagProps(),
69
- ...makeThemeProps(),
70
- ...makeVariantProps({
71
- variant: 'text'
72
- })
73
- },
74
+ props: makeVListItemProps(),
74
75
  emits: {
75
76
  click: e => true
76
77
  },
@@ -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","deprecate","EventProp","genericComponent","useRender","VListItem","name","directives","props","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","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, 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 VListItem = genericComponent<VListItemSlots>()({\n name: 'VListItem',\n\n directives: { Ripple },\n\n props: {\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 },\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 ? 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 ? 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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"}
@@ -2,15 +2,16 @@ import { createVNode as _createVNode, resolveDirective as _resolveDirective } fr
2
2
  // Composables
3
3
  import { makeComponentProps } from "../../composables/component.mjs";
4
4
  import { makeTagProps } from "../../composables/tag.mjs"; // Utilities
5
- import { genericComponent, useRender } from "../../util/index.mjs";
5
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
6
+ export const makeVListItemActionProps = propsFactory({
7
+ start: Boolean,
8
+ end: Boolean,
9
+ ...makeComponentProps(),
10
+ ...makeTagProps()
11
+ }, 'v-list-item-action');
6
12
  export const VListItemAction = genericComponent()({
7
13
  name: 'VListItemAction',
8
- props: {
9
- start: Boolean,
10
- end: Boolean,
11
- ...makeComponentProps(),
12
- ...makeTagProps()
13
- },
14
+ props: makeVListItemActionProps(),
14
15
  setup(props, _ref) {
15
16
  let {
16
17
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"VListItemAction.mjs","names":["makeComponentProps","makeTagProps","genericComponent","useRender","VListItemAction","name","props","start","Boolean","end","setup","_ref","slots","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VListItemAction.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VListItemAction = genericComponent()({\n name: 'VListItemAction',\n\n props: {\n start: Boolean,\n end: Boolean,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => (\n <props.tag\n class={[\n 'v-list-item-action',\n {\n 'v-list-item-action--start': props.start,\n 'v-list-item-action--end': props.end,\n },\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VListItemAction = InstanceType<typeof VListItemAction>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY,qCAErB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,eAAe,GAAGF,gBAAgB,EAAE,CAAC;EAChDG,IAAI,EAAE,iBAAiB;EAEvBC,KAAK,EAAE;IACLC,KAAK,EAAEC,OAAO;IACdC,GAAG,EAAED,OAAO;IAEZ,GAAGR,kBAAkB,EAAE;IACvB,GAAGC,YAAY;EACjB,CAAC;EAEDS,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBR,SAAS,CAAC,MAAAU,YAAA,CAAAP,KAAA,CAAAQ,GAAA;MAAA,SAEC,CACL,oBAAoB,EACpB;QACE,2BAA2B,EAAER,KAAK,CAACC,KAAK;QACxC,yBAAyB,EAAED,KAAK,CAACG;MACnC,CAAC,EACDH,KAAK,CAACS,KAAK,CACZ;MAAA,SACOT,KAAK,CAACU;IAAK,GACTJ,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VListItemAction.mjs","names":["makeComponentProps","makeTagProps","genericComponent","propsFactory","useRender","makeVListItemActionProps","start","Boolean","end","VListItemAction","name","props","setup","_ref","slots","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VListItemAction.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVListItemActionProps = propsFactory({\n start: Boolean,\n end: Boolean,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-item-action')\n\nexport const VListItemAction = genericComponent()({\n name: 'VListItemAction',\n\n props: makeVListItemActionProps(),\n\n setup (props, { slots }) {\n useRender(() => (\n <props.tag\n class={[\n 'v-list-item-action',\n {\n 'v-list-item-action--start': props.start,\n 'v-list-item-action--end': props.end,\n },\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VListItemAction = InstanceType<typeof VListItemAction>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY,qCAErB;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,wBAAwB,GAAGF,YAAY,CAAC;EACnDG,KAAK,EAAEC,OAAO;EACdC,GAAG,EAAED,OAAO;EAEZ,GAAGP,kBAAkB,EAAE;EACvB,GAAGC,YAAY;AACjB,CAAC,EAAE,oBAAoB,CAAC;AAExB,OAAO,MAAMQ,eAAe,GAAGP,gBAAgB,EAAE,CAAC;EAChDQ,IAAI,EAAE,iBAAiB;EAEvBC,KAAK,EAAEN,wBAAwB,EAAE;EAEjCO,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBT,SAAS,CAAC,MAAAW,YAAA,CAAAJ,KAAA,CAAAK,GAAA;MAAA,SAEC,CACL,oBAAoB,EACpB;QACE,2BAA2B,EAAEL,KAAK,CAACL,KAAK;QACxC,yBAAyB,EAAEK,KAAK,CAACH;MACnC,CAAC,EACDG,KAAK,CAACM,KAAK,CACZ;MAAA,SACON,KAAK,CAACO;IAAK,GACTJ,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -2,15 +2,16 @@ import { createVNode as _createVNode, resolveDirective as _resolveDirective } fr
2
2
  // Composables
3
3
  import { makeComponentProps } from "../../composables/component.mjs";
4
4
  import { makeTagProps } from "../../composables/tag.mjs"; // Utilities
5
- import { genericComponent, useRender } from "../../util/index.mjs";
5
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
6
+ export const makeVListItemMediaProps = propsFactory({
7
+ start: Boolean,
8
+ end: Boolean,
9
+ ...makeComponentProps(),
10
+ ...makeTagProps()
11
+ }, 'v-list-item-media');
6
12
  export const VListItemMedia = genericComponent()({
7
13
  name: 'VListItemMedia',
8
- props: {
9
- start: Boolean,
10
- end: Boolean,
11
- ...makeComponentProps(),
12
- ...makeTagProps()
13
- },
14
+ props: makeVListItemMediaProps(),
14
15
  setup(props, _ref) {
15
16
  let {
16
17
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"VListItemMedia.mjs","names":["makeComponentProps","makeTagProps","genericComponent","useRender","VListItemMedia","name","props","start","Boolean","end","setup","_ref","slots","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VListItemMedia.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\nexport const VListItemMedia = genericComponent()({\n name: 'VListItemMedia',\n\n props: {\n start: Boolean,\n end: Boolean,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => {\n return (\n <props.tag\n class={[\n 'v-list-item-media',\n {\n 'v-list-item-media--start': props.start,\n 'v-list-item-media--end': props.end,\n },\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VListItemMedia = InstanceType<typeof VListItemMedia>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY,qCAErB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,cAAc,GAAGF,gBAAgB,EAAE,CAAC;EAC/CG,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAE;IACLC,KAAK,EAAEC,OAAO;IACdC,GAAG,EAAED,OAAO;IAEZ,GAAGR,kBAAkB,EAAE;IACvB,GAAGC,YAAY;EACjB,CAAC;EAEDS,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBR,SAAS,CAAC,MAAM;MACd,OAAAU,YAAA,CAAAP,KAAA,CAAAQ,GAAA;QAAA,SAEW,CACL,mBAAmB,EACnB;UACE,0BAA0B,EAAER,KAAK,CAACC,KAAK;UACvC,wBAAwB,EAAED,KAAK,CAACG;QAClC,CAAC,EACDH,KAAK,CAACS,KAAK,CACZ;QAAA,SACOT,KAAK,CAACU;MAAK,GACTJ,KAAK;IAGrB,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VListItemMedia.mjs","names":["makeComponentProps","makeTagProps","genericComponent","propsFactory","useRender","makeVListItemMediaProps","start","Boolean","end","VListItemMedia","name","props","setup","_ref","slots","_createVNode","tag","class","style"],"sources":["../../../src/components/VList/VListItemMedia.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVListItemMediaProps = propsFactory({\n start: Boolean,\n end: Boolean,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-item-media')\n\nexport const VListItemMedia = genericComponent()({\n name: 'VListItemMedia',\n\n props: makeVListItemMediaProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n return (\n <props.tag\n class={[\n 'v-list-item-media',\n {\n 'v-list-item-media--start': props.start,\n 'v-list-item-media--end': props.end,\n },\n props.class,\n ]}\n style={ props.style }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VListItemMedia = InstanceType<typeof VListItemMedia>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY,qCAErB;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CAAC;EAClDG,KAAK,EAAEC,OAAO;EACdC,GAAG,EAAED,OAAO;EAEZ,GAAGP,kBAAkB,EAAE;EACvB,GAAGC,YAAY;AACjB,CAAC,EAAE,mBAAmB,CAAC;AAEvB,OAAO,MAAMQ,cAAc,GAAGP,gBAAgB,EAAE,CAAC;EAC/CQ,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAEN,uBAAuB,EAAE;EAEhCO,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBT,SAAS,CAAC,MAAM;MACd,OAAAW,YAAA,CAAAJ,KAAA,CAAAK,GAAA;QAAA,SAEW,CACL,mBAAmB,EACnB;UACE,0BAA0B,EAAEL,KAAK,CAACL,KAAK;UACvC,wBAAwB,EAAEK,KAAK,CAACH;QAClC,CAAC,EACDG,KAAK,CAACM,KAAK,CACZ;QAAA,SACON,KAAK,CAACO;MAAK,GACTJ,KAAK;IAGrB,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -4,17 +4,18 @@ import { makeComponentProps } from "../../composables/component.mjs";
4
4
  import { makeTagProps } from "../../composables/tag.mjs";
5
5
  import { useTextColor } from "../../composables/color.mjs"; // Utilities
6
6
  import { toRef } from 'vue';
7
- import { genericComponent, useRender } from "../../util/index.mjs";
7
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
8
+ export const makeVListSubheaderProps = propsFactory({
9
+ color: String,
10
+ inset: Boolean,
11
+ sticky: Boolean,
12
+ title: String,
13
+ ...makeComponentProps(),
14
+ ...makeTagProps()
15
+ }, 'v-list-subheader');
8
16
  export const VListSubheader = genericComponent()({
9
17
  name: 'VListSubheader',
10
- props: {
11
- color: String,
12
- inset: Boolean,
13
- sticky: Boolean,
14
- title: String,
15
- ...makeComponentProps(),
16
- ...makeTagProps()
17
- },
18
+ props: makeVListSubheaderProps(),
18
19
  setup(props, _ref) {
19
20
  let {
20
21
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"VListSubheader.mjs","names":["makeComponentProps","makeTagProps","useTextColor","toRef","genericComponent","useRender","VListSubheader","name","props","color","String","inset","Boolean","sticky","title","setup","_ref","slots","textColorClasses","textColorStyles","hasText","default","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VList/VListSubheader.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\nexport const VListSubheader = genericComponent()({\n name: 'VListSubheader',\n\n props: {\n color: String,\n inset: Boolean,\n sticky: Boolean,\n title: String,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n },\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n\n useRender(() => {\n const hasText = !!(slots.default || props.title)\n\n return (\n <props.tag\n class={[\n 'v-list-subheader',\n {\n 'v-list-subheader--inset': props.inset,\n 'v-list-subheader--sticky': props.sticky,\n },\n textColorClasses.value,\n props.class,\n ]}\n style={[\n { textColorStyles },\n props.style,\n ]}\n >\n { hasText && (\n <div class=\"v-list-subheader__text\">\n { slots.default?.() ?? props.title }\n </div>\n )}\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VListSubheader = InstanceType<typeof VListSubheader>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY;AAAA,SACZC,YAAY,uCAErB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,cAAc,GAAGF,gBAAgB,EAAE,CAAC;EAC/CG,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAE;IACLC,KAAK,EAAEC,MAAM;IACbC,KAAK,EAAEC,OAAO;IACdC,MAAM,EAAED,OAAO;IACfE,KAAK,EAAEJ,MAAM;IAEb,GAAGV,kBAAkB,EAAE;IACvB,GAAGC,YAAY;EACjB,CAAC;EAEDc,KAAKA,CAAEP,KAAK,EAAAQ,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,gBAAgB;MAAEC;IAAgB,CAAC,GAAGjB,YAAY,CAACC,KAAK,CAACK,KAAK,EAAE,OAAO,CAAC,CAAC;IAEjFH,SAAS,CAAC,MAAM;MACd,MAAMe,OAAO,GAAG,CAAC,EAAEH,KAAK,CAACI,OAAO,IAAIb,KAAK,CAACM,KAAK,CAAC;MAEhD,OAAAQ,YAAA,CAAAd,KAAA,CAAAe,GAAA;QAAA,SAEW,CACL,kBAAkB,EAClB;UACE,yBAAyB,EAAEf,KAAK,CAACG,KAAK;UACtC,0BAA0B,EAAEH,KAAK,CAACK;QACpC,CAAC,EACDK,gBAAgB,CAACM,KAAK,EACtBhB,KAAK,CAACiB,KAAK,CACZ;QAAA,SACM,CACL;UAAEN;QAAgB,CAAC,EACnBX,KAAK,CAACkB,KAAK;MACZ;QAAAL,OAAA,EAAAA,CAAA,MAECD,OAAO,IAAAE,YAAA;UAAA,SACI;QAAwB,IAC/BL,KAAK,CAACI,OAAO,IAAI,IAAIb,KAAK,CAACM,KAAK,EAErC;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VListSubheader.mjs","names":["makeComponentProps","makeTagProps","useTextColor","toRef","genericComponent","propsFactory","useRender","makeVListSubheaderProps","color","String","inset","Boolean","sticky","title","VListSubheader","name","props","setup","_ref","slots","textColorClasses","textColorStyles","hasText","default","_createVNode","tag","value","class","style"],"sources":["../../../src/components/VList/VListSubheader.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVListSubheaderProps = propsFactory({\n color: String,\n inset: Boolean,\n sticky: Boolean,\n title: String,\n\n ...makeComponentProps(),\n ...makeTagProps(),\n}, 'v-list-subheader')\n\nexport const VListSubheader = genericComponent()({\n name: 'VListSubheader',\n\n props: makeVListSubheaderProps(),\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n\n useRender(() => {\n const hasText = !!(slots.default || props.title)\n\n return (\n <props.tag\n class={[\n 'v-list-subheader',\n {\n 'v-list-subheader--inset': props.inset,\n 'v-list-subheader--sticky': props.sticky,\n },\n textColorClasses.value,\n props.class,\n ]}\n style={[\n { textColorStyles },\n props.style,\n ]}\n >\n { hasText && (\n <div class=\"v-list-subheader__text\">\n { slots.default?.() ?? props.title }\n </div>\n )}\n </props.tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VListSubheader = InstanceType<typeof VListSubheader>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY;AAAA,SACZC,YAAY,uCAErB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CAAC;EAClDG,KAAK,EAAEC,MAAM;EACbC,KAAK,EAAEC,OAAO;EACdC,MAAM,EAAED,OAAO;EACfE,KAAK,EAAEJ,MAAM;EAEb,GAAGT,kBAAkB,EAAE;EACvB,GAAGC,YAAY;AACjB,CAAC,EAAE,kBAAkB,CAAC;AAEtB,OAAO,MAAMa,cAAc,GAAGV,gBAAgB,EAAE,CAAC;EAC/CW,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAET,uBAAuB,EAAE;EAEhCU,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,gBAAgB;MAAEC;IAAgB,CAAC,GAAGnB,YAAY,CAACC,KAAK,CAACa,KAAK,EAAE,OAAO,CAAC,CAAC;IAEjFV,SAAS,CAAC,MAAM;MACd,MAAMgB,OAAO,GAAG,CAAC,EAAEH,KAAK,CAACI,OAAO,IAAIP,KAAK,CAACH,KAAK,CAAC;MAEhD,OAAAW,YAAA,CAAAR,KAAA,CAAAS,GAAA;QAAA,SAEW,CACL,kBAAkB,EAClB;UACE,yBAAyB,EAAET,KAAK,CAACN,KAAK;UACtC,0BAA0B,EAAEM,KAAK,CAACJ;QACpC,CAAC,EACDQ,gBAAgB,CAACM,KAAK,EACtBV,KAAK,CAACW,KAAK,CACZ;QAAA,SACM,CACL;UAAEN;QAAgB,CAAC,EACnBL,KAAK,CAACY,KAAK;MACZ;QAAAL,OAAA,EAAAA,CAAA,MAECD,OAAO,IAAAE,YAAA;UAAA,SACI;QAAwB,IAC/BL,KAAK,CAACI,OAAO,IAAI,IAAIP,KAAK,CAACH,KAAK,EAErC;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}