vuetify 3.2.1 → 3.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/dist/json/attributes.json +1302 -870
  2. package/dist/json/importMap.json +8 -8
  3. package/dist/json/tags.json +112 -3
  4. package/dist/json/web-types.json +2973 -1917
  5. package/dist/vuetify-labs.css +67 -57
  6. package/dist/vuetify-labs.d.ts +2785 -11610
  7. package/dist/vuetify-labs.esm.js +2318 -2227
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +2318 -2227
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +31 -21
  12. package/dist/vuetify.d.ts +1786 -11406
  13. package/dist/vuetify.esm.js +1785 -1685
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +1785 -1685
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +612 -614
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.ts +1 -3
  21. package/lib/blueprints/md1.d.ts +1 -3
  22. package/lib/blueprints/md2.d.ts +1 -3
  23. package/lib/blueprints/md3.d.ts +1 -3
  24. package/lib/components/VAlert/VAlert.mjs +47 -46
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/index.d.ts +2 -2
  27. package/lib/components/VApp/VApp.mjs +9 -8
  28. package/lib/components/VApp/VApp.mjs.map +1 -1
  29. package/lib/components/VAppBar/VAppBar.mjs +28 -31
  30. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  31. package/lib/components/VAppBar/VAppBarNavIcon.mjs +14 -17
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  33. package/lib/components/VAppBar/index.d.ts +394 -28
  34. package/lib/components/VAutocomplete/VAutocomplete.css +1 -5
  35. package/lib/components/VAutocomplete/VAutocomplete.mjs +37 -34
  36. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  37. package/lib/components/VAutocomplete/VAutocomplete.sass +1 -6
  38. package/lib/components/VAutocomplete/index.d.ts +67 -1174
  39. package/lib/components/VBadge/VBadge.mjs +33 -32
  40. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  41. package/lib/components/VBanner/VBanner.mjs +21 -20
  42. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  43. package/lib/components/VBanner/VBannerActions.mjs +7 -6
  44. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  45. package/lib/components/VBanner/index.d.ts +2 -2
  46. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +35 -34
  47. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  48. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +24 -23
  49. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  50. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -5
  51. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  52. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +15 -14
  53. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  54. package/lib/components/VBreadcrumbs/index.d.ts +1 -0
  55. package/lib/components/VBtn/VBtn.mjs +7 -6
  56. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  57. package/lib/components/VBtnToggle/VBtnToggle.mjs +6 -5
  58. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  59. package/lib/components/VCard/VCard.mjs +38 -37
  60. package/lib/components/VCard/VCard.mjs.map +1 -1
  61. package/lib/components/VCard/VCardItem.mjs +12 -11
  62. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  63. package/lib/components/VCard/index.d.ts +4 -4
  64. package/lib/components/VCarousel/VCarousel.mjs +28 -27
  65. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  66. package/lib/components/VCarousel/VCarouselItem.mjs +18 -16
  67. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  68. package/lib/components/VCarousel/index.d.ts +170 -20
  69. package/lib/components/VCheckbox/VCheckbox.mjs +6 -5
  70. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  71. package/lib/components/VCheckbox/VCheckboxBtn.mjs +0 -1
  72. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  73. package/lib/components/VCheckbox/index.d.ts +24 -12
  74. package/lib/components/VChip/VChip.css +8 -0
  75. package/lib/components/VChip/VChip.mjs +60 -57
  76. package/lib/components/VChip/VChip.mjs.map +1 -1
  77. package/lib/components/VChip/VChip.sass +10 -0
  78. package/lib/components/VChip/index.d.ts +8 -8
  79. package/lib/components/VChipGroup/VChipGroup.mjs +19 -18
  80. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  81. package/lib/components/VColorPicker/VColorPicker.mjs +44 -39
  82. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  83. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +21 -20
  84. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  85. package/lib/components/VColorPicker/VColorPickerEdit.mjs +17 -16
  86. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  87. package/lib/components/VColorPicker/VColorPickerPreview.mjs +10 -9
  88. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  89. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +12 -11
  90. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  91. package/lib/components/VColorPicker/index.d.ts +4 -4
  92. package/lib/components/VColorPicker/util/index.mjs +2 -2
  93. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  94. package/lib/components/VCombobox/VCombobox.mjs +40 -37
  95. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  96. package/lib/components/VCombobox/index.d.ts +67 -1171
  97. package/lib/components/VCounter/VCounter.mjs +16 -15
  98. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  99. package/lib/components/VCounter/index.d.ts +25 -1774
  100. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +9 -8
  101. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  102. package/lib/components/VDialog/VDialog.mjs +18 -17
  103. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  104. package/lib/components/VDialog/index.d.ts +130 -1120
  105. package/lib/components/VDivider/VDivider.mjs +11 -10
  106. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  107. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +15 -15
  108. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  109. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +6 -5
  110. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  111. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +3 -5
  112. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  113. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +15 -14
  114. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  115. package/lib/components/VExpansionPanel/index.d.ts +15 -15
  116. package/lib/components/VField/VField.mjs +6 -2
  117. package/lib/components/VField/VField.mjs.map +1 -1
  118. package/lib/components/VField/VFieldLabel.mjs +6 -5
  119. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  120. package/lib/components/VFileInput/VFileInput.mjs +37 -35
  121. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  122. package/lib/components/VFileInput/index.d.ts +3 -3
  123. package/lib/components/VFooter/VFooter.mjs +19 -18
  124. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  125. package/lib/components/VForm/VForm.mjs +6 -5
  126. package/lib/components/VForm/VForm.mjs.map +1 -1
  127. package/lib/components/VForm/index.d.ts +3 -3
  128. package/lib/components/VGrid/VCol.mjs +26 -25
  129. package/lib/components/VGrid/VCol.mjs.map +1 -1
  130. package/lib/components/VGrid/VContainer.mjs +16 -11
  131. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  132. package/lib/components/VGrid/VRow.mjs +26 -25
  133. package/lib/components/VGrid/VRow.mjs.map +1 -1
  134. package/lib/components/VHover/VHover.mjs +10 -9
  135. package/lib/components/VHover/VHover.mjs.map +1 -1
  136. package/lib/components/VIcon/VIcon.mjs +28 -29
  137. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  138. package/lib/components/VImg/VImg.mjs +29 -28
  139. package/lib/components/VImg/VImg.mjs.map +1 -1
  140. package/lib/components/VItemGroup/VItemGroup.mjs +10 -9
  141. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  142. package/lib/components/VLabel/VLabel.mjs +8 -7
  143. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  144. package/lib/components/VLayout/VLayout.mjs +6 -5
  145. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  146. package/lib/components/VLayout/VLayoutItem.mjs +15 -14
  147. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  148. package/lib/components/VLazy/VLazy.mjs +21 -20
  149. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  150. package/lib/components/VList/VList.mjs +33 -32
  151. package/lib/components/VList/VList.mjs.map +1 -1
  152. package/lib/components/VList/VListChildren.mjs +5 -4
  153. package/lib/components/VList/VListChildren.mjs.map +1 -1
  154. package/lib/components/VList/VListGroup.mjs +2 -4
  155. package/lib/components/VList/VListGroup.mjs.map +1 -1
  156. package/lib/components/VList/VListItem.mjs +42 -41
  157. package/lib/components/VList/VListItem.mjs.map +1 -1
  158. package/lib/components/VList/VListItemAction.mjs +8 -7
  159. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  160. package/lib/components/VList/VListItemMedia.mjs +8 -7
  161. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  162. package/lib/components/VList/VListSubheader.mjs +10 -9
  163. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  164. package/lib/components/VList/index.d.ts +30 -30
  165. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +12 -11
  166. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  167. package/lib/components/VMain/VMain.mjs +9 -8
  168. package/lib/components/VMain/VMain.mjs.map +1 -1
  169. package/lib/components/VMenu/VMenu.mjs +18 -17
  170. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  171. package/lib/components/VMenu/index.d.ts +40 -1030
  172. package/lib/components/VMessages/VMessages.mjs +18 -17
  173. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  174. package/lib/components/VMessages/index.d.ts +25 -1774
  175. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +48 -54
  176. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  177. package/lib/components/VNavigationDrawer/sticky.mjs +9 -3
  178. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  179. package/lib/components/VOverlay/locationStrategies.mjs +5 -3
  180. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  181. package/lib/components/VPagination/VPagination.mjs +82 -81
  182. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  183. package/lib/components/VPagination/index.d.ts +8 -8
  184. package/lib/components/VParallax/VParallax.mjs +9 -8
  185. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  186. package/lib/components/VProgressCircular/VProgressCircular.mjs +25 -24
  187. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  188. package/lib/components/VProgressLinear/VProgressLinear.mjs +44 -42
  189. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  190. package/lib/components/VProgressLinear/index.d.ts +8 -8
  191. package/lib/components/VRadio/VRadio.mjs +8 -7
  192. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  193. package/lib/components/VRadio/index.d.ts +18 -12
  194. package/lib/components/VRadioGroup/VRadioGroup.mjs +22 -21
  195. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  196. package/lib/components/VRadioGroup/index.d.ts +16 -10
  197. package/lib/components/VRangeSlider/VRangeSlider.mjs +18 -13
  198. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  199. package/lib/components/VRating/VRating.mjs +44 -43
  200. package/lib/components/VRating/VRating.mjs.map +1 -1
  201. package/lib/components/VRating/index.d.ts +8 -8
  202. package/lib/components/VResponsive/VResponsive.mjs +8 -7
  203. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  204. package/lib/components/VSelect/VSelect.mjs +29 -21
  205. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  206. package/lib/components/VSelect/index.d.ts +64 -2506
  207. package/lib/components/VSelectionControl/index.d.ts +42 -36
  208. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +10 -10
  209. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  210. package/lib/components/VSelectionControlGroup/index.d.ts +28 -28
  211. package/lib/components/VSheet/VSheet.css +6 -0
  212. package/lib/components/VSheet/VSheet.mjs +1 -3
  213. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  214. package/lib/components/VSheet/_variables.scss +1 -1
  215. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +1 -3
  216. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  217. package/lib/components/VSlider/VSlider.mjs +18 -13
  218. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  219. package/lib/components/VSlider/VSliderThumb.mjs +26 -25
  220. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  221. package/lib/components/VSlider/VSliderTrack.mjs +13 -12
  222. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  223. package/lib/components/VSnackbar/VSnackbar.mjs +20 -19
  224. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  225. package/lib/components/VSwitch/VSwitch.mjs +13 -12
  226. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  227. package/lib/components/VSwitch/index.d.ts +18 -12
  228. package/lib/components/VSystemBar/VSystemBar.mjs +13 -12
  229. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  230. package/lib/components/VTable/VTable.mjs +12 -11
  231. package/lib/components/VTable/VTable.mjs.map +1 -1
  232. package/lib/components/VTabs/VTab.mjs +15 -14
  233. package/lib/components/VTabs/VTab.mjs.map +1 -1
  234. package/lib/components/VTabs/VTabs.mjs +28 -27
  235. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  236. package/lib/components/VTabs/index.d.ts +12 -12
  237. package/lib/components/VTextField/VTextField.mjs +1 -1
  238. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  239. package/lib/components/VTextField/index.d.ts +3 -3
  240. package/lib/components/VTextarea/VTextarea.mjs +27 -26
  241. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  242. package/lib/components/VTextarea/index.d.ts +3 -3
  243. package/lib/components/VThemeProvider/VThemeProvider.mjs +8 -7
  244. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  245. package/lib/components/VTimeline/VTimeline.mjs +46 -41
  246. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  247. package/lib/components/VTimeline/VTimelineDivider.mjs +14 -13
  248. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  249. package/lib/components/VTimeline/VTimelineItem.mjs +21 -20
  250. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  251. package/lib/components/VToolbar/VToolbar.mjs +6 -2
  252. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  253. package/lib/components/VToolbar/VToolbarItems.mjs +8 -7
  254. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  255. package/lib/components/VToolbar/index.d.ts +11 -11
  256. package/lib/components/VTooltip/VTooltip.mjs +20 -19
  257. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  258. package/lib/components/VTreeview/_mixins.sass +0 -0
  259. package/lib/components/VTreeview/util/filterTreeItems.mjs +0 -0
  260. package/lib/components/VValidation/VValidation.mjs +1 -3
  261. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  262. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +11 -10
  263. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  264. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +6 -5
  265. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  266. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  267. package/lib/components/VWindow/VWindowItem.mjs +15 -14
  268. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  269. package/lib/components/VWindow/index.d.ts +9 -9
  270. package/lib/components/index.d.ts +1755 -11373
  271. package/lib/components/transitions/createTransition.mjs +16 -15
  272. package/lib/components/transitions/createTransition.mjs.map +1 -1
  273. package/lib/components/transitions/dialog-transition.mjs +5 -4
  274. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  275. package/lib/components/transitions/index.d.ts +143 -143
  276. package/lib/composables/forwardRefs.mjs.map +1 -1
  277. package/lib/composables/icons.mjs +2 -2
  278. package/lib/composables/icons.mjs.map +1 -1
  279. package/lib/composables/scroll.mjs +16 -17
  280. package/lib/composables/scroll.mjs.map +1 -1
  281. package/lib/composables/theme.mjs +3 -3
  282. package/lib/composables/theme.mjs.map +1 -1
  283. package/lib/directives/click-outside/index.mjs +1 -1
  284. package/lib/directives/click-outside/index.mjs.map +1 -1
  285. package/lib/entry-bundler.mjs +1 -1
  286. package/lib/framework.mjs +1 -1
  287. package/lib/framework.mjs.map +1 -1
  288. package/lib/index.d.ts +4 -6
  289. package/lib/labs/VDataTable/VDataTable.mjs +53 -59
  290. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  291. package/lib/labs/VDataTable/VDataTableFooter.mjs +64 -63
  292. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  293. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +8 -7
  294. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  295. package/lib/labs/VDataTable/VDataTableHeaders.mjs +16 -15
  296. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  297. package/lib/labs/VDataTable/VDataTableRow.mjs +7 -6
  298. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  299. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -19
  300. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  301. package/lib/labs/VDataTable/VDataTableServer.mjs +53 -64
  302. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  303. package/lib/labs/VDataTable/VDataTableVirtual.mjs +65 -72
  304. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  305. package/lib/labs/VDataTable/composables/paginate.mjs +6 -1
  306. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  307. package/lib/labs/VDataTable/index.d.ts +991 -206
  308. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +54 -48
  309. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  310. package/lib/labs/VInfiniteScroll/index.d.ts +16 -1
  311. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +18 -17
  312. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  313. package/lib/labs/VSkeletonLoader/index.d.ts +9 -9
  314. package/lib/labs/components.d.ts +1011 -211
  315. package/lib/labs/date/date.mjs +7 -7
  316. package/lib/labs/date/date.mjs.map +1 -1
  317. package/lib/labs/date/index.d.ts +1 -3
  318. package/lib/locale/el.mjs +0 -0
  319. package/lib/locale/index.mjs +0 -0
  320. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vuetify v3.2.1
2
+ * Vuetify v3.2.3
3
3
  * Forged by John Leider
4
4
  * Released under the MIT License.
5
5
  */
