vuetify 3.2.2 → 3.2.3

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 (299) hide show
  1. package/dist/json/attributes.json +538 -242
  2. package/dist/json/importMap.json +8 -8
  3. package/dist/json/tags.json +77 -2
  4. package/dist/json/web-types.json +1284 -558
  5. package/dist/vuetify-labs.css +123 -119
  6. package/dist/vuetify-labs.d.ts +2222 -11380
  7. package/dist/vuetify-labs.esm.js +2230 -2144
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +2230 -2144
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +39 -35
  12. package/dist/vuetify.d.ts +1225 -11178
  13. package/dist/vuetify.esm.js +1691 -1591
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +1691 -1591
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +597 -597
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +1 -3
  21. package/lib/blueprints/md1.d.ts +1 -3
  22. package/lib/blueprints/md2.d.ts +1 -3
  23. package/lib/blueprints/md3.d.ts +1 -3
  24. package/lib/components/VAlert/VAlert.mjs +47 -46
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/index.d.ts +2 -2
  27. package/lib/components/VApp/VApp.mjs +9 -8
  28. package/lib/components/VApp/VApp.mjs.map +1 -1
  29. package/lib/components/VAppBar/VAppBar.mjs +21 -20
  30. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  31. package/lib/components/VAppBar/VAppBarNavIcon.mjs +8 -5
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  33. package/lib/components/VAppBar/index.d.ts +4 -4
  34. package/lib/components/VAutocomplete/VAutocomplete.css +0 -4
  35. package/lib/components/VAutocomplete/VAutocomplete.mjs +28 -33
  36. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  37. package/lib/components/VAutocomplete/VAutocomplete.sass +0 -5
  38. package/lib/components/VAutocomplete/index.d.ts +67 -1174
  39. package/lib/components/VBadge/VBadge.mjs +33 -32
  40. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  41. package/lib/components/VBanner/VBanner.mjs +21 -20
  42. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  43. package/lib/components/VBanner/VBannerActions.mjs +7 -6
  44. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  45. package/lib/components/VBanner/index.d.ts +2 -2
  46. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +35 -34
  47. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  48. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +24 -23
  49. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  50. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -5
  51. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  52. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -14
  53. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  54. package/lib/components/VBreadcrumbs/index.d.ts +1 -0
  55. package/lib/components/VBtnToggle/VBtnToggle.mjs +6 -5
  56. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  57. package/lib/components/VCard/VCard.mjs +38 -37
  58. package/lib/components/VCard/VCard.mjs.map +1 -1
  59. package/lib/components/VCard/VCardItem.mjs +12 -11
  60. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  61. package/lib/components/VCard/index.d.ts +4 -4
  62. package/lib/components/VCarousel/VCarousel.mjs +28 -27
  63. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  64. package/lib/components/VCarousel/VCarouselItem.mjs +18 -16
  65. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  66. package/lib/components/VCarousel/index.d.ts +170 -20
  67. package/lib/components/VCheckbox/VCheckbox.mjs +6 -5
  68. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  69. package/lib/components/VCheckbox/index.d.ts +24 -12
  70. package/lib/components/VChip/VChip.css +8 -0
  71. package/lib/components/VChip/VChip.mjs +60 -57
  72. package/lib/components/VChip/VChip.mjs.map +1 -1
  73. package/lib/components/VChip/VChip.sass +10 -0
  74. package/lib/components/VChip/index.d.ts +8 -8
  75. package/lib/components/VChipGroup/VChipGroup.mjs +19 -18
  76. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  77. package/lib/components/VColorPicker/VColorPicker.mjs +44 -39
  78. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  79. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +21 -20
  80. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  81. package/lib/components/VColorPicker/VColorPickerEdit.mjs +17 -16
  82. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  83. package/lib/components/VColorPicker/VColorPickerPreview.mjs +10 -9
  84. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  85. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +12 -11
  86. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  87. package/lib/components/VColorPicker/index.d.ts +4 -4
  88. package/lib/components/VColorPicker/util/index.mjs +2 -2
  89. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  90. package/lib/components/VCombobox/VCombobox.mjs +32 -36
  91. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  92. package/lib/components/VCombobox/index.d.ts +67 -1171
  93. package/lib/components/VCounter/VCounter.mjs +16 -15
  94. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  95. package/lib/components/VCounter/index.d.ts +25 -1774
  96. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +9 -8
  97. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  98. package/lib/components/VDialog/VDialog.mjs +18 -17
  99. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  100. package/lib/components/VDialog/index.d.ts +130 -1120
  101. package/lib/components/VDivider/VDivider.mjs +11 -10
  102. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  103. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -15
  104. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  105. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +6 -5
  106. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  107. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -5
  108. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  109. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -14
  110. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  111. package/lib/components/VExpansionPanel/index.d.ts +15 -15
  112. package/lib/components/VField/VField.mjs +6 -2
  113. package/lib/components/VField/VField.mjs.map +1 -1
  114. package/lib/components/VField/VFieldLabel.mjs +6 -5
  115. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  116. package/lib/components/VFileInput/VFileInput.mjs +35 -34
  117. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  118. package/lib/components/VFileInput/index.d.ts +3 -3
  119. package/lib/components/VFooter/VFooter.mjs +19 -18
  120. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  121. package/lib/components/VForm/VForm.mjs +6 -5
  122. package/lib/components/VForm/VForm.mjs.map +1 -1
  123. package/lib/components/VForm/index.d.ts +3 -3
  124. package/lib/components/VGrid/VCol.mjs +26 -25
  125. package/lib/components/VGrid/VCol.mjs.map +1 -1
  126. package/lib/components/VGrid/VContainer.mjs +16 -11
  127. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  128. package/lib/components/VGrid/VRow.mjs +26 -25
  129. package/lib/components/VGrid/VRow.mjs.map +1 -1
  130. package/lib/components/VHover/VHover.mjs +10 -9
  131. package/lib/components/VHover/VHover.mjs.map +1 -1
  132. package/lib/components/VImg/VImg.mjs +29 -28
  133. package/lib/components/VImg/VImg.mjs.map +1 -1
  134. package/lib/components/VItemGroup/VItemGroup.mjs +10 -9
  135. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  136. package/lib/components/VLabel/VLabel.mjs +8 -7
  137. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  138. package/lib/components/VLayout/VLayout.mjs +6 -5
  139. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  140. package/lib/components/VLayout/VLayoutItem.mjs +15 -14
  141. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  142. package/lib/components/VLazy/VLazy.mjs +21 -20
  143. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  144. package/lib/components/VList/VList.mjs +33 -32
  145. package/lib/components/VList/VList.mjs.map +1 -1
  146. package/lib/components/VList/VListChildren.mjs +5 -4
  147. package/lib/components/VList/VListChildren.mjs.map +1 -1
  148. package/lib/components/VList/VListGroup.mjs +2 -4
  149. package/lib/components/VList/VListGroup.mjs.map +1 -1
  150. package/lib/components/VList/VListItem.mjs +42 -41
  151. package/lib/components/VList/VListItem.mjs.map +1 -1
  152. package/lib/components/VList/VListItemAction.mjs +8 -7
  153. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  154. package/lib/components/VList/VListItemMedia.mjs +8 -7
  155. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  156. package/lib/components/VList/VListSubheader.mjs +10 -9
  157. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  158. package/lib/components/VList/index.d.ts +30 -30
  159. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +12 -11
  160. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  161. package/lib/components/VMain/VMain.mjs +9 -8
  162. package/lib/components/VMain/VMain.mjs.map +1 -1
  163. package/lib/components/VMenu/VMenu.mjs +18 -17
  164. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  165. package/lib/components/VMenu/index.d.ts +40 -1030
  166. package/lib/components/VMessages/VMessages.mjs +18 -17
  167. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  168. package/lib/components/VMessages/index.d.ts +25 -1774
  169. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +48 -47
  170. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  171. package/lib/components/VNavigationDrawer/sticky.mjs +9 -3
  172. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  173. package/lib/components/VOverlay/locationStrategies.mjs +5 -3
  174. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  175. package/lib/components/VPagination/VPagination.mjs +82 -81
  176. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  177. package/lib/components/VPagination/index.d.ts +8 -8
  178. package/lib/components/VParallax/VParallax.mjs +9 -8
  179. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  180. package/lib/components/VProgressCircular/VProgressCircular.mjs +25 -24
  181. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  182. package/lib/components/VProgressLinear/VProgressLinear.mjs +44 -42
  183. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  184. package/lib/components/VProgressLinear/index.d.ts +8 -8
  185. package/lib/components/VRadio/VRadio.mjs +8 -7
  186. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  187. package/lib/components/VRadio/index.d.ts +18 -12
  188. package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -21
  189. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  190. package/lib/components/VRadioGroup/index.d.ts +16 -10
  191. package/lib/components/VRangeSlider/VRangeSlider.mjs +18 -13
  192. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  193. package/lib/components/VRating/VRating.mjs +44 -43
  194. package/lib/components/VRating/VRating.mjs.map +1 -1
  195. package/lib/components/VRating/index.d.ts +8 -8
  196. package/lib/components/VResponsive/VResponsive.mjs +8 -7
  197. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  198. package/lib/components/VSelect/VSelect.mjs +20 -19
  199. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  200. package/lib/components/VSelect/index.d.ts +64 -2506
  201. package/lib/components/VSelectionControl/index.d.ts +42 -36
  202. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -10
  203. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  204. package/lib/components/VSelectionControlGroup/index.d.ts +28 -28
  205. package/lib/components/VSheet/VSheet.mjs +1 -3
  206. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  207. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +1 -3
  208. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  209. package/lib/components/VSlider/VSlider.mjs +18 -13
  210. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  211. package/lib/components/VSlider/VSliderThumb.mjs +26 -25
  212. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  213. package/lib/components/VSlider/VSliderTrack.mjs +13 -12
  214. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  215. package/lib/components/VSnackbar/VSnackbar.mjs +20 -19
  216. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  217. package/lib/components/VSwitch/VSwitch.mjs +13 -12
  218. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  219. package/lib/components/VSwitch/index.d.ts +18 -12
  220. package/lib/components/VSystemBar/VSystemBar.mjs +13 -12
  221. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  222. package/lib/components/VTable/VTable.mjs +12 -11
  223. package/lib/components/VTable/VTable.mjs.map +1 -1
  224. package/lib/components/VTabs/VTab.mjs +15 -14
  225. package/lib/components/VTabs/VTab.mjs.map +1 -1
  226. package/lib/components/VTabs/VTabs.mjs +28 -27
  227. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  228. package/lib/components/VTabs/index.d.ts +12 -12
  229. package/lib/components/VTextField/index.d.ts +3 -3
  230. package/lib/components/VTextarea/VTextarea.mjs +26 -25
  231. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  232. package/lib/components/VTextarea/index.d.ts +3 -3
  233. package/lib/components/VThemeProvider/VThemeProvider.mjs +8 -7
  234. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  235. package/lib/components/VTimeline/VTimeline.mjs +46 -41
  236. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  237. package/lib/components/VTimeline/VTimelineDivider.mjs +14 -13
  238. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  239. package/lib/components/VTimeline/VTimelineItem.mjs +21 -20
  240. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  241. package/lib/components/VToolbar/VToolbar.mjs +6 -2
  242. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  243. package/lib/components/VToolbar/VToolbarItems.mjs +8 -7
  244. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  245. package/lib/components/VToolbar/index.d.ts +11 -11
  246. package/lib/components/VTooltip/VTooltip.mjs +20 -19
  247. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  248. package/lib/components/VValidation/VValidation.mjs +1 -3
  249. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  250. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +11 -10
  251. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  252. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +6 -5
  253. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  254. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  255. package/lib/components/VWindow/VWindowItem.mjs +15 -14
  256. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  257. package/lib/components/VWindow/index.d.ts +9 -9
  258. package/lib/components/index.d.ts +1301 -11252
  259. package/lib/components/transitions/createTransition.mjs +16 -15
  260. package/lib/components/transitions/createTransition.mjs.map +1 -1
  261. package/lib/components/transitions/dialog-transition.mjs +5 -4
  262. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  263. package/lib/components/transitions/index.d.ts +143 -143
  264. package/lib/composables/forwardRefs.mjs.map +1 -1
  265. package/lib/composables/theme.mjs +3 -3
  266. package/lib/composables/theme.mjs.map +1 -1
  267. package/lib/directives/click-outside/index.mjs +1 -1
  268. package/lib/directives/click-outside/index.mjs.map +1 -1
  269. package/lib/entry-bundler.mjs +1 -1
  270. package/lib/framework.mjs +1 -1
  271. package/lib/index.d.ts +3 -5
  272. package/lib/labs/VDataTable/VDataTable.mjs +53 -59
  273. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  274. package/lib/labs/VDataTable/VDataTableFooter.mjs +64 -63
  275. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  276. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +8 -7
  277. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  278. package/lib/labs/VDataTable/VDataTableHeaders.mjs +16 -15
  279. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  280. package/lib/labs/VDataTable/VDataTableRow.mjs +7 -6
  281. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  282. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -19
  283. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  284. package/lib/labs/VDataTable/VDataTableServer.mjs +53 -64
  285. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  286. package/lib/labs/VDataTable/VDataTableVirtual.mjs +65 -72
  287. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  288. package/lib/labs/VDataTable/index.d.ts +991 -206
  289. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +54 -48
  290. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  291. package/lib/labs/VInfiniteScroll/index.d.ts +16 -1
  292. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +18 -17
  293. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  294. package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
  295. package/lib/labs/components.d.ts +1011 -211
  296. package/lib/labs/date/date.mjs +7 -7
  297. package/lib/labs/date/date.mjs.map +1 -1
  298. package/lib/labs/date/index.d.ts +1 -3
  299. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"VBreadcrumbsItem.mjs","names":["makeComponentProps","makeRouterProps","useLink","makeTagProps","useTextColor","computed","genericComponent","useRender","VBreadcrumbsItem","name","props","active","Boolean","activeClass","String","activeColor","color","disabled","title","tag","setup","_ref","slots","attrs","link","isActive","value","textColorClasses","textColorStyles","Tag","isLink","_createVNode","class","style","href","undefined","navigate","default"],"sources":["../../../src/components/VBreadcrumbs/VBreadcrumbsItem.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\nexport const VBreadcrumbsItem = genericComponent()({\n name: 'VBreadcrumbsItem',\n\n props: {\n active: Boolean,\n activeClass: String,\n activeColor: String,\n color: String,\n disabled: Boolean,\n title: String,\n\n ...makeComponentProps(),\n ...makeRouterProps(),\n ...makeTagProps({ tag: 'li' }),\n },\n\n setup (props, { slots, attrs }) {\n const link = useLink(props, attrs)\n const isActive = computed(() => props.active || link.isActive?.value)\n const color = computed(() => isActive.value ? props.activeColor : props.color)\n\n const { textColorClasses, textColorStyles } = useTextColor(color)\n\n useRender(() => {\n const Tag = link.isLink.value ? 'a' : props.tag\n\n return (\n <Tag\n class={[\n 'v-breadcrumbs-item',\n {\n 'v-breadcrumbs-item--active': isActive.value,\n 'v-breadcrumbs-item--disabled': props.disabled,\n 'v-breadcrumbs-item--link': link.isLink.value,\n [`${props.activeClass}`]: isActive.value && props.activeClass,\n },\n textColorClasses.value,\n props.class,\n ]}\n style={[\n textColorStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n aria-current={ isActive.value ? 'page' : undefined }\n onClick={ link.navigate }\n >\n { slots.default?.() ?? props.title }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VBreadcrumbsItem = InstanceType<typeof VBreadcrumbsItem>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe,EAAEC,OAAO;AAAA,SACxBC,YAAY;AAAA,SACZC,YAAY,uCAErB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,SAAS;AAEpC,OAAO,MAAMC,gBAAgB,GAAGF,gBAAgB,EAAE,CAAC;EACjDG,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAE;IACLC,MAAM,EAAEC,OAAO;IACfC,WAAW,EAAEC,MAAM;IACnBC,WAAW,EAAED,MAAM;IACnBE,KAAK,EAAEF,MAAM;IACbG,QAAQ,EAAEL,OAAO;IACjBM,KAAK,EAAEJ,MAAM;IAEb,GAAGd,kBAAkB,EAAE;IACvB,GAAGC,eAAe,EAAE;IACpB,GAAGE,YAAY,CAAC;MAAEgB,GAAG,EAAE;IAAK,CAAC;EAC/B,CAAC;EAEDC,KAAKA,CAAEV,KAAK,EAAAW,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAMG,IAAI,GAAGtB,OAAO,CAACQ,KAAK,EAAEa,KAAK,CAAC;IAClC,MAAME,QAAQ,GAAGpB,QAAQ,CAAC,MAAMK,KAAK,CAACC,MAAM,IAAIa,IAAI,CAACC,QAAQ,EAAEC,KAAK,CAAC;IACrE,MAAMV,KAAK,GAAGX,QAAQ,CAAC,MAAMoB,QAAQ,CAACC,KAAK,GAAGhB,KAAK,CAACK,WAAW,GAAGL,KAAK,CAACM,KAAK,CAAC;IAE9E,MAAM;MAAEW,gBAAgB;MAAEC;IAAgB,CAAC,GAAGxB,YAAY,CAACY,KAAK,CAAC;IAEjET,SAAS,CAAC,MAAM;MACd,MAAMsB,GAAG,GAAGL,IAAI,CAACM,MAAM,CAACJ,KAAK,GAAG,GAAG,GAAGhB,KAAK,CAACS,GAAG;MAE/C,OAAAY,YAAA,CAAAF,GAAA;QAAA,SAEW,CACL,oBAAoB,EACpB;UACE,4BAA4B,EAAEJ,QAAQ,CAACC,KAAK;UAC5C,8BAA8B,EAAEhB,KAAK,CAACO,QAAQ;UAC9C,0BAA0B,EAAEO,IAAI,CAACM,MAAM,CAACJ,KAAK;UAC7C,CAAE,GAAEhB,KAAK,CAACG,WAAY,EAAC,GAAGY,QAAQ,CAACC,KAAK,IAAIhB,KAAK,CAACG;QACpD,CAAC,EACDc,gBAAgB,CAACD,KAAK,EACtBhB,KAAK,CAACsB,KAAK,CACZ;QAAA,SACM,CACLJ,eAAe,CAACF,KAAK,EACrBhB,KAAK,CAACuB,KAAK,CACZ;QAAA,QACMT,IAAI,CAACU,IAAI,CAACR,KAAK;QAAA,gBACPD,QAAQ,CAACC,KAAK,GAAG,MAAM,GAAGS,SAAS;QAAA,WACxCX,IAAI,CAACY;MAAQ;QAAAC,OAAA,EAAAA,CAAA,MAErBf,KAAK,CAACe,OAAO,IAAI,IAAI3B,KAAK,CAACQ,KAAK;MAAA;IAGxC,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VBreadcrumbsItem.mjs","names":["makeComponentProps","makeRouterProps","useLink","makeTagProps","useTextColor","computed","genericComponent","propsFactory","useRender","makeVBreadcrumbsItemProps","active","Boolean","activeClass","String","activeColor","color","disabled","title","tag","VBreadcrumbsItem","name","props","setup","_ref","slots","attrs","link","isActive","value","textColorClasses","textColorStyles","Tag","isLink","_createVNode","class","style","href","undefined","navigate","default"],"sources":["../../../src/components/VBreadcrumbs/VBreadcrumbsItem.tsx"],"sourcesContent":["// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVBreadcrumbsItemProps = propsFactory({\n active: Boolean,\n activeClass: String,\n activeColor: String,\n color: String,\n disabled: Boolean,\n title: String,\n\n ...makeComponentProps(),\n ...makeRouterProps(),\n ...makeTagProps({ tag: 'li' }),\n}, 'v-breadcrumbs-item')\n\nexport const VBreadcrumbsItem = genericComponent()({\n name: 'VBreadcrumbsItem',\n\n props: makeVBreadcrumbsItemProps(),\n\n setup (props, { slots, attrs }) {\n const link = useLink(props, attrs)\n const isActive = computed(() => props.active || link.isActive?.value)\n const color = computed(() => isActive.value ? props.activeColor : props.color)\n\n const { textColorClasses, textColorStyles } = useTextColor(color)\n\n useRender(() => {\n const Tag = link.isLink.value ? 'a' : props.tag\n\n return (\n <Tag\n class={[\n 'v-breadcrumbs-item',\n {\n 'v-breadcrumbs-item--active': isActive.value,\n 'v-breadcrumbs-item--disabled': props.disabled,\n 'v-breadcrumbs-item--link': link.isLink.value,\n [`${props.activeClass}`]: isActive.value && props.activeClass,\n },\n textColorClasses.value,\n props.class,\n ]}\n style={[\n textColorStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n aria-current={ isActive.value ? 'page' : undefined }\n onClick={ link.navigate }\n >\n { slots.default?.() ?? props.title }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VBreadcrumbsItem = InstanceType<typeof VBreadcrumbsItem>\n"],"mappings":";AAAA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,eAAe,EAAEC,OAAO;AAAA,SACxBC,YAAY;AAAA,SACZC,YAAY,uCAErB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,yBAAyB,GAAGF,YAAY,CAAC;EACpDG,MAAM,EAAEC,OAAO;EACfC,WAAW,EAAEC,MAAM;EACnBC,WAAW,EAAED,MAAM;EACnBE,KAAK,EAAEF,MAAM;EACbG,QAAQ,EAAEL,OAAO;EACjBM,KAAK,EAAEJ,MAAM;EAEb,GAAGb,kBAAkB,EAAE;EACvB,GAAGC,eAAe,EAAE;EACpB,GAAGE,YAAY,CAAC;IAAEe,GAAG,EAAE;EAAK,CAAC;AAC/B,CAAC,EAAE,oBAAoB,CAAC;AAExB,OAAO,MAAMC,gBAAgB,GAAGb,gBAAgB,EAAE,CAAC;EACjDc,IAAI,EAAE,kBAAkB;EAExBC,KAAK,EAAEZ,yBAAyB,EAAE;EAElCa,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAMG,IAAI,GAAGxB,OAAO,CAACmB,KAAK,EAAEI,KAAK,CAAC;IAClC,MAAME,QAAQ,GAAGtB,QAAQ,CAAC,MAAMgB,KAAK,CAACX,MAAM,IAAIgB,IAAI,CAACC,QAAQ,EAAEC,KAAK,CAAC;IACrE,MAAMb,KAAK,GAAGV,QAAQ,CAAC,MAAMsB,QAAQ,CAACC,KAAK,GAAGP,KAAK,CAACP,WAAW,GAAGO,KAAK,CAACN,KAAK,CAAC;IAE9E,MAAM;MAAEc,gBAAgB;MAAEC;IAAgB,CAAC,GAAG1B,YAAY,CAACW,KAAK,CAAC;IAEjEP,SAAS,CAAC,MAAM;MACd,MAAMuB,GAAG,GAAGL,IAAI,CAACM,MAAM,CAACJ,KAAK,GAAG,GAAG,GAAGP,KAAK,CAACH,GAAG;MAE/C,OAAAe,YAAA,CAAAF,GAAA;QAAA,SAEW,CACL,oBAAoB,EACpB;UACE,4BAA4B,EAAEJ,QAAQ,CAACC,KAAK;UAC5C,8BAA8B,EAAEP,KAAK,CAACL,QAAQ;UAC9C,0BAA0B,EAAEU,IAAI,CAACM,MAAM,CAACJ,KAAK;UAC7C,CAAE,GAAEP,KAAK,CAACT,WAAY,EAAC,GAAGe,QAAQ,CAACC,KAAK,IAAIP,KAAK,CAACT;QACpD,CAAC,EACDiB,gBAAgB,CAACD,KAAK,EACtBP,KAAK,CAACa,KAAK,CACZ;QAAA,SACM,CACLJ,eAAe,CAACF,KAAK,EACrBP,KAAK,CAACc,KAAK,CACZ;QAAA,QACMT,IAAI,CAACU,IAAI,CAACR,KAAK;QAAA,gBACPD,QAAQ,CAACC,KAAK,GAAG,MAAM,GAAGS,SAAS;QAAA,WACxCX,IAAI,CAACY;MAAQ;QAAAC,OAAA,EAAAA,CAAA,MAErBf,KAAK,CAACe,OAAO,IAAI,IAAIlB,KAAK,CAACJ,KAAK;MAAA;IAGxC,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -669,5 +669,6 @@ declare const VBreadcrumbsDivider: {
669
669
  };
