vuetify 3.8.1 → 3.8.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 (312) hide show
  1. package/dist/json/attributes.json +2066 -2066
  2. package/dist/json/importMap-labs.json +26 -26
  3. package/dist/json/importMap.json +164 -164
  4. package/dist/json/web-types.json +4116 -3862
  5. package/dist/vuetify-labs.cjs +784 -697
  6. package/dist/vuetify-labs.css +3174 -3162
  7. package/dist/vuetify-labs.d.ts +2103 -1144
  8. package/dist/vuetify-labs.esm.js +785 -698
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +784 -697
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.cjs +565 -590
  13. package/dist/vuetify.cjs.map +1 -1
  14. package/dist/vuetify.css +2963 -2960
  15. package/dist/vuetify.d.ts +190 -169
  16. package/dist/vuetify.esm.js +566 -591
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +565 -590
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +1264 -1235
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/blueprints/md3.js +18 -5
  24. package/lib/blueprints/md3.js.map +1 -1
  25. package/lib/components/VAlert/VAlert.js +8 -9
  26. package/lib/components/VAlert/VAlert.js.map +1 -1
  27. package/lib/components/VAppBar/VAppBar.js +4 -4
  28. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  29. package/lib/components/VAutocomplete/VAutocomplete.js +1 -2
  30. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  31. package/lib/components/VBadge/VBadge.js +2 -3
  32. package/lib/components/VBadge/VBadge.js.map +1 -1
  33. package/lib/components/VBanner/VBanner.js +3 -3
  34. package/lib/components/VBanner/VBanner.js.map +1 -1
  35. package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -8
  36. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  37. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +6 -6
  38. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  39. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +1 -2
  40. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  41. package/lib/components/VBtn/VBtn.js +3 -3
  42. package/lib/components/VBtn/VBtn.js.map +1 -1
  43. package/lib/components/VBtnGroup/VBtnGroup.js +4 -4
  44. package/lib/components/VBtnGroup/VBtnGroup.js.map +1 -1
  45. package/lib/components/VCard/VCard.js +7 -8
  46. package/lib/components/VCard/VCard.js.map +1 -1
  47. package/lib/components/VCheckbox/VCheckbox.js +2 -3
  48. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  49. package/lib/components/VCheckbox/VCheckboxBtn.js +3 -3
  50. package/lib/components/VCheckbox/VCheckboxBtn.js.map +1 -1
  51. package/lib/components/VChip/VChip.js +8 -9
  52. package/lib/components/VChip/VChip.js.map +1 -1
  53. package/lib/components/VChipGroup/VChipGroup.js +5 -5
  54. package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
  55. package/lib/components/VCode/VCode.css +3 -0
  56. package/lib/components/VCode/VCode.sass +3 -0
  57. package/lib/components/VCombobox/VCombobox.js +3 -4
  58. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  59. package/lib/components/VCounter/VCounter.js +2 -2
  60. package/lib/components/VCounter/VCounter.js.map +1 -1
  61. package/lib/components/VDataIterator/VDataIterator.js +2 -2
  62. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  63. package/lib/components/VDataTable/VDataTable.css +1 -1
  64. package/lib/components/VDataTable/VDataTable.js +7 -7
  65. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  66. package/lib/components/VDataTable/VDataTable.sass +1 -1
  67. package/lib/components/VDataTable/VDataTableHeaders.js +1 -1
  68. package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
  69. package/lib/components/VDataTable/VDataTableServer.js +7 -7
  70. package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
  71. package/lib/components/VDataTable/VDataTableVirtual.js +7 -7
  72. package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
  73. package/lib/components/VDataTable/composables/expand.d.ts +1 -1
  74. package/lib/components/VDataTable/composables/expand.js +1 -1
  75. package/lib/components/VDataTable/composables/expand.js.map +1 -1
  76. package/lib/components/VDataTable/composables/options.js +8 -8
  77. package/lib/components/VDataTable/composables/options.js.map +1 -1
  78. package/lib/components/VDataTable/composables/select.d.ts +2 -2
  79. package/lib/components/VDataTable/composables/select.js +2 -2
  80. package/lib/components/VDataTable/composables/select.js.map +1 -1
  81. package/lib/components/VDataTable/composables/sort.d.ts +2 -2
  82. package/lib/components/VDataTable/composables/sort.js +2 -2
  83. package/lib/components/VDataTable/composables/sort.js.map +1 -1
  84. package/lib/components/VDatePicker/VDatePicker.d.ts +7 -7
  85. package/lib/components/VDatePicker/VDatePicker.js +4 -4
  86. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  87. package/lib/components/VDatePicker/VDatePickerHeader.js +1 -1
  88. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  89. package/lib/components/VDatePicker/VDatePickerMonth.d.ts +7 -7
  90. package/lib/components/VDatePicker/VDatePickerMonth.js +2 -2
  91. package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
  92. package/lib/components/VDialog/VDialog.d.ts +9 -9
  93. package/lib/components/VDivider/VDivider.js +2 -2
  94. package/lib/components/VDivider/VDivider.js.map +1 -1
  95. package/lib/components/VEmptyState/VEmptyState.js +1 -2
  96. package/lib/components/VEmptyState/VEmptyState.js.map +1 -1
  97. package/lib/components/VExpansionPanel/VExpansionPanel.js +3 -3
  98. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  99. package/lib/components/VExpansionPanel/VExpansionPanelTitle.js +3 -3
  100. package/lib/components/VExpansionPanel/VExpansionPanelTitle.js.map +1 -1
  101. package/lib/components/VExpansionPanel/VExpansionPanels.js +14 -14
  102. package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  103. package/lib/components/VFab/VFab.js +2 -2
  104. package/lib/components/VFab/VFab.js.map +1 -1
  105. package/lib/components/VField/VField.js +5 -5
  106. package/lib/components/VField/VField.js.map +1 -1
  107. package/lib/components/VFileInput/VFileInput.js +2 -2
  108. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  109. package/lib/components/VFooter/VFooter.js +4 -4
  110. package/lib/components/VFooter/VFooter.js.map +1 -1
  111. package/lib/components/VForm/VForm.d.ts +40 -40
  112. package/lib/components/VIcon/VIcon.js +4 -4
  113. package/lib/components/VIcon/VIcon.js.map +1 -1
  114. package/lib/components/VImg/VImg.js +2 -2
  115. package/lib/components/VImg/VImg.js.map +1 -1
  116. package/lib/components/VInput/VInput.js +3 -3
  117. package/lib/components/VInput/VInput.js.map +1 -1
  118. package/lib/components/VLayout/VLayoutItem.js +5 -5
  119. package/lib/components/VLayout/VLayoutItem.js.map +1 -1
  120. package/lib/components/VList/VList.js +14 -14
  121. package/lib/components/VList/VList.js.map +1 -1
  122. package/lib/components/VList/VListGroup.js +2 -2
  123. package/lib/components/VList/VListGroup.js.map +1 -1
  124. package/lib/components/VList/VListItem.d.ts +3 -3
  125. package/lib/components/VList/VListItem.js +6 -6
  126. package/lib/components/VList/VListItem.js.map +1 -1
  127. package/lib/components/VList/VListSubheader.js +1 -2
  128. package/lib/components/VList/VListSubheader.js.map +1 -1
  129. package/lib/components/VMenu/VMenu.d.ts +15 -15
  130. package/lib/components/VMenu/VMenu.js +2 -2
  131. package/lib/components/VMenu/VMenu.js.map +1 -1
  132. package/lib/components/VMessages/VMessages.js +1 -1
  133. package/lib/components/VMessages/VMessages.js.map +1 -1
  134. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +6 -6
  135. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  136. package/lib/components/VNumberInput/VNumberInput.js +11 -11
  137. package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
  138. package/lib/components/VOtpInput/VOtpInput.js +7 -7
  139. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  140. package/lib/components/VOverlay/VOverlay.d.ts +3 -3
  141. package/lib/components/VOverlay/VOverlay.js +4 -4
  142. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  143. package/lib/components/VOverlay/locationStrategies.d.ts +4 -0
  144. package/lib/components/VOverlay/locationStrategies.js +33 -4
  145. package/lib/components/VOverlay/locationStrategies.js.map +1 -1
  146. package/lib/components/VPagination/VPagination.js +7 -7
  147. package/lib/components/VPagination/VPagination.js.map +1 -1
  148. package/lib/components/VProgressCircular/VProgressCircular.js +9 -9
  149. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  150. package/lib/components/VProgressLinear/VProgressLinear.js +4 -4
  151. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  152. package/lib/components/VSelect/VSelect.js +3 -2
  153. package/lib/components/VSelect/VSelect.js.map +1 -1
  154. package/lib/components/VSelectionControl/VSelectionControl.d.ts +1 -1
  155. package/lib/components/VSelectionControl/VSelectionControl.js +7 -7
  156. package/lib/components/VSelectionControl/VSelectionControl.js.map +1 -1
  157. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js +15 -15
  158. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js.map +1 -1
  159. package/lib/components/VSheet/VSheet.js +1 -2
  160. package/lib/components/VSheet/VSheet.js.map +1 -1
  161. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +2 -2
  162. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  163. package/lib/components/VSlider/slider.js +10 -10
  164. package/lib/components/VSlider/slider.js.map +1 -1
  165. package/lib/components/VSnackbar/VSnackbar.d.ts +9 -9
  166. package/lib/components/VSparkline/VSparkline.js +2 -2
  167. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  168. package/lib/components/VSwitch/VSwitch.js +3 -3
  169. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  170. package/lib/components/VSystemBar/VSystemBar.js +2 -2
  171. package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
  172. package/lib/components/VTabs/VTab.d.ts +3 -3
  173. package/lib/components/VTabs/VTab.js +1 -1
  174. package/lib/components/VTabs/VTab.js.map +1 -1
  175. package/lib/components/VTabs/VTabs.js +7 -7
  176. package/lib/components/VTabs/VTabs.js.map +1 -1
  177. package/lib/components/VTimeline/VTimeline.js +9 -9
  178. package/lib/components/VTimeline/VTimeline.js.map +1 -1
  179. package/lib/components/VTimeline/VTimelineDivider.js +2 -3
  180. package/lib/components/VTimeline/VTimelineDivider.js.map +1 -1
  181. package/lib/components/VToolbar/VToolbar.js +2 -2
  182. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  183. package/lib/components/VToolbar/VToolbarItems.js +2 -2
  184. package/lib/components/VToolbar/VToolbarItems.js.map +1 -1
  185. package/lib/components/VTooltip/VTooltip.d.ts +9 -9
  186. package/lib/components/VTooltip/VTooltip.js +3 -3
  187. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  188. package/lib/components/VVirtualScroll/VVirtualScroll.js +1 -1
  189. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  190. package/lib/components/VWindow/VWindow.js +3 -3
  191. package/lib/components/VWindow/VWindow.js.map +1 -1
  192. package/lib/components/transitions/dialog-transition.js +11 -2
  193. package/lib/components/transitions/dialog-transition.js.map +1 -1
  194. package/lib/composables/border.d.ts +1 -1
  195. package/lib/composables/border.js +5 -8
  196. package/lib/composables/border.js.map +1 -1
  197. package/lib/composables/calendar.d.ts +23 -56
  198. package/lib/composables/calendar.js +16 -18
  199. package/lib/composables/calendar.js.map +1 -1
  200. package/lib/composables/color.d.ts +8 -10
  201. package/lib/composables/color.js +21 -22
  202. package/lib/composables/color.js.map +1 -1
  203. package/lib/composables/date/DateAdapter.d.ts +1 -0
  204. package/lib/composables/date/DateAdapter.js.map +1 -1
  205. package/lib/composables/date/adapters/vuetify.d.ts +1 -0
  206. package/lib/composables/date/adapters/vuetify.js +101 -160
  207. package/lib/composables/date/adapters/vuetify.js.map +1 -1
  208. package/lib/composables/date/date.d.ts +1 -1
  209. package/lib/composables/date/date.js +0 -20
  210. package/lib/composables/date/date.js.map +1 -1
  211. package/lib/composables/defaults.js +6 -3
  212. package/lib/composables/defaults.js.map +1 -1
  213. package/lib/composables/density.d.ts +1 -1
  214. package/lib/composables/density.js +2 -2
  215. package/lib/composables/density.js.map +1 -1
  216. package/lib/composables/display.d.ts +4 -2
  217. package/lib/composables/display.js +2 -2
  218. package/lib/composables/display.js.map +1 -1
  219. package/lib/composables/elevation.js +4 -6
  220. package/lib/composables/elevation.js.map +1 -1
  221. package/lib/composables/filter.js +2 -1
  222. package/lib/composables/filter.js.map +1 -1
  223. package/lib/composables/focus.d.ts +4 -2
  224. package/lib/composables/focus.js +2 -2
  225. package/lib/composables/focus.js.map +1 -1
  226. package/lib/composables/form.d.ts +7 -7
  227. package/lib/composables/form.js +3 -3
  228. package/lib/composables/form.js.map +1 -1
  229. package/lib/composables/goto.js +2 -2
  230. package/lib/composables/goto.js.map +1 -1
  231. package/lib/composables/group.d.ts +3 -3
  232. package/lib/composables/group.js +4 -4
  233. package/lib/composables/group.js.map +1 -1
  234. package/lib/composables/icons.d.ts +2 -2
  235. package/lib/composables/icons.js +2 -2
  236. package/lib/composables/icons.js.map +1 -1
  237. package/lib/composables/layout.d.ts +10 -4
  238. package/lib/composables/layout.js +4 -4
  239. package/lib/composables/layout.js.map +1 -1
  240. package/lib/composables/lazy.d.ts +1 -1
  241. package/lib/composables/lazy.js +2 -2
  242. package/lib/composables/lazy.js.map +1 -1
  243. package/lib/composables/loader.d.ts +4 -2
  244. package/lib/composables/loader.js +2 -2
  245. package/lib/composables/loader.js.map +1 -1
  246. package/lib/composables/locale.js +3 -3
  247. package/lib/composables/locale.js.map +1 -1
  248. package/lib/composables/nested/nested.d.ts +3 -3
  249. package/lib/composables/nested/nested.js +4 -4
  250. package/lib/composables/nested/nested.js.map +1 -1
  251. package/lib/composables/position.d.ts +1 -1
  252. package/lib/composables/position.js +2 -2
  253. package/lib/composables/position.js.map +1 -1
  254. package/lib/composables/router.d.ts +3 -3
  255. package/lib/composables/router.js +8 -8
  256. package/lib/composables/router.js.map +1 -1
  257. package/lib/composables/size.d.ts +8 -5
  258. package/lib/composables/size.js +6 -5
  259. package/lib/composables/size.js.map +1 -1
  260. package/lib/composables/ssrBoot.d.ts +4 -2
  261. package/lib/composables/ssrBoot.js +2 -2
  262. package/lib/composables/ssrBoot.js.map +1 -1
  263. package/lib/composables/stack.d.ts +7 -5
  264. package/lib/composables/stack.js +5 -5
  265. package/lib/composables/stack.js.map +1 -1
  266. package/lib/composables/theme.js +9 -9
  267. package/lib/composables/theme.js.map +1 -1
  268. package/lib/composables/variant.d.ts +5 -6
  269. package/lib/composables/variant.js +6 -6
  270. package/lib/composables/variant.js.map +1 -1
  271. package/lib/entry-bundler.d.ts +1 -0
  272. package/lib/entry-bundler.js +1 -1
  273. package/lib/framework.d.ts +80 -71
  274. package/lib/framework.js +1 -1
  275. package/lib/labs/VCalendar/VCalendar.d.ts +607 -218
  276. package/lib/labs/VCalendar/VCalendar.js +55 -27
  277. package/lib/labs/VCalendar/VCalendar.js.map +1 -1
  278. package/lib/labs/VCalendar/VCalendarDay.css +9 -0
  279. package/lib/labs/VCalendar/VCalendarDay.d.ts +329 -17
  280. package/lib/labs/VCalendar/VCalendarDay.js +18 -10
  281. package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
  282. package/lib/labs/VCalendar/VCalendarDay.sass +8 -0
  283. package/lib/labs/VCalendar/VCalendarEvent.js +15 -5
  284. package/lib/labs/VCalendar/VCalendarEvent.js.map +1 -1
  285. package/lib/labs/VCalendar/VCalendarHeader.d.ts +44 -17
  286. package/lib/labs/VCalendar/VCalendarHeader.js +5 -2
  287. package/lib/labs/VCalendar/VCalendarHeader.js.map +1 -1
  288. package/lib/labs/VCalendar/VCalendarInterval.d.ts +171 -17
  289. package/lib/labs/VCalendar/VCalendarInterval.js +56 -19
  290. package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
  291. package/lib/labs/VCalendar/VCalendarIntervalEvent.d.ts +92 -17
  292. package/lib/labs/VCalendar/VCalendarIntervalEvent.js +30 -10
  293. package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
  294. package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +122 -88
  295. package/lib/labs/VCalendar/VCalendarMonthDay.js +24 -22
  296. package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
  297. package/lib/labs/VDateInput/VDateInput.d.ts +7 -7
  298. package/lib/labs/VIconBtn/VIconBtn.d.ts +6 -21
  299. package/lib/labs/VIconBtn/VIconBtn.js +10 -12
  300. package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
  301. package/lib/labs/VPicker/VPicker.js +1 -2
  302. package/lib/labs/VPicker/VPicker.js.map +1 -1
  303. package/lib/labs/VTimePicker/VTimePickerClock.js +3 -3
  304. package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
  305. package/lib/labs/VTreeview/VTreeview.js +11 -11
  306. package/lib/labs/VTreeview/VTreeview.js.map +1 -1
  307. package/lib/labs/entry-bundler.d.ts +1 -0
  308. package/lib/util/box.js.map +1 -1
  309. package/lib/util/helpers.d.ts +7 -2
  310. package/lib/util/helpers.js +16 -5
  311. package/lib/util/helpers.js.map +1 -1
  312. package/package.json +49 -47