@@ -1670,9 +1670,9 @@ const defaultThemeOptions = {
1670
1670
  variables: {
1671
1671
  'border-color': '#FFFFFF',
1672
1672
  'border-opacity': 0.12,
1673
- 'high-emphasis-opacity': 0.87,
1674
- 'medium-emphasis-opacity': 0.60,
1675
- 'disabled-opacity': 0.38,
1673
+ 'high-emphasis-opacity': 1,
1674
+ 'medium-emphasis-opacity': 0.70,
1675
+ 'disabled-opacity': 0.50,
1676
1676
  'idle-opacity': 0.10,
1677
1677
  'hover-opacity': 0.04,
1678
1678
  'focus-opacity': 0.12,
@@ -2201,15 +2201,16 @@ function useRtl() {
2201
2201
  };
2202
2202
  }
2203
2203
 
2204
+ const makeVAppProps = propsFactory({
2205
+ ...makeComponentProps(),
2206
+ ...makeLayoutProps({
2207
+ fullHeight: true
2208
+ }),
2209
+ ...makeThemeProps()
2210
+ }, 'v-app');
2204
2211
  const VApp = genericComponent()({
2205
2212
  name: 'VApp',
2206
- props: {
2207
- ...makeComponentProps(),
2208
- ...makeLayoutProps({
2209
- fullHeight: true
2210
- }),
2211
- ...makeThemeProps()
2212
- },
2213
+ props: makeVAppProps(),
2213
2214
  setup(props, _ref) {
2214
2215
  let {
2215
2216
  slots
@@ -2244,15 +2245,16 @@ const VApp = genericComponent()({
2244
2245
 
2245
2246
  // Types
2246
2247
 
2248
+ const makeDefaultsProviderProps = propsFactory({
2249
+ defaults: Object,
2250
+ disabled: Boolean,
2251
+ reset: [Number, String],
2252
+ root: Boolean,
2253
+ scoped: Boolean
2254
+ }, 'v-defaults-provider');
2247
2255
  const VDefaultsProvider = genericComponent(false)({
2248
2256
  name: 'VDefaultsProvider',
2249
- props: {
2250
- defaults: Object,
2251
- disabled: Boolean,
2252
- reset: [Number, String],
2253
- root: Boolean,
2254
- scoped: Boolean
2255
- },
2257
+ props: makeDefaultsProviderProps(),
2256
2258
  setup(props, _ref) {
2257
2259
  let {
2258
2260
  slots
@@ -2278,25 +2280,23 @@ const VDefaultsProvider = genericComponent(false)({
2278
2280
 
2279
2281
  // Types
2280
2282
 
2283
+ const makeTransitionProps$1 = propsFactory({
2284
+ disabled: Boolean,
2285
+ group: Boolean,
2286
+ hideOnLeave: Boolean,
2287
+ leaveAbsolute: Boolean,
2288
+ mode: String,
2289
+ origin: String
2290
+ }, 'transition');
2281
2291
  function createCssTransition(name) {
2282
2292
  let origin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'center center';
2283
2293
  let mode = arguments.length > 2 ? arguments[2] : undefined;
2284
2294
  return genericComponent()({
2285
2295
  name,
2286
- props: {
2287
- disabled: Boolean,
2288
- group: Boolean,
2289
- hideOnLeave: Boolean,
2290
- leaveAbsolute: Boolean,
2291
- mode: {
2292
- type: String,
2293
- default: mode
2294
- },
2295
- origin: {
2296
- type: String,
2297
- default: origin
2298
- }
2299
- },
2296
+ props: makeTransitionProps$1({
2297
+ mode,
2298
+ origin
2299
+ }),
2300
2300
  setup(props, _ref) {
2301
2301
  let {
2302
2302
  slots
@@ -2454,11 +2454,12 @@ function ExpandTransitionGenerator () {
2454
2454
 
2455
2455
  // Types
2456
2456
 
2457
+ const makeVDialogTransitionProps = propsFactory({
2458
+ target: Object
2459
+ }, 'v-dialog-transition');
2457
2460
  const VDialogTransition = genericComponent()({
2458
2461
  name: 'VDialogTransition',
2459
- props: {
2460
- target: Object
2461
- },
2462
+ props: makeVDialogTransitionProps(),
2462
2463
  setup(props, _ref) {
2463
2464
  let {
2464
2465
  slots
@@ -2648,14 +2649,15 @@ function useAspectStyles(props) {
2648
2649
  })
2649
2650
  };
2650
2651
  }
2652
+ const makeVResponsiveProps = propsFactory({
2653
+ aspectRatio: [String, Number],
2654
+ contentClass: String,
2655
+ ...makeComponentProps(),
2656
+ ...makeDimensionProps()
2657
+ }, 'v-responsive');
2651
2658
  const VResponsive = genericComponent()({
2652
2659
  name: 'VResponsive',
2653
- props: {
2654
- aspectRatio: [String, Number],
2655
- contentClass: String,
2656
- ...makeComponentProps(),
2657
- ...makeDimensionProps()
2658
- },
2660
+ props: makeVResponsiveProps(),
2659
2661
  setup(props, _ref) {
2660
2662
  let {
2661
2663
  slots
@@ -2757,38 +2759,39 @@ const MaybeTransition = (props, _ref) => {
2757
2759
 
2758
2760
  // Types
2759
2761
 
2762
+ const makeVImgProps = propsFactory({
2763
+ aspectRatio: [String, Number],
2764
+ alt: String,
2765
+ cover: Boolean,
2766
+ eager: Boolean,
2767
+ gradient: String,
2768
+ lazySrc: String,
2769
+ options: {
2770
+ type: Object,
2771
+ // For more information on types, navigate to:
2772
+ // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API
2773
+ default: () => ({
2774
+ root: undefined,
2775
+ rootMargin: undefined,
2776
+ threshold: undefined
2777
+ })
2778
+ },
2779
+ sizes: String,
2780
+ src: {
2781
+ type: [String, Object],
2782
+ default: ''
2783
+ },
2784
+ srcset: String,
2785
+ width: [String, Number],
2786
+ ...makeComponentProps(),
2787
+ ...makeTransitionProps()
2788
+ }, 'v-img');
2760
2789
  const VImg = genericComponent()({
2761
2790
  name: 'VImg',
2762
2791
  directives: {
2763
2792
  intersect: Intersect
2764
2793
  },
2765
- props: {
2766
- aspectRatio: [String, Number],
2767
- alt: String,
2768
- cover: Boolean,
2769
- eager: Boolean,
2770
- gradient: String,
2771
- lazySrc: String,
2772
- options: {
2773
- type: Object,
2774
- // For more information on types, navigate to:
2775
- // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API
2776
- default: () => ({
2777
- root: undefined,
2778
- rootMargin: undefined,
2779
- threshold: undefined
2780
- })
2781
- },
2782
- sizes: String,
2783
- src: {
2784
- type: [String, Object],
2785
- default: ''
2786
- },
2787
- srcset: String,
2788
- width: [String, Number],
2789
- ...makeComponentProps(),
2790
- ...makeTransitionProps()
2791
- },
2794
+ props: makeVImgProps(),
2792
2795
  emits: {
2793
2796
  loadstart: value => true,
2794
2797
  load: value => true,
@@ -3240,6 +3243,9 @@ const VToolbar = genericComponent()({
3240
3243
  const {
3241
3244
  themeClasses
3242
3245
  } = provideTheme(props);
3246
+ const {
3247
+ rtlClasses
3248
+ } = useRtl();
3243
3249
  const isExtended = ref(!!(props.extended || slots.extension?.()));
3244
3250
  const contentHeight = computed(() => parseInt(Number(props.height) + (props.density === 'prominent' ? Number(props.height) : 0) - (props.density === 'comfortable' ? 8 : 0) - (props.density === 'compact' ? 16 : 0), 10));
3245
3251
  const extensionHeight = computed(() => isExtended.value ? parseInt(Number(props.extensionHeight) + (props.density === 'prominent' ? Number(props.extensionHeight) : 0) - (props.density === 'comfortable' ? 4 : 0) - (props.density === 'compact' ? 8 : 0), 10) : 0);
@@ -3260,7 +3266,7 @@ const VToolbar = genericComponent()({
3260
3266
  'v-toolbar--flat': props.flat,
3261
3267
  'v-toolbar--floating': props.floating,
3262
3268
  [`v-toolbar--density-${props.density}`]: true
3263
- }, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, themeClasses.value, props.class],
3269
+ }, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, themeClasses.value, rtlClasses.value, props.class],
3264
3270
  "style": [backgroundColorStyles.value, props.style]
3265
3271
  }, {
3266
3272
  default: () => [hasImage && createVNode("div", {
@@ -3336,14 +3342,13 @@ const makeScrollProps = propsFactory({
3336
3342
  type: String
3337
3343
  },
3338
3344
  scrollThreshold: {
3339
- type: [String, Number]
3345
+ type: [String, Number],
3346
+ default: 300
3340
3347
  }
3341
3348
  }, 'scroll');
3342
3349
  function useScroll(props) {
3343
3350
  let args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
3344
3351
  const {
3345
- thresholdMetCallback,
3346
- scrollThreshold,
3347
3352
  canScroll
3348
3353
  } = args;
3349
3354
  let previousScroll = 0;
@@ -3353,8 +3358,16 @@ function useScroll(props) {
3353
3358
  const currentThreshold = ref(0);
3354
3359
  const isScrollActive = ref(false);
3355
3360
  const isScrollingUp = ref(false);
3356
- const computedScrollThreshold = computed(() => {
3357
- return Number(props.scrollThreshold ?? scrollThreshold ?? 300);
3361
+ const scrollThreshold = computed(() => {
3362
+ return Number(props.scrollThreshold);
3363
+ });
3364
+
3365
+ /**
3366
+ * 1: at top
3367
+ * 0: at threshold
3368
+ */
3369
+ const scrollRatio = computed(() => {
3370
+ return clamp((scrollThreshold.value - currentScroll.value) / scrollThreshold.value || 0);
3358
3371
  });
3359
3372
  const onScroll = () => {
3360
3373
  const targetEl = target.value;
@@ -3362,7 +3375,7 @@ function useScroll(props) {
3362
3375
  previousScroll = currentScroll.value;
3363
3376
  currentScroll.value = 'window' in targetEl ? targetEl.pageYOffset : targetEl.scrollTop;
3364
3377
  isScrollingUp.value = currentScroll.value < previousScroll;
3365
- currentThreshold.value = Math.abs(currentScroll.value - computedScrollThreshold.value);
3378
+ currentThreshold.value = Math.abs(currentScroll.value - scrollThreshold.value);
3366
3379
  };
3367
3380
  watch(isScrollingUp, () => {
3368
3381
  savedScroll.value = savedScroll.value || currentScroll.value;
@@ -3390,15 +3403,6 @@ function useScroll(props) {
3390
3403
  onBeforeUnmount(() => {
3391
3404
  target.value?.removeEventListener('scroll', onScroll);
3392
3405
  });
3393
- thresholdMetCallback && watch(() => Math.abs(currentScroll.value - savedScroll.value) > computedScrollThreshold.value, thresholdMet => {
3394
- thresholdMet && thresholdMetCallback({
3395
- currentThreshold: currentThreshold.value,
3396
- isScrollingUp: isScrollingUp.value,
3397
- savedScroll
3398
- });
3399
- }, {
3400
- immediate: true
3401
- });
3402
3406
 
3403
3407
  // Do we need this? If yes - seems that
3404
3408
  // there's no need to expose onScroll
@@ -3406,10 +3410,11 @@ function useScroll(props) {
3406
3410
  immediate: true
3407
3411
  });
3408
3412
  return {
3409
- computedScrollThreshold,
3413
+ scrollThreshold,
3410
3414
  currentScroll,
3411
3415
  currentThreshold,
3412
3416
  isScrollActive,
3417
+ scrollRatio,
3413
3418
  // required only for testing
3414
3419
  // probably can be removed
3415
3420
  // later (2 chars chlng)
@@ -3439,27 +3444,28 @@ function useSsrBoot() {
3439
3444
 
3440
3445
  // Types
3441
3446
 
3447
+ const makeVAppBarProps = propsFactory({
3448
+ scrollBehavior: String,
3449
+ modelValue: {
3450
+ type: Boolean,
3451
+ default: true
3452
+ },
3453
+ location: {
3454
+ type: String,
3455
+ default: 'top',
3456
+ validator: value => ['top', 'bottom'].includes(value)
3457
+ },
3458
+ ...makeVToolbarProps(),
3459
+ ...makeLayoutItemProps(),
3460
+ ...makeScrollProps(),
3461
+ height: {
3462
+ type: [Number, String],
3463
+ default: 64
3464
+ }
3465
+ }, 'v-app-bar');
3442
3466
  const VAppBar = genericComponent()({
3443
3467
  name: 'VAppBar',
3444
- props: {
3445
- scrollBehavior: String,
3446
- modelValue: {
3447
- type: Boolean,
3448
- default: true
3449
- },
3450
- location: {
3451
- type: String,
3452
- default: 'top',
3453
- validator: value => ['top', 'bottom'].includes(value)
3454
- },
3455
- ...makeVToolbarProps(),
3456
- ...makeLayoutItemProps(),
3457
- ...makeScrollProps(),
3458
- height: {
3459
- type: [Number, String],
3460
- default: 64
3461
- }
3462
- },
3468
+ props: makeVAppBarProps(),
3463
3469
  emits: {
3464
3470
  'update:modelValue': value => true
3465
3471
  },
@@ -3492,15 +3498,14 @@ const VAppBar = genericComponent()({
3492
3498
  });
3493
3499
  const {
3494
3500
  currentScroll,
3495
- currentThreshold,
3496
- computedScrollThreshold,
3497
- isScrollingUp
3501
+ scrollThreshold,
3502
+ isScrollingUp,
3503
+ scrollRatio
3498
3504
  } = useScroll(props, {
3499
3505
  canScroll
3500
3506
  });
3501
- const isCollapsed = computed(() => props.collapse || scrollBehavior.value.collapse && (scrollBehavior.value.inverted ? currentScroll.value < 1 : currentScroll.value > 0));
3502
- const isFlat = computed(() => props.flat || scrollBehavior.value.elevate && currentScroll.value === (scrollBehavior.value.inverted ? 1 : 0));
3503
- const scrollRatio = computed(() => Math.min((currentThreshold.value - currentScroll.value) / currentThreshold.value || 1, 1));
3507
+ const isCollapsed = computed(() => props.collapse || scrollBehavior.value.collapse && (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0));
3508
+ const isFlat = computed(() => props.flat || scrollBehavior.value.elevate && (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0));
3504
3509
  const opacity = computed(() => scrollBehavior.value.fadeImage ? scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value : undefined);
3505
3510
  const height = computed(() => {
3506
3511
  if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0;
@@ -3509,15 +3514,12 @@ const VAppBar = genericComponent()({
3509
3514
  return height + extensionHeight;
3510
3515
  });
3511
3516
  function setActive() {
3512
- const val = currentScroll.value;
3513
3517
  if (scrollBehavior.value.hide) {
3514
3518
  if (scrollBehavior.value.inverted) {
3515
- isActive.value = val > computedScrollThreshold.value;
3519
+ isActive.value = currentScroll.value > scrollThreshold.value;
3516
3520
  } else {
3517
- isActive.value = isScrollingUp.value || val < computedScrollThreshold.value;
3521
+ isActive.value = isScrollingUp.value || currentScroll.value < scrollThreshold.value;
3518
3522
  }
3519
- } else if (scrollBehavior.value.inverted) {
3520
- isActive.value = currentScroll.value === 0;
3521
3523
  } else {
3522
3524
  isActive.value = true;
3523
3525
  }
@@ -3893,12 +3895,13 @@ function getValues(items, ids) {
3893
3895
  // Types
3894
3896
 
3895
3897
  const VBtnToggleSymbol = Symbol.for('vuetify:v-btn-toggle');
3898
+ const makeVBtnToggleProps = propsFactory({
3899
+ ...makeVBtnGroupProps(),
3900
+ ...makeGroupProps()
3901
+ }, 'v-btn-toggle');
3896
3902
  const VBtnToggle = genericComponent()({
3897
3903
  name: 'VBtnToggle',
3898
- props: {
3899
- ...makeVBtnGroupProps(),
3900
- ...makeGroupProps()
3901
- },
3904
+ props: makeVBtnToggleProps(),
3902
3905
  emits: {
3903
3906
  'update:modelValue': value => true
3904
3907
  },
@@ -4093,7 +4096,7 @@ const useIcon = props => {
4093
4096
  const icons = inject$1(IconSymbol);
4094
4097
  if (!icons) throw new Error('Missing Vuetify Icons provide!');
4095
4098
  const iconData = computed(() => {
4096
- const iconAlias = isRef(props) ? props.value : props.icon;
4099
+ const iconAlias = unref(props);
4097
4100
  if (!iconAlias) return {
4098
4101
  component: VComponentIcon
4099
4102
  };
@@ -4160,8 +4163,6 @@ function useSize(props) {
4160
4163
  });
4161
4164
  }
4162
4165
 
4163
- // Types
4164
-
4165
4166
  const makeVIconProps = propsFactory({
4166
4167
  color: String,
4167
4168
  start: Boolean,
@@ -4182,20 +4183,13 @@ const VIcon = genericComponent()({
4182
4183
  attrs,
4183
4184
  slots
4184
4185
  } = _ref;
4185
- let slotIcon;
4186
- if (slots.default) {
4187
- slotIcon = computed(() => {
4188
- const slot = slots.default?.();
4189
- if (!slot) return;
4190
- return slot.filter(node => node.type === Text && node.children && typeof node.children === 'string')[0]?.children;
4191
- });
4192
- }
4186
+ const slotIcon = ref();
4193
4187
  const {
4194
4188
  themeClasses
4195
4189
  } = provideTheme(props);
4196
4190
  const {
4197
4191
  iconData
4198
- } = useIcon(slotIcon || props);
4192
+ } = useIcon(computed(() => slotIcon.value || props.icon));
4199
4193
  const {
4200
4194
  sizeClasses
4201
4195
  } = useSize(props);
@@ -4203,24 +4197,30 @@ const VIcon = genericComponent()({
4203
4197
  textColorClasses,
4204
4198
  textColorStyles
4205
4199
  } = useTextColor(toRef(props, 'color'));
4206
- useRender(() => createVNode(iconData.value.component, {
4207
- "tag": props.tag,
4208
- "icon": iconData.value.icon,
4209
- "class": ['v-icon', 'notranslate', themeClasses.value, sizeClasses.value, textColorClasses.value, {
4210
- 'v-icon--clickable': !!attrs.onClick,
4211
- 'v-icon--start': props.start,
4212
- 'v-icon--end': props.end
4213
- }, props.class],
4214
- "style": [!sizeClasses.value ? {
4215
- fontSize: convertToUnit(props.size),
4216
- height: convertToUnit(props.size),
4217
- width: convertToUnit(props.size)
4218
- } : undefined, textColorStyles.value, props.style],
4219
- "role": attrs.onClick ? 'button' : undefined,
4220
- "aria-hidden": !attrs.onClick
4221
- }, {
4222
- default: () => [slots.default?.()]
4223
- }));
4200
+ useRender(() => {
4201
+ const slotValue = slots.default?.();
4202
+ if (slotValue) {
4203
+ slotIcon.value = slotValue.filter(node => node.type === Text && node.children && typeof node.children === 'string')[0]?.children;
4204
+ }
4205
+ return createVNode(iconData.value.component, {
4206
+ "tag": props.tag,
4207
+ "icon": iconData.value.icon,
4208
+ "class": ['v-icon', 'notranslate', themeClasses.value, sizeClasses.value, textColorClasses.value, {
4209
+ 'v-icon--clickable': !!attrs.onClick,
4210
+ 'v-icon--start': props.start,
4211
+ 'v-icon--end': props.end
4212
+ }, props.class],
4213
+ "style": [!sizeClasses.value ? {
4214
+ fontSize: convertToUnit(props.size),
4215
+ height: convertToUnit(props.size),
4216
+ width: convertToUnit(props.size)
4217
+ } : undefined, textColorStyles.value, props.style],
4218
+ "role": attrs.onClick ? 'button' : undefined,
4219
+ "aria-hidden": !attrs.onClick
4220
+ }, {
4221
+ default: () => [slotValue]
4222
+ });
4223
+ });
4224
4224
  return {};
4225
4225
  }
4226
4226
  });
@@ -4255,31 +4255,32 @@ function useIntersectionObserver(callback, options) {
4255
4255
 
4256
4256
  // Types
4257
4257
 
4258
+ const makeVProgressCircularProps = propsFactory({
4259
+ bgColor: String,
4260
+ color: String,
4261
+ indeterminate: [Boolean, String],
4262
+ modelValue: {
4263
+ type: [Number, String],
4264
+ default: 0
4265
+ },
4266
+ rotate: {
4267
+ type: [Number, String],
4268
+ default: 0
4269
+ },
4270
+ width: {
4271
+ type: [Number, String],
4272
+ default: 4
4273
+ },
4274
+ ...makeComponentProps(),
4275
+ ...makeSizeProps(),
4276
+ ...makeTagProps({
4277
+ tag: 'div'
4278
+ }),
4279
+ ...makeThemeProps()
4280
+ }, 'v-progress-circular');
4258
4281
  const VProgressCircular = genericComponent()({
4259
4282
  name: 'VProgressCircular',
4260
- props: {
4261
- bgColor: String,
4262
- color: String,
4263
- indeterminate: [Boolean, String],
4264
- modelValue: {
4265
- type: [Number, String],
4266
- default: 0
4267
- },
4268
- rotate: {
4269
- type: [Number, String],
4270
- default: 0
4271
- },
4272
- width: {
4273
- type: [Number, String],
4274
- default: 4
4275
- },
4276
- ...makeComponentProps(),
4277
- ...makeSizeProps(),
4278
- ...makeTagProps({
4279
- tag: 'div'
4280
- }),
4281
- ...makeThemeProps()
4282
- },
4283
+ props: makeVProgressCircularProps(),
4283
4284
  setup(props, _ref) {
4284
4285
  let {
4285
4286
  slots
@@ -4716,47 +4717,48 @@ function useLocation(props) {
4716
4717
  };
4717
4718
  }
4718
4719
 
4720
+ const makeVProgressLinearProps = propsFactory({
4721
+ absolute: Boolean,
4722
+ active: {
4723
+ type: Boolean,
4724
+ default: true
4725
+ },
4726
+ bgColor: String,
4727
+ bgOpacity: [Number, String],
4728
+ bufferValue: {
4729
+ type: [Number, String],
4730
+ default: 0
4731
+ },
4732
+ clickable: Boolean,
4733
+ color: String,
4734
+ height: {
4735
+ type: [Number, String],
4736
+ default: 4
4737
+ },
4738
+ indeterminate: Boolean,
4739
+ max: {
4740
+ type: [Number, String],
4741
+ default: 100
4742
+ },
4743
+ modelValue: {
4744
+ type: [Number, String],
4745
+ default: 0
4746
+ },
4747
+ reverse: Boolean,
4748
+ stream: Boolean,
4749
+ striped: Boolean,
4750
+ roundedBar: Boolean,
4751
+ ...makeComponentProps(),
4752
+ ...makeLocationProps({
4753
+ location: 'top'
4754
+ }),
4755
+ ...makeRoundedProps(),
4756
+ ...makeTagProps(),
4757
+ ...makeThemeProps()
4758
+ }, 'v-progress-linear');
4719
4759
  const VProgressLinear = genericComponent()({
4720
4760
  name: 'VProgressLinear',
4721
- props: {
4722
- absolute: Boolean,
4723
- active: {
4724
- type: Boolean,
4725
- default: true
4726
- },
4727
- bgColor: String,
4728
- bgOpacity: [Number, String],
4729
- bufferValue: {
4730
- type: [Number, String],
4731
- default: 0
4732
- },
4733
- clickable: Boolean,
4734
- color: String,
4735
- height: {
4736
- type: [Number, String],
4737
- default: 4
4738
- },
4739
- indeterminate: Boolean,
4740
- max: {
4741
- type: [Number, String],
4742
- default: 100
4743
- },
4744
- modelValue: {
4745
- type: [Number, String],
4746
- default: 0
4747
- },
4748
- reverse: Boolean,
4749
- stream: Boolean,
4750
- striped: Boolean,
4751
- roundedBar: Boolean,
4752
- ...makeComponentProps(),
4753
- ...makeLocationProps({
4754
- location: 'top'
4755
- }),
4756
- ...makeRoundedProps(),
4757
- ...makeTagProps(),
4758
- ...makeThemeProps()
4759
- },
4761
+ props: makeVProgressLinearProps(),
4760
4762
  emits: {
4761
4763
  'update:modelValue': value => true
4762
4764
  },
@@ -4766,7 +4768,8 @@ const VProgressLinear = genericComponent()({
4766
4768
  } = _ref;
4767
4769
  const progress = useProxiedModel(props, 'modelValue');
4768
4770
  const {
4769
- isRtl
4771
+ isRtl,
4772
+ rtlClasses
4770
4773
  } = useRtl();
4771
4774
  const {
4772
4775
  themeClasses
@@ -4821,7 +4824,7 @@ const VProgressLinear = genericComponent()({
4821
4824
  'v-progress-linear--rounded': props.rounded,
4822
4825
  'v-progress-linear--rounded-bar': props.roundedBar,
4823
4826
  'v-progress-linear--striped': props.striped
4824
- }, roundedClasses.value, themeClasses.value, props.class],
4827
+ }, roundedClasses.value, themeClasses.value, rtlClasses.value, props.class],
4825
4828
  "style": [{
4826
4829
  bottom: props.location === 'bottom' ? 0 : undefined,
4827
4830
  top: props.location === 'top' ? 0 : undefined,
@@ -5057,7 +5060,7 @@ const makeVBtnProps = propsFactory({
5057
5060
  ...makeVariantProps({
5058
5061
  variant: 'elevated'
5059
5062
  })
5060
- }, 'VBtn');
5063
+ }, 'v-btn');
5061
5064
  const VBtn = genericComponent()({
5062
5065
  name: 'VBtn',
5063
5066
  directives: {
@@ -5127,6 +5130,11 @@ const VBtn = genericComponent()({
5127
5130
  if (props.value === undefined) return undefined;
5128
5131
  return Object(props.value) === props.value ? JSON.stringify(props.value, null, 0) : props.value;
5129
5132
  });
5133
+ function onClick(e) {
5134
+ if (isDisabled.value) return;
5135
+ link.navigate?.(e);
5136
+ group?.toggle();
5137
+ }
5130
5138
  useSelectLink(link, group?.select);
5131
5139
  useRender(() => {
5132
5140
  const Tag = link.isLink.value ? 'a' : props.tag;
@@ -5149,11 +5157,7 @@ const VBtn = genericComponent()({
5149
5157
  "style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, locationStyles.value, sizeStyles.value, props.style],
5150
5158
  "disabled": isDisabled.value || undefined,
5151
5159
  "href": link.href.value,
5152
- "onClick": e => {
5153
- if (isDisabled.value) return;
5154
- link.navigate?.(e);
5155
- group?.toggle();
5156
- },
5160
+ "onClick": onClick,
5157
5161
  "value": valueAttr.value
5158
5162
  }, {
5159
5163
  default: () => [genOverlays(true, 'v-btn'), !props.icon && hasPrepend && createVNode("span", {
@@ -5217,36 +5221,35 @@ const VBtn = genericComponent()({
5217
5221
 
5218
5222
  // Types
5219
5223
 
5224
+ const makeVAppBarNavIconProps = propsFactory({
5225
+ ...makeVBtnProps({
5226
+ icon: '$menu',
5227
+ variant: 'text'
5228
+ })
5229
+ }, 'v-app-bar-nav-icon');
5220
5230
  const VAppBarNavIcon = genericComponent()({
5221
5231
  name: 'VAppBarNavIcon',
5222
- props: {
5223
- icon: {
5224
- type: IconValue,
5225
- default: '$menu'
5226
- },
5227
- ...makeComponentProps()
5228
- },
5232
+ props: makeVAppBarNavIconProps(),
5229
5233
  setup(props, _ref) {
5230
5234
  let {
5231
5235
  slots
5232
5236
  } = _ref;
5233
- useRender(() => createVNode(VBtn, {
5234
- "class": ['v-app-bar-nav-icon', props.class],
5235
- "icon": props.icon,
5236
- "style": props.style
5237
- }, slots));
5237
+ useRender(() => createVNode(VBtn, mergeProps(props, {
5238
+ "class": ['v-app-bar-nav-icon']
5239
+ }), slots));
5238
5240
  return {};
5239
5241
  }
5240
5242
  });
5241
5243
 
5244
+ const makeVToolbarItemsProps = propsFactory({
5245
+ ...makeComponentProps(),
5246
+ ...makeVariantProps({
5247
+ variant: 'text'
5248
+ })
5249
+ }, 'v-toolbar-items');
5242
5250
  const VToolbarItems = genericComponent()({
5243
5251
  name: 'VToolbarItems',
5244
- props: {
5245
- ...makeComponentProps(),
5246
- ...makeVariantProps({
5247
- variant: 'text'
5248
- })
5249
- },
5252
+ props: makeVToolbarItemsProps(),
5250
5253
  setup(props, _ref) {
5251
5254
  let {
5252
5255
  slots
@@ -5288,53 +5291,54 @@ const VAlertTitle = createSimpleFunctional('v-alert-title');
5288
5291
  // Types
5289
5292
 
5290
5293
  const allowedTypes = ['success', 'info', 'warning', 'error'];
5294
+ const makeVAlertProps = propsFactory({
5295
+ border: {
5296
+ type: [Boolean, String],
5297
+ validator: val => {
5298
+ return typeof val === 'boolean' || ['top', 'end', 'bottom', 'start'].includes(val);
5299
+ }
5300
+ },
5301
+ borderColor: String,
5302
+ closable: Boolean,
5303
+ closeIcon: {
5304
+ type: IconValue,
5305
+ default: '$close'
5306
+ },
5307
+ closeLabel: {
5308
+ type: String,
5309
+ default: '$vuetify.close'
5310
+ },
5311
+ icon: {
5312
+ type: [Boolean, String, Function, Object],
5313
+ default: null
5314
+ },
5315
+ modelValue: {
5316
+ type: Boolean,
5317
+ default: true
5318
+ },
5319
+ prominent: Boolean,
5320
+ title: String,
5321
+ text: String,
5322
+ type: {
5323
+ type: String,
5324
+ validator: val => allowedTypes.includes(val)
5325
+ },
5326
+ ...makeComponentProps(),
5327
+ ...makeDensityProps(),
5328
+ ...makeDimensionProps(),
5329
+ ...makeElevationProps(),
5330
+ ...makeLocationProps(),
5331
+ ...makePositionProps(),
5332
+ ...makeRoundedProps(),
5333
+ ...makeTagProps(),
5334
+ ...makeThemeProps(),
5335
+ ...makeVariantProps({
5336
+ variant: 'flat'
5337
+ })
5338
+ }, 'v-alert');
5291
5339
  const VAlert = genericComponent()({
5292
5340
  name: 'VAlert',
5293
- props: {
5294
- border: {
5295
- type: [Boolean, String],
5296
- validator: val => {
5297
- return typeof val === 'boolean' || ['top', 'end', 'bottom', 'start'].includes(val);
5298
- }
5299
- },
5300
- borderColor: String,
5301
- closable: Boolean,
5302
- closeIcon: {
5303
- type: IconValue,
5304
- default: '$close'
5305
- },
5306
- closeLabel: {
5307
- type: String,
5308
- default: '$vuetify.close'
5309
- },
5310
- icon: {
5311
- type: [Boolean, String, Function, Object],
5312
- default: null
5313
- },
5314
- modelValue: {
5315
- type: Boolean,
5316
- default: true
5317
- },
5318
- prominent: Boolean,
5319
- title: String,
5320
- text: String,
5321
- type: {
5322
- type: String,
5323
- validator: val => allowedTypes.includes(val)
5324
- },
5325
- ...makeComponentProps(),
5326
- ...makeDensityProps(),
5327
- ...makeDimensionProps(),
5328
- ...makeElevationProps(),
5329
- ...makeLocationProps(),
5330
- ...makePositionProps(),
5331
- ...makeRoundedProps(),
5332
- ...makeTagProps(),
5333
- ...makeThemeProps(),
5334
- ...makeVariantProps({
5335
- variant: 'flat'
5336
- })
5337
- },
5341
+ props: makeVAlertProps(),
5338
5342
  emits: {
5339
5343
  'click:close': e => true,
5340
5344
  'update:modelValue': value => true
@@ -5495,14 +5499,15 @@ function useInputIcon(props) {
5495
5499
  };
5496
5500
  }
5497
5501
 
5502
+ const makeVLabelProps = propsFactory({
5503
+ text: String,
5504
+ clickable: Boolean,
5505
+ ...makeComponentProps(),
5506
+ ...makeThemeProps()
5507
+ }, 'v-label');
5498
5508
  const VLabel = genericComponent()({
5499
5509
  name: 'VLabel',
5500
- props: {
5501
- text: String,
5502
- clickable: Boolean,
5503
- ...makeComponentProps(),
5504
- ...makeThemeProps()
5505
- },
5510
+ props: makeVLabelProps(),
5506
5511
  setup(props, _ref) {
5507
5512
  let {
5508
5513
  slots
@@ -5517,12 +5522,13 @@ const VLabel = genericComponent()({
5517
5522
  }
5518
5523
  });
5519
5524
 
5525
+ const makeVFieldLabelProps = propsFactory({
5526
+ floating: Boolean,
5527
+ ...makeComponentProps()
5528
+ }, 'v-field-label');
5520
5529
  const VFieldLabel = genericComponent()({
5521
5530
  name: 'VFieldLabel',
5522
- props: {
5523
- floating: Boolean,
5524
- ...makeComponentProps()
5525
- },
5531
+ props: makeVFieldLabelProps(),
5526
5532
  setup(props, _ref) {
5527
5533
  let {
5528
5534
  slots
@@ -5641,6 +5647,9 @@ const VField = genericComponent()({
5641
5647
  const {
5642
5648
  roundedClasses
5643
5649
  } = useRounded(props);
5650
+ const {
5651
+ rtlClasses
5652
+ } = useRtl();
5644
5653
  const isActive = computed(() => props.dirty || props.active);
5645
5654
  const hasLabel = computed(() => !props.singleLine && !!(props.label || slots.label));
5646
5655
  const uid = getUid();
@@ -5734,7 +5743,7 @@ const VField = genericComponent()({
5734
5743
  'v-field--single-line': props.singleLine,
5735
5744
  'v-field--no-label': !label,
5736
5745
  [`v-field--variant-${props.variant}`]: true
5737
- }, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, props.class],
5746
+ }, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, rtlClasses.value, props.class],
5738
5747
  "style": [backgroundColorStyles.value, textColorStyles.value, props.style],
5739
5748
  "onClick": onClick
5740
5749
  }, attrs), [createVNode("div", {
@@ -5829,24 +5838,25 @@ function filterFieldProps(attrs) {
5829
5838
 
5830
5839
  // Types
5831
5840
 
5841
+ const makeVMessagesProps = propsFactory({
5842
+ active: Boolean,
5843
+ color: String,
5844
+ messages: {
5845
+ type: [Array, String],
5846
+ default: () => []
5847
+ },
5848
+ ...makeComponentProps(),
5849
+ ...makeTransitionProps({
5850
+ transition: {
5851
+ component: VSlideYTransition,
5852
+ leaveAbsolute: true,
5853
+ group: true
5854
+ }
5855
+ })
5856
+ }, 'v-messages');
5832
5857
  const VMessages = genericComponent()({
5833
5858
  name: 'VMessages',
5834
- props: {
5835
- active: Boolean,
5836
- color: String,
5837
- messages: {
5838
- type: [Array, String],
5839
- default: () => []
5840
- },
5841
- ...makeComponentProps(),
5842
- ...makeTransitionProps({
5843
- transition: {
5844
- component: VSlideYTransition,
5845
- leaveAbsolute: true,
5846
- group: true
5847
- }
5848
- })
5849
- },
5859
+ props: makeVMessagesProps(),
5850
5860
  setup(props, _ref) {
5851
5861
  let {
5852
5862
  slots
@@ -6258,23 +6268,24 @@ const VInput = genericComponent()({
6258
6268
  }
6259
6269
  });
6260
6270
 
6271
+ const makeVCounterProps = propsFactory({
6272
+ active: Boolean,
6273
+ max: [Number, String],
6274
+ value: {
6275
+ type: [Number, String],
6276
+ default: 0
6277
+ },
6278
+ ...makeComponentProps(),
6279
+ ...makeTransitionProps({
6280
+ transition: {
6281
+ component: VSlideYTransition
6282
+ }
6283
+ })
6284
+ }, 'v-counter');
6261
6285
  const VCounter = genericComponent()({
6262
6286
  name: 'VCounter',
6263
6287
  functional: true,
6264
- props: {
6265
- active: Boolean,
6266
- max: [Number, String],
6267
- value: {
6268
- type: [Number, String],
6269
- default: 0
6270
- },
6271
- ...makeComponentProps(),
6272
- ...makeTransitionProps({
6273
- transition: {
6274
- component: VSlideYTransition
6275
- }
6276
- })
6277
- },
6288
+ props: makeVCounterProps(),
6278
6289
  setup(props, _ref) {
6279
6290
  let {
6280
6291
  slots
@@ -6437,7 +6448,7 @@ const VTextField = genericComponent()({
6437
6448
  const vInputRef = ref();
6438
6449
  const vFieldRef = ref();
6439
6450
  const inputRef = ref();
6440
- const isActive = computed(() => activeTypes.includes(props.type) || props.persistentPlaceholder || isFocused.value);
6451
+ const isActive = computed(() => activeTypes.includes(props.type) || props.persistentPlaceholder || isFocused.value || props.active);
6441
6452
  function onFocus() {
6442
6453
  if (inputRef.value !== document.activeElement) {
6443
6454
  inputRef.value?.focus();
@@ -6576,6 +6587,7 @@ const VSelectionControlGroupSymbol = Symbol.for('vuetify:selection-control-group
6576
6587
  const makeSelectionControlGroupProps = propsFactory({
6577
6588
  color: String,
6578
6589
  disabled: Boolean,
6590
+ defaultsTarget: String,
6579
6591
  error: Boolean,
6580
6592
  id: String,
6581
6593
  inline: Boolean,
@@ -6597,19 +6609,18 @@ const makeSelectionControlGroupProps = propsFactory({
6597
6609
  type: Function,
6598
6610
  default: deepEqual
6599
6611
  },
6600
- ...makeThemeProps(),
6601
- ...makeDensityProps()
6612
+ ...makeComponentProps(),
6613
+ ...makeDensityProps(),
6614
+ ...makeThemeProps()
6615
+ }, 'selection-control-group');
6616
+ const makeVSelectionControlGroupProps = propsFactory({
6617
+ ...makeSelectionControlGroupProps({
6618
+ defaultsTarget: 'VSelectionControl'
6619
+ })
6602
6620
  }, 'v-selection-control-group');
6603
6621
  const VSelectionControlGroup = genericComponent()({
6604
6622
  name: 'VSelectionControlGroup',
6605
- props: {
6606
- defaultsTarget: {
6607
- type: String,
6608
- default: 'VSelectionControl'
6609
- },
6610
- ...makeComponentProps(),
6611
- ...makeSelectionControlGroupProps()
6612
- },
6623
+ props: makeVSelectionControlGroupProps(),
6613
6624
  emits: {
6614
6625
  'update:modelValue': val => true
6615
6626
  },
@@ -6873,7 +6884,6 @@ const VCheckboxBtn = genericComponent()({
6873
6884
  "class": ['v-checkbox-btn', props.class],
6874
6885
  "style": props.style,
6875
6886
  "type": "checkbox",
6876
- "inline": true,
6877
6887
  "falseIcon": falseIcon.value,
6878
6888
  "trueIcon": trueIcon.value,
6879
6889
  "aria-checked": props.indeterminate ? 'mixed' : undefined
@@ -6884,13 +6894,14 @@ const VCheckboxBtn = genericComponent()({
6884
6894
 
6885
6895
  // Types
6886
6896
 
6897
+ const makeVCheckboxProps = propsFactory({
6898
+ ...makeVInputProps(),
6899
+ ...omit(makeVCheckboxBtnProps(), ['inline'])
6900
+ }, 'v-checkbox');
6887
6901
  const VCheckbox = genericComponent()({
6888
6902
  name: 'VCheckbox',
6889
6903
  inheritAttrs: false,
6890
- props: {
6891
- ...makeVInputProps(),
6892
- ...omit(makeVCheckboxBtnProps(), ['inline'])
6893
- },
6904
+ props: makeVCheckboxProps(),
6894
6905
  emits: {
6895
6906
  'update:focused': focused => true
6896
6907
  },
@@ -7005,25 +7016,26 @@ const VAvatar = genericComponent()({
7005
7016
  // Types
7006
7017
 
7007
7018
  const VChipGroupSymbol = Symbol.for('vuetify:v-chip-group');
7019
+ const makeVChipGroupProps = propsFactory({
7020
+ column: Boolean,
7021
+ filter: Boolean,
7022
+ valueComparator: {
7023
+ type: Function,
7024
+ default: deepEqual
7025
+ },
7026
+ ...makeComponentProps(),
7027
+ ...makeGroupProps({
7028
+ selectedClass: 'v-chip--selected'
7029
+ }),
7030
+ ...makeTagProps(),
7031
+ ...makeThemeProps(),
7032
+ ...makeVariantProps({
7033
+ variant: 'tonal'
7034
+ })
7035
+ }, 'v-chip-group');
7008
7036
  const VChipGroup = genericComponent()({
7009
7037
  name: 'VChipGroup',
7010
- props: {
7011
- column: Boolean,
7012
- filter: Boolean,
7013
- valueComparator: {
7014
- type: Function,
7015
- default: deepEqual
7016
- },
7017
- ...makeComponentProps(),
7018
- ...makeGroupProps({
7019
- selectedClass: 'v-chip--selected'
7020
- }),
7021
- ...makeTagProps(),
7022
- ...makeThemeProps(),
7023
- ...makeVariantProps({
7024
- variant: 'tonal'
7025
- })
7026
- },
7038
+ props: makeVChipGroupProps(),
7027
7039
  emits: {
7028
7040
  'update:modelValue': value => true
7029
7041
  },
@@ -7067,65 +7079,66 @@ const VChipGroup = genericComponent()({
7067
7079
  }
7068
7080
  });
7069
7081
 
7082
+ const makeVChipProps = propsFactory({
7083
+ activeClass: String,
7084
+ appendAvatar: String,
7085
+ appendIcon: IconValue,
7086
+ closable: Boolean,
7087
+ closeIcon: {
7088
+ type: IconValue,
7089
+ default: '$delete'
7090
+ },
7091
+ closeLabel: {
7092
+ type: String,
7093
+ default: '$vuetify.close'
7094
+ },
7095
+ draggable: Boolean,
7096
+ filter: Boolean,
7097
+ filterIcon: {
7098
+ type: String,
7099
+ default: '$complete'
7100
+ },
7101
+ label: Boolean,
7102
+ link: {
7103
+ type: Boolean,
7104
+ default: undefined
7105
+ },
7106
+ pill: Boolean,
7107
+ prependAvatar: String,
7108
+ prependIcon: IconValue,
7109
+ ripple: {
7110
+ type: Boolean,
7111
+ default: true
7112
+ },
7113
+ text: String,
7114
+ modelValue: {
7115
+ type: Boolean,
7116
+ default: true
7117
+ },
7118
+ onClick: EventProp(),
7119
+ onClickOnce: EventProp(),
7120
+ ...makeBorderProps(),
7121
+ ...makeComponentProps(),
7122
+ ...makeDensityProps(),
7123
+ ...makeElevationProps(),
7124
+ ...makeGroupItemProps(),
7125
+ ...makeRoundedProps(),
7126
+ ...makeRouterProps(),
7127
+ ...makeSizeProps(),
7128
+ ...makeTagProps({
7129
+ tag: 'span'
7130
+ }),
7131
+ ...makeThemeProps(),
7132
+ ...makeVariantProps({
7133
+ variant: 'tonal'
7134
+ })
7135
+ }, 'v-chip');
7070
7136
  const VChip = genericComponent()({
7071
7137
  name: 'VChip',
7072
7138
  directives: {
7073
7139
  Ripple
7074
7140
  },
7075
- props: {
7076
- activeClass: String,
7077
- appendAvatar: String,
7078
- appendIcon: IconValue,
7079
- closable: Boolean,
7080
- closeIcon: {
7081
- type: IconValue,
7082
- default: '$delete'
7083
- },
7084
- closeLabel: {
7085
- type: String,
7086
- default: '$vuetify.close'
7087
- },
7088
- draggable: Boolean,
7089
- filter: Boolean,
7090
- filterIcon: {
7091
- type: String,
7092
- default: '$complete'
7093
- },
7094
- label: Boolean,
7095
- link: {
7096
- type: Boolean,
7097
- default: undefined
7098
- },
7099
- pill: Boolean,
7100
- prependAvatar: String,
7101
- prependIcon: IconValue,
7102
- ripple: {
7103
- type: Boolean,
7104
- default: true
7105
- },
7106
- text: String,
7107
- modelValue: {
7108
- type: Boolean,
7109
- default: true
7110
- },
7111
- onClick: EventProp(),
7112
- onClickOnce: EventProp(),
7113
- ...makeBorderProps(),
7114
- ...makeComponentProps(),
7115
- ...makeDensityProps(),
7116
- ...makeElevationProps(),
7117
- ...makeGroupItemProps(),
7118
- ...makeRoundedProps(),
7119
- ...makeRouterProps(),
7120
- ...makeSizeProps(),
7121
- ...makeTagProps({
7122
- tag: 'span'
7123
- }),
7124
- ...makeThemeProps(),
7125
- ...makeVariantProps({
7126
- variant: 'tonal'
7127
- })
7128
- },
7141
+ props: makeVChipProps(),
7129
7142
  emits: {
7130
7143
  'click:close': e => true,
7131
7144
  'update:modelValue': value => true,
@@ -7254,14 +7267,16 @@ const VChip = genericComponent()({
7254
7267
  start: true
7255
7268
  }
7256
7269
  }
7257
- }, slots.prepend)]), slots.default?.({
7270
+ }, slots.prepend)]), createVNode("div", {
7271
+ "class": "v-chip__content"
7272
+ }, [slots.default?.({
7258
7273
  isSelected: group?.isSelected.value,
7259
7274
  selectedClass: group?.selectedClass.value,
7260
7275
  select: group?.select,
7261
7276
  toggle: group?.toggle,
7262
7277
  value: group?.value.value,
7263
7278
  disabled: props.disabled
7264
- }) ?? props.text, hasAppend && createVNode("div", {
7279
+ }) ?? props.text]), hasAppend && createVNode("div", {
7265
7280
  "key": "append",
7266
7281
  "class": "v-chip__append"
7267
7282
  }, [!slots.append ? createVNode(Fragment, null, [props.appendIcon && createVNode(VIcon, {
@@ -7306,17 +7321,18 @@ const VChip = genericComponent()({
7306
7321
  }
7307
7322
  });
7308
7323
 
7324
+ const makeVDividerProps = propsFactory({
7325
+ color: String,
7326
+ inset: Boolean,
7327
+ length: [Number, String],
7328
+ thickness: [Number, String],
7329
+ vertical: Boolean,
7330
+ ...makeComponentProps(),
7331
+ ...makeThemeProps()
7332
+ }, 'v-divider');
7309
7333
  const VDivider = genericComponent()({
7310
7334
  name: 'VDivider',
7311
- props: {
7312
- color: String,
7313
- inset: Boolean,
7314
- length: [Number, String],
7315
- thickness: [Number, String],
7316
- vertical: Boolean,
7317
- ...makeComponentProps(),
7318
- ...makeThemeProps()
7319
- },
7335
+ props: makeVDividerProps(),
7320
7336
  setup(props, _ref) {
7321
7337
  let {
7322
7338
  attrs
@@ -7842,16 +7858,14 @@ const makeVListGroupProps = propsFactory({
7842
7858
  appendIcon: IconValue,
7843
7859
  fluid: Boolean,
7844
7860
  subgroup: Boolean,
7861
+ title: String,
7845
7862
  value: null,
7846
7863
  ...makeComponentProps(),
7847
7864
  ...makeTagProps()
7848
7865
  }, 'v-list-group');
7849
7866
  const VListGroup = genericComponent()({
7850
7867
  name: 'VListGroup',
7851
- props: {
7852
- title: String,
7853
- ...makeVListGroupProps()
7854
- },
7868
+ props: makeVListGroupProps(),
7855
7869
  setup(props, _ref2) {
7856
7870
  let {
7857
7871
  slots
@@ -7927,51 +7941,52 @@ const VListItemTitle = createSimpleFunctional('v-list-item-title');
7927
7941
 
7928
7942
  // Types
7929
7943
 
7944
+ const makeVListItemProps = propsFactory({
7945
+ active: {
7946
+ type: Boolean,
7947
+ default: undefined
7948
+ },
7949
+ activeClass: String,
7950
+ activeColor: String,
7951
+ appendAvatar: String,
7952
+ appendIcon: IconValue,
7953
+ disabled: Boolean,
7954
+ lines: String,
7955
+ link: {
7956
+ type: Boolean,
7957
+ default: undefined
7958
+ },
7959
+ nav: Boolean,
7960
+ prependAvatar: String,
7961
+ prependIcon: IconValue,
7962
+ ripple: {
7963
+ type: Boolean,
7964
+ default: true
7965
+ },
7966
+ subtitle: [String, Number, Boolean],
7967
+ title: [String, Number, Boolean],
7968
+ value: null,
7969
+ onClick: EventProp(),
7970
+ onClickOnce: EventProp(),
7971
+ ...makeBorderProps(),
7972
+ ...makeComponentProps(),
7973
+ ...makeDensityProps(),
7974
+ ...makeDimensionProps(),
7975
+ ...makeElevationProps(),
7976
+ ...makeRoundedProps(),
7977
+ ...makeRouterProps(),
7978
+ ...makeTagProps(),
7979
+ ...makeThemeProps(),
7980
+ ...makeVariantProps({
7981
+ variant: 'text'
7982
+ })
7983
+ }, 'v-list-item');
7930
7984
  const VListItem = genericComponent()({
7931
7985
  name: 'VListItem',
7932
7986
  directives: {
7933
7987
  Ripple
7934
7988
  },
7935
- props: {
7936
- active: {
7937
- type: Boolean,
7938
- default: undefined
7939
- },
7940
- activeClass: String,
7941
- activeColor: String,
7942
- appendAvatar: String,
7943
- appendIcon: IconValue,
7944
- disabled: Boolean,
7945
- lines: String,
7946
- link: {
7947
- type: Boolean,
7948
- default: undefined
7949
- },
7950
- nav: Boolean,
7951
- prependAvatar: String,
7952
- prependIcon: IconValue,
7953
- ripple: {
7954
- type: Boolean,
7955
- default: true
7956
- },
7957
- subtitle: [String, Number, Boolean],
7958
- title: [String, Number, Boolean],
7959
- value: null,
7960
- onClick: EventProp(),
7961
- onClickOnce: EventProp(),
7962
- ...makeBorderProps(),
7963
- ...makeComponentProps(),
7964
- ...makeDensityProps(),
7965
- ...makeDimensionProps(),
7966
- ...makeElevationProps(),
7967
- ...makeRoundedProps(),
7968
- ...makeRouterProps(),
7969
- ...makeTagProps(),
7970
- ...makeThemeProps(),
7971
- ...makeVariantProps({
7972
- variant: 'text'
7973
- })
7974
- },
7989
+ props: makeVListItemProps(),
7975
7990
  emits: {
7976
7991
  click: e => true
7977
7992
  },
@@ -8158,16 +8173,17 @@ const VListItem = genericComponent()({
8158
8173
  }
8159
8174
  });
8160
8175
 
8176
+ const makeVListSubheaderProps = propsFactory({
8177
+ color: String,
8178
+ inset: Boolean,
8179
+ sticky: Boolean,
8180
+ title: String,
8181
+ ...makeComponentProps(),
8182
+ ...makeTagProps()
8183
+ }, 'v-list-subheader');
8161
8184
  const VListSubheader = genericComponent()({
8162
8185
  name: 'VListSubheader',
8163
- props: {
8164
- color: String,
8165
- inset: Boolean,
8166
- sticky: Boolean,
8167
- title: String,
8168
- ...makeComponentProps(),
8169
- ...makeTagProps()
8170
- },
8186
+ props: makeVListSubheaderProps(),
8171
8187
  setup(props, _ref) {
8172
8188
  let {
8173
8189
  slots
@@ -8198,11 +8214,12 @@ const VListSubheader = genericComponent()({
8198
8214
 
8199
8215
  // Types
8200
8216
 
8217
+ const makeVListChildrenProps = propsFactory({
8218
+ items: Array
8219
+ }, 'v-list-children');
8201
8220
  const VListChildren = genericComponent()({
8202
8221
  name: 'VListChildren',
8203
- props: {
8204
- items: Array
8205
- },
8222
+ props: makeVListChildrenProps(),
8206
8223
  setup(props, _ref) {
8207
8224
  let {
8208
8225
  slots
@@ -8388,39 +8405,40 @@ function useListItems(props) {
8388
8405
  items
8389
8406
  };
8390
8407
  }
8408
+ const makeVListProps = propsFactory({
8409
+ activeColor: String,
8410
+ activeClass: String,
8411
+ bgColor: String,
8412
+ disabled: Boolean,
8413
+ lines: {
8414
+ type: [Boolean, String],
8415
+ default: 'one'
8416
+ },
8417
+ nav: Boolean,
8418
+ ...makeNestedProps({
8419
+ selectStrategy: 'single-leaf',
8420
+ openStrategy: 'list'
8421
+ }),
8422
+ ...makeBorderProps(),
8423
+ ...makeComponentProps(),
8424
+ ...makeDensityProps(),
8425
+ ...makeDimensionProps(),
8426
+ ...makeElevationProps(),
8427
+ itemType: {
8428
+ type: String,
8429
+ default: 'type'
8430
+ },
8431
+ ...makeItemsProps(),
8432
+ ...makeRoundedProps(),
8433
+ ...makeTagProps(),
8434
+ ...makeThemeProps(),
8435
+ ...makeVariantProps({
8436
+ variant: 'text'
8437
+ })
8438
+ }, 'v-list');
8391
8439
  const VList = genericComponent()({
8392
8440
  name: 'VList',
8393
- props: {
8394
- activeColor: String,
8395
- activeClass: String,
8396
- bgColor: String,
8397
- disabled: Boolean,
8398
- lines: {
8399
- type: [Boolean, String],
8400
- default: 'one'
8401
- },
8402
- nav: Boolean,
8403
- ...makeNestedProps({
8404
- selectStrategy: 'single-leaf',
8405
- openStrategy: 'list'
8406
- }),
8407
- ...makeBorderProps(),
8408
- ...makeComponentProps(),
8409
- ...makeDensityProps(),
8410
- ...makeDimensionProps(),
8411
- ...makeElevationProps(),
8412
- itemType: {
8413
- type: String,
8414
- default: 'type'
8415
- },
8416
- ...makeItemsProps(),
8417
- ...makeRoundedProps(),
8418
- ...makeTagProps(),
8419
- ...makeThemeProps(),
8420
- ...makeVariantProps({
8421
- variant: 'text'
8422
- })
8423
- },
8441
+ props: makeVListProps(),
8424
8442
  emits: {
8425
8443
  'update:selected': val => true,
8426
8444
  'update:opened': val => true,
@@ -8541,14 +8559,15 @@ const VList = genericComponent()({
8541
8559
 
8542
8560
  const VListImg = createSimpleFunctional('v-list-img');
8543
8561
 
8562
+ const makeVListItemActionProps = propsFactory({
8563
+ start: Boolean,
8564
+ end: Boolean,
8565
+ ...makeComponentProps(),
8566
+ ...makeTagProps()
8567
+ }, 'v-list-item-action');
8544
8568
  const VListItemAction = genericComponent()({
8545
8569
  name: 'VListItemAction',
8546
- props: {
8547
- start: Boolean,
8548
- end: Boolean,
8549
- ...makeComponentProps(),
8550
- ...makeTagProps()
8551
- },
8570
+ props: makeVListItemActionProps(),
8552
8571
  setup(props, _ref) {
8553
8572
  let {
8554
8573
  slots
@@ -8564,14 +8583,15 @@ const VListItemAction = genericComponent()({
8564
8583
  }
8565
8584
  });
8566
8585
 
8586
+ const makeVListItemMediaProps = propsFactory({
8587
+ start: Boolean,
8588
+ end: Boolean,
8589
+ ...makeComponentProps(),
8590
+ ...makeTagProps()
8591
+ }, 'v-list-item-media');
8567
8592
  const VListItemMedia = genericComponent()({
8568
8593
  name: 'VListItemMedia',
8569
- props: {
8570
- start: Boolean,
8571
- end: Boolean,
8572
- ...makeComponentProps(),
8573
- ...makeTagProps()
8574
- },
8594
+ props: makeVListItemMediaProps(),
8575
8595
  setup(props, _ref) {
8576
8596
  let {
8577
8597
  slots
@@ -9033,7 +9053,9 @@ function connectedLocationStrategy(data, props, contentStyles) {
9033
9053
  const activatorFixed = isFixedPosition(data.activatorEl.value);
9034
9054
  if (activatorFixed) {
9035
9055
  Object.assign(contentStyles.value, {
9036
- position: 'fixed'
9056
+ position: 'fixed',
9057
+ top: 0,
9058
+ left: 0
9037
9059
  });
9038
9060
  }
9039
9061
  const {
@@ -9105,8 +9127,8 @@ function connectedLocationStrategy(data, props, contentStyles) {
9105
9127
  if (!scrollParents.length) {
9106
9128
  scrollParents.push(document.documentElement);
9107
9129
  if (!(data.contentEl.value.style.top && data.contentEl.value.style.left)) {
9108
- contentBox.x += parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-x') || 0);
9109
- contentBox.y += parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-y') || 0);
9130
+ contentBox.x -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-x') || 0);
9131
+ contentBox.y -= parseFloat(document.documentElement.style.getPropertyValue('--v-body-scroll-y') || 0);
9110
9132
  }
9111
9133
  }
9112
9134
  const viewport = scrollParents.reduce((box, el) => {
@@ -9759,7 +9781,7 @@ const ClickOutside = {
9759
9781
  });
9760
9782
  if (!el._clickOutside) {
9761
9783
  el._clickOutside = {
9762
- lastMousedownWasOutside: true
9784
+ lastMousedownWasOutside: false
9763
9785
  };
9764
9786
  }
9765
9787
  el._clickOutside[binding.instance.$.uid] = {
@@ -10035,24 +10057,25 @@ const VOverlay = genericComponent()({
10035
10057
 
10036
10058
  // Types
10037
10059
 
10060
+ const makeVMenuProps = propsFactory({
10061
+ // TODO
10062
+ // disableKeys: Boolean,
10063
+ id: String,
10064
+ ...omit(makeVOverlayProps({
10065
+ closeDelay: 250,
10066
+ closeOnContentClick: true,
10067
+ locationStrategy: 'connected',
10068
+ openDelay: 300,
10069
+ scrim: false,
10070
+ scrollStrategy: 'reposition',
10071
+ transition: {
10072
+ component: VDialogTransition
10073
+ }
10074
+ }), ['absolute'])
10075
+ }, 'v-menu');
10038
10076
  const VMenu = genericComponent()({
10039
10077
  name: 'VMenu',
10040
- props: {
10041
- // TODO
10042
- // disableKeys: Boolean,
10043
- id: String,
10044
- ...omit(makeVOverlayProps({
10045
- closeDelay: 250,
10046
- closeOnContentClick: true,
10047
- locationStrategy: 'connected',
10048
- openDelay: 300,
10049
- scrim: false,
10050
- scrollStrategy: 'reposition',
10051
- transition: {
10052
- component: VDialogTransition
10053
- }
10054
- }), ['absolute'])
10055
- },
10078
+ props: makeVMenuProps(),
10056
10079
  emits: {
10057
10080
  'update:modelValue': value => true
10058
10081
  },
@@ -10158,20 +10181,21 @@ const makeSelectProps = propsFactory({
10158
10181
  ...makeItemsProps({
10159
10182
  itemChildren: false
10160
10183
  })
10184
+ }, 'select');
10185
+ const makeVSelectProps = propsFactory({
10186
+ ...makeSelectProps(),
10187
+ ...omit(makeVTextFieldProps({
10188
+ modelValue: null
10189
+ }), ['validationValue', 'dirty', 'appendInnerIcon']),
10190
+ ...makeTransitionProps({
10191
+ transition: {
10192
+ component: VDialogTransition
10193
+ }
10194
+ })
10161
10195
  }, 'v-select');
10162
10196
  const VSelect = genericComponent()({
10163
10197
  name: 'VSelect',
10164
- props: {
10165
- ...makeSelectProps(),
10166
- ...omit(makeVTextFieldProps({
10167
- modelValue: null
10168
- }), ['validationValue', 'dirty', 'appendInnerIcon']),
10169
- ...makeTransitionProps({
10170
- transition: {
10171
- component: VDialogTransition
10172
- }
10173
- })
10174
- },
10198
+ props: makeVSelectProps(),
10175
10199
  emits: {
10176
10200
  'update:focused': focused => true,
10177
10201
  'update:modelValue': val => true,
@@ -10290,14 +10314,14 @@ const VSelect = genericComponent()({
10290
10314
  menu.value = false;
10291
10315
  }
10292
10316
  }
10293
- function onFocusin(e) {
10294
- isFocused.value = true;
10295
- }
10296
- function onFocusout(e) {
10297
- if (e.relatedTarget == null) {
10317
+ function onAfterLeave() {
10318
+ if (isFocused.value) {
10298
10319
  vTextFieldRef.value?.focus();
10299
10320
  }
10300
10321
  }
10322
+ function onFocusin(e) {
10323
+ isFocused.value = true;
10324
+ }
10301
10325
  useRender(() => {
10302
10326
  const hasChips = !!(props.chips || slots.chip);
10303
10327
  const hasList = !!(!props.hideNoData || displayItems.value.length || slots.prepend || slots.append || slots['no-data']);
@@ -10341,15 +10365,15 @@ const VSelect = genericComponent()({
10341
10365
  "maxHeight": 310,
10342
10366
  "openOnClick": false,
10343
10367
  "closeOnContentClick": false,
10344
- "transition": props.transition
10368
+ "transition": props.transition,
10369
+ "onAfterLeave": onAfterLeave
10345
10370
  }, props.menuProps), {
10346
10371
  default: () => [hasList && createVNode(VList, {
10347
10372
  "ref": listRef,
10348
10373
  "selected": selected.value,
10349
10374
  "selectStrategy": props.multiple ? 'independent' : 'single-independent',
10350
10375
  "onMousedown": e => e.preventDefault(),
10351
- "onFocusin": onFocusin,
10352
- "onFocusout": onFocusout
10376
+ "onFocusin": onFocusin
10353
10377
  }, {
10354
10378
  default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
10355
10379
  "title": t(props.noDataText)
@@ -10372,11 +10396,13 @@ const VSelect = genericComponent()({
10372
10396
  let {
10373
10397
  isSelected
10374
10398
  } = _ref2;
10375
- return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
10399
+ return createVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
10376
10400
  "modelValue": isSelected,
10377
10401
  "ripple": false,
10378
10402
  "tabindex": "-1"
10379
- }, null) : undefined;
10403
+ }, null) : undefined, item.props.prependIcon && createVNode(VIcon, {
10404
+ "icon": item.props.prependIcon
10405
+ }, null)]);
10380
10406
  }
10381
10407
  });
10382
10408
  }), slots['append-item']?.()]
@@ -10389,6 +10415,10 @@ const VSelect = genericComponent()({
10389
10415
  }
10390
10416
  const slotProps = {
10391
10417
  'onClick:close': onChipClose,
10418
+ onMousedown(e) {
10419
+ e.preventDefault();
10420
+ e.stopPropagation();
10421
+ },
10392
10422
  modelValue: true,
10393
10423
  'onUpdate:modelValue': undefined
10394
10424
  };
@@ -10548,23 +10578,24 @@ function highlightResult$1(text, matches, length) {
10548
10578
  "class": "v-autocomplete__unmask"
10549
10579
  }, [text.substr(matches + length)])]) : text;
10550
10580
  }
10581
+ const makeVAutocompleteProps = propsFactory({
10582
+ // TODO: implement post keyboard support
10583
+ // autoSelectFirst: Boolean,
10584
+ search: String,
10585
+ ...makeFilterProps({
10586
+ filterKeys: ['title']
10587
+ }),
10588
+ ...makeSelectProps(),
10589
+ ...omit(makeVTextFieldProps({
10590
+ modelValue: null
10591
+ }), ['validationValue', 'dirty', 'appendInnerIcon']),
10592
+ ...makeTransitionProps({
10593
+ transition: false
10594
+ })
10595
+ }, 'v-autocomplete');
10551
10596
  const VAutocomplete = genericComponent()({
10552
10597
  name: 'VAutocomplete',
10553
- props: {
10554
- // TODO: implement post keyboard support
10555
- // autoSelectFirst: Boolean,
10556
- search: String,
10557
- ...makeFilterProps({
10558
- filterKeys: ['title']
10559
- }),
10560
- ...makeSelectProps(),
10561
- ...omit(makeVTextFieldProps({
10562
- modelValue: null
10563
- }), ['validationValue', 'dirty', 'appendInnerIcon']),
10564
- ...makeTransitionProps({
10565
- transition: false
10566
- })
10567
- },
10598
+ props: makeVAutocompleteProps(),
10568
10599
  emits: {
10569
10600
  'update:focused': focused => true,
10570
10601
  'update:search': val => true,
@@ -10693,16 +10724,14 @@ const VAutocomplete = genericComponent()({
10693
10724
  search.value = e.target.value;
10694
10725
  }
10695
10726
  function onAfterLeave() {
10696
- if (isFocused.value) isPristine.value = true;
10727
+ if (isFocused.value) {
10728
+ isPristine.value = true;
10729
+ vTextFieldRef.value?.focus();
10730
+ }
10697
10731
  }
10698
10732
  function onFocusin(e) {
10699
10733
  isFocused.value = true;
10700
10734
  }
10701
- function onFocusout(e) {
10702
- if (e.relatedTarget == null) {
10703
- vTextFieldRef.value?.focus();
10704
- }
10705
- }
10706
10735
  const isSelecting = ref(false);
10707
10736
  function select(item) {
10708
10737
  if (props.multiple) {
@@ -10717,9 +10746,7 @@ const VAutocomplete = genericComponent()({
10717
10746
  } else {
10718
10747
  model.value = [item];
10719
10748
  isSelecting.value = true;
10720
- if (!slots.selection) {
10721
- search.value = item.title;
10722
- }
10749
+ search.value = item.title;
10723
10750
  menu.value = false;
10724
10751
  isPristine.value = true;
10725
10752
  nextTick(() => isSelecting.value = false);
@@ -10728,12 +10755,14 @@ const VAutocomplete = genericComponent()({
10728
10755
  watch(isFocused, val => {
10729
10756
  if (val) {
10730
10757
  isSelecting.value = true;
10731
- search.value = props.multiple || !!slots.selection ? '' : String(selections.value.at(-1)?.props.title ?? '');
10758
+ search.value = props.multiple ? '' : String(selections.value.at(-1)?.props.title ?? '');
10732
10759
  isPristine.value = true;
10733
10760
  nextTick(() => isSelecting.value = false);
10734
10761
  } else {
10762
+ if (!props.multiple && !search.value) model.value = [];
10735
10763
  menu.value = false;
10736
10764
  search.value = '';
10765
+ selectionIndex.value = -1;
10737
10766
  }
10738
10767
  });
10739
10768
  watch(search, val => {
@@ -10758,12 +10787,10 @@ const VAutocomplete = genericComponent()({
10758
10787
  "validationValue": model.externalValue,
10759
10788
  "dirty": isDirty,
10760
10789
  "onInput": onInput,
10761
- "class": ['v-autocomplete', {
10790
+ "class": ['v-autocomplete', `v-autocomplete--${props.multiple ? 'multiple' : 'single'}`, {
10762
10791
  'v-autocomplete--active-menu': menu.value,
10763
10792
  'v-autocomplete--chips': !!props.chips,
10764
- 'v-autocomplete--selecting-index': selectionIndex.value > -1,
10765
- [`v-autocomplete--${props.multiple ? 'multiple' : 'single'}`]: true,
10766
- 'v-autocomplete--selection-slot': !!slots.selection
10793
+ 'v-autocomplete--selecting-index': selectionIndex.value > -1
10767
10794
  }, props.class],
10768
10795
  "style": props.style,
10769
10796
  "appendInnerIcon": props.menuIcon,
@@ -10792,8 +10819,7 @@ const VAutocomplete = genericComponent()({
10792
10819
  "selected": selected.value,
10793
10820
  "selectStrategy": props.multiple ? 'independent' : 'single-independent',
10794
10821
  "onMousedown": e => e.preventDefault(),
10795
- "onFocusin": onFocusin,
10796
- "onFocusout": onFocusout
10822
+ "onFocusin": onFocusin
10797
10823
  }, {
10798
10824
  default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
10799
10825
  "title": t(props.noDataText)
@@ -10811,11 +10837,13 @@ const VAutocomplete = genericComponent()({
10811
10837
  let {
10812
10838
  isSelected
10813
10839
  } = _ref2;
10814
- return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
10840
+ return createVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
10815
10841
  "modelValue": isSelected,
10816
10842
  "ripple": false,
10817
10843
  "tabindex": "-1"
10818
- }, null) : undefined;
10844
+ }, null) : undefined, item.props.prependIcon && createVNode(VIcon, {
10845
+ "icon": item.props.prependIcon
10846
+ }, null)]);
10819
10847
  },
10820
10848
  title: () => {
10821
10849
  return isPristine.value ? item.title : highlightResult$1(item.title, getMatches(item)?.title, search.value?.length ?? 0);
@@ -10830,6 +10858,10 @@ const VAutocomplete = genericComponent()({
10830
10858
  }
10831
10859
  const slotProps = {
10832
10860
  'onClick:close': onChipClose,
10861
+ onMousedown(e) {
10862
+ e.preventDefault();
10863
+ e.stopPropagation();
10864
+ },
10833
10865
  modelValue: true,
10834
10866
  'onUpdate:modelValue': undefined
10835
10867
  };
@@ -10879,40 +10911,41 @@ const VAutocomplete = genericComponent()({
10879
10911
  }
10880
10912
  });
10881
10913
 
10914
+ const makeVBadgeProps = propsFactory({
10915
+ bordered: Boolean,
10916
+ color: String,
10917
+ content: [Number, String],
10918
+ dot: Boolean,
10919
+ floating: Boolean,
10920
+ icon: IconValue,
10921
+ inline: Boolean,
10922
+ label: {
10923
+ type: String,
10924
+ default: '$vuetify.badge'
10925
+ },
10926
+ max: [Number, String],
10927
+ modelValue: {
10928
+ type: Boolean,
10929
+ default: true
10930
+ },
10931
+ offsetX: [Number, String],
10932
+ offsetY: [Number, String],
10933
+ textColor: String,
10934
+ ...makeComponentProps(),
10935
+ ...makeLocationProps({
10936
+ location: 'top end'
10937
+ }),
10938
+ ...makeRoundedProps(),
10939
+ ...makeTagProps(),
10940
+ ...makeThemeProps(),
10941
+ ...makeTransitionProps({
10942
+ transition: 'scale-rotate-transition'
10943
+ })
10944
+ }, 'v-badge');
10882
10945
  const VBadge = genericComponent()({
10883
10946
  name: 'VBadge',
10884
10947
  inheritAttrs: false,
10885
- props: {
10886
- bordered: Boolean,
10887
- color: String,
10888
- content: [Number, String],
10889
- dot: Boolean,
10890
- floating: Boolean,
10891
- icon: IconValue,
10892
- inline: Boolean,
10893
- label: {
10894
- type: String,
10895
- default: '$vuetify.badge'
10896
- },
10897
- max: [Number, String],
10898
- modelValue: {
10899
- type: Boolean,
10900
- default: true
10901
- },
10902
- offsetX: [Number, String],
10903
- offsetY: [Number, String],
10904
- textColor: String,
10905
- ...makeComponentProps(),
10906
- ...makeLocationProps({
10907
- location: 'top end'
10908
- }),
10909
- ...makeRoundedProps(),
10910
- ...makeTagProps(),
10911
- ...makeThemeProps(),
10912
- ...makeTransitionProps({
10913
- transition: 'scale-rotate-transition'
10914
- })
10915
- },
10948
+ props: makeVBadgeProps(),
10916
10949
  setup(props, ctx) {
10917
10950
  const {
10918
10951
  backgroundColorClasses,
@@ -10973,13 +11006,14 @@ const VBadge = genericComponent()({
10973
11006
  }
10974
11007
  });
10975
11008
 
11009
+ const makeVBannerActionsProps = propsFactory({
11010
+ color: String,
11011
+ density: String,
11012
+ ...makeComponentProps()
11013
+ }, 'v-banner-actions');
10976
11014
  const VBannerActions = genericComponent()({
10977
11015
  name: 'VBannerActions',
10978
- props: {
10979
- color: String,
10980
- density: String,
10981
- ...makeComponentProps()
10982
- },
11016
+ props: makeVBannerActionsProps(),
10983
11017
  setup(props, _ref) {
10984
11018
  let {
10985
11019
  slots
@@ -11003,27 +11037,28 @@ const VBannerText = createSimpleFunctional('v-banner-text');
11003
11037
 
11004
11038
  // Types
11005
11039
 
11040
+ const makeVBannerProps = propsFactory({
11041
+ avatar: String,
11042
+ color: String,
11043
+ icon: IconValue,
11044
+ lines: String,
11045
+ stacked: Boolean,
11046
+ sticky: Boolean,
11047
+ text: String,
11048
+ ...makeBorderProps(),
11049
+ ...makeComponentProps(),
11050
+ ...makeDensityProps(),
11051
+ ...makeDimensionProps(),
11052
+ ...makeElevationProps(),
11053
+ ...makeLocationProps(),
11054
+ ...makePositionProps(),
11055
+ ...makeRoundedProps(),
11056
+ ...makeTagProps(),
11057
+ ...makeThemeProps()
11058
+ }, 'v-banner');
11006
11059
  const VBanner = genericComponent()({
11007
11060
  name: 'VBanner',
11008
- props: {
11009
- avatar: String,
11010
- color: String,
11011
- icon: IconValue,
11012
- lines: String,
11013
- stacked: Boolean,
11014
- sticky: Boolean,
11015
- text: String,
11016
- ...makeBorderProps(),
11017
- ...makeComponentProps(),
11018
- ...makeDensityProps(),
11019
- ...makeDimensionProps(),
11020
- ...makeElevationProps(),
11021
- ...makeLocationProps(),
11022
- ...makePositionProps(),
11023
- ...makeRoundedProps(),
11024
- ...makeTagProps(),
11025
- ...makeThemeProps()
11026
- },
11061
+ props: makeVBannerProps(),
11027
11062
  setup(props, _ref) {
11028
11063
  let {
11029
11064
  slots
@@ -11110,50 +11145,51 @@ const VBanner = genericComponent()({
11110
11145
  }
11111
11146
  });
11112
11147
 
11113
- const VBottomNavigation = genericComponent()({
11114
- name: 'VBottomNavigation',
11115
- props: {
11116
- bgColor: String,
11117
- color: String,
11118
- grow: Boolean,
11119
- mode: {
11120
- type: String,
11121
- validator: v => !v || ['horizontal', 'shift'].includes(v)
11122
- },
11123
- height: {
11124
- type: [Number, String],
11125
- default: 56
11126
- },
11127
- active: {
11128
- type: Boolean,
11129
- default: true
11130
- },
11131
- ...makeBorderProps(),
11132
- ...makeComponentProps(),
11133
- ...makeDensityProps(),
11134
- ...makeElevationProps(),
11135
- ...makeRoundedProps(),
11136
- ...makeLayoutItemProps({
11137
- name: 'bottom-navigation'
11138
- }),
11139
- ...makeTagProps({
11140
- tag: 'header'
11141
- }),
11142
- ...makeGroupProps({
11143
- modelValue: true,
11144
- selectedClass: 'v-btn--selected'
11145
- }),
11146
- ...makeThemeProps()
11148
+ const makeVBottomNavigationProps = propsFactory({
11149
+ bgColor: String,
11150
+ color: String,
11151
+ grow: Boolean,
11152
+ mode: {
11153
+ type: String,
11154
+ validator: v => !v || ['horizontal', 'shift'].includes(v)
11147
11155
  },
11148
- emits: {
11149
- 'update:modelValue': value => true
11156
+ height: {
11157
+ type: [Number, String],
11158
+ default: 56
11150
11159
  },
11151
- setup(props, _ref) {
11152
- let {
11153
- slots
11154
- } = _ref;
11155
- const {
11156
- themeClasses
11160
+ active: {
11161
+ type: Boolean,
11162
+ default: true
11163
+ },
11164
+ ...makeBorderProps(),
11165
+ ...makeComponentProps(),
11166
+ ...makeDensityProps(),
11167
+ ...makeElevationProps(),
11168
+ ...makeRoundedProps(),
11169
+ ...makeLayoutItemProps({
11170
+ name: 'bottom-navigation'
11171
+ }),
11172
+ ...makeTagProps({
11173
+ tag: 'header'
11174
+ }),
11175
+ ...makeGroupProps({
11176
+ modelValue: true,
11177
+ selectedClass: 'v-btn--selected'
11178
+ }),
11179
+ ...makeThemeProps()
11180
+ }, 'v-bottom-navigation');
11181
+ const VBottomNavigation = genericComponent()({
11182
+ name: 'VBottomNavigation',
11183
+ props: makeVBottomNavigationProps(),
11184
+ emits: {
11185
+ 'update:modelValue': value => true
11186
+ },
11187
+ setup(props, _ref) {
11188
+ let {
11189
+ slots
11190
+ } = _ref;
11191
+ const {
11192
+ themeClasses
11157
11193
  } = useTheme();
11158
11194
  const {
11159
11195
  borderClasses
@@ -11219,12 +11255,13 @@ const VBottomNavigation = genericComponent()({
11219
11255
  }
11220
11256
  });
11221
11257
 
11258
+ const makeVBreadcrumbsDividerProps = propsFactory({
11259
+ divider: [Number, String],
11260
+ ...makeComponentProps()
11261
+ }, 'v-breacrumbs-divider');
11222
11262
  const VBreadcrumbsDivider = genericComponent()({
11223
11263
  name: 'VBreadcrumbsDivider',
11224
- props: {
11225
- divider: [Number, String],
11226
- ...makeComponentProps()
11227
- },
11264
+ props: makeVBreadcrumbsDividerProps(),
11228
11265
  setup(props, _ref) {
11229
11266
  let {
11230
11267
  slots
@@ -11237,21 +11274,22 @@ const VBreadcrumbsDivider = genericComponent()({
11237
11274
  }
11238
11275
  });
11239
11276
 
11277
+ const makeVBreadcrumbsItemProps = propsFactory({
11278
+ active: Boolean,
11279
+ activeClass: String,
11280
+ activeColor: String,
11281
+ color: String,
11282
+ disabled: Boolean,
11283
+ title: String,
11284
+ ...makeComponentProps(),
11285
+ ...makeRouterProps(),
11286
+ ...makeTagProps({
11287
+ tag: 'li'
11288
+ })
11289
+ }, 'v-breadcrumbs-item');
11240
11290
  const VBreadcrumbsItem = genericComponent()({
11241
11291
  name: 'VBreadcrumbsItem',
11242
- props: {
11243
- active: Boolean,
11244
- activeClass: String,
11245
- activeColor: String,
11246
- color: String,
11247
- disabled: Boolean,
11248
- title: String,
11249
- ...makeComponentProps(),
11250
- ...makeRouterProps(),
11251
- ...makeTagProps({
11252
- tag: 'li'
11253
- })
11254
- },
11292
+ props: makeVBreadcrumbsItemProps(),
11255
11293
  setup(props, _ref) {
11256
11294
  let {
11257
11295
  slots,
@@ -11287,30 +11325,31 @@ const VBreadcrumbsItem = genericComponent()({
11287
11325
 
11288
11326
  // Types
11289
11327
 
11328
+ const makeVBreadcrumbsProps = propsFactory({
11329
+ activeClass: String,
11330
+ activeColor: String,
11331
+ bgColor: String,
11332
+ color: String,
11333
+ disabled: Boolean,
11334
+ divider: {
11335
+ type: String,
11336
+ default: '/'
11337
+ },
11338
+ icon: IconValue,
11339
+ items: {
11340
+ type: Array,
11341
+ default: () => []
11342
+ },
11343
+ ...makeComponentProps(),
11344
+ ...makeDensityProps(),
11345
+ ...makeRoundedProps(),
11346
+ ...makeTagProps({
11347
+ tag: 'ul'
11348
+ })
11349
+ }, 'v-breacrumbs');
11290
11350
  const VBreadcrumbs = genericComponent()({
11291
11351
  name: 'VBreadcrumbs',
11292
- props: {
11293
- activeClass: String,
11294
- activeColor: String,
11295
- bgColor: String,
11296
- color: String,
11297
- disabled: Boolean,
11298
- divider: {
11299
- type: String,
11300
- default: '/'
11301
- },
11302
- icon: IconValue,
11303
- items: {
11304
- type: Array,
11305
- default: () => []
11306
- },
11307
- ...makeComponentProps(),
11308
- ...makeDensityProps(),
11309
- ...makeRoundedProps(),
11310
- ...makeTagProps({
11311
- tag: 'ul'
11312
- })
11313
- },
11352
+ props: makeVBreadcrumbsProps(),
11314
11353
  setup(props, _ref) {
11315
11354
  let {
11316
11355
  slots
@@ -11419,18 +11458,19 @@ const VCardSubtitle = createSimpleFunctional('v-card-subtitle');
11419
11458
 
11420
11459
  const VCardTitle = createSimpleFunctional('v-card-title');
11421
11460
 
11461
+ const makeCardItemProps = propsFactory({
11462
+ appendAvatar: String,
11463
+ appendIcon: IconValue,
11464
+ prependAvatar: String,
11465
+ prependIcon: IconValue,
11466
+ subtitle: String,
11467
+ title: String,
11468
+ ...makeComponentProps(),
11469
+ ...makeDensityProps()
11470
+ }, 'v-card-item');
11422
11471
  const VCardItem = genericComponent()({
11423
11472
  name: 'VCardItem',
11424
- props: {
11425
- appendAvatar: String,
11426
- appendIcon: IconValue,
11427
- prependAvatar: String,
11428
- prependIcon: IconValue,
11429
- subtitle: String,
11430
- title: String,
11431
- ...makeComponentProps(),
11432
- ...makeDensityProps()
11433
- },
11473
+ props: makeCardItemProps(),
11434
11474
  setup(props, _ref) {
11435
11475
  let {
11436
11476
  slots
@@ -11501,47 +11541,48 @@ const VCardText = createSimpleFunctional('v-card-text');
11501
11541
 
11502
11542
  // Types
11503
11543
 
11544
+ const makeVCardProps = propsFactory({
11545
+ appendAvatar: String,
11546
+ appendIcon: IconValue,
11547
+ disabled: Boolean,
11548
+ flat: Boolean,
11549
+ hover: Boolean,
11550
+ image: String,
11551
+ link: {
11552
+ type: Boolean,
11553
+ default: undefined
11554
+ },
11555
+ prependAvatar: String,
11556
+ prependIcon: IconValue,
11557
+ ripple: {
11558
+ type: Boolean,
11559
+ default: true
11560
+ },
11561
+ subtitle: String,
11562
+ text: String,
11563
+ title: String,
11564
+ ...makeBorderProps(),
11565
+ ...makeComponentProps(),
11566
+ ...makeDensityProps(),
11567
+ ...makeDimensionProps(),
11568
+ ...makeElevationProps(),
11569
+ ...makeLoaderProps(),
11570
+ ...makeLocationProps(),
11571
+ ...makePositionProps(),
11572
+ ...makeRoundedProps(),
11573
+ ...makeRouterProps(),
11574
+ ...makeTagProps(),
11575
+ ...makeThemeProps(),
11576
+ ...makeVariantProps({
11577
+ variant: 'elevated'
11578
+ })
11579
+ }, 'v-card');
11504
11580
  const VCard = genericComponent()({
11505
11581
  name: 'VCard',
11506
11582
  directives: {
11507
11583
  Ripple
11508
11584
  },
11509
- props: {
11510
- appendAvatar: String,
11511
- appendIcon: IconValue,
11512
- disabled: Boolean,
11513
- flat: Boolean,
11514
- hover: Boolean,
11515
- image: String,
11516
- link: {
11517
- type: Boolean,
11518
- default: undefined
11519
- },
11520
- prependAvatar: String,
11521
- prependIcon: IconValue,
11522
- ripple: {
11523
- type: Boolean,
11524
- default: true
11525
- },
11526
- subtitle: String,
11527
- text: String,
11528
- title: String,
11529
- ...makeBorderProps(),
11530
- ...makeComponentProps(),
11531
- ...makeDensityProps(),
11532
- ...makeDimensionProps(),
11533
- ...makeElevationProps(),
11534
- ...makeLoaderProps(),
11535
- ...makeLocationProps(),
11536
- ...makePositionProps(),
11537
- ...makeRoundedProps(),
11538
- ...makeRouterProps(),
11539
- ...makeTagProps(),
11540
- ...makeThemeProps(),
11541
- ...makeVariantProps({
11542
- variant: 'elevated'
11543
- })
11544
- },
11585
+ props: makeVCardProps(),
11545
11586
  setup(props, _ref) {
11546
11587
  let {
11547
11588
  attrs,
@@ -11935,34 +11976,35 @@ const VWindow = genericComponent()({
11935
11976
 
11936
11977
  // Types
11937
11978
 
11979
+ const makeVCarouselProps = propsFactory({
11980
+ color: String,
11981
+ cycle: Boolean,
11982
+ delimiterIcon: {
11983
+ type: IconValue,
11984
+ default: '$delimiter'
11985
+ },
11986
+ height: {
11987
+ type: [Number, String],
11988
+ default: 500
11989
+ },
11990
+ hideDelimiters: Boolean,
11991
+ hideDelimiterBackground: Boolean,
11992
+ interval: {
11993
+ type: [Number, String],
11994
+ default: 6000,
11995
+ validator: value => Number(value) > 0
11996
+ },
11997
+ progress: [Boolean, String],
11998
+ verticalDelimiters: [Boolean, String],
11999
+ ...makeVWindowProps({
12000
+ continuous: true,
12001
+ mandatory: 'force',
12002
+ showArrows: true
12003
+ })
12004
+ }, 'v-carousel');
11938
12005
  const VCarousel = genericComponent()({
11939
12006
  name: 'VCarousel',
11940
- props: {
11941
- color: String,
11942
- cycle: Boolean,
11943
- delimiterIcon: {
11944
- type: IconValue,
11945
- default: '$delimiter'
11946
- },
11947
- height: {
11948
- type: [Number, String],
11949
- default: 500
11950
- },
11951
- hideDelimiters: Boolean,
11952
- hideDelimiterBackground: Boolean,
11953
- interval: {
11954
- type: [Number, String],
11955
- default: 6000,
11956
- validator: value => Number(value) > 0
11957
- },
11958
- progress: [Boolean, String],
11959
- verticalDelimiters: [Boolean, String],
11960
- ...makeVWindowProps({
11961
- continuous: true,
11962
- mandatory: 'force',
11963
- showArrows: true
11964
- })
11965
- },
12007
+ props: makeVCarouselProps(),
11966
12008
  emits: {
11967
12009
  'update:modelValue': val => true
11968
12010
  },
@@ -12052,24 +12094,25 @@ const VCarousel = genericComponent()({
12052
12094
  }
12053
12095
  });
12054
12096
 
12097
+ const makeVWindowItemProps = propsFactory({
12098
+ reverseTransition: {
12099
+ type: [Boolean, String],
12100
+ default: undefined
12101
+ },
12102
+ transition: {
12103
+ type: [Boolean, String],
12104
+ default: undefined
12105
+ },
12106
+ ...makeComponentProps(),
12107
+ ...makeGroupItemProps(),
12108
+ ...makeLazyProps()
12109
+ }, 'v-window-item');
12055
12110
  const VWindowItem = genericComponent()({
12056
12111
  name: 'VWindowItem',
12057
12112
  directives: {
12058
12113
  Touch
12059
12114
  },
12060
- props: {
12061
- reverseTransition: {
12062
- type: [Boolean, String],
12063
- default: undefined
12064
- },
12065
- transition: {
12066
- type: [Boolean, String],
12067
- default: undefined
12068
- },
12069
- ...makeComponentProps(),
12070
- ...makeGroupItemProps(),
12071
- ...makeLazyProps()
12072
- },
12115
+ props: makeVWindowItemProps(),
12073
12116
  emits: {
12074
12117
  'group:selected': val => true
12075
12118
  },
@@ -12163,25 +12206,28 @@ const VWindowItem = genericComponent()({
12163
12206
 
12164
12207
  // Types
12165
12208
 
12209
+ const makeVCarouselItemProps = propsFactory({
12210
+ ...makeVImgProps(),
12211
+ ...makeVWindowItemProps()
12212
+ }, 'v-carousel-item');
12166
12213
  const VCarouselItem = genericComponent()({
12167
12214
  name: 'VCarouselItem',
12168
12215
  inheritAttrs: false,
12169
- props: {
12170
- value: null,
12171
- ...makeComponentProps()
12172
- },
12216
+ props: makeVCarouselItemProps(),
12173
12217
  setup(props, _ref) {
12174
12218
  let {
12175
12219
  slots,
12176
12220
  attrs
12177
12221
  } = _ref;
12178
- useRender(() => createVNode(VWindowItem, {
12179
- "class": ['v-carousel-item', props.class],
12180
- "style": props.style,
12181
- "value": props.value
12182
- }, {
12183
- default: () => [createVNode(VImg, attrs, slots)]
12184
- }));
12222
+ useRender(() => {
12223
+ const [imgProps] = VImg.filterProps(props);
12224
+ const [windowItemProps] = VWindowItem.filterProps(props);
12225
+ return createVNode(VWindowItem, mergeProps({
12226
+ "class": "v-carousel-item"
12227
+ }, windowItemProps), {
12228
+ default: () => [createVNode(VImg, mergeProps(attrs, imgProps), slots)]
12229
+ });
12230
+ });
12185
12231
  }
12186
12232
  });
12187
12233
 
@@ -12201,9 +12247,7 @@ const makeVSheetProps = propsFactory({
12201
12247
  }, 'v-sheet');
12202
12248
  const VSheet = genericComponent()({
12203
12249
  name: 'VSheet',
12204
- props: {
12205
- ...makeVSheetProps()
12206
- },
12250
+ props: makeVSheetProps(),
12207
12251
  setup(props, _ref) {
12208
12252
  let {
12209
12253
  slots
@@ -12243,27 +12287,28 @@ const VSheet = genericComponent()({
12243
12287
 
12244
12288
  // Types
12245
12289
 
12290
+ const makeVColorPickerCanvasProps = propsFactory({
12291
+ color: {
12292
+ type: Object
12293
+ },
12294
+ disabled: Boolean,
12295
+ dotSize: {
12296
+ type: [Number, String],
12297
+ default: 10
12298
+ },
12299
+ height: {
12300
+ type: [Number, String],
12301
+ default: 150
12302
+ },
12303
+ width: {
12304
+ type: [Number, String],
12305
+ default: 300
12306
+ },
12307
+ ...makeComponentProps()
12308
+ }, 'v-color-picker-canvas');
12246
12309
  const VColorPickerCanvas = defineComponent({
12247
12310
  name: 'VColorPickerCanvas',
12248
- props: {
12249
- color: {
12250
- type: Object
12251
- },
12252
- disabled: Boolean,
12253
- dotSize: {
12254
- type: [Number, String],
12255
- default: 10
12256
- },
12257
- height: {
12258
- type: [Number, String],
12259
- default: 150
12260
- },
12261
- width: {
12262
- type: [Number, String],
12263
- default: 300
12264
- },
12265
- ...makeComponentProps()
12266
- },
12311
+ props: makeVColorPickerCanvasProps(),
12267
12312
  emits: {
12268
12313
  'update:color': color => true,
12269
12314
  'update:position': hue => true
@@ -12519,7 +12564,7 @@ const rgba = {
12519
12564
  let {
12520
12565
  a
12521
12566
  } = _ref;
12522
- return a ? Math.round(a * 100) / 100 : 1;
12567
+ return a != null ? Math.round(a * 100) / 100 : 1;
12523
12568
  },
12524
12569
  getColor: (c, v) => ({
12525
12570
  ...c,
@@ -12573,7 +12618,7 @@ const hsla = {
12573
12618
  let {
12574
12619
  a
12575
12620
  } = _ref2;
12576
- return a ? Math.round(a * 100) / 100 : 1;
12621
+ return a != null ? Math.round(a * 100) / 100 : 1;
12577
12622
  },
12578
12623
  getColor: (c, v) => ({
12579
12624
  ...c,
@@ -12627,23 +12672,24 @@ const VColorPickerInput = _ref => {
12627
12672
  "class": "v-color-picker-edit__input"
12628
12673
  }, [createVNode("input", rest, null), createVNode("span", null, [label])]);
12629
12674
  };
12675
+ const makeVColorPickerEditProps = propsFactory({
12676
+ color: Object,
12677
+ disabled: Boolean,
12678
+ mode: {
12679
+ type: String,
12680
+ default: 'rgba',
12681
+ validator: v => Object.keys(modes).includes(v)
12682
+ },
12683
+ modes: {
12684
+ type: Array,
12685
+ default: () => Object.keys(modes),
12686
+ validator: v => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m))
12687
+ },
12688
+ ...makeComponentProps()
12689
+ }, 'v-color-picker-edit');
12630
12690
  const VColorPickerEdit = defineComponent({
12631
12691
  name: 'VColorPickerEdit',
12632
- props: {
12633
- color: Object,
12634
- disabled: Boolean,
12635
- mode: {
12636
- type: String,
12637
- default: 'rgba',
12638
- validator: v => Object.keys(modes).includes(v)
12639
- },
12640
- modes: {
12641
- type: Array,
12642
- default: () => Object.keys(modes),
12643
- validator: v => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m))
12644
- },
12645
- ...makeComponentProps()
12646
- },
12692
+ props: makeVColorPickerEditProps(),
12647
12693
  emits: {
12648
12694
  'update:color': color => true,
12649
12695
  'update:mode': mode => true
@@ -12976,35 +13022,36 @@ const useSlider = _ref => {
12976
13022
  return data;
12977
13023
  };
12978
13024
 
13025
+ const makeVSliderThumbProps = propsFactory({
13026
+ focused: Boolean,
13027
+ max: {
13028
+ type: Number,
13029
+ required: true
13030
+ },
13031
+ min: {
13032
+ type: Number,
13033
+ required: true
13034
+ },
13035
+ modelValue: {
13036
+ type: Number,
13037
+ required: true
13038
+ },
13039
+ position: {
13040
+ type: Number,
13041
+ required: true
13042
+ },
13043
+ ripple: {
13044
+ type: Boolean,
13045
+ default: true
13046
+ },
13047
+ ...makeComponentProps()
13048
+ }, 'v-slider-thumb');
12979
13049
  const VSliderThumb = genericComponent()({
12980
13050
  name: 'VSliderThumb',
12981
13051
  directives: {
12982
13052
  Ripple
12983
13053
  },
12984
- props: {
12985
- focused: Boolean,
12986
- max: {
12987
- type: Number,
12988
- required: true
12989
- },
12990
- min: {
12991
- type: Number,
12992
- required: true
12993
- },
12994
- modelValue: {
12995
- type: Number,
12996
- required: true
12997
- },
12998
- position: {
12999
- type: Number,
13000
- required: true
13001
- },
13002
- ripple: {
13003
- type: Boolean,
13004
- default: true
13005
- },
13006
- ...makeComponentProps()
13007
- },
13054
+ props: makeVSliderThumbProps(),
13008
13055
  emits: {
13009
13056
  'update:modelValue': v => true
13010
13057
  },
@@ -13121,19 +13168,20 @@ const VSliderThumb = genericComponent()({
13121
13168
  }
13122
13169
  });
13123
13170
 
13171
+ const makeVSliderTrackProps = propsFactory({
13172
+ start: {
13173
+ type: Number,
13174
+ required: true
13175
+ },
13176
+ stop: {
13177
+ type: Number,
13178
+ required: true
13179
+ },
13180
+ ...makeComponentProps()
13181
+ }, 'v-slider-track');
13124
13182
  const VSliderTrack = genericComponent()({
13125
13183
  name: 'VSliderTrack',
13126
- props: {
13127
- start: {
13128
- type: Number,
13129
- required: true
13130
- },
13131
- stop: {
13132
- type: Number,
13133
- required: true
13134
- },
13135
- ...makeComponentProps()
13136
- },
13184
+ props: makeVSliderTrackProps(),
13137
13185
  emits: {},
13138
13186
  setup(props, _ref) {
13139
13187
  let {
@@ -13239,17 +13287,18 @@ const VSliderTrack = genericComponent()({
13239
13287
 
13240
13288
  // Types
13241
13289
 
13290
+ const makeVSliderProps = propsFactory({
13291
+ ...makeFocusProps(),
13292
+ ...makeSliderProps(),
13293
+ ...makeVInputProps(),
13294
+ modelValue: {
13295
+ type: [Number, String],
13296
+ default: 0
13297
+ }
13298
+ }, 'v-slider');
13242
13299
  const VSlider = genericComponent()({
13243
13300
  name: 'VSlider',
13244
- props: {
13245
- ...makeFocusProps(),
13246
- ...makeSliderProps(),
13247
- ...makeVInputProps(),
13248
- modelValue: {
13249
- type: [Number, String],
13250
- default: 0
13251
- }
13252
- },
13301
+ props: makeVSliderProps(),
13253
13302
  emits: {
13254
13303
  'update:focused': value => true,
13255
13304
  'update:modelValue': v => true,
@@ -13262,6 +13311,9 @@ const VSlider = genericComponent()({
13262
13311
  emit
13263
13312
  } = _ref;
13264
13313
  const thumbContainerRef = ref();
13314
+ const {
13315
+ rtlClasses
13316
+ } = useRtl();
13265
13317
  const steps = useSteps(props);
13266
13318
  const model = useProxiedModel(props, 'modelValue', undefined, v => {
13267
13319
  const value = typeof v === 'string' ? parseFloat(v) : v == null ? steps.min.value : v;
@@ -13315,7 +13367,7 @@ const VSlider = genericComponent()({
13315
13367
  'v-slider--focused': isFocused.value,
13316
13368
  'v-slider--pressed': mousePressed.value,
13317
13369
  'v-slider--disabled': props.disabled
13318
- }, props.class],
13370
+ }, rtlClasses.value, props.class],
13319
13371
  "style": props.style
13320
13372
  }, inputProps, {
13321
13373
  "focused": isFocused.value
@@ -13372,16 +13424,17 @@ const VSlider = genericComponent()({
13372
13424
 
13373
13425
  // Types
13374
13426
 
13427
+ const makeVColorPickerPreviewProps = propsFactory({
13428
+ color: {
13429
+ type: Object
13430
+ },
13431
+ disabled: Boolean,
13432
+ hideAlpha: Boolean,
13433
+ ...makeComponentProps()
13434
+ }, 'v-color-picker-preview');
13375
13435
  const VColorPickerPreview = defineComponent({
13376
13436
  name: 'VColorPickerPreview',
13377
- props: {
13378
- color: {
13379
- type: Object
13380
- },
13381
- disabled: Boolean,
13382
- hideAlpha: Boolean,
13383
- ...makeComponentProps()
13384
- },
13437
+ props: makeVColorPickerPreviewProps(),
13385
13438
  emits: {
13386
13439
  'update:color': color => true
13387
13440
  },
@@ -13759,6 +13812,16 @@ var colors = Object.freeze({
13759
13812
 
13760
13813
  // Types
13761
13814
 
13815
+ const makeVColorPickerSwatchesProps = propsFactory({
13816
+ swatches: {
13817
+ type: Array,
13818
+ default: () => parseDefaultColors(colors)
13819
+ },
13820
+ disabled: Boolean,
13821
+ color: Object,
13822
+ maxHeight: [Number, String],
13823
+ ...makeComponentProps()
13824
+ }, 'v-color-picker-swatches');
13762
13825
  function parseDefaultColors(colors) {
13763
13826
  return Object.keys(colors).map(key => {
13764
13827
  const color = colors[key];
@@ -13767,16 +13830,7 @@ function parseDefaultColors(colors) {
13767
13830
  }
13768
13831
  const VColorPickerSwatches = defineComponent({
13769
13832
  name: 'VColorPickerSwatches',
13770
- props: {
13771
- swatches: {
13772
- type: Array,
13773
- default: () => parseDefaultColors(colors)
13774
- },
13775
- disabled: Boolean,
13776
- color: Object,
13777
- maxHeight: [Number, String],
13778
- ...makeComponentProps()
13779
- },
13833
+ props: makeVColorPickerSwatchesProps(),
13780
13834
  emits: {
13781
13835
  'update:color': color => true
13782
13836
  },
@@ -13812,44 +13866,45 @@ const VColorPickerSwatches = defineComponent({
13812
13866
 
13813
13867
  // Types
13814
13868
 
13869
+ const makeVPickerProps = propsFactory({
13870
+ canvasHeight: {
13871
+ type: [String, Number],
13872
+ default: 150
13873
+ },
13874
+ disabled: Boolean,
13875
+ dotSize: {
13876
+ type: [Number, String],
13877
+ default: 10
13878
+ },
13879
+ hideCanvas: Boolean,
13880
+ hideSliders: Boolean,
13881
+ hideInputs: Boolean,
13882
+ mode: {
13883
+ type: String,
13884
+ default: 'rgba',
13885
+ validator: v => Object.keys(modes).includes(v)
13886
+ },
13887
+ modes: {
13888
+ type: Array,
13889
+ default: () => Object.keys(modes),
13890
+ validator: v => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m))
13891
+ },
13892
+ showSwatches: Boolean,
13893
+ swatches: Array,
13894
+ swatchesMaxHeight: {
13895
+ type: [Number, String],
13896
+ default: 150
13897
+ },
13898
+ modelValue: {
13899
+ type: [Object, String]
13900
+ },
13901
+ ...omit(makeVSheetProps({
13902
+ width: 300
13903
+ }), ['height', 'location', 'minHeight', 'maxHeight', 'minWidth', 'maxWidth'])
13904
+ }, 'v-color-picker');
13815
13905
  const VColorPicker = defineComponent({
13816
13906
  name: 'VColorPicker',
13817
- props: {
13818
- canvasHeight: {
13819
- type: [String, Number],
13820
- default: 150
13821
- },
13822
- disabled: Boolean,
13823
- dotSize: {
13824
- type: [Number, String],
13825
- default: 10
13826
- },
13827
- hideCanvas: Boolean,
13828
- hideSliders: Boolean,
13829
- hideInputs: Boolean,
13830
- mode: {
13831
- type: String,
13832
- default: 'rgba',
13833
- validator: v => Object.keys(modes).includes(v)
13834
- },
13835
- modes: {
13836
- type: Array,
13837
- default: () => Object.keys(modes),
13838
- validator: v => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m))
13839
- },
13840
- showSwatches: Boolean,
13841
- swatches: Array,
13842
- swatchesMaxHeight: {
13843
- type: [Number, String],
13844
- default: 150
13845
- },
13846
- modelValue: {
13847
- type: [Object, String]
13848
- },
13849
- ...omit(makeVSheetProps({
13850
- width: 300
13851
- }), ['height', 'location', 'minHeight', 'maxHeight', 'minWidth', 'maxWidth'])
13852
- },
13907
+ props: makeVPickerProps(),
13853
13908
  emits: {
13854
13909
  'update:modelValue': color => true,
13855
13910
  'update:mode': mode => true
@@ -13872,6 +13927,9 @@ const VColorPicker = defineComponent({
13872
13927
  if (!v) return null;
13873
13928
  return extractColor(v, props.modelValue);
13874
13929
  });
13930
+ const {
13931
+ rtlClasses
13932
+ } = useRtl();
13875
13933
  const updateColor = hsva => {
13876
13934
  currentColor.value = hsva;
13877
13935
  lastPickedColor.value = hsva;
@@ -13892,7 +13950,7 @@ const VColorPicker = defineComponent({
13892
13950
  "rounded": props.rounded,
13893
13951
  "elevation": props.elevation,
13894
13952
  "theme": props.theme,
13895
- "class": ['v-color-picker', props.class],
13953
+ "class": ['v-color-picker', rtlClasses.value, props.class],
13896
13954
  "style": [{
13897
13955
  '--v-color-picker-color-hsv': HSVtoCSS({
13898
13956
  ...(currentColor.value ?? nullColor),
@@ -13954,26 +14012,27 @@ function highlightResult(text, matches, length) {
13954
14012
  "class": "v-combobox__unmask"
13955
14013
  }, [text.substr(matches + length)])]) : text;
13956
14014
  }
14015
+ const makeVComboboxProps = propsFactory({
14016
+ // TODO: implement post keyboard support
14017
+ // autoSelectFirst: Boolean,
14018
+ delimiters: Array,
14019
+ ...makeFilterProps({
14020
+ filterKeys: ['title']
14021
+ }),
14022
+ ...makeSelectProps({
14023
+ hideNoData: true,
14024
+ returnObject: true
14025
+ }),
14026
+ ...omit(makeVTextFieldProps({
14027
+ modelValue: null
14028
+ }), ['validationValue', 'dirty', 'appendInnerIcon']),
14029
+ ...makeTransitionProps({
14030
+ transition: false
14031
+ })
14032
+ }, 'v-combobox');
13957
14033
  const VCombobox = genericComponent()({
13958
14034
  name: 'VCombobox',
13959
- props: {
13960
- // TODO: implement post keyboard support
13961
- // autoSelectFirst: Boolean,
13962
- delimiters: Array,
13963
- ...makeFilterProps({
13964
- filterKeys: ['title']
13965
- }),
13966
- ...makeSelectProps({
13967
- hideNoData: true,
13968
- returnObject: true
13969
- }),
13970
- ...omit(makeVTextFieldProps({
13971
- modelValue: null
13972
- }), ['validationValue', 'dirty', 'appendInnerIcon']),
13973
- ...makeTransitionProps({
13974
- transition: false
13975
- })
13976
- },
14035
+ props: makeVComboboxProps(),
13977
14036
  emits: {
13978
14037
  'update:focused': focused => true,
13979
14038
  'update:modelValue': val => true,
@@ -14143,7 +14202,10 @@ const VCombobox = genericComponent()({
14143
14202
  }
14144
14203
  }
14145
14204
  function onAfterLeave() {
14146
- if (isFocused.value) isPristine.value = true;
14205
+ if (isFocused.value) {
14206
+ isPristine.value = true;
14207
+ vTextFieldRef.value?.focus();
14208
+ }
14147
14209
  }
14148
14210
  function select(item) {
14149
14211
  if (props.multiple) {
@@ -14170,23 +14232,16 @@ const VCombobox = genericComponent()({
14170
14232
  function onFocusin(e) {
14171
14233
  isFocused.value = true;
14172
14234
  }
14173
- function onFocusout(e) {
14174
- if (e.relatedTarget == null) {
14175
- vTextFieldRef.value?.focus();
14176
- }
14177
- }
14178
14235
  watch(filteredItems, val => {
14179
14236
  if (!val.length && props.hideNoData) menu.value = false;
14180
14237
  });
14181
14238
  watch(isFocused, val => {
14182
- if (val) {
14183
- selectionIndex.value = -1;
14184
- } else {
14185
- menu.value = false;
14186
- if (!props.multiple || !search.value) return;
14187
- model.value = [...model.value, transformItem$1(props, search.value)];
14188
- search.value = '';
14189
- }
14239
+ if (val) return;
14240
+ selectionIndex.value = -1;
14241
+ menu.value = false;
14242
+ if (!props.multiple || !search.value) return;
14243
+ model.value = [...model.value, transformItem$1(props, search.value)];
14244
+ search.value = '';
14190
14245
  });
14191
14246
  useRender(() => {
14192
14247
  const hasChips = !!(props.chips || slots.chip);
@@ -14237,8 +14292,7 @@ const VCombobox = genericComponent()({
14237
14292
  "selected": selected.value,
14238
14293
  "selectStrategy": props.multiple ? 'independent' : 'single-independent',
14239
14294
  "onMousedown": e => e.preventDefault(),
14240
- "onFocusin": onFocusin,
14241
- "onFocusout": onFocusout
14295
+ "onFocusin": onFocusin
14242
14296
  }, {
14243
14297
  default: () => [!displayItems.value.length && !props.hideNoData && (slots['no-data']?.() ?? createVNode(VListItem, {
14244
14298
  "title": t(props.noDataText)
@@ -14256,11 +14310,13 @@ const VCombobox = genericComponent()({
14256
14310
  let {
14257
14311
  isSelected
14258
14312
  } = _ref2;
14259
- return props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
14313
+ return createVNode(Fragment, null, [props.multiple && !props.hideSelected ? createVNode(VCheckboxBtn, {
14260
14314
  "modelValue": isSelected,
14261
14315
  "ripple": false,
14262
14316
  "tabindex": "-1"
14263
- }, null) : undefined;
14317
+ }, null) : undefined, item.props.prependIcon && createVNode(VIcon, {
14318
+ "icon": item.props.prependIcon
14319
+ }, null)]);
14264
14320
  },
14265
14321
  title: () => {
14266
14322
  return isPristine.value ? item.title : highlightResult(item.title, getMatches(item)?.title, search.value?.length ?? 0);
@@ -14275,6 +14331,10 @@ const VCombobox = genericComponent()({
14275
14331
  }
14276
14332
  const slotProps = {
14277
14333
  'onClick:close': onChipClose,
14334
+ onMousedown(e) {
14335
+ e.preventDefault();
14336
+ e.stopPropagation();
14337
+ },
14278
14338
  modelValue: true,
14279
14339
  'onUpdate:modelValue': undefined
14280
14340
  };
@@ -14327,24 +14387,25 @@ const VCombobox = genericComponent()({
14327
14387
 
14328
14388
  // Types
14329
14389
 
14390
+ const makeVDialogProps = propsFactory({
14391
+ fullscreen: Boolean,
14392
+ retainFocus: {
14393
+ type: Boolean,
14394
+ default: true
14395
+ },
14396
+ scrollable: Boolean,
14397
+ ...makeVOverlayProps({
14398
+ origin: 'center center',
14399
+ scrollStrategy: 'block',
14400
+ transition: {
14401
+ component: VDialogTransition
14402
+ },
14403
+ zIndex: 2400
14404
+ })
14405
+ }, 'v-dialog');
14330
14406
  const VDialog = genericComponent()({
14331
14407
  name: 'VDialog',
14332
- props: {
14333
- fullscreen: Boolean,
14334
- retainFocus: {
14335
- type: Boolean,
14336
- default: true
14337
- },
14338
- scrollable: Boolean,
14339
- ...makeVOverlayProps({
14340
- origin: 'center center',
14341
- scrollStrategy: 'block',
14342
- transition: {
14343
- component: VDialogTransition
14344
- },
14345
- zIndex: 2400
14346
- })
14347
- },
14408
+ props: makeVDialogProps(),
14348
14409
  emits: {
14349
14410
  'update:modelValue': value => true
14350
14411
  },
@@ -14438,21 +14499,22 @@ const VDialog = genericComponent()({
14438
14499
 
14439
14500
  const VExpansionPanelSymbol = Symbol.for('vuetify:v-expansion-panel');
14440
14501
  const allowedVariants = ['default', 'accordion', 'inset', 'popout'];
14502
+ const makeVExpansionPanelsProps = propsFactory({
14503
+ color: String,
14504
+ variant: {
14505
+ type: String,
14506
+ default: 'default',
14507
+ validator: v => allowedVariants.includes(v)
14508
+ },
14509
+ readonly: Boolean,
14510
+ ...makeComponentProps(),
14511
+ ...makeGroupProps(),
14512
+ ...makeTagProps(),
14513
+ ...makeThemeProps()
14514
+ }, 'v-expansion-panel');
14441
14515
  const VExpansionPanels = genericComponent()({
14442
14516
  name: 'VExpansionPanels',
14443
- props: {
14444
- color: String,
14445
- variant: {
14446
- type: String,
14447
- default: 'default',
14448
- validator: v => allowedVariants.includes(v)
14449
- },
14450
- readonly: Boolean,
14451
- ...makeComponentProps(),
14452
- ...makeGroupProps(),
14453
- ...makeTagProps(),
14454
- ...makeThemeProps()
14455
- },
14517
+ props: makeVExpansionPanelsProps(),
14456
14518
  emits: {
14457
14519
  'update:modelValue': val => true
14458
14520
  },
@@ -14496,17 +14558,15 @@ const makeVExpansionPanelTitleProps = propsFactory({
14496
14558
  type: [Boolean, Object],
14497
14559
  default: false
14498
14560
  },
14499
- readonly: Boolean
14561
+ readonly: Boolean,
14562
+ ...makeComponentProps()
14500
14563
  }, 'v-expansion-panel-title');
14501
14564
  const VExpansionPanelTitle = genericComponent()({
14502
14565
  name: 'VExpansionPanelTitle',
14503
14566
  directives: {
14504
14567
  Ripple
14505
14568
  },
14506
- props: {
14507
- ...makeComponentProps(),
14508
- ...makeVExpansionPanelTitleProps()
14509
- },
14569
+ props: makeVExpansionPanelTitleProps(),
14510
14570
  setup(props, _ref) {
14511
14571
  let {
14512
14572
  slots
@@ -14545,12 +14605,13 @@ const VExpansionPanelTitle = genericComponent()({
14545
14605
  }
14546
14606
  });
14547
14607
 
14608
+ const makeVExpansionPanelTextProps = propsFactory({
14609
+ ...makeComponentProps(),
14610
+ ...makeLazyProps()
14611
+ }, 'v-expansion-panel-text');
14548
14612
  const VExpansionPanelText = genericComponent()({
14549
14613
  name: 'VExpansionPanelText',
14550
- props: {
14551
- ...makeComponentProps(),
14552
- ...makeLazyProps()
14553
- },
14614
+ props: makeVExpansionPanelTextProps(),
14554
14615
  setup(props, _ref) {
14555
14616
  let {
14556
14617
  slots
@@ -14575,20 +14636,21 @@ const VExpansionPanelText = genericComponent()({
14575
14636
  }
14576
14637
  });
14577
14638
 
14639
+ const makeVExpansionPanelProps = propsFactory({
14640
+ title: String,
14641
+ text: String,
14642
+ bgColor: String,
14643
+ ...makeComponentProps(),
14644
+ ...makeElevationProps(),
14645
+ ...makeGroupItemProps(),
14646
+ ...makeLazyProps(),
14647
+ ...makeRoundedProps(),
14648
+ ...makeTagProps(),
14649
+ ...makeVExpansionPanelTitleProps()
14650
+ }, 'v-expansion-panel');
14578
14651
  const VExpansionPanel = genericComponent()({
14579
14652
  name: 'VExpansionPanel',
14580
- props: {
14581
- title: String,
14582
- text: String,
14583
- bgColor: String,
14584
- ...makeComponentProps(),
14585
- ...makeElevationProps(),
14586
- ...makeGroupItemProps(),
14587
- ...makeLazyProps(),
14588
- ...makeRoundedProps(),
14589
- ...makeTagProps(),
14590
- ...makeVExpansionPanelTitleProps()
14591
- },
14653
+ props: makeVExpansionPanelProps(),
14592
14654
  emits: {
14593
14655
  'group:selected': val => true
14594
14656
  },
@@ -14631,8 +14693,7 @@ const VExpansionPanel = genericComponent()({
14631
14693
  'v-expansion-panel--after-active': isAfterSelected.value,
14632
14694
  'v-expansion-panel--disabled': isDisabled.value
14633
14695
  }, roundedClasses.value, backgroundColorClasses.value, props.class],
14634
- "style": [backgroundColorStyles.value, props.style],
14635
- "aria-expanded": groupItem.isSelected.value
14696
+ "style": [backgroundColorStyles.value, props.style]
14636
14697
  }, {
14637
14698
  default: () => [createVNode("div", {
14638
14699
  "class": ['v-expansion-panel__shadow', ...elevationClasses.value]
@@ -14659,42 +14720,43 @@ const VExpansionPanel = genericComponent()({
14659
14720
 
14660
14721
  // Types
14661
14722
 
14723
+ const makeVFileInputProps = propsFactory({
14724
+ chips: Boolean,
14725
+ counter: Boolean,
14726
+ counterSizeString: {
14727
+ type: String,
14728
+ default: '$vuetify.fileInput.counterSize'
14729
+ },
14730
+ counterString: {
14731
+ type: String,
14732
+ default: '$vuetify.fileInput.counter'
14733
+ },
14734
+ multiple: Boolean,
14735
+ showSize: {
14736
+ type: [Boolean, Number],
14737
+ default: false,
14738
+ validator: v => {
14739
+ return typeof v === 'boolean' || [1000, 1024].includes(v);
14740
+ }
14741
+ },
14742
+ ...makeVInputProps({
14743
+ prependIcon: '$file'
14744
+ }),
14745
+ modelValue: {
14746
+ type: Array,
14747
+ default: () => [],
14748
+ validator: val => {
14749
+ return wrapInArray(val).every(v => v != null && typeof v === 'object');
14750
+ }
14751
+ },
14752
+ ...makeVFieldProps({
14753
+ clearable: true
14754
+ })
14755
+ }, 'v-file-input');
14662
14756
  const VFileInput = genericComponent()({
14663
14757
  name: 'VFileInput',
14664
14758
  inheritAttrs: false,
14665
- props: {
14666
- chips: Boolean,
14667
- counter: Boolean,
14668
- counterSizeString: {
14669
- type: String,
14670
- default: '$vuetify.fileInput.counterSize'
14671
- },
14672
- counterString: {
14673
- type: String,
14674
- default: '$vuetify.fileInput.counter'
14675
- },
14676
- multiple: Boolean,
14677
- showSize: {
14678
- type: [Boolean, Number],
14679
- default: false,
14680
- validator: v => {
14681
- return typeof v === 'boolean' || [1000, 1024].includes(v);
14682
- }
14683
- },
14684
- ...makeVInputProps({
14685
- prependIcon: '$file'
14686
- }),
14687
- modelValue: {
14688
- type: Array,
14689
- default: () => [],
14690
- validator: val => {
14691
- return wrapInArray(val).every(v => v != null && typeof v === 'object');
14692
- }
14693
- },
14694
- ...makeVFieldProps({
14695
- clearable: true
14696
- })
14697
- },
14759
+ props: makeVFileInputProps(),
14698
14760
  emits: {
14699
14761
  'click:control': e => true,
14700
14762
  'mousedown:control': e => true,
@@ -14738,6 +14800,7 @@ const VFileInput = genericComponent()({
14738
14800
  const vInputRef = ref();
14739
14801
  const vFieldRef = ref();
14740
14802
  const inputRef = ref();
14803
+ const isActive = computed(() => isFocused.value || props.active);
14741
14804
  function onFocus() {
14742
14805
  if (inputRef.value !== document.activeElement) {
14743
14806
  inputRef.value?.focus();
@@ -14806,7 +14869,7 @@ const VFileInput = genericComponent()({
14806
14869
  "onClick:appendInner": props['onClick:appendInner']
14807
14870
  }, fieldProps, {
14808
14871
  "id": id.value,
14809
- "active": isDirty.value || isFocused.value,
14872
+ "active": isActive.value || isDirty.value,
14810
14873
  "dirty": isDirty.value,
14811
14874
  "disabled": isDisabled.value,
14812
14875
  "focused": isFocused.value,
@@ -14864,25 +14927,26 @@ const VFileInput = genericComponent()({
14864
14927
  }
14865
14928
  });
14866
14929
 
14930
+ const makeVFooterProps = propsFactory({
14931
+ app: Boolean,
14932
+ color: String,
14933
+ height: {
14934
+ type: [Number, String],
14935
+ default: 'auto'
14936
+ },
14937
+ ...makeBorderProps(),
14938
+ ...makeComponentProps(),
14939
+ ...makeElevationProps(),
14940
+ ...makeLayoutItemProps(),
14941
+ ...makeRoundedProps(),
14942
+ ...makeTagProps({
14943
+ tag: 'footer'
14944
+ }),
14945
+ ...makeThemeProps()
14946
+ }, 'v-footer');
14867
14947
  const VFooter = genericComponent()({
14868
14948
  name: 'VFooter',
14869
- props: {
14870
- app: Boolean,
14871
- color: String,
14872
- height: {
14873
- type: [Number, String],
14874
- default: 'auto'
14875
- },
14876
- ...makeBorderProps(),
14877
- ...makeComponentProps(),
14878
- ...makeElevationProps(),
14879
- ...makeLayoutItemProps(),
14880
- ...makeRoundedProps(),
14881
- ...makeTagProps({
14882
- tag: 'footer'
14883
- }),
14884
- ...makeThemeProps()
14885
- },
14949
+ props: makeVFooterProps(),
14886
14950
  setup(props, _ref) {
14887
14951
  let {
14888
14952
  slots
@@ -14933,12 +14997,13 @@ const VFooter = genericComponent()({
14933
14997
 
14934
14998
  // Types
14935
14999
 
15000
+ const makeVFormProps = propsFactory({
15001
+ ...makeComponentProps(),
15002
+ ...makeFormProps()
15003
+ }, 'v-form');
14936
15004
  const VForm = genericComponent()({
14937
15005
  name: 'VForm',
14938
- props: {
14939
- ...makeComponentProps(),
14940
- ...makeFormProps()
14941
- },
15006
+ props: makeVFormProps(),
14942
15007
  emits: {
14943
15008
  'update:modelValue': val => true,
14944
15009
  submit: e => true
@@ -14985,24 +15050,28 @@ const VForm = genericComponent()({
14985
15050
  }
14986
15051
  });
14987
15052
 
15053
+ const makeVContainerProps = propsFactory({
15054
+ fluid: {
15055
+ type: Boolean,
15056
+ default: false
15057
+ },
15058
+ ...makeComponentProps(),
15059
+ ...makeTagProps()
15060
+ }, 'v-container');
14988
15061
  const VContainer = genericComponent()({
14989
15062
  name: 'VContainer',
14990
- props: {
14991
- fluid: {
14992
- type: Boolean,
14993
- default: false
14994
- },
14995
- ...makeComponentProps(),
14996
- ...makeTagProps()
14997
- },
15063
+ props: makeVContainerProps(),
14998
15064
  setup(props, _ref) {
14999
15065
  let {
15000
15066
  slots
15001
15067
  } = _ref;
15068
+ const {
15069
+ rtlClasses
15070
+ } = useRtl();
15002
15071
  useRender(() => createVNode(props.tag, {
15003
15072
  "class": ['v-container', {
15004
15073
  'v-container--fluid': props.fluid
15005
- }, props.class],
15074
+ }, rtlClasses.value, props.class],
15006
15075
  "style": props.style
15007
15076
  }, slots));
15008
15077
  return {};
@@ -15071,32 +15140,33 @@ function breakpointClass$1(type, prop, val) {
15071
15140
  return className.toLowerCase();
15072
15141
  }
15073
15142
  const ALIGN_SELF_VALUES = ['auto', 'start', 'end', 'center', 'baseline', 'stretch'];
15143
+ const makeVColProps = propsFactory({
15144
+ cols: {
15145
+ type: [Boolean, String, Number],
15146
+ default: false
15147
+ },
15148
+ ...breakpointProps,
15149
+ offset: {
15150
+ type: [String, Number],
15151
+ default: null
15152
+ },
15153
+ ...offsetProps,
15154
+ order: {
15155
+ type: [String, Number],
15156
+ default: null
15157
+ },
15158
+ ...orderProps,
15159
+ alignSelf: {
15160
+ type: String,
15161
+ default: null,
15162
+ validator: str => ALIGN_SELF_VALUES.includes(str)
15163
+ },
15164
+ ...makeComponentProps(),
15165
+ ...makeTagProps()
15166
+ }, 'v-col');
15074
15167
  const VCol = genericComponent()({
15075
15168
  name: 'VCol',
15076
- props: {
15077
- cols: {
15078
- type: [Boolean, String, Number],
15079
- default: false
15080
- },
15081
- ...breakpointProps,
15082
- offset: {
15083
- type: [String, Number],
15084
- default: null
15085
- },
15086
- ...offsetProps,
15087
- order: {
15088
- type: [String, Number],
15089
- default: null
15090
- },
15091
- ...orderProps,
15092
- alignSelf: {
15093
- type: String,
15094
- default: null,
15095
- validator: str => ALIGN_SELF_VALUES.includes(str)
15096
- },
15097
- ...makeComponentProps(),
15098
- ...makeTagProps()
15099
- },
15169
+ props: makeVColProps(),
15100
15170
  setup(props, _ref) {
15101
15171
  let {
15102
15172
  slots
@@ -15189,32 +15259,33 @@ function breakpointClass(type, prop, val) {
15189
15259
  className += `-${val}`;
15190
15260
  return className.toLowerCase();
15191
15261
  }
15262
+ const makeVRowProps = propsFactory({
15263
+ dense: Boolean,
15264
+ noGutters: Boolean,
15265
+ align: {
15266
+ type: String,
15267
+ default: null,
15268
+ validator: alignValidator
15269
+ },
15270
+ ...alignProps,
15271
+ justify: {
15272
+ type: String,
15273
+ default: null,
15274
+ validator: justifyValidator
15275
+ },
15276
+ ...justifyProps,
15277
+ alignContent: {
15278
+ type: String,
15279
+ default: null,
15280
+ validator: alignContentValidator
15281
+ },
15282
+ ...alignContentProps,
15283
+ ...makeComponentProps(),
15284
+ ...makeTagProps()
15285
+ }, 'v-row');
15192
15286
  const VRow = genericComponent()({
15193
15287
  name: 'VRow',
15194
- props: {
15195
- dense: Boolean,
15196
- noGutters: Boolean,
15197
- align: {
15198
- type: String,
15199
- default: null,
15200
- validator: alignValidator
15201
- },
15202
- ...alignProps,
15203
- justify: {
15204
- type: String,
15205
- default: null,
15206
- validator: justifyValidator
15207
- },
15208
- ...justifyProps,
15209
- alignContent: {
15210
- type: String,
15211
- default: null,
15212
- validator: alignContentValidator
15213
- },
15214
- ...alignContentProps,
15215
- ...makeComponentProps(),
15216
- ...makeTagProps()
15217
- },
15288
+ props: makeVRowProps(),
15218
15289
  setup(props, _ref) {
15219
15290
  let {
15220
15291
  slots
@@ -15250,16 +15321,17 @@ const VRow = genericComponent()({
15250
15321
  const VSpacer = createSimpleFunctional('flex-grow-1', 'div', 'VSpacer');
15251
15322
 
15252
15323
  // Composables
15324
+ const makeVHoverProps = propsFactory({
15325
+ disabled: Boolean,
15326
+ modelValue: {
15327
+ type: Boolean,
15328
+ default: undefined
15329
+ },
15330
+ ...makeDelayProps()
15331
+ }, 'v-hover');
15253
15332
  const VHover = genericComponent()({
15254
15333
  name: 'VHover',
15255
- props: {
15256
- disabled: Boolean,
15257
- modelValue: {
15258
- type: Boolean,
15259
- default: undefined
15260
- },
15261
- ...makeDelayProps()
15262
- },
15334
+ props: makeVHoverProps(),
15263
15335
  emits: {
15264
15336
  'update:modelValue': value => true
15265
15337
  },
@@ -15283,16 +15355,17 @@ const VHover = genericComponent()({
15283
15355
  });
15284
15356
 
15285
15357
  const VItemGroupSymbol = Symbol.for('vuetify:v-item-group');
15358
+ const makeVItemGroupProps = propsFactory({
15359
+ ...makeComponentProps(),
15360
+ ...makeGroupProps({
15361
+ selectedClass: 'v-item--selected'
15362
+ }),
15363
+ ...makeTagProps(),
15364
+ ...makeThemeProps()
15365
+ }, 'v-item-group');
15286
15366
  const VItemGroup = genericComponent()({
15287
15367
  name: 'VItemGroup',
15288
- props: {
15289
- ...makeComponentProps(),
15290
- ...makeGroupProps({
15291
- selectedClass: 'v-item--selected'
15292
- }),
15293
- ...makeTagProps(),
15294
- ...makeThemeProps()
15295
- },
15368
+ props: makeVItemGroupProps(),
15296
15369
  emits: {
15297
15370
  'update:modelValue': value => true
15298
15371
  },
@@ -15360,12 +15433,13 @@ const VItem = genericComponent()({
15360
15433
 
15361
15434
  const VKbd = createSimpleFunctional('v-kbd');
15362
15435
 
15436
+ const makeVLayoutProps = propsFactory({
15437
+ ...makeComponentProps(),
15438
+ ...makeLayoutProps()
15439
+ }, 'v-layout');
15363
15440
  const VLayout = genericComponent()({
15364
15441
  name: 'VLayout',
15365
- props: {
15366
- ...makeComponentProps(),
15367
- ...makeLayoutProps()
15368
- },
15442
+ props: makeVLayoutProps(),
15369
15443
  setup(props, _ref) {
15370
15444
  let {
15371
15445
  slots
@@ -15391,21 +15465,22 @@ const VLayout = genericComponent()({
15391
15465
 
15392
15466
  // Types
15393
15467
 
15468
+ const makeVLayoutItemProps = propsFactory({
15469
+ position: {
15470
+ type: String,
15471
+ required: true
15472
+ },
15473
+ size: {
15474
+ type: [Number, String],
15475
+ default: 300
15476
+ },
15477
+ modelValue: Boolean,
15478
+ ...makeComponentProps(),
15479
+ ...makeLayoutItemProps()
15480
+ }, 'v-layout-item');
15394
15481
  const VLayoutItem = genericComponent()({
15395
15482
  name: 'VLayoutItem',
15396
- props: {
15397
- position: {
15398
- type: String,
15399
- required: true
15400
- },
15401
- size: {
15402
- type: [Number, String],
15403
- default: 300
15404
- },
15405
- modelValue: Boolean,
15406
- ...makeComponentProps(),
15407
- ...makeLayoutItemProps()
15408
- },
15483
+ props: makeVLayoutItemProps(),
15409
15484
  setup(props, _ref) {
15410
15485
  let {
15411
15486
  slots
@@ -15430,30 +15505,31 @@ const VLayoutItem = genericComponent()({
15430
15505
 
15431
15506
  // Types
15432
15507
 
15508
+ const makeVLazyProps = propsFactory({
15509
+ modelValue: Boolean,
15510
+ options: {
15511
+ type: Object,
15512
+ // For more information on types, navigate to:
15513
+ // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API
15514
+ default: () => ({
15515
+ root: undefined,
15516
+ rootMargin: undefined,
15517
+ threshold: undefined
15518
+ })
15519
+ },
15520
+ ...makeComponentProps(),
15521
+ ...makeDimensionProps(),
15522
+ ...makeTagProps(),
15523
+ ...makeTransitionProps({
15524
+ transition: 'fade-transition'
15525
+ })
15526
+ }, 'v-lazy');
15433
15527
  const VLazy = genericComponent()({
15434
15528
  name: 'VLazy',
15435
15529
  directives: {
15436
15530
  intersect: Intersect
15437
15531
  },
15438
- props: {
15439
- modelValue: Boolean,
15440
- options: {
15441
- type: Object,
15442
- // For more information on types, navigate to:
15443
- // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API
15444
- default: () => ({
15445
- root: undefined,
15446
- rootMargin: undefined,
15447
- threshold: undefined
15448
- })
15449
- },
15450
- ...makeComponentProps(),
15451
- ...makeDimensionProps(),
15452
- ...makeTagProps(),
15453
- ...makeTransitionProps({
15454
- transition: 'fade-transition'
15455
- })
15456
- },
15532
+ props: makeVLazyProps(),
15457
15533
  emits: {
15458
15534
  'update:modelValue': value => true
15459
15535
  },
@@ -15487,18 +15563,19 @@ const VLazy = genericComponent()({
15487
15563
  }
15488
15564
  });
15489
15565
 
15566
+ const makeVLocaleProviderProps = propsFactory({
15567
+ locale: String,
15568
+ fallbackLocale: String,
15569
+ messages: Object,
15570
+ rtl: {
15571
+ type: Boolean,
15572
+ default: undefined
15573
+ },
15574
+ ...makeComponentProps()
15575
+ }, 'v-locale-provider');
15490
15576
  const VLocaleProvider = genericComponent()({
15491
15577
  name: 'VLocaleProvider',
15492
- props: {
15493
- locale: String,
15494
- fallbackLocale: String,
15495
- messages: Object,
15496
- rtl: {
15497
- type: Boolean,
15498
- default: undefined
15499
- },
15500
- ...makeComponentProps()
15501
- },
15578
+ props: makeVLocaleProviderProps(),
15502
15579
  setup(props, _ref) {
15503
15580
  let {
15504
15581
  slots
@@ -15514,15 +15591,16 @@ const VLocaleProvider = genericComponent()({
15514
15591
  }
15515
15592
  });
15516
15593
 
15594
+ const makeVMainProps = propsFactory({
15595
+ scrollable: Boolean,
15596
+ ...makeComponentProps(),
15597
+ ...makeTagProps({
15598
+ tag: 'main'
15599
+ })
15600
+ }, 'v-main');
15517
15601
  const VMain = genericComponent()({
15518
15602
  name: 'VMain',
15519
- props: {
15520
- scrollable: Boolean,
15521
- ...makeComponentProps(),
15522
- ...makeTagProps({
15523
- tag: 'main'
15524
- })
15525
- },
15603
+ props: makeVMainProps(),
15526
15604
  setup(props, _ref) {
15527
15605
  let {
15528
15606
  slots
@@ -15590,18 +15668,24 @@ function useSticky(_ref) {
15590
15668
  const layoutTop = parseFloat(layoutItemStyles.value.top ?? 0);
15591
15669
  const top = window.scrollY - Math.max(0, stuckPosition.value - layoutTop);
15592
15670
  const bottom = rect.height + Math.max(stuckPosition.value, layoutTop) - window.scrollY - window.innerHeight;
15671
+ const bodyScroll = parseFloat(getComputedStyle(rootEl.value).getPropertyValue('--v-body-scroll-y')) || 0;
15593
15672
  if (rect.height < window.innerHeight - layoutTop) {
15594
15673
  isStuck.value = 'top';
15595
15674
  stuckPosition.value = layoutTop;
15596
15675
  } else if (direction === 'up' && isStuck.value === 'bottom' || direction === 'down' && isStuck.value === 'top') {
15597
- stuckPosition.value = window.scrollY + rect.top;
15676
+ stuckPosition.value = window.scrollY + rect.top - bodyScroll;
15598
15677
  isStuck.value = true;
15599
15678
  } else if (direction === 'down' && bottom <= 0) {
15600
15679
  stuckPosition.value = 0;
15601
15680
  isStuck.value = 'bottom';
15602
15681
  } else if (direction === 'up' && top <= 0) {
15603
- stuckPosition.value = rect.top + top;
15604
- isStuck.value = 'top';
15682
+ if (!bodyScroll) {
15683
+ stuckPosition.value = rect.top + top;
15684
+ isStuck.value = 'top';
15685
+ } else if (isStuck.value !== 'top') {
15686
+ stuckPosition.value = -top + bodyScroll + layoutTop;
15687
+ isStuck.value = 'top';
15688
+ }
15605
15689
  }
15606
15690
  lastScrollTop = window.scrollY;
15607
15691
  }
@@ -15844,54 +15928,55 @@ function oops() {
15844
15928
  // Types
15845
15929
 
15846
15930
  const locations = ['start', 'end', 'left', 'right', 'top', 'bottom'];
15931
+ const makeVNavigationDrawerProps = propsFactory({
15932
+ color: String,
15933
+ disableResizeWatcher: Boolean,
15934
+ disableRouteWatcher: Boolean,
15935
+ expandOnHover: Boolean,
15936
+ floating: Boolean,
15937
+ modelValue: {
15938
+ type: Boolean,
15939
+ default: null
15940
+ },
15941
+ permanent: Boolean,
15942
+ rail: {
15943
+ type: Boolean,
15944
+ default: null
15945
+ },
15946
+ railWidth: {
15947
+ type: [Number, String],
15948
+ default: 56
15949
+ },
15950
+ scrim: {
15951
+ type: [String, Boolean],
15952
+ default: true
15953
+ },
15954
+ image: String,
15955
+ temporary: Boolean,
15956
+ touchless: Boolean,
15957
+ width: {
15958
+ type: [Number, String],
15959
+ default: 256
15960
+ },
15961
+ location: {
15962
+ type: String,
15963
+ default: 'start',
15964
+ validator: value => locations.includes(value)
15965
+ },
15966
+ sticky: Boolean,
15967
+ ...makeBorderProps(),
15968
+ ...makeComponentProps(),
15969
+ ...makeElevationProps(),
15970
+ ...makeLayoutItemProps(),
15971
+ ...makeRoundedProps(),
15972
+ ...makeTagProps({
15973
+ tag: 'nav'
15974
+ }),
15975
+ ...makeThemeProps()
15976
+ }, 'v-navigation-drawer');
15847
15977
  const VNavigationDrawer = genericComponent()({
15848
15978
  name: 'VNavigationDrawer',
15849
- props: {
15850
- color: String,
15851
- disableResizeWatcher: Boolean,
15852
- disableRouteWatcher: Boolean,
15853
- expandOnHover: Boolean,
15854
- floating: Boolean,
15855
- modelValue: {
15856
- type: Boolean,
15857
- default: null
15858
- },
15859
- permanent: Boolean,
15860
- rail: {
15861
- type: Boolean,
15862
- default: null
15863
- },
15864
- railWidth: {
15865
- type: [Number, String],
15866
- default: 56
15867
- },
15868
- scrim: {
15869
- type: [String, Boolean],
15870
- default: true
15871
- },
15872
- image: String,
15873
- temporary: Boolean,
15874
- touchless: Boolean,
15875
- width: {
15876
- type: [Number, String],
15877
- default: 256
15878
- },
15879
- location: {
15880
- type: String,
15881
- default: 'start',
15882
- validator: value => locations.includes(value)
15883
- },
15884
- sticky: Boolean,
15885
- ...makeBorderProps(),
15886
- ...makeComponentProps(),
15887
- ...makeElevationProps(),
15888
- ...makeLayoutItemProps(),
15889
- ...makeRoundedProps(),
15890
- ...makeTagProps({
15891
- tag: 'nav'
15892
- }),
15893
- ...makeThemeProps()
15894
- },
15979
+ props: makeVNavigationDrawerProps(),
15895
15980
  emits: {
15896
15981
  'update:modelValue': val => true,
15897
15982
  'update:rail': val => true
@@ -15972,7 +16057,6 @@ const VNavigationDrawer = genericComponent()({
15972
16057
  });
15973
16058
  const {
15974
16059
  layoutItemStyles,
15975
- layoutRect,
15976
16060
  layoutItemScrimStyles
15977
16061
  } = useLayoutItem({
15978
16062
  id: props.name,
@@ -16002,12 +16086,6 @@ const VNavigationDrawer = genericComponent()({
16002
16086
  opacity: dragProgress.value * 0.2,
16003
16087
  transition: 'none'
16004
16088
  } : undefined),
16005
- ...(layoutRect.value ? {
16006
- left: convertToUnit(layoutRect.value.left),
16007
- right: convertToUnit(layoutRect.value.right),
16008
- top: convertToUnit(layoutRect.value.top),
16009
- bottom: convertToUnit(layoutRect.value.bottom)
16010
- } : undefined),
16011
16089
  ...layoutItemScrimStyles.value
16012
16090
  }));
16013
16091
  provideDefaults({
@@ -16096,88 +16174,89 @@ function useRefs() {
16096
16174
 
16097
16175
  // Types
16098
16176
 
16099
- const VPagination = genericComponent()({
16100
- name: 'VPagination',
16101
- props: {
16102
- activeColor: String,
16103
- start: {
16104
- type: [Number, String],
16105
- default: 1
16106
- },
16107
- modelValue: {
16108
- type: Number,
16109
- default: props => props.start
16110
- },
16111
- disabled: Boolean,
16112
- length: {
16113
- type: [Number, String],
16114
- default: 1,
16115
- validator: val => val % 1 === 0
16116
- },
16117
- totalVisible: [Number, String],
16118
- firstIcon: {
16119
- type: IconValue,
16120
- default: '$first'
16121
- },
16122
- prevIcon: {
16123
- type: IconValue,
16124
- default: '$prev'
16125
- },
16126
- nextIcon: {
16127
- type: IconValue,
16128
- default: '$next'
16129
- },
16130
- lastIcon: {
16131
- type: IconValue,
16132
- default: '$last'
16133
- },
16134
- ariaLabel: {
16135
- type: String,
16136
- default: '$vuetify.pagination.ariaLabel.root'
16137
- },
16138
- pageAriaLabel: {
16139
- type: String,
16140
- default: '$vuetify.pagination.ariaLabel.page'
16141
- },
16142
- currentPageAriaLabel: {
16143
- type: String,
16144
- default: '$vuetify.pagination.ariaLabel.currentPage'
16145
- },
16146
- firstAriaLabel: {
16147
- type: String,
16148
- default: '$vuetify.pagination.ariaLabel.first'
16149
- },
16150
- previousAriaLabel: {
16151
- type: String,
16152
- default: '$vuetify.pagination.ariaLabel.previous'
16153
- },
16154
- nextAriaLabel: {
16155
- type: String,
16156
- default: '$vuetify.pagination.ariaLabel.next'
16157
- },
16158
- lastAriaLabel: {
16159
- type: String,
16160
- default: '$vuetify.pagination.ariaLabel.last'
16161
- },
16162
- ellipsis: {
16163
- type: String,
16164
- default: '...'
16165
- },
16166
- showFirstLastPage: Boolean,
16167
- ...makeBorderProps(),
16168
- ...makeComponentProps(),
16169
- ...makeDensityProps(),
16170
- ...makeElevationProps(),
16171
- ...makeRoundedProps(),
16172
- ...makeSizeProps(),
16173
- ...makeTagProps({
16174
- tag: 'nav'
16175
- }),
16176
- ...makeThemeProps(),
16177
- ...makeVariantProps({
16178
- variant: 'text'
16179
- })
16177
+ const makeVPaginationProps = propsFactory({
16178
+ activeColor: String,
16179
+ start: {
16180
+ type: [Number, String],
16181
+ default: 1
16182
+ },
16183
+ modelValue: {
16184
+ type: Number,
16185
+ default: props => props.start
16186
+ },
16187
+ disabled: Boolean,
16188
+ length: {
16189
+ type: [Number, String],
16190
+ default: 1,
16191
+ validator: val => val % 1 === 0
16192
+ },
16193
+ totalVisible: [Number, String],
16194
+ firstIcon: {
16195
+ type: IconValue,
16196
+ default: '$first'
16197
+ },
16198
+ prevIcon: {
16199
+ type: IconValue,
16200
+ default: '$prev'
16201
+ },
16202
+ nextIcon: {
16203
+ type: IconValue,
16204
+ default: '$next'
16205
+ },
16206
+ lastIcon: {
16207
+ type: IconValue,
16208
+ default: '$last'
16209
+ },
16210
+ ariaLabel: {
16211
+ type: String,
16212
+ default: '$vuetify.pagination.ariaLabel.root'
16213
+ },
16214
+ pageAriaLabel: {
16215
+ type: String,
16216
+ default: '$vuetify.pagination.ariaLabel.page'
16217
+ },
16218
+ currentPageAriaLabel: {
16219
+ type: String,
16220
+ default: '$vuetify.pagination.ariaLabel.currentPage'
16221
+ },
16222
+ firstAriaLabel: {
16223
+ type: String,
16224
+ default: '$vuetify.pagination.ariaLabel.first'
16225
+ },
16226
+ previousAriaLabel: {
16227
+ type: String,
16228
+ default: '$vuetify.pagination.ariaLabel.previous'
16229
+ },
16230
+ nextAriaLabel: {
16231
+ type: String,
16232
+ default: '$vuetify.pagination.ariaLabel.next'
16233
+ },
16234
+ lastAriaLabel: {
16235
+ type: String,
16236
+ default: '$vuetify.pagination.ariaLabel.last'
16237
+ },
16238
+ ellipsis: {
16239
+ type: String,
16240
+ default: '...'
16180
16241
  },
16242
+ showFirstLastPage: Boolean,
16243
+ ...makeBorderProps(),
16244
+ ...makeComponentProps(),
16245
+ ...makeDensityProps(),
16246
+ ...makeElevationProps(),
16247
+ ...makeRoundedProps(),
16248
+ ...makeSizeProps(),
16249
+ ...makeTagProps({
16250
+ tag: 'nav'
16251
+ }),
16252
+ ...makeThemeProps(),
16253
+ ...makeVariantProps({
16254
+ variant: 'text'
16255
+ })
16256
+ }, 'v-pagination');
16257
+ const VPagination = genericComponent()({
16258
+ name: 'VPagination',
16259
+ props: makeVPaginationProps(),
16181
16260
  emits: {
16182
16261
  'update:modelValue': value => true,
16183
16262
  first: value => true,
@@ -16416,15 +16495,16 @@ const VPagination = genericComponent()({
16416
16495
  function floor(val) {
16417
16496
  return Math.floor(Math.abs(val)) * Math.sign(val);
16418
16497
  }
16498
+ const makeVParallaxProps = propsFactory({
16499
+ scale: {
16500
+ type: [Number, String],
16501
+ default: 0.5
16502
+ },
16503
+ ...makeComponentProps()
16504
+ }, 'v-parallax');
16419
16505
  const VParallax = genericComponent()({
16420
16506
  name: 'VParallax',
16421
- props: {
16422
- scale: {
16423
- type: [Number, String],
16424
- default: 0.5
16425
- },
16426
- ...makeComponentProps()
16427
- },
16507
+ props: makeVParallaxProps(),
16428
16508
  setup(props, _ref) {
16429
16509
  let {
16430
16510
  slots
@@ -16498,14 +16578,15 @@ const VParallax = genericComponent()({
16498
16578
 
16499
16579
  // Types
16500
16580
 
16581
+ const makeVRadioProps = propsFactory({
16582
+ ...makeSelectionControlProps({
16583
+ falseIcon: '$radioOff',
16584
+ trueIcon: '$radioOn'
16585
+ })
16586
+ }, 'v-radio');
16501
16587
  const VRadio = genericComponent()({
16502
16588
  name: 'VRadio',
16503
- props: {
16504
- ...makeSelectionControlProps({
16505
- falseIcon: '$radioOff',
16506
- trueIcon: '$radioOn'
16507
- })
16508
- },
16589
+ props: makeVRadioProps(),
16509
16590
  setup(props, _ref) {
16510
16591
  let {
16511
16592
  slots
@@ -16521,29 +16602,30 @@ const VRadio = genericComponent()({
16521
16602
 
16522
16603
  // Types
16523
16604
 
16605
+ const makeVRadioGroupProps = propsFactory({
16606
+ height: {
16607
+ type: [Number, String],
16608
+ default: 'auto'
16609
+ },
16610
+ ...makeVInputProps(),
16611
+ ...omit(makeSelectionControlGroupProps(), ['multiple']),
16612
+ trueIcon: {
16613
+ type: IconValue,
16614
+ default: '$radioOn'
16615
+ },
16616
+ falseIcon: {
16617
+ type: IconValue,
16618
+ default: '$radioOff'
16619
+ },
16620
+ type: {
16621
+ type: String,
16622
+ default: 'radio'
16623
+ }
16624
+ }, 'v-radio-group');
16524
16625
  const VRadioGroup = genericComponent()({
16525
16626
  name: 'VRadioGroup',
16526
16627
  inheritAttrs: false,
16527
- props: {
16528
- height: {
16529
- type: [Number, String],
16530
- default: 'auto'
16531
- },
16532
- ...makeVInputProps(),
16533
- ...omit(makeSelectionControlGroupProps(), ['multiple']),
16534
- trueIcon: {
16535
- type: IconValue,
16536
- default: '$radioOn'
16537
- },
16538
- falseIcon: {
16539
- type: IconValue,
16540
- default: '$radioOff'
16541
- },
16542
- type: {
16543
- type: String,
16544
- default: 'radio'
16545
- }
16546
- },
16628
+ props: makeVRadioGroupProps(),
16547
16629
  emits: {
16548
16630
  'update:modelValue': val => true
16549
16631
  },
@@ -16609,18 +16691,19 @@ const VRadioGroup = genericComponent()({
16609
16691
 
16610
16692
  // Types
16611
16693
 
16694
+ const makeVRangeSliderProps = propsFactory({
16695
+ ...makeFocusProps(),
16696
+ ...makeVInputProps(),
16697
+ ...makeSliderProps(),
16698
+ strict: Boolean,
16699
+ modelValue: {
16700
+ type: Array,
16701
+ default: () => [0, 0]
16702
+ }
16703
+ }, 'v-range-slider');
16612
16704
  const VRangeSlider = genericComponent()({
16613
16705
  name: 'VRangeSlider',
16614
- props: {
16615
- ...makeFocusProps(),
16616
- ...makeVInputProps(),
16617
- ...makeSliderProps(),
16618
- strict: Boolean,
16619
- modelValue: {
16620
- type: Array,
16621
- default: () => [0, 0]
16622
- }
16623
- },
16706
+ props: makeVRangeSliderProps(),
16624
16707
  emits: {
16625
16708
  'update:focused': value => true,
16626
16709
  'update:modelValue': value => true,
@@ -16635,6 +16718,9 @@ const VRangeSlider = genericComponent()({
16635
16718
  const startThumbRef = ref();
16636
16719
  const stopThumbRef = ref();
16637
16720
  const inputRef = ref();
16721
+ const {
16722
+ rtlClasses
16723
+ } = useRtl();
16638
16724
  function getActiveThumb(e) {
16639
16725
  if (!startThumbRef.value || !stopThumbRef.value) return;
16640
16726
  const startOffset = getOffset(e, startThumbRef.value.$el, props.direction);
@@ -16705,7 +16791,7 @@ const VRangeSlider = genericComponent()({
16705
16791
  'v-slider--focused': isFocused.value,
16706
16792
  'v-slider--pressed': mousePressed.value,
16707
16793
  'v-slider--disabled': props.disabled
16708
- }, props.class],
16794
+ }, rtlClasses.value, props.class],
16709
16795
  "style": props.style,
16710
16796
  "ref": inputRef
16711
16797
  }, inputProps, {
@@ -16811,50 +16897,51 @@ const VRangeSlider = genericComponent()({
16811
16897
 
16812
16898
  // Types
16813
16899
 
16900
+ const makeVRatingProps = propsFactory({
16901
+ name: String,
16902
+ itemAriaLabel: {
16903
+ type: String,
16904
+ default: '$vuetify.rating.ariaLabel.item'
16905
+ },
16906
+ activeColor: String,
16907
+ color: String,
16908
+ clearable: Boolean,
16909
+ disabled: Boolean,
16910
+ emptyIcon: {
16911
+ type: IconValue,
16912
+ default: '$ratingEmpty'
16913
+ },
16914
+ fullIcon: {
16915
+ type: IconValue,
16916
+ default: '$ratingFull'
16917
+ },
16918
+ halfIncrements: Boolean,
16919
+ hover: Boolean,
16920
+ length: {
16921
+ type: [Number, String],
16922
+ default: 5
16923
+ },
16924
+ readonly: Boolean,
16925
+ modelValue: {
16926
+ type: [Number, String],
16927
+ default: 0
16928
+ },
16929
+ itemLabels: Array,
16930
+ itemLabelPosition: {
16931
+ type: String,
16932
+ default: 'top',
16933
+ validator: v => ['top', 'bottom'].includes(v)
16934
+ },
16935
+ ripple: Boolean,
16936
+ ...makeComponentProps(),
16937
+ ...makeDensityProps(),
16938
+ ...makeSizeProps(),
16939
+ ...makeTagProps(),
16940
+ ...makeThemeProps()
16941
+ }, 'v-rating');
16814
16942
  const VRating = genericComponent()({
16815
16943
  name: 'VRating',
16816
- props: {
16817
- name: String,
16818
- itemAriaLabel: {
16819
- type: String,
16820
- default: '$vuetify.rating.ariaLabel.item'
16821
- },
16822
- activeColor: String,
16823
- color: String,
16824
- clearable: Boolean,
16825
- disabled: Boolean,
16826
- emptyIcon: {
16827
- type: IconValue,
16828
- default: '$ratingEmpty'
16829
- },
16830
- fullIcon: {
16831
- type: IconValue,
16832
- default: '$ratingFull'
16833
- },
16834
- halfIncrements: Boolean,
16835
- hover: Boolean,
16836
- length: {
16837
- type: [Number, String],
16838
- default: 5
16839
- },
16840
- readonly: Boolean,
16841
- modelValue: {
16842
- type: [Number, String],
16843
- default: 0
16844
- },
16845
- itemLabels: Array,
16846
- itemLabelPosition: {
16847
- type: String,
16848
- default: 'top',
16849
- validator: v => ['top', 'bottom'].includes(v)
16850
- },
16851
- ripple: Boolean,
16852
- ...makeComponentProps(),
16853
- ...makeDensityProps(),
16854
- ...makeSizeProps(),
16855
- ...makeTagProps(),
16856
- ...makeThemeProps()
16857
- },
16944
+ props: makeVRatingProps(),
16858
16945
  emits: {
16859
16946
  'update:modelValue': value => true
16860
16947
  },
@@ -17366,9 +17453,7 @@ const VSlideGroup = genericComponent()({
17366
17453
 
17367
17454
  const VSlideGroupItem = genericComponent()({
17368
17455
  name: 'VSlideGroupItem',
17369
- props: {
17370
- ...makeGroupItemProps()
17371
- },
17456
+ props: makeGroupItemProps(),
17372
17457
  emits: {
17373
17458
  'group:selected': val => true
17374
17459
  },
@@ -17386,26 +17471,27 @@ const VSlideGroupItem = genericComponent()({
17386
17471
  }
17387
17472
  });
17388
17473
 
17474
+ const makeVSnackbarProps = propsFactory({
17475
+ multiLine: Boolean,
17476
+ timeout: {
17477
+ type: [Number, String],
17478
+ default: 5000
17479
+ },
17480
+ vertical: Boolean,
17481
+ ...makeLocationProps({
17482
+ location: 'bottom'
17483
+ }),
17484
+ ...makePositionProps(),
17485
+ ...makeRoundedProps(),
17486
+ ...makeVariantProps(),
17487
+ ...makeThemeProps(),
17488
+ ...omit(makeVOverlayProps({
17489
+ transition: 'v-snackbar-transition'
17490
+ }), ['persistent', 'noClickAnimation', 'scrim', 'scrollStrategy'])
17491
+ }, 'v-snackbar');
17389
17492
  const VSnackbar = genericComponent()({
17390
17493
  name: 'VSnackbar',
17391
- props: {
17392
- multiLine: Boolean,
17393
- timeout: {
17394
- type: [Number, String],
17395
- default: 5000
17396
- },
17397
- vertical: Boolean,
17398
- ...makeLocationProps({
17399
- location: 'bottom'
17400
- }),
17401
- ...makePositionProps(),
17402
- ...makeRoundedProps(),
17403
- ...makeVariantProps(),
17404
- ...makeThemeProps(),
17405
- ...omit(makeVOverlayProps({
17406
- transition: 'v-snackbar-transition'
17407
- }), ['persistent', 'noClickAnimation', 'scrim', 'scrollStrategy'])
17408
- },
17494
+ props: makeVSnackbarProps(),
17409
17495
  emits: {
17410
17496
  'update:modelValue': v => true
17411
17497
  },
@@ -17502,20 +17588,21 @@ const VSnackbar = genericComponent()({
17502
17588
 
17503
17589
  // Types
17504
17590
 
17591
+ const makeVSwitchProps = propsFactory({
17592
+ indeterminate: Boolean,
17593
+ inset: Boolean,
17594
+ flat: Boolean,
17595
+ loading: {
17596
+ type: [Boolean, String],
17597
+ default: false
17598
+ },
17599
+ ...makeVInputProps(),
17600
+ ...makeSelectionControlProps()
17601
+ }, 'v-switch');
17505
17602
  const VSwitch = genericComponent()({
17506
17603
  name: 'VSwitch',
17507
17604
  inheritAttrs: false,
17508
- props: {
17509
- indeterminate: Boolean,
17510
- inset: Boolean,
17511
- flat: Boolean,
17512
- loading: {
17513
- type: [Boolean, String],
17514
- default: false
17515
- },
17516
- ...makeVInputProps(),
17517
- ...makeSelectionControlProps()
17518
- },
17605
+ props: makeVSwitchProps(),
17519
17606
  emits: {
17520
17607
  'update:focused': focused => true,
17521
17608
  'update:modelValue': () => true,
@@ -17625,19 +17712,20 @@ const VSwitch = genericComponent()({
17625
17712
  }
17626
17713
  });
17627
17714
 
17715
+ const makeVSystemBarProps = propsFactory({
17716
+ color: String,
17717
+ height: [Number, String],
17718
+ window: Boolean,
17719
+ ...makeComponentProps(),
17720
+ ...makeElevationProps(),
17721
+ ...makeLayoutItemProps(),
17722
+ ...makeRoundedProps(),
17723
+ ...makeTagProps(),
17724
+ ...makeThemeProps()
17725
+ }, 'v-system-bar');
17628
17726
  const VSystemBar = genericComponent()({
17629
17727
  name: 'VSystemBar',
17630
- props: {
17631
- color: String,
17632
- height: [Number, String],
17633
- window: Boolean,
17634
- ...makeComponentProps(),
17635
- ...makeElevationProps(),
17636
- ...makeLayoutItemProps(),
17637
- ...makeRoundedProps(),
17638
- ...makeTagProps(),
17639
- ...makeThemeProps()
17640
- },
17728
+ props: makeVSystemBarProps(),
17641
17729
  setup(props, _ref) {
17642
17730
  let {
17643
17731
  slots
@@ -17682,21 +17770,22 @@ const VSystemBar = genericComponent()({
17682
17770
 
17683
17771
  const VTabsSymbol = Symbol.for('vuetify:v-tabs');
17684
17772
 
17773
+ const makeVTabProps = propsFactory({
17774
+ fixed: Boolean,
17775
+ sliderColor: String,
17776
+ hideSlider: Boolean,
17777
+ direction: {
17778
+ type: String,
17779
+ default: 'horizontal'
17780
+ },
17781
+ ...omit(makeVBtnProps({
17782
+ selectedClass: 'v-tab--selected',
17783
+ variant: 'text'
17784
+ }), ['active', 'block', 'flat', 'location', 'position', 'symbol'])
17785
+ }, 'v-tabs');
17685
17786
  const VTab = genericComponent()({
17686
17787
  name: 'VTab',
17687
- props: {
17688
- fixed: Boolean,
17689
- sliderColor: String,
17690
- hideSlider: Boolean,
17691
- direction: {
17692
- type: String,
17693
- default: 'horizontal'
17694
- },
17695
- ...omit(makeVBtnProps({
17696
- selectedClass: 'v-tab--selected',
17697
- variant: 'text'
17698
- }), ['active', 'block', 'flat', 'location', 'position', 'symbol'])
17699
- },
17788
+ props: makeVTabProps(),
17700
17789
  setup(props, _ref) {
17701
17790
  let {
17702
17791
  slots,
@@ -17782,34 +17871,35 @@ function parseItems(items) {
17782
17871
  return item;
17783
17872
  });
17784
17873
  }
17874
+ const makeVTabsProps = propsFactory({
17875
+ alignTabs: {
17876
+ type: String,
17877
+ default: 'start'
17878
+ },
17879
+ color: String,
17880
+ fixedTabs: Boolean,
17881
+ items: {
17882
+ type: Array,
17883
+ default: () => []
17884
+ },
17885
+ stacked: Boolean,
17886
+ bgColor: String,
17887
+ grow: Boolean,
17888
+ height: {
17889
+ type: [Number, String],
17890
+ default: undefined
17891
+ },
17892
+ hideSlider: Boolean,
17893
+ sliderColor: String,
17894
+ ...makeVSlideGroupProps({
17895
+ mandatory: 'force'
17896
+ }),
17897
+ ...makeDensityProps(),
17898
+ ...makeTagProps()
17899
+ }, 'v-tabs');
17785
17900
  const VTabs = genericComponent()({
17786
17901
  name: 'VTabs',
17787
- props: {
17788
- alignTabs: {
17789
- type: String,
17790
- default: 'start'
17791
- },
17792
- color: String,
17793
- fixedTabs: Boolean,
17794
- items: {
17795
- type: Array,
17796
- default: () => []
17797
- },
17798
- stacked: Boolean,
17799
- bgColor: String,
17800
- grow: Boolean,
17801
- height: {
17802
- type: [Number, String],
17803
- default: undefined
17804
- },
17805
- hideSlider: Boolean,
17806
- sliderColor: String,
17807
- ...makeVSlideGroupProps({
17808
- mandatory: 'force'
17809
- }),
17810
- ...makeDensityProps(),
17811
- ...makeTagProps()
17812
- },
17902
+ props: makeVTabsProps(),
17813
17903
  emits: {
17814
17904
  'update:modelValue': v => true
17815
17905
  },
@@ -17861,18 +17951,19 @@ const VTabs = genericComponent()({
17861
17951
  }
17862
17952
  });
17863
17953
 
17954
+ const makeVTableProps = propsFactory({
17955
+ fixedHeader: Boolean,
17956
+ fixedFooter: Boolean,
17957
+ height: [Number, String],
17958
+ hover: Boolean,
17959
+ ...makeComponentProps(),
17960
+ ...makeDensityProps(),
17961
+ ...makeTagProps(),
17962
+ ...makeThemeProps()
17963
+ }, 'v-table');
17864
17964
  const VTable = genericComponent()({
17865
17965
  name: 'VTable',
17866
- props: {
17867
- fixedHeader: Boolean,
17868
- fixedFooter: Boolean,
17869
- height: [Number, String],
17870
- hover: Boolean,
17871
- ...makeComponentProps(),
17872
- ...makeDensityProps(),
17873
- ...makeTagProps(),
17874
- ...makeThemeProps()
17875
- },
17966
+ props: makeVTableProps(),
17876
17967
  setup(props, _ref) {
17877
17968
  let {
17878
17969
  slots
@@ -17907,36 +17998,37 @@ const VTable = genericComponent()({
17907
17998
 
17908
17999
  // Types
17909
18000
 
18001
+ const makeVTextareaProps = propsFactory({
18002
+ autoGrow: Boolean,
18003
+ autofocus: Boolean,
18004
+ counter: [Boolean, Number, String],
18005
+ counterValue: Function,
18006
+ prefix: String,
18007
+ placeholder: String,
18008
+ persistentPlaceholder: Boolean,
18009
+ persistentCounter: Boolean,
18010
+ noResize: Boolean,
18011
+ rows: {
18012
+ type: [Number, String],
18013
+ default: 5,
18014
+ validator: v => !isNaN(parseFloat(v))
18015
+ },
18016
+ maxRows: {
18017
+ type: [Number, String],
18018
+ validator: v => !isNaN(parseFloat(v))
18019
+ },
18020
+ suffix: String,
18021
+ modelModifiers: Object,
18022
+ ...makeVInputProps(),
18023
+ ...makeVFieldProps()
18024
+ }, 'v-textarea');
17910
18025
  const VTextarea = genericComponent()({
17911
18026
  name: 'VTextarea',
17912
18027
  directives: {
17913
18028
  Intersect
17914
18029
  },
17915
18030
  inheritAttrs: false,
17916
- props: {
17917
- autoGrow: Boolean,
17918
- autofocus: Boolean,
17919
- counter: [Boolean, Number, String],
17920
- counterValue: Function,
17921
- prefix: String,
17922
- placeholder: String,
17923
- persistentPlaceholder: Boolean,
17924
- persistentCounter: Boolean,
17925
- noResize: Boolean,
17926
- rows: {
17927
- type: [Number, String],
17928
- default: 5,
17929
- validator: v => !isNaN(parseFloat(v))
17930
- },
17931
- maxRows: {
17932
- type: [Number, String],
17933
- validator: v => !isNaN(parseFloat(v))
17934
- },
17935
- suffix: String,
17936
- modelModifiers: Object,
17937
- ...makeVInputProps(),
17938
- ...makeVFieldProps()
17939
- },
18031
+ props: makeVTextareaProps(),
17940
18032
  emits: {
17941
18033
  'click:control': e => true,
17942
18034
  'mousedown:control': e => true,
@@ -17971,7 +18063,7 @@ const VTextarea = genericComponent()({
17971
18063
  const vFieldRef = ref();
17972
18064
  const controlHeight = ref('');
17973
18065
  const textareaRef = ref();
17974
- const isActive = computed(() => isFocused.value || props.persistentPlaceholder);
18066
+ const isActive = computed(() => props.persistentPlaceholder || isFocused.value || props.active);
17975
18067
  function onFocus() {
17976
18068
  if (textareaRef.value !== document.activeElement) {
17977
18069
  textareaRef.value?.focus();
@@ -18138,14 +18230,15 @@ const VTextarea = genericComponent()({
18138
18230
  }
18139
18231
  });
18140
18232
 
18233
+ const makeVThemeProviderProps = propsFactory({
18234
+ withBackground: Boolean,
18235
+ ...makeComponentProps(),
18236
+ ...makeThemeProps(),
18237
+ ...makeTagProps()
18238
+ }, 'v-theme-provider');
18141
18239
  const VThemeProvider = genericComponent()({
18142
18240
  name: 'VThemeProvider',
18143
- props: {
18144
- withBackground: Boolean,
18145
- ...makeComponentProps(),
18146
- ...makeThemeProps(),
18147
- ...makeTagProps()
18148
- },
18241
+ props: makeVThemeProviderProps(),
18149
18242
  setup(props, _ref) {
18150
18243
  let {
18151
18244
  slots
@@ -18167,46 +18260,47 @@ const VThemeProvider = genericComponent()({
18167
18260
 
18168
18261
  // Types
18169
18262
 
18263
+ const makeVTimelineProps = propsFactory({
18264
+ align: {
18265
+ type: String,
18266
+ default: 'center',
18267
+ validator: v => ['center', 'start'].includes(v)
18268
+ },
18269
+ direction: {
18270
+ type: String,
18271
+ default: 'vertical',
18272
+ validator: v => ['vertical', 'horizontal'].includes(v)
18273
+ },
18274
+ justify: {
18275
+ type: String,
18276
+ default: 'auto',
18277
+ validator: v => ['auto', 'center'].includes(v)
18278
+ },
18279
+ side: {
18280
+ type: String,
18281
+ validator: v => v == null || ['start', 'end'].includes(v)
18282
+ },
18283
+ lineInset: {
18284
+ type: [String, Number],
18285
+ default: 0
18286
+ },
18287
+ lineThickness: {
18288
+ type: [String, Number],
18289
+ default: 2
18290
+ },
18291
+ lineColor: String,
18292
+ truncateLine: {
18293
+ type: String,
18294
+ validator: v => ['start', 'end', 'both'].includes(v)
18295
+ },
18296
+ ...makeComponentProps(),
18297
+ ...makeDensityProps(),
18298
+ ...makeTagProps(),
18299
+ ...makeThemeProps()
18300
+ }, 'v-timeline');
18170
18301
  const VTimeline = genericComponent()({
18171
18302
  name: 'VTimeline',
18172
- props: {
18173
- align: {
18174
- type: String,
18175
- default: 'center',
18176
- validator: v => ['center', 'start'].includes(v)
18177
- },
18178
- direction: {
18179
- type: String,
18180
- default: 'vertical',
18181
- validator: v => ['vertical', 'horizontal'].includes(v)
18182
- },
18183
- justify: {
18184
- type: String,
18185
- default: 'auto',
18186
- validator: v => ['auto', 'center'].includes(v)
18187
- },
18188
- side: {
18189
- type: String,
18190
- validator: v => v == null || ['start', 'end'].includes(v)
18191
- },
18192
- lineInset: {
18193
- type: [String, Number],
18194
- default: 0
18195
- },
18196
- lineThickness: {
18197
- type: [String, Number],
18198
- default: 2
18199
- },
18200
- lineColor: String,
18201
- truncateLine: {
18202
- type: String,
18203
- validator: v => ['start', 'end', 'both'].includes(v)
18204
- },
18205
- ...makeComponentProps(),
18206
- ...makeDensityProps(),
18207
- ...makeTagProps(),
18208
- ...makeThemeProps()
18209
- },
18303
+ props: makeVTimelineProps(),
18210
18304
  setup(props, _ref) {
18211
18305
  let {
18212
18306
  slots
@@ -18217,6 +18311,9 @@ const VTimeline = genericComponent()({
18217
18311
  const {
18218
18312
  densityClasses
18219
18313
  } = useDensity(props);
18314
+ const {
18315
+ rtlClasses
18316
+ } = useRtl();
18220
18317
  provideDefaults({
18221
18318
  VTimelineDivider: {
18222
18319
  lineColor: toRef(props, 'lineColor')
@@ -18246,7 +18343,7 @@ const VTimeline = genericComponent()({
18246
18343
  useRender(() => createVNode(props.tag, {
18247
18344
  "class": ['v-timeline', `v-timeline--${props.direction}`, `v-timeline--align-${props.align}`, `v-timeline--justify-${props.justify}`, truncateClasses.value, {
18248
18345
  'v-timeline--inset-line': !!props.lineInset
18249
- }, themeClasses.value, densityClasses.value, sideClasses.value, props.class],
18346
+ }, themeClasses.value, densityClasses.value, sideClasses.value, rtlClasses.value, props.class],
18250
18347
  "style": [{
18251
18348
  '--v-timeline-line-thickness': convertToUnit(props.lineThickness)
18252
18349
  }, props.style]
@@ -18255,20 +18352,21 @@ const VTimeline = genericComponent()({
18255
18352
  }
18256
18353
  });
18257
18354
 
18355
+ const makeVTimelineDividerProps = propsFactory({
18356
+ dotColor: String,
18357
+ fillDot: Boolean,
18358
+ hideDot: Boolean,
18359
+ icon: IconValue,
18360
+ iconColor: String,
18361
+ lineColor: String,
18362
+ ...makeComponentProps(),
18363
+ ...makeRoundedProps(),
18364
+ ...makeSizeProps(),
18365
+ ...makeElevationProps()
18366
+ }, 'v-timeline-divider');
18258
18367
  const VTimelineDivider = genericComponent()({
18259
18368
  name: 'VTimelineDivider',
18260
- props: {
18261
- dotColor: String,
18262
- fillDot: Boolean,
18263
- hideDot: Boolean,
18264
- icon: IconValue,
18265
- iconColor: String,
18266
- lineColor: String,
18267
- ...makeComponentProps(),
18268
- ...makeRoundedProps(),
18269
- ...makeSizeProps(),
18270
- ...makeElevationProps()
18271
- },
18369
+ props: makeVTimelineDividerProps(),
18272
18370
  setup(props, _ref) {
18273
18371
  let {
18274
18372
  slots
@@ -18331,27 +18429,28 @@ const VTimelineDivider = genericComponent()({
18331
18429
 
18332
18430
  // Types
18333
18431
 
18432
+ const makeVTimelineItemProps = propsFactory({
18433
+ density: String,
18434
+ dotColor: String,
18435
+ fillDot: Boolean,
18436
+ hideDot: Boolean,
18437
+ hideOpposite: {
18438
+ type: Boolean,
18439
+ default: undefined
18440
+ },
18441
+ icon: IconValue,
18442
+ iconColor: String,
18443
+ lineInset: [Number, String],
18444
+ ...makeComponentProps(),
18445
+ ...makeDimensionProps(),
18446
+ ...makeElevationProps(),
18447
+ ...makeRoundedProps(),
18448
+ ...makeSizeProps(),
18449
+ ...makeTagProps()
18450
+ }, 'v-timeline-item');
18334
18451
  const VTimelineItem = genericComponent()({
18335
18452
  name: 'VTimelineItem',
18336
- props: {
18337
- density: String,
18338
- dotColor: String,
18339
- fillDot: Boolean,
18340
- hideDot: Boolean,
18341
- hideOpposite: {
18342
- type: Boolean,
18343
- default: undefined
18344
- },
18345
- icon: IconValue,
18346
- iconColor: String,
18347
- lineInset: [Number, String],
18348
- ...makeComponentProps(),
18349
- ...makeDimensionProps(),
18350
- ...makeElevationProps(),
18351
- ...makeRoundedProps(),
18352
- ...makeSizeProps(),
18353
- ...makeTagProps()
18354
- },
18453
+ props: makeVTimelineItemProps(),
18355
18454
  setup(props, _ref) {
18356
18455
  let {
18357
18456
  slots
@@ -18399,26 +18498,27 @@ const VTimelineItem = genericComponent()({
18399
18498
 
18400
18499
  // Types
18401
18500
 
18501
+ const makeVTooltipProps = propsFactory({
18502
+ id: String,
18503
+ text: String,
18504
+ ...omit(makeVOverlayProps({
18505
+ closeOnBack: false,
18506
+ location: 'end',
18507
+ locationStrategy: 'connected',
18508
+ eager: true,
18509
+ minWidth: 0,
18510
+ offset: 10,
18511
+ openOnClick: false,
18512
+ openOnHover: true,
18513
+ origin: 'auto',
18514
+ scrim: false,
18515
+ scrollStrategy: 'reposition',
18516
+ transition: false
18517
+ }), ['absolute', 'persistent'])
18518
+ }, 'v-tooltip');
18402
18519
  const VTooltip = genericComponent()({
18403
18520
  name: 'VTooltip',
18404
- props: {
18405
- id: String,
18406
- text: String,
18407
- ...omit(makeVOverlayProps({
18408
- closeOnBack: false,
18409
- location: 'end',
18410
- locationStrategy: 'connected',
18411
- eager: true,
18412
- minWidth: 0,
18413
- offset: 10,
18414
- openOnClick: false,
18415
- openOnHover: true,
18416
- origin: 'auto',
18417
- scrim: false,
18418
- scrollStrategy: 'reposition',
18419
- transition: false
18420
- }), ['absolute', 'persistent'])
18421
- },
18521
+ props: makeVTooltipProps(),
18422
18522
  emits: {
18423
18523
  'update:modelValue': value => true
18424
18524
  },
@@ -18481,9 +18581,7 @@ const VTooltip = genericComponent()({
18481
18581
  // Composables
18482
18582
  const VValidation = genericComponent()({
18483
18583
  name: 'VValidation',
18484
- props: {
18485
- ...makeValidationProps()
18486
- },
18584
+ props: makeValidationProps(),
18487
18585
  emits: {
18488
18586
  'update:modelValue': val => true
18489
18587
  },
@@ -18496,12 +18594,13 @@ const VValidation = genericComponent()({
18496
18594
  }
18497
18595
  });
18498
18596
 
18597
+ const makeVVirtualScrollItemProps = propsFactory({
18598
+ dynamicHeight: Boolean,
18599
+ ...makeComponentProps()
18600
+ }, 'v-virtual-scroll-item');
18499
18601
  const VVirtualScrollItem = genericComponent()({
18500
18602
  name: 'VVirtualScrollItem',
18501
- props: {
18502
- dynamicHeight: Boolean,
18503
- ...makeComponentProps()
18504
- },
18603
+ props: makeVVirtualScrollItemProps(),
18505
18604
  emits: {
18506
18605
  'update:height': height => true
18507
18606
  },
@@ -18537,17 +18636,18 @@ const VVirtualScrollItem = genericComponent()({
18537
18636
 
18538
18637
  const UP = -1;
18539
18638
  const DOWN = 1;
18639
+ const makeVVirtualScrollProps = propsFactory({
18640
+ items: {
18641
+ type: Array,
18642
+ default: () => []
18643
+ },
18644
+ itemHeight: [Number, String],
18645
+ ...makeComponentProps(),
18646
+ ...makeDimensionProps()
18647
+ }, 'v-virtual-scroll');
18540
18648
  const VVirtualScroll = genericComponent()({
18541
18649
  name: 'VVirtualScroll',
18542
- props: {
18543
- items: {
18544
- type: Array,
18545
- default: () => []
18546
- },
18547
- itemHeight: [Number, String],
18548
- ...makeComponentProps(),
18549
- ...makeDimensionProps()
18550
- },
18650
+ props: makeVVirtualScrollProps(),
18551
18651
  setup(props, _ref) {
18552
18652
  let {
18553
18653
  slots
@@ -19427,7 +19527,7 @@ function createVuetify$1() {
19427
19527
  date
19428
19528
  };
19429
19529
  }
19430
- const version$1 = "3.2.1";
19530
+ const version$1 = "3.2.3";
19431
19531
  createVuetify$1.version = version$1;
19432
19532
 
19433
19533
  // Vue's inject() can only be used in setup
@@ -19447,7 +19547,7 @@ const createVuetify = function () {
19447
19547
  ...options
19448
19548
  });
19449
19549
  };
19450
- const version = "3.2.1";
19550
+ const version = "3.2.3";
19451
19551
  createVuetify.version = version;
19452
19552
 
19453
19553
  export { components, createVuetify, directives, useDefaults, useDisplay, useLayout, useLocale, useRtl, useTheme, version };