670
670
  divider: (StringConstructor | NumberConstructor)[];
671
671
  }>>;
672
+ type VBreadcrumbsDivider = InstanceType<typeof VBreadcrumbsDivider>;
672
673
 
673
674
  export { VBreadcrumbs, VBreadcrumbsDivider, VBreadcrumbsItem };
@@ -5,14 +5,15 @@ import "./VBtnToggle.css";
5
5
  // Components
6
6
  import { makeVBtnGroupProps, VBtnGroup } from "../VBtnGroup/VBtnGroup.mjs"; // Composables
7
7
  import { makeGroupProps, useGroup } from "../../composables/group.mjs"; // Utility
8
- import { genericComponent, useRender } from "../../util/index.mjs"; // Types
8
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
9
9
  export const VBtnToggleSymbol = Symbol.for('vuetify:v-btn-toggle');
10
+ export const makeVBtnToggleProps = propsFactory({
11
+ ...makeVBtnGroupProps(),
12
+ ...makeGroupProps()
13
+ }, 'v-btn-toggle');
10
14
  export const VBtnToggle = genericComponent()({
11
15
  name: 'VBtnToggle',
12
- props: {
13
- ...makeVBtnGroupProps(),
14
- ...makeGroupProps()
15
- },
16
+ props: makeVBtnToggleProps(),
16
17
  emits: {
17
18
  'update:modelValue': value => true
18
19
  },
@@ -1 +1 @@
1
- {"version":3,"file":"VBtnToggle.mjs","names":["makeVBtnGroupProps","VBtnGroup","makeGroupProps","useGroup","genericComponent","useRender","VBtnToggleSymbol","Symbol","for","VBtnToggle","name","props","emits","value","setup","_ref","slots","isSelected","next","prev","select","selected","btnGroupProps","filterProps","_createVNode","_mergeProps","class","style","default"],"sources":["../../../src/components/VBtnToggle/VBtnToggle.tsx"],"sourcesContent":["// Styles\nimport './VBtnToggle.sass'\n\n// Components\nimport { makeVBtnGroupProps, VBtnGroup } from '@/components/VBtnGroup/VBtnGroup'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\n\n// Utility\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport type BtnToggleSlotProps = 'isSelected' | 'select' | 'selected' | 'next' | 'prev'\nexport interface DefaultBtnToggleSlot extends Pick<GroupProvide, BtnToggleSlotProps> {}\n\nexport const VBtnToggleSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-btn-toggle')\n\ntype VBtnToggleSlots = {\n default: [DefaultBtnToggleSlot]\n}\n\nexport const VBtnToggle = genericComponent<VBtnToggleSlots>()({\n name: 'VBtnToggle',\n\n props: {\n ...makeVBtnGroupProps(),\n ...makeGroupProps(),\n },\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, next, prev, select, selected } = useGroup(props, VBtnToggleSymbol)\n\n useRender(() => {\n const [btnGroupProps] = VBtnGroup.filterProps(props)\n\n return (\n <VBtnGroup\n class={[\n 'v-btn-toggle',\n props.class,\n ]}\n { ...btnGroupProps }\n style={ props.style }\n >\n { slots.default?.({\n isSelected,\n next,\n prev,\n select,\n selected,\n } as DefaultBtnToggleSlot)}\n </VBtnGroup>\n )\n })\n\n return {\n next,\n prev,\n select,\n }\n },\n})\n\nexport type VBtnToggle = InstanceType<typeof VBtnToggle>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB,EAAEC,SAAS,sCAEtC;AAAA,SACSC,cAAc,EAAEC,QAAQ,uCAEjC;AAAA,SACSC,gBAAgB,EAAEC,SAAS,gCAEpC;AAOA,OAAO,MAAMC,gBAA4C,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAM9F,OAAO,MAAMC,UAAU,GAAGL,gBAAgB,EAAmB,CAAC;EAC5DM,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAE;IACL,GAAGX,kBAAkB,EAAE;IACvB,GAAGE,cAAc;EACnB,CAAC;EAEDU,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,UAAU;MAAEC,IAAI;MAAEC,IAAI;MAAEC,MAAM;MAAEC;IAAS,CAAC,GAAGlB,QAAQ,CAACQ,KAAK,EAAEL,gBAAgB,CAAC;IAEtFD,SAAS,CAAC,MAAM;MACd,MAAM,CAACiB,aAAa,CAAC,GAAGrB,SAAS,CAACsB,WAAW,CAACZ,KAAK,CAAC;MAEpD,OAAAa,YAAA,CAAAvB,SAAA,EAAAwB,WAAA;QAAA,SAEW,CACL,cAAc,EACdd,KAAK,CAACe,KAAK;MACZ,GACIJ,aAAa;QAAA,SACVX,KAAK,CAACgB;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjBZ,KAAK,CAACY,OAAO,GAAG;UAChBX,UAAU;UACVC,IAAI;UACJC,IAAI;UACJC,MAAM;UACNC;QACF,CAAC,CAAyB;MAAA;IAGhC,CAAC,CAAC;IAEF,OAAO;MACLH,IAAI;MACJC,IAAI;MACJC;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VBtnToggle.mjs","names":["makeVBtnGroupProps","VBtnGroup","makeGroupProps","useGroup","genericComponent","propsFactory","useRender","VBtnToggleSymbol","Symbol","for","makeVBtnToggleProps","VBtnToggle","name","props","emits","value","setup","_ref","slots","isSelected","next","prev","select","selected","btnGroupProps","filterProps","_createVNode","_mergeProps","class","style","default"],"sources":["../../../src/components/VBtnToggle/VBtnToggle.tsx"],"sourcesContent":["// Styles\nimport './VBtnToggle.sass'\n\n// Components\nimport { makeVBtnGroupProps, VBtnGroup } from '@/components/VBtnGroup/VBtnGroup'\n\n// Composables\nimport { makeGroupProps, useGroup } from '@/composables/group'\n\n// Utility\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { InjectionKey } from 'vue'\nimport type { GroupProvide } from '@/composables/group'\n\nexport type BtnToggleSlotProps = 'isSelected' | 'select' | 'selected' | 'next' | 'prev'\nexport interface DefaultBtnToggleSlot extends Pick<GroupProvide, BtnToggleSlotProps> {}\n\nexport const VBtnToggleSymbol: InjectionKey<GroupProvide> = Symbol.for('vuetify:v-btn-toggle')\n\ntype VBtnToggleSlots = {\n default: [DefaultBtnToggleSlot]\n}\n\nexport const makeVBtnToggleProps = propsFactory({\n ...makeVBtnGroupProps(),\n ...makeGroupProps(),\n}, 'v-btn-toggle')\n\nexport const VBtnToggle = genericComponent<VBtnToggleSlots>()({\n name: 'VBtnToggle',\n\n props: makeVBtnToggleProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { isSelected, next, prev, select, selected } = useGroup(props, VBtnToggleSymbol)\n\n useRender(() => {\n const [btnGroupProps] = VBtnGroup.filterProps(props)\n\n return (\n <VBtnGroup\n class={[\n 'v-btn-toggle',\n props.class,\n ]}\n { ...btnGroupProps }\n style={ props.style }\n >\n { slots.default?.({\n isSelected,\n next,\n prev,\n select,\n selected,\n } as DefaultBtnToggleSlot)}\n </VBtnGroup>\n )\n })\n\n return {\n next,\n prev,\n select,\n }\n },\n})\n\nexport type VBtnToggle = InstanceType<typeof VBtnToggle>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB,EAAEC,SAAS,sCAEtC;AAAA,SACSC,cAAc,EAAEC,QAAQ,uCAEjC;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAOA,OAAO,MAAMC,gBAA4C,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAM9F,OAAO,MAAMC,mBAAmB,GAAGL,YAAY,CAAC;EAC9C,GAAGL,kBAAkB,EAAE;EACvB,GAAGE,cAAc;AACnB,CAAC,EAAE,cAAc,CAAC;AAElB,OAAO,MAAMS,UAAU,GAAGP,gBAAgB,EAAmB,CAAC;EAC5DQ,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEH,mBAAmB,EAAE;EAE5BI,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK;EACvC,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,UAAU;MAAEC,IAAI;MAAEC,IAAI;MAAEC,MAAM;MAAEC;IAAS,CAAC,GAAGpB,QAAQ,CAACU,KAAK,EAAEN,gBAAgB,CAAC;IAEtFD,SAAS,CAAC,MAAM;MACd,MAAM,CAACkB,aAAa,CAAC,GAAGvB,SAAS,CAACwB,WAAW,CAACZ,KAAK,CAAC;MAEpD,OAAAa,YAAA,CAAAzB,SAAA,EAAA0B,WAAA;QAAA,SAEW,CACL,cAAc,EACdd,KAAK,CAACe,KAAK;MACZ,GACIJ,aAAa;QAAA,SACVX,KAAK,CAACgB;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjBZ,KAAK,CAACY,OAAO,GAAG;UAChBX,UAAU;UACVC,IAAI;UACJC,IAAI;UACJC,MAAM;UACNC;QACF,CAAC,CAAyB;MAAA;IAGhC,CAAC,CAAC;IAEF,OAAO;MACLH,IAAI;MACJC,IAAI;MACJC;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
@@ -26,48 +26,49 @@ import { makeRouterProps, useLink } from "../../composables/router.mjs";
26
26
  import { makeTagProps } from "../../composables/tag.mjs";
27
27
  import { makeThemeProps, provideTheme } from "../../composables/theme.mjs"; // Utilities
28
28
  import { computed } from 'vue';
29
- import { genericComponent, useRender } from "../../util/index.mjs"; // Types
29
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
30
+ export const makeVCardProps = propsFactory({
31
+ appendAvatar: String,
32
+ appendIcon: IconValue,
33
+ disabled: Boolean,
34
+ flat: Boolean,
35
+ hover: Boolean,
36
+ image: String,
37
+ link: {
38
+ type: Boolean,
39
+ default: undefined
40
+ },
41
+ prependAvatar: String,
42
+ prependIcon: IconValue,
43
+ ripple: {
44
+ type: Boolean,
45
+ default: true
46
+ },
47
+ subtitle: String,
48
+ text: String,
49
+ title: String,
50
+ ...makeBorderProps(),
51
+ ...makeComponentProps(),
52
+ ...makeDensityProps(),
53
+ ...makeDimensionProps(),
54
+ ...makeElevationProps(),
55
+ ...makeLoaderProps(),
56
+ ...makeLocationProps(),
57
+ ...makePositionProps(),
58
+ ...makeRoundedProps(),
59
+ ...makeRouterProps(),
60
+ ...makeTagProps(),
61
+ ...makeThemeProps(),
62
+ ...makeVariantProps({
63
+ variant: 'elevated'
64
+ })
65
+ }, 'v-card');
30
66
  export const VCard = genericComponent()({
31
67
  name: 'VCard',
32
68
  directives: {
33
69
  Ripple
34
70
  },
35
- props: {
36
- appendAvatar: String,
37
- appendIcon: IconValue,
38
- disabled: Boolean,
39
- flat: Boolean,
40
- hover: Boolean,
41
- image: String,
42
- link: {
43
- type: Boolean,
44
- default: undefined
45
- },
46
- prependAvatar: String,
47
- prependIcon: IconValue,
48
- ripple: {
49
- type: Boolean,
50
- default: true
51
- },
52
- subtitle: String,
53
- text: String,
54
- title: String,
55
- ...makeBorderProps(),
56
- ...makeComponentProps(),
57
- ...makeDensityProps(),
58
- ...makeDimensionProps(),
59
- ...makeElevationProps(),
60
- ...makeLoaderProps(),
61
- ...makeLocationProps(),
62
- ...makePositionProps(),
63
- ...makeRoundedProps(),
64
- ...makeRouterProps(),
65
- ...makeTagProps(),
66
- ...makeThemeProps(),
67
- ...makeVariantProps({
68
- variant: 'elevated'
69
- })
70
- },
71
+ props: makeVCardProps(),
71
72
  setup(props, _ref) {
72
73
  let {
73
74
  attrs,
@@ -1 +1 @@
1
- {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","useRender","VCard","name","directives","props","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","class","style","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\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 { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport type VCardSlots = {\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: [LoaderSlotProps]\n image: []\n prepend: []\n append: []\n}\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n },\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\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)\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 hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VCard.mjs","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","Ripple","genOverlays","makeVariantProps","useVariant","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","computed","genericComponent","propsFactory","useRender","makeVCardProps","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","subtitle","text","title","variant","VCard","name","directives","props","setup","_ref","attrs","slots","themeClasses","borderClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","loaderClasses","locationStyles","positionClasses","roundedClasses","isLink","value","isClickable","Tag","tag","hasTitle","hasSubtitle","hasHeader","hasAppend","append","hasPrepend","prepend","hasImage","hasCardItem","hasText","_withDirectives","_createVNode","class","style","href","navigate","cover","src","loading","loader","item","actions","_resolveDirective"],"sources":["../../../src/components/VCard/VCard.tsx"],"sourcesContent":["/* eslint-disable complexity */\n\n// Styles\nimport './VCard.sass'\n\n// Components\nimport { VCardActions } from './VCardActions'\nimport { VCardItem } from './VCardItem'\nimport { VCardText } from './VCardText'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VImg } from '@/components/VImg'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\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 { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { LoaderSlotProps } from '@/composables/loader'\n\nexport const makeVCardProps = propsFactory({\n appendAvatar: String,\n appendIcon: IconValue,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n image: String,\n link: {\n type: Boolean,\n default: undefined,\n },\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: Boolean,\n default: true,\n },\n subtitle: String,\n text: String,\n title: String,\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLoaderProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'elevated' } as const),\n}, 'v-card')\n\nexport type VCardSlots = {\n default: []\n actions: []\n title: []\n subtitle: []\n text: []\n loader: [LoaderSlotProps]\n image: []\n prepend: []\n append: []\n}\n\nexport const VCard = genericComponent<VCardSlots>()({\n name: 'VCard',\n\n directives: { Ripple },\n\n props: makeVCardProps(),\n\n setup (props, { attrs, slots }) {\n const { themeClasses } = provideTheme(props)\n const { borderClasses } = useBorder(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(props)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { loaderClasses } = useLoader(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const link = useLink(props, attrs)\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)\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 hasHeader = hasTitle || hasSubtitle\n const hasAppend = !!(slots.append || props.appendAvatar || props.appendIcon)\n const hasPrepend = !!(slots.prepend || props.prependAvatar || props.prependIcon)\n const hasImage = !!(slots.image || props.image)\n const hasCardItem = hasHeader || hasPrepend || hasAppend\n const hasText = !!(slots.text || props.text)\n\n return (\n <Tag\n class={[\n 'v-card',\n {\n 'v-card--disabled': props.disabled,\n 'v-card--flat': props.flat,\n 'v-card--hover': props.hover && !(props.disabled || props.flat),\n 'v-card--link': isClickable.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n loaderClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n props.style,\n ]}\n href={ link.href.value }\n onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n >\n { hasImage && (\n <div key=\"image\" class=\"v-card__image\">\n { !slots.image ? (\n <VImg\n key=\"image-img\"\n cover\n src={ props.image }\n />\n ) : (\n <VDefaultsProvider\n key=\"image-defaults\"\n disabled={ !props.image }\n defaults={{\n VImg: {\n cover: true,\n src: props.image,\n },\n }}\n v-slots:default={ slots.image }\n />\n )}\n </div>\n )}\n\n <LoaderSlot\n name=\"v-card\"\n active={ !!props.loading }\n color={ typeof props.loading === 'boolean' ? undefined : props.loading }\n v-slots={{ default: slots.loader }}\n />\n\n { hasCardItem && (\n <VCardItem\n key=\"item\"\n prependAvatar={ props.prependAvatar }\n prependIcon={ props.prependIcon }\n title={ props.title }\n subtitle={ props.subtitle }\n appendAvatar={ props.appendAvatar }\n appendIcon={ props.appendIcon }\n >\n {{\n default: slots.item,\n prepend: slots.prepend,\n title: slots.title,\n subtitle: slots.subtitle,\n append: slots.append,\n }}\n </VCardItem>\n )}\n\n { hasText && (\n <VCardText key=\"text\">\n { slots.text?.() ?? props.text }\n </VCardText>\n )}\n\n { slots.default?.() }\n\n { slots.actions && (\n <VCardActions v-slots={{ default: slots.actions }} />\n )}\n\n { genOverlays(isClickable.value, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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"}
@@ -7,19 +7,20 @@ import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs"; // Composabl
7
7
  import { IconValue } from "../../composables/icons.mjs";
8
8
  import { makeComponentProps } from "../../composables/component.mjs";
9
9
  import { makeDensityProps } from "../../composables/density.mjs"; // Utility
10
- import { genericComponent, useRender } from "../../util/index.mjs";
10
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
11
+ export const makeCardItemProps = propsFactory({
12
+ appendAvatar: String,
13
+ appendIcon: IconValue,
14
+ prependAvatar: String,
15
+ prependIcon: IconValue,
16
+ subtitle: String,
17
+ title: String,
18
+ ...makeComponentProps(),
19
+ ...makeDensityProps()
20
+ }, 'v-card-item');
11
21
  export const VCardItem = genericComponent()({
12
22
  name: 'VCardItem',
13
- props: {
14
- appendAvatar: String,
15
- appendIcon: IconValue,
16
- prependAvatar: String,
17
- prependIcon: IconValue,
18
- subtitle: String,
19
- title: String,
20
- ...makeComponentProps(),
21
- ...makeDensityProps()
22
- },
23
+ props: makeCardItemProps(),
23
24
  setup(props, _ref) {
24
25
  let {
25
26
  slots
@@ -1 +1 @@
1
- {"version":3,"file":"VCardItem.mjs","names":["VAvatar","VCardSubtitle","VCardTitle","VDefaultsProvider","IconValue","makeComponentProps","makeDensityProps","genericComponent","useRender","VCardItem","name","props","appendAvatar","String","appendIcon","prependAvatar","prependIcon","subtitle","title","setup","_ref","slots","hasPrependMedia","hasPrepend","prepend","hasAppendMedia","hasAppend","append","hasTitle","hasSubtitle","_createVNode","class","style","density","icon","image","default"],"sources":["../../../src/components/VCard/VCardItem.tsx"],"sourcesContent":["// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCardSubtitle } from './VCardSubtitle'\nimport { VCardTitle } from './VCardTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\n\n// Utility\nimport { genericComponent, useRender } from '@/util'\n\nexport type VCardItemSlots = {\n default: []\n prepend: []\n append: []\n title: []\n subtitle: []\n}\n\nexport const VCardItem = genericComponent<VCardItemSlots>()({\n name: 'VCardItem',\n\n props: {\n appendAvatar: String,\n appendIcon: IconValue,\n prependAvatar: String,\n prependIcon: IconValue,\n subtitle: String,\n title: String,\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n },\n\n setup (props, { slots }) {\n useRender(() => {\n const hasPrependMedia = !!(props.prependAvatar || props.prependIcon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n const hasAppendMedia = !!(props.appendAvatar || props.appendIcon)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasTitle = !!(props.title || slots.title)\n const hasSubtitle = !!(props.subtitle || slots.subtitle)\n\n return (\n <div\n class={[\n 'v-card-item',\n props.class,\n ]}\n style={ props.style }\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-card-item__prepend\">\n { !slots.prepend ? (\n hasPrependMedia && (\n <VAvatar\n key=\"prepend-avatar\"\n density={ props.density }\n icon={ props.prependIcon }\n image={ props.prependAvatar }\n />\n )\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.prependIcon,\n image: props.prependAvatar,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-card-item__content\">\n { hasTitle && (\n <VCardTitle key=\"title\">\n { slots.title?.() ?? props.title }\n </VCardTitle>\n )}\n\n { hasSubtitle && (\n <VCardSubtitle key=\"subtitle\">\n { slots.subtitle?.() ?? props.subtitle }\n </VCardSubtitle>\n )}\n\n { slots.default?.() }\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-card-item__append\">\n { !slots.append ? (\n hasAppendMedia && (\n <VAvatar\n key=\"append-avatar\"\n density={ props.density }\n icon={ props.appendIcon }\n image={ props.appendAvatar }\n />\n )\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.appendIcon,\n image: props.appendAvatar,\n },\n }}\n v-slots:default={ slots.append }\n />\n )}\n </div>\n )}\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VCardItem = InstanceType<typeof VCardItem>\n"],"mappings":";AAAA;AAAA,SACSA,OAAO;AAAA,SACPC,aAAa;AAAA,SACbC,UAAU;AAAA,SACVC,iBAAiB,0CAE1B;AAAA,SACSC,SAAS;AAAA,SACTC,kBAAkB;AAAA,SAClBC,gBAAgB,yCAEzB;AAAA,SACSC,gBAAgB,EAAEC,SAAS;AAUpC,OAAO,MAAMC,SAAS,GAAGF,gBAAgB,EAAkB,CAAC;EAC1DG,IAAI,EAAE,WAAW;EAEjBC,KAAK,EAAE;IACLC,YAAY,EAAEC,MAAM;IACpBC,UAAU,EAAEV,SAAS;IACrBW,aAAa,EAAEF,MAAM;IACrBG,WAAW,EAAEZ,SAAS;IACtBa,QAAQ,EAAEJ,MAAM;IAChBK,KAAK,EAAEL,MAAM;IAEb,GAAGR,kBAAkB,EAAE;IACvB,GAAGC,gBAAgB;EACrB,CAAC;EAEDa,KAAKA,CAAER,KAAK,EAAAS,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBZ,SAAS,CAAC,MAAM;MACd,MAAMc,eAAe,GAAG,CAAC,EAAEX,KAAK,CAACI,aAAa,IAAIJ,KAAK,CAACK,WAAW,CAAC;MACpE,MAAMO,UAAU,GAAG,CAAC,EAAED,eAAe,IAAID,KAAK,CAACG,OAAO,CAAC;MACvD,MAAMC,cAAc,GAAG,CAAC,EAAEd,KAAK,CAACC,YAAY,IAAID,KAAK,CAACG,UAAU,CAAC;MACjE,MAAMY,SAAS,GAAG,CAAC,EAAED,cAAc,IAAIJ,KAAK,CAACM,MAAM,CAAC;MACpD,MAAMC,QAAQ,GAAG,CAAC,EAAEjB,KAAK,CAACO,KAAK,IAAIG,KAAK,CAACH,KAAK,CAAC;MAC/C,MAAMW,WAAW,GAAG,CAAC,EAAElB,KAAK,CAACM,QAAQ,IAAII,KAAK,CAACJ,QAAQ,CAAC;MAExD,OAAAa,YAAA;QAAA,SAEW,CACL,aAAa,EACbnB,KAAK,CAACoB,KAAK,CACZ;QAAA,SACOpB,KAAK,CAACqB;MAAK,IAEjBT,UAAU,IAAAO,YAAA;QAAA,OACD,SAAS;QAAA,SAAO;MAAsB,IAC3C,CAACT,KAAK,CAACG,OAAO,GACdF,eAAe,IAAAQ,YAAA,CAAA9B,OAAA;QAAA,OAEP,gBAAgB;QAAA,WACVW,KAAK,CAACsB,OAAO;QAAA,QAChBtB,KAAK,CAACK,WAAW;QAAA,SAChBL,KAAK,CAACI;MAAa,QAE9B,GAAAe,YAAA,CAAA3B,iBAAA;QAAA,OAGK,kBAAkB;QAAA,YACX,CAACmB,eAAe;QAAA,YACjB;UACRtB,OAAO,EAAE;YACPiC,OAAO,EAAEtB,KAAK,CAACsB,OAAO;YACtBC,IAAI,EAAEvB,KAAK,CAACK,WAAW;YACvBmB,KAAK,EAAExB,KAAK,CAACI;UACf;QACF;MAAC,GACiBM,KAAK,CAACG,OAAO,CAElC,EAEJ,EAAAM,YAAA;QAAA,SAEU;MAAsB,IAC7BF,QAAQ,IAAAE,YAAA,CAAA5B,UAAA;QAAA,OACQ;MAAO;QAAAkC,OAAA,EAAAA,CAAA,MACnBf,KAAK,CAACH,KAAK,IAAI,IAAIP,KAAK,CAACO,KAAK;MAAA,EAEnC,EAECW,WAAW,IAAAC,YAAA,CAAA7B,aAAA;QAAA,OACQ;MAAU;QAAAmC,OAAA,EAAAA,CAAA,MACzBf,KAAK,CAACJ,QAAQ,IAAI,IAAIN,KAAK,CAACM,QAAQ;MAAA,EAEzC,EAECI,KAAK,CAACe,OAAO,IAAI,IAGnBV,SAAS,IAAAI,YAAA;QAAA,OACA,QAAQ;QAAA,SAAO;MAAqB,IACzC,CAACT,KAAK,CAACM,MAAM,GACbF,cAAc,IAAAK,YAAA,CAAA9B,OAAA;QAAA,OAEN,eAAe;QAAA,WACTW,KAAK,CAACsB,OAAO;QAAA,QAChBtB,KAAK,CAACG,UAAU;QAAA,SACfH,KAAK,CAACC;MAAY,QAE7B,GAAAkB,YAAA,CAAA3B,iBAAA;QAAA,OAGK,iBAAiB;QAAA,YACV,CAACsB,cAAc;QAAA,YAChB;UACRzB,OAAO,EAAE;YACPiC,OAAO,EAAEtB,KAAK,CAACsB,OAAO;YACtBC,IAAI,EAAEvB,KAAK,CAACG,UAAU;YACtBqB,KAAK,EAAExB,KAAK,CAACC;UACf;QACF;MAAC,GACiBS,KAAK,CAACM,MAAM,CAEjC,EAEJ;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VCardItem.mjs","names":["VAvatar","VCardSubtitle","VCardTitle","VDefaultsProvider","IconValue","makeComponentProps","makeDensityProps","genericComponent","propsFactory","useRender","makeCardItemProps","appendAvatar","String","appendIcon","prependAvatar","prependIcon","subtitle","title","VCardItem","name","props","setup","_ref","slots","hasPrependMedia","hasPrepend","prepend","hasAppendMedia","hasAppend","append","hasTitle","hasSubtitle","_createVNode","class","style","density","icon","image","default"],"sources":["../../../src/components/VCard/VCardItem.tsx"],"sourcesContent":["// Components\nimport { VAvatar } from '@/components/VAvatar'\nimport { VCardSubtitle } from './VCardSubtitle'\nimport { VCardTitle } from './VCardTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps } from '@/composables/density'\n\n// Utility\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport type VCardItemSlots = {\n default: []\n prepend: []\n append: []\n title: []\n subtitle: []\n}\n\nexport const makeCardItemProps = propsFactory({\n appendAvatar: String,\n appendIcon: IconValue,\n prependAvatar: String,\n prependIcon: IconValue,\n subtitle: String,\n title: String,\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n}, 'v-card-item')\n\nexport const VCardItem = genericComponent<VCardItemSlots>()({\n name: 'VCardItem',\n\n props: makeCardItemProps(),\n\n setup (props, { slots }) {\n useRender(() => {\n const hasPrependMedia = !!(props.prependAvatar || props.prependIcon)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n const hasAppendMedia = !!(props.appendAvatar || props.appendIcon)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasTitle = !!(props.title || slots.title)\n const hasSubtitle = !!(props.subtitle || slots.subtitle)\n\n return (\n <div\n class={[\n 'v-card-item',\n props.class,\n ]}\n style={ props.style }\n >\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-card-item__prepend\">\n { !slots.prepend ? (\n hasPrependMedia && (\n <VAvatar\n key=\"prepend-avatar\"\n density={ props.density }\n icon={ props.prependIcon }\n image={ props.prependAvatar }\n />\n )\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.prependIcon,\n image: props.prependAvatar,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-card-item__content\">\n { hasTitle && (\n <VCardTitle key=\"title\">\n { slots.title?.() ?? props.title }\n </VCardTitle>\n )}\n\n { hasSubtitle && (\n <VCardSubtitle key=\"subtitle\">\n { slots.subtitle?.() ?? props.subtitle }\n </VCardSubtitle>\n )}\n\n { slots.default?.() }\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-card-item__append\">\n { !slots.append ? (\n hasAppendMedia && (\n <VAvatar\n key=\"append-avatar\"\n density={ props.density }\n icon={ props.appendIcon }\n image={ props.appendAvatar }\n />\n )\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n density: props.density,\n icon: props.appendIcon,\n image: props.appendAvatar,\n },\n }}\n v-slots:default={ slots.append }\n />\n )}\n </div>\n )}\n </div>\n )\n })\n\n return {}\n },\n})\n\nexport type VCardItem = InstanceType<typeof VCardItem>\n"],"mappings":"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"}
@@ -1,7 +1,9 @@
1
- // @ts-ignore
2
- import * as vue_router from 'vue-router';
3
1
  import * as vue from 'vue';
4
2
  import { ComponentPropsOptions, ExtractPropTypes, JSXComponent, PropType } from 'vue';
3
+ // @ts-ignore
4
+ import * as vue_router from 'vue-router';
5
+
6
+ type Density = null | 'default' | 'comfortable' | 'compact';
5
7
 
6
8
  declare const block: readonly ["top", "bottom"];
7
9
  declare const inline: readonly ["start", "end", "left", "right"];
@@ -13,8 +15,6 @@ interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions
13
15
  filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): [yes: Partial<Pick<T, U>>, no: Omit<T, U>];
14
16
  }
15
17
 
16
- type Density = null | 'default' | 'comfortable' | 'compact';
17
-
18
18
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
19
19
  declare const IconValue: PropType<IconValue>;
20
20
 
@@ -10,39 +10,40 @@ import { VProgressLinear } from "../VProgressLinear/index.mjs"; // Composables
10
10
  import { IconValue } from "../../composables/icons.mjs";
11
11
  import { useLocale } from "../../composables/locale.mjs";
12
12
  import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Utilities
13
- import { convertToUnit, genericComponent, useRender } from "../../util/index.mjs";
13
+ import { convertToUnit, genericComponent, propsFactory, useRender } from "../../util/index.mjs";
14
14
  import { onMounted, ref, watch } from 'vue';
15
15
 
16
16
  // Types
17
17
 
18
+ export const makeVCarouselProps = propsFactory({
19
+ color: String,
20
+ cycle: Boolean,
21
+ delimiterIcon: {
22
+ type: IconValue,
23
+ default: '$delimiter'
24
+ },
25
+ height: {
26
+ type: [Number, String],
27
+ default: 500
28
+ },
29
+ hideDelimiters: Boolean,
30
+ hideDelimiterBackground: Boolean,
31
+ interval: {
32
+ type: [Number, String],
33
+ default: 6000,
34
+ validator: value => Number(value) > 0
35
+ },
36
+ progress: [Boolean, String],
37
+ verticalDelimiters: [Boolean, String],
38
+ ...makeVWindowProps({
39
+ continuous: true,
40
+ mandatory: 'force',
41
+ showArrows: true
42
+ })
43
+ }, 'v-carousel');
18
44
  export const VCarousel = genericComponent()({
19
45
  name: 'VCarousel',
20
- props: {
21
- color: String,
22
- cycle: Boolean,
23
- delimiterIcon: {
24
- type: IconValue,
25
- default: '$delimiter'
26
- },
27
- height: {
28
- type: [Number, String],
29
- default: 500
30
- },
31
- hideDelimiters: Boolean,
32
- hideDelimiterBackground: Boolean,
33
- interval: {
34
- type: [Number, String],
35
- default: 6000,
36
- validator: value => Number(value) > 0
37
- },
38
- progress: [Boolean, String],
39
- verticalDelimiters: [Boolean, String],
40
- ...makeVWindowProps({
41
- continuous: true,
42
- mandatory: 'force',
43
- showArrows: true
44
- })
45
- },
46
+ props: makeVCarouselProps(),
46
47
  emits: {
47
48
  'update:modelValue': val => true
48
49
  },
@@ -1 +1 @@
1
- {"version":3,"file":"VCarousel.mjs","names":["makeVWindowProps","VWindow","VBtn","VDefaultsProvider","VProgressLinear","IconValue","useLocale","useProxiedModel","convertToUnit","genericComponent","useRender","onMounted","ref","watch","VCarousel","name","props","color","String","cycle","Boolean","delimiterIcon","type","default","height","Number","hideDelimiters","hideDelimiterBackground","interval","validator","value","progress","verticalDelimiters","continuous","mandatory","showArrows","emits","val","setup","_ref","slots","model","t","windowRef","slideTimeout","restartTimeout","window","clearTimeout","startTimeout","setTimeout","group","next","requestAnimationFrame","_createVNode","$event","class","style","additional","_ref2","_Fragment","left","right","items","length","icon","size","variant","map","item","index","id","isSelected","onClick","select","_mergeProps","undefined","getItemIndex","prev"],"sources":["../../../src/components/VCarousel/VCarousel.tsx"],"sourcesContent":["// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { convertToUnit, genericComponent, useRender } from '@/util'\nimport { onMounted, ref, watch } from 'vue'\n\n// Types\nimport type { GroupProvide } from '@/composables/group'\nimport type { PropType } from 'vue'\nimport type { VWindowSlots } from '../VWindow/VWindow'\n\nexport const VCarousel = genericComponent<VWindowSlots>()({\n name: 'VCarousel',\n\n props: {\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: IconValue,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => Number(value) > 0,\n },\n progress: [Boolean, String],\n verticalDelimiters: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n\n ...makeVWindowProps({\n continuous: true,\n mandatory: 'force' as const,\n showArrows: true,\n }),\n },\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref<typeof VWindow>()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(windowRef.value.group.next, +props.interval > 0 ? +props.interval : 6000)\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => (\n <VWindow\n ref={ windowRef }\n v-model={ model.value }\n class={[\n 'v-carousel',\n {\n 'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,\n 'v-carousel--vertical-delimiters': props.verticalDelimiters,\n },\n props.class,\n ]}\n style={[\n { height: convertToUnit(props.height) },\n props.style,\n ]}\n continuous\n mandatory=\"force\"\n showArrows={ props.showArrows }\n >\n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n <div\n class=\"v-carousel__controls\"\n style={{\n left: props.verticalDelimiters === 'left' && props.verticalDelimiters ? 0 : 'auto',\n right: props.verticalDelimiters === 'right' ? 0 : 'auto',\n }}\n >\n { group.items.value.length > 0 && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n color: props.color,\n icon: props.delimiterIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n scoped\n >\n { group.items.value.map((item, index) => {\n const props = {\n id: `carousel-item-${item.id}`,\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),\n class: [group.isSelected(item.id) && 'v-btn--active'],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : (<VBtn { ...item } { ...props } />)\n })}\n </VDefaultsProvider>\n )}\n </div>\n )}\n\n { props.progress && (\n <VProgressLinear\n class=\"v-carousel__progress\"\n color={ typeof props.progress === 'string' ? props.progress : undefined }\n modelValue={ (group.getItemIndex(model.value) + 1) / group.items.value.length * 100 }\n />\n )}\n </>\n ),\n prev: slots.prev,\n next: slots.next,\n }}\n </VWindow>\n ))\n\n return {}\n },\n})\n\nexport type VCarousel = InstanceType<typeof VCarousel>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VCarousel.mjs","names":["makeVWindowProps","VWindow","VBtn","VDefaultsProvider","VProgressLinear","IconValue","useLocale","useProxiedModel","convertToUnit","genericComponent","propsFactory","useRender","onMounted","ref","watch","makeVCarouselProps","color","String","cycle","Boolean","delimiterIcon","type","default","height","Number","hideDelimiters","hideDelimiterBackground","interval","validator","value","progress","verticalDelimiters","continuous","mandatory","showArrows","VCarousel","name","props","emits","val","setup","_ref","slots","model","t","windowRef","slideTimeout","restartTimeout","window","clearTimeout","startTimeout","setTimeout","group","next","requestAnimationFrame","_createVNode","$event","class","style","additional","_ref2","_Fragment","left","right","items","length","icon","size","variant","map","item","index","id","isSelected","onClick","select","_mergeProps","undefined","getItemIndex","prev"],"sources":["../../../src/components/VCarousel/VCarousel.tsx"],"sourcesContent":["// Styles\nimport './VCarousel.sass'\n\n// Components\nimport { makeVWindowProps, VWindow } from '@/components/VWindow/VWindow'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VProgressLinear } from '@/components/VProgressLinear'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { convertToUnit, genericComponent, propsFactory, useRender } from '@/util'\nimport { onMounted, ref, watch } from 'vue'\n\n// Types\nimport type { GroupProvide } from '@/composables/group'\nimport type { PropType } from 'vue'\nimport type { VWindowSlots } from '../VWindow/VWindow'\n\nexport const makeVCarouselProps = propsFactory({\n color: String,\n cycle: Boolean,\n delimiterIcon: {\n type: IconValue,\n default: '$delimiter',\n },\n height: {\n type: [Number, String],\n default: 500,\n },\n hideDelimiters: Boolean,\n hideDelimiterBackground: Boolean,\n interval: {\n type: [Number, String],\n default: 6000,\n validator: (value: string | number) => Number(value) > 0,\n },\n progress: [Boolean, String],\n verticalDelimiters: [Boolean, String] as PropType<boolean | 'left' | 'right'>,\n\n ...makeVWindowProps({\n continuous: true,\n mandatory: 'force' as const,\n showArrows: true,\n }),\n}, 'v-carousel')\n\nexport const VCarousel = genericComponent<VWindowSlots>()({\n name: 'VCarousel',\n\n props: makeVCarouselProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { t } = useLocale()\n const windowRef = ref<typeof VWindow>()\n\n let slideTimeout = -1\n watch(model, restartTimeout)\n watch(() => props.interval, restartTimeout)\n watch(() => props.cycle, val => {\n if (val) restartTimeout()\n else window.clearTimeout(slideTimeout)\n })\n\n onMounted(startTimeout)\n\n function startTimeout () {\n if (!props.cycle || !windowRef.value) return\n\n slideTimeout = window.setTimeout(windowRef.value.group.next, +props.interval > 0 ? +props.interval : 6000)\n }\n\n function restartTimeout () {\n window.clearTimeout(slideTimeout)\n window.requestAnimationFrame(startTimeout)\n }\n\n useRender(() => (\n <VWindow\n ref={ windowRef }\n v-model={ model.value }\n class={[\n 'v-carousel',\n {\n 'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,\n 'v-carousel--vertical-delimiters': props.verticalDelimiters,\n },\n props.class,\n ]}\n style={[\n { height: convertToUnit(props.height) },\n props.style,\n ]}\n continuous\n mandatory=\"force\"\n showArrows={ props.showArrows }\n >\n {{\n default: slots.default,\n additional: ({ group }: { group: GroupProvide }) => (\n <>\n { !props.hideDelimiters && (\n <div\n class=\"v-carousel__controls\"\n style={{\n left: props.verticalDelimiters === 'left' && props.verticalDelimiters ? 0 : 'auto',\n right: props.verticalDelimiters === 'right' ? 0 : 'auto',\n }}\n >\n { group.items.value.length > 0 && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n color: props.color,\n icon: props.delimiterIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n scoped\n >\n { group.items.value.map((item, index) => {\n const props = {\n id: `carousel-item-${item.id}`,\n 'aria-label': t('$vuetify.carousel.ariaLabel.delimiter', index + 1, group.items.value.length),\n class: [group.isSelected(item.id) && 'v-btn--active'],\n onClick: () => group.select(item.id, true),\n }\n\n return slots.item\n ? slots.item({ props, item })\n : (<VBtn { ...item } { ...props } />)\n })}\n </VDefaultsProvider>\n )}\n </div>\n )}\n\n { props.progress && (\n <VProgressLinear\n class=\"v-carousel__progress\"\n color={ typeof props.progress === 'string' ? props.progress : undefined }\n modelValue={ (group.getItemIndex(model.value) + 1) / group.items.value.length * 100 }\n />\n )}\n </>\n ),\n prev: slots.prev,\n next: slots.next,\n }}\n </VWindow>\n ))\n\n return {}\n },\n})\n\nexport type VCarousel = InstanceType<typeof VCarousel>\n"],"mappings":"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"}
@@ -1,28 +1,30 @@
1
- import { createVNode as _createVNode, resolveDirective as _resolveDirective } from "vue";
1
+ import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirective as _resolveDirective } from "vue";
2
2
  // Components
3
- import { VImg } from "../VImg/index.mjs";
4
- import { VWindowItem } from "../VWindow/index.mjs"; // Composables
5
- import { makeComponentProps } from "../../composables/component.mjs"; // Utilities
6
- import { genericComponent, useRender } from "../../util/index.mjs"; // Types
3
+ import { makeVImgProps, VImg } from "../VImg/VImg.mjs";
4
+ import { makeVWindowItemProps, VWindowItem } from "../VWindow/VWindowItem.mjs"; // Utilities
5
+ import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
6
+ export const makeVCarouselItemProps = propsFactory({
7
+ ...makeVImgProps(),
8
+ ...makeVWindowItemProps()
9
+ }, 'v-carousel-item');
7
10
  export const VCarouselItem = genericComponent()({
8
11
  name: 'VCarouselItem',
9
12
  inheritAttrs: false,
10
- props: {
11
- value: null,
12
- ...makeComponentProps()
13
- },
13
+ props: makeVCarouselItemProps(),
14
14
  setup(props, _ref) {
15
15
  let {
16
16
  slots,
17
17
  attrs
18
18
  } = _ref;
19
- useRender(() => _createVNode(VWindowItem, {
20
- "class": ['v-carousel-item', props.class],
21
- "style": props.style,
22
- "value": props.value
23
- }, {
24
- default: () => [_createVNode(VImg, attrs, slots)]
25
- }));
19
+ useRender(() => {
20
+ const [imgProps] = VImg.filterProps(props);
21
+ const [windowItemProps] = VWindowItem.filterProps(props);
22
+ return _createVNode(VWindowItem, _mergeProps({
23
+ "class": "v-carousel-item"
24
+ }, windowItemProps), {
25
+ default: () => [_createVNode(VImg, _mergeProps(attrs, imgProps), slots)]
26
+ });
27
+ });
26
28
  }
27
29
  });
28
30
  //# sourceMappingURL=VCarouselItem.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"VCarouselItem.mjs","names":["VImg","VWindowItem","makeComponentProps","genericComponent","useRender","VCarouselItem","name","inheritAttrs","props","value","setup","_ref","slots","attrs","_createVNode","class","style","default"],"sources":["../../../src/components/VCarousel/VCarouselItem.tsx"],"sourcesContent":["// Components\nimport { VImg } from '@/components/VImg'\nimport { VWindowItem } from '@/components/VWindow'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\n\n// Utilities\nimport { genericComponent, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nexport const VCarouselItem = genericComponent<VImgSlots>()({\n name: 'VCarouselItem',\n\n inheritAttrs: false,\n\n props: {\n value: null,\n\n ...makeComponentProps(),\n },\n\n setup (props, { slots, attrs }) {\n useRender(() => (\n <VWindowItem\n class={[\n 'v-carousel-item',\n props.class,\n ]}\n style={ props.style }\n value={ props.value }\n >\n <VImg { ...attrs } v-slots={ slots } />\n </VWindowItem>\n ))\n },\n})\n\nexport type VCarouselItem = InstanceType<typeof VCarouselItem>\n"],"mappings":";AAAA;AAAA,SACSA,IAAI;AAAA,SACJC,WAAW,gCAEpB;AAAA,SACSC,kBAAkB,2CAE3B;AAAA,SACSC,gBAAgB,EAAEC,SAAS,gCAEpC;AAGA,OAAO,MAAMC,aAAa,GAAGF,gBAAgB,EAAa,CAAC;EACzDG,IAAI,EAAE,eAAe;EAErBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAE;IACLC,KAAK,EAAE,IAAI;IAEX,GAAGP,kBAAkB;EACvB,CAAC;EAEDQ,KAAKA,CAAEF,KAAK,EAAAG,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5BP,SAAS,CAAC,MAAAU,YAAA,CAAAb,WAAA;MAAA,SAEC,CACL,iBAAiB,EACjBO,KAAK,CAACO,KAAK,CACZ;MAAA,SACOP,KAAK,CAACQ,KAAK;MAAA,SACXR,KAAK,CAACC;IAAK;MAAAQ,OAAA,EAAAA,CAAA,MAAAH,YAAA,CAAAd,IAAA,EAERa,KAAK,EAAaD,KAAK;IAAA,EAErC,CAAC;EACJ;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VCarouselItem.mjs","names":["makeVImgProps","VImg","makeVWindowItemProps","VWindowItem","genericComponent","propsFactory","useRender","makeVCarouselItemProps","VCarouselItem","name","inheritAttrs","props","setup","_ref","slots","attrs","imgProps","filterProps","windowItemProps","_createVNode","_mergeProps","default"],"sources":["../../../src/components/VCarousel/VCarouselItem.tsx"],"sourcesContent":["// Components\nimport { makeVImgProps, VImg } from '@/components/VImg/VImg'\nimport { makeVWindowItemProps, VWindowItem } from '@/components/VWindow/VWindowItem'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VImgSlots } from '@/components/VImg/VImg'\n\nexport const makeVCarouselItemProps = propsFactory({\n ...makeVImgProps(),\n ...makeVWindowItemProps(),\n}, 'v-carousel-item')\n\nexport const VCarouselItem = genericComponent<VImgSlots>()({\n name: 'VCarouselItem',\n\n inheritAttrs: false,\n\n props: makeVCarouselItemProps(),\n\n setup (props, { slots, attrs }) {\n useRender(() => {\n const [imgProps] = VImg.filterProps(props)\n const [windowItemProps] = VWindowItem.filterProps(props)\n\n return (\n <VWindowItem\n class=\"v-carousel-item\"\n { ...windowItemProps }\n >\n <VImg\n { ...attrs }\n { ...imgProps }\n v-slots={ slots }\n />\n </VWindowItem>\n )\n })\n },\n})\n\nexport type VCarouselItem = InstanceType<typeof VCarouselItem>\n"],"mappings":";AAAA;AAAA,SACSA,aAAa,EAAEC,IAAI;AAAA,SACnBC,oBAAoB,EAAEC,WAAW,sCAE1C;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA,OAAO,MAAMC,sBAAsB,GAAGF,YAAY,CAAC;EACjD,GAAGL,aAAa,EAAE;EAClB,GAAGE,oBAAoB;AACzB,CAAC,EAAE,iBAAiB,CAAC;AAErB,OAAO,MAAMM,aAAa,GAAGJ,gBAAgB,EAAa,CAAC;EACzDK,IAAI,EAAE,eAAe;EAErBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAEJ,sBAAsB,EAAE;EAE/BK,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5BP,SAAS,CAAC,MAAM;MACd,MAAM,CAACU,QAAQ,CAAC,GAAGf,IAAI,CAACgB,WAAW,CAACN,KAAK,CAAC;MAC1C,MAAM,CAACO,eAAe,CAAC,GAAGf,WAAW,CAACc,WAAW,CAACN,KAAK,CAAC;MAExD,OAAAQ,YAAA,CAAAhB,WAAA,EAAAiB,WAAA;QAAA,SAEU;MAAiB,GAClBF,eAAe;QAAAG,OAAA,EAAAA,CAAA,MAAAF,YAAA,CAAAlB,IAAA,EAAAmB,WAAA,CAGbL,KAAK,EACLC,QAAQ,GACHF,KAAK;MAAA;IAIvB,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}