@@ -1 +1 @@
1
- {"version":3,"file":"VCard.js","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","genOverlays","makeVariantProps","useVariant","Ripple","computed","genericComponent","propsFactory","useRender","makeVCardProps","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","Object","subtitle","Number","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","_mergeProps","class","style","navigate","linkProps","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// Composables\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 { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\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'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VCardItemSlots } from './VCardItem'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\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, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n subtitle: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n title: {\n type: [String, Number, Boolean],\n default: undefined,\n },\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}, 'VCard')\n\nexport type VCardSlots = VCardItemSlots & {\n default: never\n actions: never\n text: never\n loader: LoaderSlotProps\n image: never\n item: never\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 != null)\n const hasSubtitle = !!(slots.subtitle || props.subtitle != null)\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 != null)\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 onClick={ isClickable.value && link.navigate }\n v-ripple={ isClickable.value && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n { ...link.linkProps }\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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","ignoreList":[]}
1
+ {"version":3,"file":"VCard.js","names":["VCardActions","VCardItem","VCardText","VDefaultsProvider","VImg","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","IconValue","LoaderSlot","makeLoaderProps","useLoader","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeRouterProps","useLink","makeTagProps","makeThemeProps","provideTheme","genOverlays","makeVariantProps","useVariant","Ripple","genericComponent","propsFactory","useRender","makeVCardProps","appendAvatar","String","appendIcon","disabled","Boolean","flat","hover","image","link","type","default","undefined","prependAvatar","prependIcon","ripple","Object","subtitle","Number","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","_mergeProps","class","style","navigate","linkProps","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// Composables\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 { IconValue } from '@/composables/icons'\nimport { LoaderSlot, makeLoaderProps, useLoader } from '@/composables/loader'\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'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VCardItemSlots } from './VCardItem'\nimport type { LoaderSlotProps } from '@/composables/loader'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\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, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n subtitle: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n title: {\n type: [String, Number, Boolean],\n default: undefined,\n },\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}, 'VCard')\n\nexport type VCardSlots = VCardItemSlots & {\n default: never\n actions: never\n text: never\n loader: LoaderSlotProps\n image: never\n item: never\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 useRender(() => {\n const isLink = props.link !== false && link.isLink.value\n const isClickable = (\n !props.disabled &&\n props.link !== false &&\n (props.link || link.isClickable.value)\n )\n const Tag = isLink ? 'a' : props.tag\n const hasTitle = !!(slots.title || props.title != null)\n const hasSubtitle = !!(slots.subtitle || props.subtitle != null)\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 != null)\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,\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 onClick={ isClickable && link.navigate }\n v-ripple={ isClickable && props.ripple }\n tabindex={ props.disabled ? -1 : undefined }\n { ...link.linkProps }\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, 'v-card') }\n </Tag>\n )\n })\n\n return {}\n },\n})\n\nexport type VCard = InstanceType<typeof VCard>\n"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,7 @@ import { makeVCheckboxBtnProps, VCheckboxBtn } from "./VCheckboxBtn.js";
7
7
  import { makeVInputProps, VInput } from "../VInput/VInput.js"; // Composables
8
8
  import { useFocus } from "../../composables/focus.js";
9
9
  import { useProxiedModel } from "../../composables/proxiedModel.js"; // Utilities
10
- import { computed, useId } from 'vue';
10
+ import { useId } from 'vue';
11
11
  import { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from "../../util/index.js"; // Types
12
12
  export const makeVCheckboxProps = propsFactory({
13
13
  ...makeVInputProps(),
@@ -33,7 +33,6 @@ export const VCheckbox = genericComponent()({
33
33
  blur
34
34
  } = useFocus(props);
35
35
  const uid = useId();
36
- const id = computed(() => props.id || `checkbox-${uid}`);
37
36
  useRender(() => {
38
37
  const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
39
38
  const inputProps = VInput.filterProps(props);
@@ -43,7 +42,7 @@ export const VCheckbox = genericComponent()({
43
42
  }, rootAttrs, inputProps, {
44
43
  "modelValue": model.value,
45
44
  "onUpdate:modelValue": $event => model.value = $event,
46
- "id": id.value,
45
+ "id": props.id || `checkbox-${uid}`,
47
46
  "focused": isFocused.value,
48
47
  "style": props.style
49
48
  }), {
@@ -1 +1 @@
1
- {"version":3,"file":"VCheckbox.js","names":["makeVCheckboxBtnProps","VCheckboxBtn","makeVInputProps","VInput","useFocus","useProxiedModel","computed","useId","filterInputAttrs","genericComponent","omit","propsFactory","useRender","makeVCheckboxProps","VCheckbox","name","inheritAttrs","props","emits","value","focused","setup","_ref","attrs","slots","model","isFocused","focus","blur","uid","id","rootAttrs","controlAttrs","inputProps","filterProps","checkboxProps","_createVNode","_mergeProps","class","$event","style","default","_ref2","messagesId","isDisabled","isReadonly","isValid"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VCheckboxSlots = Omit<VInputSlots, 'default'> & VSelectionControlSlots\n\nexport const makeVCheckboxProps = propsFactory({\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n}, 'VCheckbox')\n\nexport const VCheckbox = genericComponent<new <T>(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VCheckboxSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: makeVCheckboxProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = useId()\n const id = computed(() => props.id || `checkbox-${uid}`)\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const checkboxProps = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class={[\n 'v-checkbox',\n props.class,\n ]}\n { ...rootAttrs }\n { ...inputProps }\n v-model={ model.value }\n id={ id.value }\n focused={ isFocused.value }\n style={ props.style }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n error={ isValid.value === false }\n v-model={ model.value }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,qBAAqB,EAAEC,YAAY;AAAA,SACnCC,eAAe,EAAEC,MAAM,+BAEhC;AAAA,SACSC,QAAQ;AAAA,SACRC,eAAe,6CAExB;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,gBAAgB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,+BAE1E;AAOA,OAAO,MAAMC,kBAAkB,GAAGF,YAAY,CAAC;EAC7C,GAAGT,eAAe,CAAC,CAAC;EACpB,GAAGQ,IAAI,CAACV,qBAAqB,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC;AAC7C,CAAC,EAAE,WAAW,CAAC;AAEf,OAAO,MAAMc,SAAS,GAAGL,gBAAgB,CAMM,CAAC,CAAC;EAC/CM,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAEJ,kBAAkB,CAAC,CAAC;EAE3BK,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK,IAAI;IACzC,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAMG,KAAK,GAAGpB,eAAe,CAACY,KAAK,EAAE,YAAY,CAAC;IAClD,MAAM;MAAES,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGxB,QAAQ,CAACa,KAAK,CAAC;IAElD,MAAMY,GAAG,GAAGtB,KAAK,CAAC,CAAC;IACnB,MAAMuB,EAAE,GAAGxB,QAAQ,CAAC,MAAMW,KAAK,CAACa,EAAE,IAAI,YAAYD,GAAG,EAAE,CAAC;IAExDjB,SAAS,CAAC,MAAM;MACd,MAAM,CAACmB,SAAS,EAAEC,YAAY,CAAC,GAAGxB,gBAAgB,CAACe,KAAK,CAAC;MACzD,MAAMU,UAAU,GAAG9B,MAAM,CAAC+B,WAAW,CAACjB,KAAK,CAAC;MAC5C,MAAMkB,aAAa,GAAGlC,YAAY,CAACiC,WAAW,CAACjB,KAAK,CAAC;MAErD,OAAAmB,YAAA,CAAAjC,MAAA,EAAAkC,WAAA;QAAA,SAEW,CACL,YAAY,EACZpB,KAAK,CAACqB,KAAK;MACZ,GACIP,SAAS,EACTE,UAAU;QAAA,cACLR,KAAK,CAACN,KAAK;QAAA,uBAAAoB,MAAA,IAAXd,KAAK,CAACN,KAAK,GAAAoB,MAAA;QAAA,MAChBT,EAAE,CAACX,KAAK;QAAA,WACHO,SAAS,CAACP,KAAK;QAAA,SACjBF,KAAK,CAACuB;MAAK;QAGjB,GAAGhB,KAAK;QACRiB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRZ,EAAE;YACFa,UAAU;YACVC,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAJ,KAAA;UAAA,OAAAN,YAAA,CAAAnC,YAAA,EAAAoC,WAAA,CAEQF,aAAa;YAAA,MACbL,EAAE,CAACX,KAAK;YAAA,oBACMwB,UAAU,CAACxB,KAAK;YAAA,YACxByB,UAAU,CAACzB,KAAK;YAAA,YAChB0B,UAAU,CAAC1B;UAAK,GACtBa,YAAY;YAAA,SACTc,OAAO,CAAC3B,KAAK,KAAK,KAAK;YAAA,cACrBM,KAAK,CAACN,KAAK;YAAA,uBAAAoB,MAAA,IAAXd,KAAK,CAACN,KAAK,GAAAoB,MAAA;YAAA,WACXZ,KAAK;YAAA,UACNC;UAAI,IACHJ,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VCheckbox.js","names":["makeVCheckboxBtnProps","VCheckboxBtn","makeVInputProps","VInput","useFocus","useProxiedModel","useId","filterInputAttrs","genericComponent","omit","propsFactory","useRender","makeVCheckboxProps","VCheckbox","name","inheritAttrs","props","emits","value","focused","setup","_ref","attrs","slots","model","isFocused","focus","blur","uid","rootAttrs","controlAttrs","inputProps","filterProps","checkboxProps","_createVNode","_mergeProps","class","$event","id","style","default","_ref2","messagesId","isDisabled","isReadonly","isValid"],"sources":["../../../src/components/VCheckbox/VCheckbox.tsx"],"sourcesContent":["// Styles\nimport './VCheckbox.sass'\n\n// Components\nimport { makeVCheckboxBtnProps, VCheckboxBtn } from './VCheckboxBtn'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { useId } from 'vue'\nimport { filterInputAttrs, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '../VSelectionControl/VSelectionControl'\nimport type { VInputSlots } from '@/components/VInput/VInput'\nimport type { GenericProps } from '@/util'\n\nexport type VCheckboxSlots = Omit<VInputSlots, 'default'> & VSelectionControlSlots\n\nexport const makeVCheckboxProps = propsFactory({\n ...makeVInputProps(),\n ...omit(makeVCheckboxBtnProps(), ['inline']),\n}, 'VCheckbox')\n\nexport const VCheckbox = genericComponent<new <T>(\n props: {\n modelValue?: T | null\n 'onUpdate:modelValue'?: (value: T | null) => void\n },\n slots: VCheckboxSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCheckbox',\n\n inheritAttrs: false,\n\n props: makeVCheckboxProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:focused': (focused: boolean) => true,\n },\n\n setup (props, { attrs, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n\n const uid = useId()\n\n useRender(() => {\n const [rootAttrs, controlAttrs] = filterInputAttrs(attrs)\n const inputProps = VInput.filterProps(props)\n const checkboxProps = VCheckboxBtn.filterProps(props)\n\n return (\n <VInput\n class={[\n 'v-checkbox',\n props.class,\n ]}\n { ...rootAttrs }\n { ...inputProps }\n v-model={ model.value }\n id={ props.id || `checkbox-${uid}` }\n focused={ isFocused.value }\n style={ props.style }\n >\n {{\n ...slots,\n default: ({\n id,\n messagesId,\n isDisabled,\n isReadonly,\n isValid,\n }) => (\n <VCheckboxBtn\n { ...checkboxProps }\n id={ id.value }\n aria-describedby={ messagesId.value }\n disabled={ isDisabled.value }\n readonly={ isReadonly.value }\n { ...controlAttrs }\n error={ isValid.value === false }\n v-model={ model.value }\n onFocus={ focus }\n onBlur={ blur }\n v-slots={ slots }\n />\n ),\n }}\n </VInput>\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckbox = InstanceType<typeof VCheckbox>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,qBAAqB,EAAEC,YAAY;AAAA,SACnCC,eAAe,EAAEC,MAAM,+BAEhC;AAAA,SACSC,QAAQ;AAAA,SACRC,eAAe,6CAExB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,gBAAgB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,+BAE1E;AAOA,OAAO,MAAMC,kBAAkB,GAAGF,YAAY,CAAC;EAC7C,GAAGR,eAAe,CAAC,CAAC;EACpB,GAAGO,IAAI,CAACT,qBAAqB,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC;AAC7C,CAAC,EAAE,WAAW,CAAC;AAEf,OAAO,MAAMa,SAAS,GAAGL,gBAAgB,CAMM,CAAC,CAAC;EAC/CM,IAAI,EAAE,WAAW;EAEjBC,YAAY,EAAE,KAAK;EAEnBC,KAAK,EAAEJ,kBAAkB,CAAC,CAAC;EAE3BK,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK,IAAI;IACzC,gBAAgB,EAAGC,OAAgB,IAAK;EAC1C,CAAC;EAEDC,KAAKA,CAAEJ,KAAK,EAAAK,IAAA,EAAoB;IAAA,IAAlB;MAAEC,KAAK;MAAEC;IAAM,CAAC,GAAAF,IAAA;IAC5B,MAAMG,KAAK,GAAGnB,eAAe,CAACW,KAAK,EAAE,YAAY,CAAC;IAClD,MAAM;MAAES,SAAS;MAAEC,KAAK;MAAEC;IAAK,CAAC,GAAGvB,QAAQ,CAACY,KAAK,CAAC;IAElD,MAAMY,GAAG,GAAGtB,KAAK,CAAC,CAAC;IAEnBK,SAAS,CAAC,MAAM;MACd,MAAM,CAACkB,SAAS,EAAEC,YAAY,CAAC,GAAGvB,gBAAgB,CAACe,KAAK,CAAC;MACzD,MAAMS,UAAU,GAAG5B,MAAM,CAAC6B,WAAW,CAAChB,KAAK,CAAC;MAC5C,MAAMiB,aAAa,GAAGhC,YAAY,CAAC+B,WAAW,CAAChB,KAAK,CAAC;MAErD,OAAAkB,YAAA,CAAA/B,MAAA,EAAAgC,WAAA;QAAA,SAEW,CACL,YAAY,EACZnB,KAAK,CAACoB,KAAK;MACZ,GACIP,SAAS,EACTE,UAAU;QAAA,cACLP,KAAK,CAACN,KAAK;QAAA,uBAAAmB,MAAA,IAAXb,KAAK,CAACN,KAAK,GAAAmB,MAAA;QAAA,MAChBrB,KAAK,CAACsB,EAAE,IAAI,YAAYV,GAAG,EAAE;QAAA,WACxBH,SAAS,CAACP,KAAK;QAAA,SACjBF,KAAK,CAACuB;MAAK;QAGjB,GAAGhB,KAAK;QACRiB,OAAO,EAAEC,KAAA;UAAA,IAAC;YACRH,EAAE;YACFI,UAAU;YACVC,UAAU;YACVC,UAAU;YACVC;UACF,CAAC,GAAAJ,KAAA;UAAA,OAAAP,YAAA,CAAAjC,YAAA,EAAAkC,WAAA,CAEQF,aAAa;YAAA,MACbK,EAAE,CAACpB,KAAK;YAAA,oBACMwB,UAAU,CAACxB,KAAK;YAAA,YACxByB,UAAU,CAACzB,KAAK;YAAA,YAChB0B,UAAU,CAAC1B;UAAK,GACtBY,YAAY;YAAA,SACTe,OAAO,CAAC3B,KAAK,KAAK,KAAK;YAAA,cACrBM,KAAK,CAACN,KAAK;YAAA,uBAAAmB,MAAA,IAAXb,KAAK,CAACN,KAAK,GAAAmB,MAAA;YAAA,WACXX,KAAK;YAAA,UACNC;UAAI,IACHJ,KAAK;QAAA;MAElB;IAIT,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -3,7 +3,7 @@ import { mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
3
3
  import { makeVSelectionControlProps, VSelectionControl } from "../VSelectionControl/VSelectionControl.js"; // Composables
4
4
  import { IconValue } from "../../composables/icons.js";
5
5
  import { useProxiedModel } from "../../composables/proxiedModel.js"; // Utilities
6
- import { computed } from 'vue';
6
+ import { toRef } from 'vue';
7
7
  import { genericComponent, omit, propsFactory, useRender } from "../../util/index.js"; // Types
8
8
  export const makeVCheckboxBtnProps = propsFactory({
9
9
  indeterminate: Boolean,
@@ -34,10 +34,10 @@ export const VCheckboxBtn = genericComponent()({
34
34
  indeterminate.value = false;
35
35
  }
36
36
  }
37
- const falseIcon = computed(() => {
37
+ const falseIcon = toRef(() => {
38
38
  return indeterminate.value ? props.indeterminateIcon : props.falseIcon;
39
39
  });
40
- const trueIcon = computed(() => {
40
+ const trueIcon = toRef(() => {
41
41
  return indeterminate.value ? props.indeterminateIcon : props.trueIcon;
42
42
  });
43
43
  useRender(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"VCheckboxBtn.js","names":["makeVSelectionControlProps","VSelectionControl","IconValue","useProxiedModel","computed","genericComponent","omit","propsFactory","useRender","makeVCheckboxBtnProps","indeterminate","Boolean","indeterminateIcon","type","default","falseIcon","trueIcon","VCheckboxBtn","name","props","emits","value","setup","_ref","slots","model","onChange","v","controlProps","filterProps","_createVNode","_mergeProps","$event","class","style","undefined"],"sources":["../../../src/components/VCheckbox/VCheckboxBtn.tsx"],"sourcesContent":["// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCheckboxBtnProps = propsFactory({\n indeterminate: Boolean,\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVSelectionControlProps({\n falseIcon: '$checkboxOff',\n trueIcon: '$checkboxOn',\n }),\n}, 'VCheckboxBtn')\n\nexport const VCheckboxBtn = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCheckboxBtn',\n\n props: makeVCheckboxBtnProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n\n function onChange (v: any) {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n const falseIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n\n const trueIcon = computed(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n useRender(() => {\n const controlProps = omit(VSelectionControl.filterProps(props), ['modelValue'])\n return (\n <VSelectionControl\n { ...controlProps }\n v-model={ model.value }\n class={[\n 'v-checkbox-btn',\n props.class,\n ]}\n style={ props.style }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n falseIcon={ falseIcon.value }\n trueIcon={ trueIcon.value }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckboxBtn = InstanceType<typeof VCheckboxBtn>\n"],"mappings":";AAAA;AAAA,SACSA,0BAA0B,EAAEC,iBAAiB,qDAEtD;AAAA,SACSC,SAAS;AAAA,SACTC,eAAe,6CAExB;AACA,SAASC,QAAQ,QAAQ,KAAK;AAAA,SACrBC,gBAAgB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,+BAExD;AAIA,OAAO,MAAMC,qBAAqB,GAAGF,YAAY,CAAC;EAChDG,aAAa,EAAEC,OAAO;EACtBC,iBAAiB,EAAE;IACjBC,IAAI,EAAEX,SAAS;IACfY,OAAO,EAAE;EACX,CAAC;EAED,GAAGd,0BAA0B,CAAC;IAC5Be,SAAS,EAAE,cAAc;IACzBC,QAAQ,EAAE;EACZ,CAAC;AACH,CAAC,EAAE,cAAc,CAAC;AAElB,OAAO,MAAMC,YAAY,GAAGZ,gBAAgB,CAMG,CAAC,CAAC;EAC/Ca,IAAI,EAAE,cAAc;EAEpBC,KAAK,EAAEV,qBAAqB,CAAC,CAAC;EAE9BW,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK,IAAI;IACzC,sBAAsB,EAAGA,KAAc,IAAK;EAC9C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAMb,aAAa,GAAGP,eAAe,CAACgB,KAAK,EAAE,eAAe,CAAC;IAC7D,MAAMM,KAAK,GAAGtB,eAAe,CAACgB,KAAK,EAAE,YAAY,CAAC;IAElD,SAASO,QAAQA,CAAEC,CAAM,EAAE;MACzB,IAAIjB,aAAa,CAACW,KAAK,EAAE;QACvBX,aAAa,CAACW,KAAK,GAAG,KAAK;MAC7B;IACF;IAEA,MAAMN,SAAS,GAAGX,QAAQ,CAAC,MAAM;MAC/B,OAAOM,aAAa,CAACW,KAAK,GACtBF,KAAK,CAACP,iBAAiB,GACvBO,KAAK,CAACJ,SAAS;IACrB,CAAC,CAAC;IAEF,MAAMC,QAAQ,GAAGZ,QAAQ,CAAC,MAAM;MAC9B,OAAOM,aAAa,CAACW,KAAK,GACtBF,KAAK,CAACP,iBAAiB,GACvBO,KAAK,CAACH,QAAQ;IACpB,CAAC,CAAC;IAEFR,SAAS,CAAC,MAAM;MACd,MAAMoB,YAAY,GAAGtB,IAAI,CAACL,iBAAiB,CAAC4B,WAAW,CAACV,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;MAC/E,OAAAW,YAAA,CAAA7B,iBAAA,EAAA8B,WAAA,CAESH,YAAY;QAAA,cACPH,KAAK,CAACJ,KAAK;QAAA,wBAAAW,MAAA,IAAXP,KAAK,CAACJ,KAAK,GAAAW,MAAA,EAOCN,QAAQ;QAAA,SANvB,CACL,gBAAgB,EAChBP,KAAK,CAACc,KAAK,CACZ;QAAA,SACOd,KAAK,CAACe,KAAK;QAAA;QAAA,aAGPnB,SAAS,CAACM,KAAK;QAAA,YAChBL,QAAQ,CAACK,KAAK;QAAA,gBACVX,aAAa,CAACW,KAAK,GAAG,OAAO,GAAGc;MAAS,IAC9CX,KAAK;IAGrB,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VCheckboxBtn.js","names":["makeVSelectionControlProps","VSelectionControl","IconValue","useProxiedModel","toRef","genericComponent","omit","propsFactory","useRender","makeVCheckboxBtnProps","indeterminate","Boolean","indeterminateIcon","type","default","falseIcon","trueIcon","VCheckboxBtn","name","props","emits","value","setup","_ref","slots","model","onChange","v","controlProps","filterProps","_createVNode","_mergeProps","$event","class","style","undefined"],"sources":["../../../src/components/VCheckbox/VCheckboxBtn.tsx"],"sourcesContent":["// Components\nimport { makeVSelectionControlProps, VSelectionControl } from '@/components/VSelectionControl/VSelectionControl'\n\n// Composables\nimport { IconValue } from '@/composables/icons'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VSelectionControlSlots } from '@/components/VSelectionControl/VSelectionControl'\nimport type { GenericProps } from '@/util'\n\nexport const makeVCheckboxBtnProps = propsFactory({\n indeterminate: Boolean,\n indeterminateIcon: {\n type: IconValue,\n default: '$checkboxIndeterminate',\n },\n\n ...makeVSelectionControlProps({\n falseIcon: '$checkboxOff',\n trueIcon: '$checkboxOn',\n }),\n}, 'VCheckboxBtn')\n\nexport const VCheckboxBtn = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VSelectionControlSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VCheckboxBtn',\n\n props: makeVCheckboxBtnProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n 'update:indeterminate': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const indeterminate = useProxiedModel(props, 'indeterminate')\n const model = useProxiedModel(props, 'modelValue')\n\n function onChange (v: any) {\n if (indeterminate.value) {\n indeterminate.value = false\n }\n }\n\n const falseIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.falseIcon\n })\n\n const trueIcon = toRef(() => {\n return indeterminate.value\n ? props.indeterminateIcon\n : props.trueIcon\n })\n\n useRender(() => {\n const controlProps = omit(VSelectionControl.filterProps(props), ['modelValue'])\n return (\n <VSelectionControl\n { ...controlProps }\n v-model={ model.value }\n class={[\n 'v-checkbox-btn',\n props.class,\n ]}\n style={ props.style }\n type=\"checkbox\"\n onUpdate:modelValue={ onChange }\n falseIcon={ falseIcon.value }\n trueIcon={ trueIcon.value }\n aria-checked={ indeterminate.value ? 'mixed' : undefined }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VCheckboxBtn = InstanceType<typeof VCheckboxBtn>\n"],"mappings":";AAAA;AAAA,SACSA,0BAA0B,EAAEC,iBAAiB,qDAEtD;AAAA,SACSC,SAAS;AAAA,SACTC,eAAe,6CAExB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,SAAS,+BAExD;AAIA,OAAO,MAAMC,qBAAqB,GAAGF,YAAY,CAAC;EAChDG,aAAa,EAAEC,OAAO;EACtBC,iBAAiB,EAAE;IACjBC,IAAI,EAAEX,SAAS;IACfY,OAAO,EAAE;EACX,CAAC;EAED,GAAGd,0BAA0B,CAAC;IAC5Be,SAAS,EAAE,cAAc;IACzBC,QAAQ,EAAE;EACZ,CAAC;AACH,CAAC,EAAE,cAAc,CAAC;AAElB,OAAO,MAAMC,YAAY,GAAGZ,gBAAgB,CAMG,CAAC,CAAC;EAC/Ca,IAAI,EAAE,cAAc;EAEpBC,KAAK,EAAEV,qBAAqB,CAAC,CAAC;EAE9BW,KAAK,EAAE;IACL,mBAAmB,EAAGC,KAAU,IAAK,IAAI;IACzC,sBAAsB,EAAGA,KAAc,IAAK;EAC9C,CAAC;EAEDC,KAAKA,CAAEH,KAAK,EAAAI,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAMb,aAAa,GAAGP,eAAe,CAACgB,KAAK,EAAE,eAAe,CAAC;IAC7D,MAAMM,KAAK,GAAGtB,eAAe,CAACgB,KAAK,EAAE,YAAY,CAAC;IAElD,SAASO,QAAQA,CAAEC,CAAM,EAAE;MACzB,IAAIjB,aAAa,CAACW,KAAK,EAAE;QACvBX,aAAa,CAACW,KAAK,GAAG,KAAK;MAC7B;IACF;IAEA,MAAMN,SAAS,GAAGX,KAAK,CAAC,MAAM;MAC5B,OAAOM,aAAa,CAACW,KAAK,GACtBF,KAAK,CAACP,iBAAiB,GACvBO,KAAK,CAACJ,SAAS;IACrB,CAAC,CAAC;IAEF,MAAMC,QAAQ,GAAGZ,KAAK,CAAC,MAAM;MAC3B,OAAOM,aAAa,CAACW,KAAK,GACtBF,KAAK,CAACP,iBAAiB,GACvBO,KAAK,CAACH,QAAQ;IACpB,CAAC,CAAC;IAEFR,SAAS,CAAC,MAAM;MACd,MAAMoB,YAAY,GAAGtB,IAAI,CAACL,iBAAiB,CAAC4B,WAAW,CAACV,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;MAC/E,OAAAW,YAAA,CAAA7B,iBAAA,EAAA8B,WAAA,CAESH,YAAY;QAAA,cACPH,KAAK,CAACJ,KAAK;QAAA,wBAAAW,MAAA,IAAXP,KAAK,CAACJ,KAAK,GAAAW,MAAA,EAOCN,QAAQ;QAAA,SANvB,CACL,gBAAgB,EAChBP,KAAK,CAACc,KAAK,CACZ;QAAA,SACOd,KAAK,CAACe,KAAK;QAAA;QAAA,aAGPnB,SAAS,CAACM,KAAK;QAAA,YAChBL,QAAQ,CAACK,KAAK;QAAA,gBACVX,aAAa,CAACW,KAAK,GAAG,OAAO,GAAGc;MAAS,IAC9CX,KAAK;IAGrB,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -24,7 +24,7 @@ import { makeTagProps } from "../../composables/tag.js";
24
24
  import { makeThemeProps, provideTheme } from "../../composables/theme.js";
25
25
  import { genOverlays, makeVariantProps, useVariant } from "../../composables/variant.js"; // Directives
26
26
  import { Ripple } from "../../directives/ripple/index.js"; // Utilities
27
- import { computed, toDisplayString } from 'vue';
27
+ import { computed, toDisplayString, toRef } from 'vue';
28
28
  import { EventProp, genericComponent, propsFactory } from "../../util/index.js"; // Types
29
29
  export const makeVChipProps = propsFactory({
30
30
  activeClass: String,
@@ -126,9 +126,9 @@ export const VChip = genericComponent()({
126
126
  const isActive = useProxiedModel(props, 'modelValue');
127
127
  const group = useGroupItem(props, VChipGroupSymbol, false);
128
128
  const link = useLink(props, attrs);
129
- const isLink = computed(() => props.link !== false && link.isLink.value);
129
+ const isLink = toRef(() => props.link !== false && link.isLink.value);
130
130
  const isClickable = computed(() => !props.disabled && props.link !== false && (!!group || props.link || link.isClickable.value));
131
- const closeProps = computed(() => ({
131
+ const closeProps = toRef(() => ({
132
132
  'aria-label': t(props.closeLabel),
133
133
  onClick(e) {
134
134
  e.preventDefault();
@@ -137,18 +137,17 @@ export const VChip = genericComponent()({
137
137
  emit('click:close', e);
138
138
  }
139
139
  }));
140
- const variantProps = computed(() => {
140
+ const {
141
+ colorClasses,
142
+ colorStyles,
143
+ variantClasses
144
+ } = useVariant(() => {
141
145
  const showColor = !group || group.isSelected.value;
142
146
  return {
143
147
  color: showColor ? props.color ?? props.baseColor : props.baseColor,
144
148
  variant: props.variant
145
149
  };
146
150
  });
147
- const {
148
- colorClasses,
149
- colorStyles,
150
- variantClasses
151
- } = useVariant(variantProps);
152
151
  function onClick(e) {
153
152
  emit('click', e);
154
153
  if (!isClickable.value) return;
@@ -1 +1 @@
1
- {"version":3,"file":"VChip.js","names":["VExpandXTransition","VAvatar","VChipGroupSymbol","VDefaultsProvider","VIcon","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeElevationProps","useElevation","makeGroupItemProps","useGroupItem","IconValue","useLocale","useProxiedModel","makeRoundedProps","useRounded","makeRouterProps","useLink","makeSizeProps","useSize","makeTagProps","makeThemeProps","provideTheme","genOverlays","makeVariantProps","useVariant","Ripple","computed","toDisplayString","EventProp","genericComponent","propsFactory","makeVChipProps","activeClass","String","appendAvatar","appendIcon","baseColor","closable","Boolean","closeIcon","type","default","closeLabel","draggable","filter","filterIcon","label","link","undefined","pill","prependAvatar","prependIcon","ripple","Object","text","Number","modelValue","onClick","onClickOnce","tag","variant","VChip","name","directives","props","emits","e","value","val","click","setup","_ref","attrs","emit","slots","t","borderClasses","densityClasses","elevationClasses","roundedClasses","sizeClasses","themeClasses","isActive","group","isLink","isClickable","disabled","closeProps","preventDefault","stopPropagation","variantProps","showColor","isSelected","color","colorClasses","colorStyles","variantClasses","navigate","toggle","onKeyDown","key","Tag","hasAppendMedia","hasAppend","append","hasClose","close","hasFilter","hasPrependMedia","hasPrepend","prepend","_withDirectives","_createVNode","_mergeProps","selectedClass","class","style","linkProps","icon","_vShow","_Fragment","image","start","select","end","size","_resolveDirective"],"sources":["../../../src/components/VChip/VChip.tsx"],"sourcesContent":["/* eslint-disable complexity */\n// Styles\nimport './VChip.sass'\n\n// Components\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VChipGroupSymbol } from '@/components/VChipGroup/VChipGroup'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, toDisplayString } from 'vue'\nimport { EventProp, genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type VChipSlots = {\n default: {\n isSelected: boolean | undefined\n selectedClass: boolean | (string | undefined)[] | undefined\n select: ((value: boolean) => void) | undefined\n toggle: (() => void) | undefined\n value: unknown\n disabled: boolean\n }\n label: never\n prepend: never\n append: never\n close: never\n filter: never\n}\n\nexport const makeVChipProps = propsFactory({\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n baseColor: String,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: IconValue,\n default: '$complete',\n },\n label: Boolean,\n link: {\n type: Boolean,\n default: undefined,\n },\n pill: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n onClick: EventProp<[MouseEvent]>(),\n onClickOnce: EventProp<[MouseEvent]>(),\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'span' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n}, 'VChip')\n\nexport const VChip = genericComponent<VChipSlots>()({\n name: 'VChip',\n\n directives: { Ripple },\n\n props: makeVChipProps(),\n\n emits: {\n 'click:close': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n 'group:selected': (val: { value: boolean }) => true,\n click: (e: MouseEvent | KeyboardEvent) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { t } = useLocale()\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const { themeClasses } = provideTheme(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n const group = useGroupItem(props, VChipGroupSymbol, false)\n const link = useLink(props, attrs)\n const isLink = computed(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (!!group || props.link || link.isClickable.value)\n )\n const closeProps = computed(() => ({\n 'aria-label': t(props.closeLabel),\n onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n isActive.value = false\n\n emit('click:close', e)\n },\n }))\n\n const variantProps = computed(() => {\n const showColor = !group || group.isSelected.value\n return ({\n color: showColor ? props.color ?? props.baseColor : props.baseColor,\n variant: props.variant,\n })\n })\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n\n function onClick (e: MouseEvent) {\n emit('click', e)\n\n if (!isClickable.value) return\n\n link.navigate?.(e)\n group?.toggle()\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 return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasAppendMedia = !!(props.appendIcon || props.appendAvatar)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasClose = !!(slots.close || props.closable)\n const hasFilter = !!(slots.filter || props.filter) && group\n const hasPrependMedia = !!(props.prependIcon || props.prependAvatar)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n return isActive.value && (\n <Tag\n class={[\n 'v-chip',\n {\n 'v-chip--disabled': props.disabled,\n 'v-chip--label': props.label,\n 'v-chip--link': isClickable.value,\n 'v-chip--filter': hasFilter,\n 'v-chip--pill': props.pill,\n [`${props.activeClass}`]: props.activeClass && link.isActive?.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n group?.selectedClass.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n props.style,\n ]}\n disabled={ props.disabled || undefined }\n draggable={ props.draggable }\n tabindex={ isClickable.value ? 0 : undefined }\n onClick={ onClick }\n onKeydown={ isClickable.value && !isLink.value && onKeyDown }\n v-ripple={[isClickable.value && props.ripple, null]}\n { ...link.linkProps }\n >\n { genOverlays(isClickable.value, 'v-chip') }\n\n { hasFilter && (\n <VExpandXTransition key=\"filter\">\n <div\n class=\"v-chip__filter\"\n v-show={ group.isSelected.value }\n >\n { !slots.filter ? (\n <VIcon\n key=\"filter-icon\"\n icon={ props.filterIcon }\n />\n ) : (\n <VDefaultsProvider\n key=\"filter-defaults\"\n disabled={ !props.filterIcon }\n defaults={{\n VIcon: { icon: props.filterIcon },\n }}\n v-slots:default={ slots.filter }\n />\n )}\n </div>\n </VExpandXTransition>\n )}\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-chip__prepend\">\n { !slots.prepend ? (\n <>\n { props.prependIcon && (\n <VIcon\n key=\"prepend-icon\"\n icon={ props.prependIcon }\n start\n />\n )}\n\n { props.prependAvatar && (\n <VAvatar\n key=\"prepend-avatar\"\n image={ props.prependAvatar }\n start\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n image: props.prependAvatar,\n start: true,\n },\n VIcon: {\n icon: props.prependIcon,\n start: true,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-chip__content\" data-no-activator=\"\">\n { slots.default?.({\n isSelected: group?.isSelected.value,\n selectedClass: group?.selectedClass.value,\n select: group?.select,\n toggle: group?.toggle,\n value: group?.value.value,\n disabled: props.disabled,\n }) ?? toDisplayString(props.text)}\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-chip__append\">\n { !slots.append ? (\n <>\n { props.appendIcon && (\n <VIcon\n key=\"append-icon\"\n end\n icon={ props.appendIcon }\n />\n )}\n\n { props.appendAvatar && (\n <VAvatar\n key=\"append-avatar\"\n end\n image={ props.appendAvatar }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n end: true,\n image: props.appendAvatar,\n },\n VIcon: {\n end: true,\n icon: props.appendIcon,\n },\n }}\n v-slots:default={ slots.append }\n />\n )}\n </div>\n )}\n\n { hasClose && (\n <button\n key=\"close\"\n class=\"v-chip__close\"\n type=\"button\"\n data-testid=\"close-chip\"\n { ...closeProps.value }\n >\n { !slots.close ? (\n <VIcon\n key=\"close-icon\"\n icon={ props.closeIcon }\n size=\"x-small\"\n />\n ) : (\n <VDefaultsProvider\n key=\"close-defaults\"\n defaults={{\n VIcon: {\n icon: props.closeIcon,\n size: 'x-small',\n },\n }}\n v-slots:default={ slots.close }\n />\n )}\n </button>\n )}\n </Tag>\n )\n }\n },\n})\n\nexport type VChip = InstanceType<typeof VChip>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VChip.js","names":["VExpandXTransition","VAvatar","VChipGroupSymbol","VDefaultsProvider","VIcon","makeBorderProps","useBorder","makeComponentProps","makeDensityProps","useDensity","makeElevationProps","useElevation","makeGroupItemProps","useGroupItem","IconValue","useLocale","useProxiedModel","makeRoundedProps","useRounded","makeRouterProps","useLink","makeSizeProps","useSize","makeTagProps","makeThemeProps","provideTheme","genOverlays","makeVariantProps","useVariant","Ripple","computed","toDisplayString","toRef","EventProp","genericComponent","propsFactory","makeVChipProps","activeClass","String","appendAvatar","appendIcon","baseColor","closable","Boolean","closeIcon","type","default","closeLabel","draggable","filter","filterIcon","label","link","undefined","pill","prependAvatar","prependIcon","ripple","Object","text","Number","modelValue","onClick","onClickOnce","tag","variant","VChip","name","directives","props","emits","e","value","val","click","setup","_ref","attrs","emit","slots","t","borderClasses","densityClasses","elevationClasses","roundedClasses","sizeClasses","themeClasses","isActive","group","isLink","isClickable","disabled","closeProps","preventDefault","stopPropagation","colorClasses","colorStyles","variantClasses","showColor","isSelected","color","navigate","toggle","onKeyDown","key","Tag","hasAppendMedia","hasAppend","append","hasClose","close","hasFilter","hasPrependMedia","hasPrepend","prepend","_withDirectives","_createVNode","_mergeProps","selectedClass","class","style","linkProps","icon","_vShow","_Fragment","image","start","select","end","size","_resolveDirective"],"sources":["../../../src/components/VChip/VChip.tsx"],"sourcesContent":["/* eslint-disable complexity */\n// Styles\nimport './VChip.sass'\n\n// Components\nimport { VExpandXTransition } from '@/components/transitions'\nimport { VAvatar } from '@/components/VAvatar'\nimport { VChipGroupSymbol } from '@/components/VChipGroup/VChipGroup'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { makeBorderProps, useBorder } from '@/composables/border'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeGroupItemProps, useGroupItem } from '@/composables/group'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeRouterProps, useLink } from '@/composables/router'\nimport { makeSizeProps, useSize } from '@/composables/size'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Directives\nimport { Ripple } from '@/directives/ripple'\n\n// Utilities\nimport { computed, toDisplayString, toRef } from 'vue'\nimport { EventProp, genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { RippleDirectiveBinding } from '@/directives/ripple'\n\nexport type VChipSlots = {\n default: {\n isSelected: boolean | undefined\n selectedClass: boolean | (string | undefined)[] | undefined\n select: ((value: boolean) => void) | undefined\n toggle: (() => void) | undefined\n value: unknown\n disabled: boolean\n }\n label: never\n prepend: never\n append: never\n close: never\n filter: never\n}\n\nexport const makeVChipProps = propsFactory({\n activeClass: String,\n appendAvatar: String,\n appendIcon: IconValue,\n baseColor: String,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: IconValue,\n default: '$complete',\n },\n label: Boolean,\n link: {\n type: Boolean,\n default: undefined,\n },\n pill: Boolean,\n prependAvatar: String,\n prependIcon: IconValue,\n ripple: {\n type: [Boolean, Object] as PropType<RippleDirectiveBinding['value']>,\n default: true,\n },\n text: {\n type: [String, Number, Boolean],\n default: undefined,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n\n onClick: EventProp<[MouseEvent]>(),\n onClickOnce: EventProp<[MouseEvent]>(),\n\n ...makeBorderProps(),\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeElevationProps(),\n ...makeGroupItemProps(),\n ...makeRoundedProps(),\n ...makeRouterProps(),\n ...makeSizeProps(),\n ...makeTagProps({ tag: 'span' }),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n}, 'VChip')\n\nexport const VChip = genericComponent<VChipSlots>()({\n name: 'VChip',\n\n directives: { Ripple },\n\n props: makeVChipProps(),\n\n emits: {\n 'click:close': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n 'group:selected': (val: { value: boolean }) => true,\n click: (e: MouseEvent | KeyboardEvent) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const { t } = useLocale()\n const { borderClasses } = useBorder(props)\n const { densityClasses } = useDensity(props)\n const { elevationClasses } = useElevation(props)\n const { roundedClasses } = useRounded(props)\n const { sizeClasses } = useSize(props)\n const { themeClasses } = provideTheme(props)\n\n const isActive = useProxiedModel(props, 'modelValue')\n const group = useGroupItem(props, VChipGroupSymbol, false)\n const link = useLink(props, attrs)\n const isLink = toRef(() => props.link !== false && link.isLink.value)\n const isClickable = computed(() =>\n !props.disabled &&\n props.link !== false &&\n (!!group || props.link || link.isClickable.value)\n )\n const closeProps = toRef(() => ({\n 'aria-label': t(props.closeLabel),\n onClick (e: MouseEvent) {\n e.preventDefault()\n e.stopPropagation()\n\n isActive.value = false\n\n emit('click:close', e)\n },\n }))\n\n const { colorClasses, colorStyles, variantClasses } = useVariant(() => {\n const showColor = !group || group.isSelected.value\n return ({\n color: showColor ? props.color ?? props.baseColor : props.baseColor,\n variant: props.variant,\n })\n })\n\n function onClick (e: MouseEvent) {\n emit('click', e)\n\n if (!isClickable.value) return\n\n link.navigate?.(e)\n group?.toggle()\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 return () => {\n const Tag = (link.isLink.value) ? 'a' : props.tag\n const hasAppendMedia = !!(props.appendIcon || props.appendAvatar)\n const hasAppend = !!(hasAppendMedia || slots.append)\n const hasClose = !!(slots.close || props.closable)\n const hasFilter = !!(slots.filter || props.filter) && group\n const hasPrependMedia = !!(props.prependIcon || props.prependAvatar)\n const hasPrepend = !!(hasPrependMedia || slots.prepend)\n\n return isActive.value && (\n <Tag\n class={[\n 'v-chip',\n {\n 'v-chip--disabled': props.disabled,\n 'v-chip--label': props.label,\n 'v-chip--link': isClickable.value,\n 'v-chip--filter': hasFilter,\n 'v-chip--pill': props.pill,\n [`${props.activeClass}`]: props.activeClass && link.isActive?.value,\n },\n themeClasses.value,\n borderClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n roundedClasses.value,\n sizeClasses.value,\n variantClasses.value,\n group?.selectedClass.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n props.style,\n ]}\n disabled={ props.disabled || undefined }\n draggable={ props.draggable }\n tabindex={ isClickable.value ? 0 : undefined }\n onClick={ onClick }\n onKeydown={ isClickable.value && !isLink.value && onKeyDown }\n v-ripple={[isClickable.value && props.ripple, null]}\n { ...link.linkProps }\n >\n { genOverlays(isClickable.value, 'v-chip') }\n\n { hasFilter && (\n <VExpandXTransition key=\"filter\">\n <div\n class=\"v-chip__filter\"\n v-show={ group.isSelected.value }\n >\n { !slots.filter ? (\n <VIcon\n key=\"filter-icon\"\n icon={ props.filterIcon }\n />\n ) : (\n <VDefaultsProvider\n key=\"filter-defaults\"\n disabled={ !props.filterIcon }\n defaults={{\n VIcon: { icon: props.filterIcon },\n }}\n v-slots:default={ slots.filter }\n />\n )}\n </div>\n </VExpandXTransition>\n )}\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-chip__prepend\">\n { !slots.prepend ? (\n <>\n { props.prependIcon && (\n <VIcon\n key=\"prepend-icon\"\n icon={ props.prependIcon }\n start\n />\n )}\n\n { props.prependAvatar && (\n <VAvatar\n key=\"prepend-avatar\"\n image={ props.prependAvatar }\n start\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !hasPrependMedia }\n defaults={{\n VAvatar: {\n image: props.prependAvatar,\n start: true,\n },\n VIcon: {\n icon: props.prependIcon,\n start: true,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-chip__content\" data-no-activator=\"\">\n { slots.default?.({\n isSelected: group?.isSelected.value,\n selectedClass: group?.selectedClass.value,\n select: group?.select,\n toggle: group?.toggle,\n value: group?.value.value,\n disabled: props.disabled,\n }) ?? toDisplayString(props.text)}\n </div>\n\n { hasAppend && (\n <div key=\"append\" class=\"v-chip__append\">\n { !slots.append ? (\n <>\n { props.appendIcon && (\n <VIcon\n key=\"append-icon\"\n end\n icon={ props.appendIcon }\n />\n )}\n\n { props.appendAvatar && (\n <VAvatar\n key=\"append-avatar\"\n end\n image={ props.appendAvatar }\n />\n )}\n </>\n ) : (\n <VDefaultsProvider\n key=\"append-defaults\"\n disabled={ !hasAppendMedia }\n defaults={{\n VAvatar: {\n end: true,\n image: props.appendAvatar,\n },\n VIcon: {\n end: true,\n icon: props.appendIcon,\n },\n }}\n v-slots:default={ slots.append }\n />\n )}\n </div>\n )}\n\n { hasClose && (\n <button\n key=\"close\"\n class=\"v-chip__close\"\n type=\"button\"\n data-testid=\"close-chip\"\n { ...closeProps.value }\n >\n { !slots.close ? (\n <VIcon\n key=\"close-icon\"\n icon={ props.closeIcon }\n size=\"x-small\"\n />\n ) : (\n <VDefaultsProvider\n key=\"close-defaults\"\n defaults={{\n VIcon: {\n icon: props.closeIcon,\n size: 'x-small',\n },\n }}\n v-slots:default={ slots.close }\n />\n )}\n </button>\n )}\n </Tag>\n )\n }\n },\n})\n\nexport type VChip = InstanceType<typeof VChip>\n"],"mappings":"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","ignoreList":[]}
@@ -54,11 +54,11 @@ export const VChipGroup = genericComponent()({
54
54
  } = useGroup(props, VChipGroupSymbol);
55
55
  provideDefaults({
56
56
  VChip: {
57
- baseColor: toRef(props, 'baseColor'),
58
- color: toRef(props, 'color'),
59
- disabled: toRef(props, 'disabled'),
60
- filter: toRef(props, 'filter'),
61
- variant: toRef(props, 'variant')
57
+ baseColor: toRef(() => props.baseColor),
58
+ color: toRef(() => props.color),
59
+ disabled: toRef(() => props.disabled),
60
+ filter: toRef(() => props.filter),
61
+ variant: toRef(() => props.variant)
62
62
  }
63
63
  });
64
64
  useRender(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"VChipGroup.js","names":["makeVSlideGroupProps","VSlideGroup","makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","toRef","deepEqual","genericComponent","propsFactory","useRender","VChipGroupSymbol","Symbol","for","makeVChipGroupProps","baseColor","String","column","Boolean","filter","valueComparator","type","Function","default","selectedClass","variant","VChipGroup","name","props","emits","value","setup","_ref","slots","themeClasses","isSelected","select","next","prev","selected","VChip","color","disabled","slideGroupProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VChipGroup/VChipGroup.tsx"],"sourcesContent":["// Styles\nimport './VChipGroup.sass'\n\n// Components\nimport { makeVSlideGroupProps, VSlideGroup } from '@/components/VSlideGroup/VSlideGroup'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group')\n\nexport const makeVChipGroupProps = propsFactory({\n baseColor: String,\n column: Boolean,\n filter: Boolean,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeVSlideGroupProps(),\n ...makeComponentProps(),\n ...makeGroupProps({ selectedClass: 'v-chip--selected' }),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n}, 'VChipGroup')\n\ntype VChipGroupSlots = {\n default: {\n isSelected: (id: string) => boolean\n select: (id: string, value: boolean) => void\n next: () => void\n prev: () => void\n selected: readonly string[]\n }\n}\n\nexport const VChipGroup = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VChipGroupSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VChipGroup',\n\n props: makeVChipGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VChipGroupSymbol)\n\n provideDefaults({\n VChip: {\n baseColor: toRef(props, 'baseColor'),\n color: toRef(props, 'color'),\n disabled: toRef(props, 'disabled'),\n filter: toRef(props, 'filter'),\n variant: toRef(props, 'variant'),\n },\n })\n\n useRender(() => {\n const slideGroupProps = VSlideGroup.filterProps(props)\n\n return (\n <VSlideGroup\n { ...slideGroupProps }\n class={[\n 'v-chip-group',\n {\n 'v-chip-group--column': props.column,\n },\n themeClasses.value,\n props.class,\n ]}\n style={ props.style }\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n </VSlideGroup>\n )\n })\n\n return {}\n },\n})\n\nexport type VChipGroup = InstanceType<typeof VChipGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,oBAAoB,EAAEC,WAAW,yCAE1C;AAAA,SACSC,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,gBAAgB,wCAEzB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,SAAS,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,+BAE7D;AAIA,OAAO,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAElE,OAAO,MAAMC,mBAAmB,GAAGL,YAAY,CAAC;EAC9CM,SAAS,EAAEC,MAAM;EACjBC,MAAM,EAAEC,OAAO;EACfC,MAAM,EAAED,OAAO;EACfE,eAAe,EAAE;IACfC,IAAI,EAAEC,QAAsC;IAC5CC,OAAO,EAAEhB;EACX,CAAC;EAED,GAAGX,oBAAoB,CAAC,CAAC;EACzB,GAAGE,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC;IAAEwB,aAAa,EAAE;EAAmB,CAAC,CAAC;EACxD,GAAGtB,YAAY,CAAC,CAAC;EACjB,GAAGC,cAAc,CAAC,CAAC;EACnB,GAAGE,gBAAgB,CAAC;IAAEoB,OAAO,EAAE;EAAQ,CAAU;AACnD,CAAC,EAAE,YAAY,CAAC;AAYhB,OAAO,MAAMC,UAAU,GAAGlB,gBAAgB,CAMK,CAAC,CAAC;EAC/CmB,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEd,mBAAmB,CAAC,CAAC;EAE5Be,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;IAAa,CAAC,GAAG9B,YAAY,CAACwB,KAAK,CAAC;IAC5C,MAAM;MAAEO,UAAU;MAAEC,MAAM;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGtC,QAAQ,CAAC2B,KAAK,EAAEjB,gBAAgB,CAAC;IAEtFZ,eAAe,CAAC;MACdyC,KAAK,EAAE;QACLzB,SAAS,EAAET,KAAK,CAACsB,KAAK,EAAE,WAAW,CAAC;QACpCa,KAAK,EAAEnC,KAAK,CAACsB,KAAK,EAAE,OAAO,CAAC;QAC5Bc,QAAQ,EAAEpC,KAAK,CAACsB,KAAK,EAAE,UAAU,CAAC;QAClCT,MAAM,EAAEb,KAAK,CAACsB,KAAK,EAAE,QAAQ,CAAC;QAC9BH,OAAO,EAAEnB,KAAK,CAACsB,KAAK,EAAE,SAAS;MACjC;IACF,CAAC,CAAC;IAEFlB,SAAS,CAAC,MAAM;MACd,MAAMiC,eAAe,GAAG9C,WAAW,CAAC+C,WAAW,CAAChB,KAAK,CAAC;MAEtD,OAAAiB,YAAA,CAAAhD,WAAA,EAAAiD,WAAA,CAESH,eAAe;QAAA,SACb,CACL,cAAc,EACd;UACE,sBAAsB,EAAEf,KAAK,CAACX;QAChC,CAAC,EACDiB,YAAY,CAACJ,KAAK,EAClBF,KAAK,CAACmB,KAAK,CACZ;QAAA,SACOnB,KAAK,CAACoB;MAAK;QAAAzB,OAAA,EAAAA,CAAA,MAEjBU,KAAK,CAACV,OAAO,GAAG;UAChBY,UAAU;UACVC,MAAM;UACNC,IAAI;UACJC,IAAI;UACJC,QAAQ,EAAEA,QAAQ,CAACT;QACrB,CAAC,CAAC;MAAA;IAGR,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VChipGroup.js","names":["makeVSlideGroupProps","VSlideGroup","makeComponentProps","provideDefaults","makeGroupProps","useGroup","makeTagProps","makeThemeProps","provideTheme","makeVariantProps","toRef","deepEqual","genericComponent","propsFactory","useRender","VChipGroupSymbol","Symbol","for","makeVChipGroupProps","baseColor","String","column","Boolean","filter","valueComparator","type","Function","default","selectedClass","variant","VChipGroup","name","props","emits","value","setup","_ref","slots","themeClasses","isSelected","select","next","prev","selected","VChip","color","disabled","slideGroupProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VChipGroup/VChipGroup.tsx"],"sourcesContent":["// Styles\nimport './VChipGroup.sass'\n\n// Components\nimport { makeVSlideGroupProps, VSlideGroup } from '@/components/VSlideGroup/VSlideGroup'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { provideDefaults } from '@/composables/defaults'\nimport { makeGroupProps, useGroup } from '@/composables/group'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { makeVariantProps } from '@/composables/variant'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { deepEqual, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { GenericProps } from '@/util'\n\nexport const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group')\n\nexport const makeVChipGroupProps = propsFactory({\n baseColor: String,\n column: Boolean,\n filter: Boolean,\n valueComparator: {\n type: Function as PropType<typeof deepEqual>,\n default: deepEqual,\n },\n\n ...makeVSlideGroupProps(),\n ...makeComponentProps(),\n ...makeGroupProps({ selectedClass: 'v-chip--selected' }),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'tonal' } as const),\n}, 'VChipGroup')\n\ntype VChipGroupSlots = {\n default: {\n isSelected: (id: string) => boolean\n select: (id: string, value: boolean) => void\n next: () => void\n prev: () => void\n selected: readonly string[]\n }\n}\n\nexport const VChipGroup = genericComponent<new <T>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VChipGroupSlots,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VChipGroup',\n\n props: makeVChipGroupProps(),\n\n emits: {\n 'update:modelValue': (value: any) => true,\n },\n\n setup (props, { slots }) {\n const { themeClasses } = provideTheme(props)\n const { isSelected, select, next, prev, selected } = useGroup(props, VChipGroupSymbol)\n\n provideDefaults({\n VChip: {\n baseColor: toRef(() => props.baseColor),\n color: toRef(() => props.color),\n disabled: toRef(() => props.disabled),\n filter: toRef(() => props.filter),\n variant: toRef(() => props.variant),\n },\n })\n\n useRender(() => {\n const slideGroupProps = VSlideGroup.filterProps(props)\n\n return (\n <VSlideGroup\n { ...slideGroupProps }\n class={[\n 'v-chip-group',\n {\n 'v-chip-group--column': props.column,\n },\n themeClasses.value,\n props.class,\n ]}\n style={ props.style }\n >\n { slots.default?.({\n isSelected,\n select,\n next,\n prev,\n selected: selected.value,\n })}\n </VSlideGroup>\n )\n })\n\n return {}\n },\n})\n\nexport type VChipGroup = InstanceType<typeof VChipGroup>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,oBAAoB,EAAEC,WAAW,yCAE1C;AAAA,SACSC,kBAAkB;AAAA,SAClBC,eAAe;AAAA,SACfC,cAAc,EAAEC,QAAQ;AAAA,SACxBC,YAAY;AAAA,SACZC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,gBAAgB,wCAEzB;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,SAAS,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,+BAE7D;AAIA,OAAO,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,GAAG,CAAC,sBAAsB,CAAC;AAElE,OAAO,MAAMC,mBAAmB,GAAGL,YAAY,CAAC;EAC9CM,SAAS,EAAEC,MAAM;EACjBC,MAAM,EAAEC,OAAO;EACfC,MAAM,EAAED,OAAO;EACfE,eAAe,EAAE;IACfC,IAAI,EAAEC,QAAsC;IAC5CC,OAAO,EAAEhB;EACX,CAAC;EAED,GAAGX,oBAAoB,CAAC,CAAC;EACzB,GAAGE,kBAAkB,CAAC,CAAC;EACvB,GAAGE,cAAc,CAAC;IAAEwB,aAAa,EAAE;EAAmB,CAAC,CAAC;EACxD,GAAGtB,YAAY,CAAC,CAAC;EACjB,GAAGC,cAAc,CAAC,CAAC;EACnB,GAAGE,gBAAgB,CAAC;IAAEoB,OAAO,EAAE;EAAQ,CAAU;AACnD,CAAC,EAAE,YAAY,CAAC;AAYhB,OAAO,MAAMC,UAAU,GAAGlB,gBAAgB,CAMK,CAAC,CAAC;EAC/CmB,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEd,mBAAmB,CAAC,CAAC;EAE5Be,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;IAAa,CAAC,GAAG9B,YAAY,CAACwB,KAAK,CAAC;IAC5C,MAAM;MAAEO,UAAU;MAAEC,MAAM;MAAEC,IAAI;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGtC,QAAQ,CAAC2B,KAAK,EAAEjB,gBAAgB,CAAC;IAEtFZ,eAAe,CAAC;MACdyC,KAAK,EAAE;QACLzB,SAAS,EAAET,KAAK,CAAC,MAAMsB,KAAK,CAACb,SAAS,CAAC;QACvC0B,KAAK,EAAEnC,KAAK,CAAC,MAAMsB,KAAK,CAACa,KAAK,CAAC;QAC/BC,QAAQ,EAAEpC,KAAK,CAAC,MAAMsB,KAAK,CAACc,QAAQ,CAAC;QACrCvB,MAAM,EAAEb,KAAK,CAAC,MAAMsB,KAAK,CAACT,MAAM,CAAC;QACjCM,OAAO,EAAEnB,KAAK,CAAC,MAAMsB,KAAK,CAACH,OAAO;MACpC;IACF,CAAC,CAAC;IAEFf,SAAS,CAAC,MAAM;MACd,MAAMiC,eAAe,GAAG9C,WAAW,CAAC+C,WAAW,CAAChB,KAAK,CAAC;MAEtD,OAAAiB,YAAA,CAAAhD,WAAA,EAAAiD,WAAA,CAESH,eAAe;QAAA,SACb,CACL,cAAc,EACd;UACE,sBAAsB,EAAEf,KAAK,CAACX;QAChC,CAAC,EACDiB,YAAY,CAACJ,KAAK,EAClBF,KAAK,CAACmB,KAAK,CACZ;QAAA,SACOnB,KAAK,CAACoB;MAAK;QAAAzB,OAAA,EAAAA,CAAA,MAEjBU,KAAK,CAACV,OAAO,GAAG;UAChBY,UAAU;UACVC,MAAM;UACNC,IAAI;UACJC,IAAI;UACJC,QAAQ,EAAEA,QAAQ,CAACT;QACrB,CAAC,CAAC;MAAA;IAGR,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -6,4 +6,7 @@
6
6
  font-size: 0.9em;
7
7
  font-weight: normal;
8
8
  padding: 0.2em 0.4em;
9
+ }
10
+ .v-code:has(> pre) {
11
+ display: inline-block;
9
12
  }
@@ -10,3 +10,6 @@
10
10
  font-size: $code-font-size
11
11
  font-weight: $code-font-weight
12
12
  padding: $code-padding
13
+
14
+ &:has(> pre)
15
+ display: inline-block
@@ -23,7 +23,7 @@ import { transformItem, useItems } from "../../composables/list-items.js";
23
23
  import { useLocale } from "../../composables/locale.js";
24
24
  import { useProxiedModel } from "../../composables/proxiedModel.js";
25
25
  import { makeTransitionProps } from "../../composables/transition.js"; // Utilities
26
- import { computed, mergeProps, nextTick, ref, shallowRef, watch } from 'vue';
26
+ import { computed, mergeProps, nextTick, ref, shallowRef, toRef, watch } from 'vue';
27
27
  import { checkPrintable, deepEqual, ensureValidVNode, genericComponent, IN_BROWSER, isComposingIgnoreKey, noop, omit, propsFactory, useRender, wrapInArray } from "../../util/index.js"; // Types
28
28
  export const makeVComboboxProps = propsFactory({
29
29
  autoSelectFirst: {
@@ -74,7 +74,6 @@ export const VCombobox = genericComponent()({
74
74
  const vVirtualScrollRef = ref();
75
75
  const selectionIndex = shallowRef(-1);
76
76
  let cleared = false;
77
- const color = computed(() => vTextFieldRef.value?.color);
78
77
  const {
79
78
  items,
80
79
  transformIn,
@@ -83,7 +82,7 @@ export const VCombobox = genericComponent()({
83
82
  const {
84
83
  textColorClasses,
85
84
  textColorStyles
86
- } = useTextColor(color);
85
+ } = useTextColor(() => vTextFieldRef.value?.color);
87
86
  const model = useProxiedModel(props, 'modelValue', [], v => transformIn(wrapInArray(v)), v => {
88
87
  const transformed = transformOut(v);
89
88
  return props.multiple ? transformed : transformed[0] ?? null;
@@ -138,7 +137,7 @@ export const VCombobox = genericComponent()({
138
137
  _menu.value = v;
139
138
  }
140
139
  });
141
- const label = computed(() => menu.value ? props.closeText : props.openText);
140
+ const label = toRef(() => menu.value ? props.closeText : props.openText);
142
141
  watch(_search, value => {
143
142
  if (cleared) {
144
143
  // wait for clear to finish, VTextField sets _search to null