vuetify 3.3.1 → 3.3.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 (483) hide show
  1. package/dist/json/attributes.json +48 -52
  2. package/dist/json/tags.json +0 -1
  3. package/dist/json/web-types.json +630 -762
  4. package/dist/vuetify-labs.css +49 -36
  5. package/dist/vuetify-labs.d.ts +1844 -1613
  6. package/dist/vuetify-labs.esm.js +5486 -5305
  7. package/dist/vuetify-labs.esm.js.map +1 -1
  8. package/dist/vuetify-labs.js +5485 -5304
  9. package/dist/vuetify-labs.min.css +2 -2
  10. package/dist/vuetify.css +30 -8
  11. package/dist/vuetify.d.ts +1767 -1633
  12. package/dist/vuetify.esm.js +5134 -4883
  13. package/dist/vuetify.esm.js.map +1 -1
  14. package/dist/vuetify.js +5133 -4882
  15. package/dist/vuetify.js.map +1 -1
  16. package/dist/vuetify.min.css +2 -2
  17. package/dist/vuetify.min.js +1001 -988
  18. package/dist/vuetify.min.js.map +1 -1
  19. package/lib/blueprints/index.d.mts +33 -33
  20. package/lib/blueprints/md1.d.mts +33 -33
  21. package/lib/blueprints/md2.d.mts +33 -33
  22. package/lib/blueprints/md3.d.mts +33 -33
  23. package/lib/components/VAlert/VAlert.mjs +6 -6
  24. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  25. package/lib/components/VAlert/index.d.mts +1 -1
  26. package/lib/components/VApp/VApp.mjs +4 -4
  27. package/lib/components/VApp/VApp.mjs.map +1 -1
  28. package/lib/components/VAppBar/VAppBar.mjs +9 -6
  29. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  30. package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
  31. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  32. package/lib/components/VAppBar/index.d.mts +25 -9
  33. package/lib/components/VAutocomplete/VAutocomplete.mjs +27 -22
  34. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  35. package/lib/components/VAutocomplete/index.d.mts +88 -88
  36. package/lib/components/VAvatar/VAvatar.mjs +4 -4
  37. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  38. package/lib/components/VBadge/VBadge.mjs +6 -6
  39. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  40. package/lib/components/VBanner/VBanner.mjs +7 -10
  41. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  42. package/lib/components/VBanner/VBannerActions.mjs +2 -2
  43. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  44. package/lib/components/VBanner/VBannerText.mjs +1 -0
  45. package/lib/components/VBanner/VBannerText.mjs.map +1 -1
  46. package/lib/components/VBanner/index.d.mts +1 -1
  47. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +8 -8
  48. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  49. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +6 -9
  50. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  51. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +2 -2
  52. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  53. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +3 -3
  54. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  55. package/lib/components/VBtn/VBtn.mjs +7 -7
  56. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  57. package/lib/components/VBtn/index.d.mts +24 -8
  58. package/lib/components/VBtnGroup/VBtnGroup.mjs +4 -4
  59. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  60. package/lib/components/VBtnToggle/VBtnToggle.mjs +2 -2
  61. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  62. package/lib/components/VCard/VCard.mjs +8 -8
  63. package/lib/components/VCard/VCard.mjs.map +1 -1
  64. package/lib/components/VCard/VCardItem.mjs +4 -4
  65. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  66. package/lib/components/VCard/VCardSubtitle.mjs +1 -0
  67. package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
  68. package/lib/components/VCard/VCardText.mjs +1 -0
  69. package/lib/components/VCard/VCardText.mjs.map +1 -1
  70. package/lib/components/VCard/VCardTitle.mjs +1 -0
  71. package/lib/components/VCard/VCardTitle.mjs.map +1 -1
  72. package/lib/components/VCard/index.d.mts +45 -29
  73. package/lib/components/VCarousel/VCarousel.mjs +4 -7
  74. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  75. package/lib/components/VCarousel/VCarouselItem.mjs +1 -1
  76. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  77. package/lib/components/VCheckbox/VCheckbox.mjs +11 -4
  78. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  79. package/lib/components/VCheckbox/VCheckboxBtn.mjs +4 -4
  80. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  81. package/lib/components/VCheckbox/index.d.mts +57 -51
  82. package/lib/components/VChip/VChip.mjs +8 -8
  83. package/lib/components/VChip/VChip.mjs.map +1 -1
  84. package/lib/components/VChip/index.d.mts +48 -32
  85. package/lib/components/VChipGroup/VChipGroup.mjs +4 -7
  86. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  87. package/lib/components/VCode/index.mjs +3 -0
  88. package/lib/components/VCode/index.mjs.map +1 -1
  89. package/lib/components/VColorPicker/VColorPicker.mjs +10 -12
  90. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  91. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +2 -5
  92. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  93. package/lib/components/VColorPicker/VColorPickerEdit.mjs +3 -3
  94. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  95. package/lib/components/VColorPicker/VColorPickerPreview.mjs +3 -3
  96. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  97. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +1 -1
  98. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  99. package/lib/components/VCombobox/VCombobox.mjs +29 -20
  100. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  101. package/lib/components/VCombobox/index.d.mts +88 -88
  102. package/lib/components/VCounter/VCounter.mjs +2 -2
  103. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  104. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +4 -4
  105. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  106. package/lib/components/VDefaultsProvider/index.d.mts +7 -9
  107. package/lib/components/VDialog/VDialog.mjs +7 -7
  108. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  109. package/lib/components/VDialog/index.d.mts +66 -66
  110. package/lib/components/VDivider/VDivider.mjs +3 -3
  111. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  112. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +5 -5
  113. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  114. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +3 -3
  115. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  116. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +6 -6
  117. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  118. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +3 -3
  119. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  120. package/lib/components/VExpansionPanel/index.d.mts +57 -25
  121. package/lib/components/VField/VField.css +1 -0
  122. package/lib/components/VField/VField.mjs +8 -8
  123. package/lib/components/VField/VField.mjs.map +1 -1
  124. package/lib/components/VField/VField.sass +1 -0
  125. package/lib/components/VField/VFieldLabel.mjs +1 -1
  126. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  127. package/lib/components/VField/index.d.mts +5 -5
  128. package/lib/components/VFileInput/VFileInput.mjs +5 -5
  129. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  130. package/lib/components/VFileInput/index.d.mts +60 -60
  131. package/lib/components/VFooter/VFooter.mjs +4 -4
  132. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  133. package/lib/components/VForm/VForm.mjs +3 -3
  134. package/lib/components/VForm/VForm.mjs.map +1 -1
  135. package/lib/components/VGrid/VCol.mjs +2 -2
  136. package/lib/components/VGrid/VCol.mjs.map +1 -1
  137. package/lib/components/VGrid/VContainer.mjs +3 -3
  138. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  139. package/lib/components/VGrid/VRow.mjs +2 -2
  140. package/lib/components/VGrid/VRow.mjs.map +1 -1
  141. package/lib/components/VGrid/VSpacer.mjs +1 -0
  142. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  143. package/lib/components/VHover/VHover.mjs +1 -1
  144. package/lib/components/VHover/VHover.mjs.map +1 -1
  145. package/lib/components/VIcon/VIcon.mjs +6 -6
  146. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  147. package/lib/components/VImg/VImg.mjs +5 -4
  148. package/lib/components/VImg/VImg.mjs.map +1 -1
  149. package/lib/components/VInput/InputIcon.mjs +3 -2
  150. package/lib/components/VInput/InputIcon.mjs.map +1 -1
  151. package/lib/components/VInput/VInput.mjs +8 -4
  152. package/lib/components/VInput/VInput.mjs.map +1 -1
  153. package/lib/components/VInput/index.d.mts +10 -10
  154. package/lib/components/VItemGroup/VItem.mjs +2 -2
  155. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  156. package/lib/components/VItemGroup/VItemGroup.mjs +1 -1
  157. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  158. package/lib/components/VKbd/index.mjs +3 -0
  159. package/lib/components/VKbd/index.mjs.map +1 -1
  160. package/lib/components/VLabel/VLabel.mjs +1 -1
  161. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  162. package/lib/components/VLayout/VLayout.mjs +3 -3
  163. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  164. package/lib/components/VLayout/VLayoutItem.mjs +1 -1
  165. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  166. package/lib/components/VLazy/VLazy.mjs +3 -3
  167. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  168. package/lib/components/VList/VList.css +1 -0
  169. package/lib/components/VList/VList.mjs +5 -4
  170. package/lib/components/VList/VList.mjs.map +1 -1
  171. package/lib/components/VList/VList.sass +1 -0
  172. package/lib/components/VList/VListChildren.mjs +3 -3
  173. package/lib/components/VList/VListChildren.mjs.map +1 -1
  174. package/lib/components/VList/VListGroup.mjs +8 -8
  175. package/lib/components/VList/VListGroup.mjs.map +1 -1
  176. package/lib/components/VList/VListImg.mjs +1 -0
  177. package/lib/components/VList/VListImg.mjs.map +1 -1
  178. package/lib/components/VList/VListItem.css +18 -0
  179. package/lib/components/VList/VListItem.mjs +10 -10
  180. package/lib/components/VList/VListItem.mjs.map +1 -1
  181. package/lib/components/VList/VListItem.sass +12 -0
  182. package/lib/components/VList/VListItemAction.mjs +1 -1
  183. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  184. package/lib/components/VList/VListItemMedia.mjs +1 -1
  185. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  186. package/lib/components/VList/VListItemSubtitle.mjs +1 -0
  187. package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
  188. package/lib/components/VList/VListItemTitle.mjs +1 -0
  189. package/lib/components/VList/VListItemTitle.mjs.map +1 -1
  190. package/lib/components/VList/VListSubheader.mjs +3 -3
  191. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  192. package/lib/components/VList/index.d.mts +48 -32
  193. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +1 -1
  194. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  195. package/lib/components/VMain/VMain.mjs +3 -3
  196. package/lib/components/VMain/VMain.mjs.map +1 -1
  197. package/lib/components/VMenu/VMenu.mjs +35 -9
  198. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  199. package/lib/components/VMenu/index.d.mts +113 -113
  200. package/lib/components/VMenu/shared.mjs +2 -0
  201. package/lib/components/VMenu/shared.mjs.map +1 -1
  202. package/lib/components/VMessages/VMessages.mjs +3 -3
  203. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  204. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +17 -13
  205. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  206. package/lib/components/VOverlay/VOverlay.mjs +18 -18
  207. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  208. package/lib/components/VOverlay/index.d.mts +21 -21
  209. package/lib/components/VOverlay/locationStrategies.mjs +5 -5
  210. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  211. package/lib/components/VOverlay/scrollStrategies.mjs +3 -3
  212. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  213. package/lib/components/VOverlay/useActivator.mjs +34 -44
  214. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  215. package/lib/components/VOverlay/util/point.mjs +2 -0
  216. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  217. package/lib/components/VPagination/VPagination.mjs +9 -9
  218. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  219. package/lib/components/VParallax/VParallax.mjs +3 -6
  220. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  221. package/lib/components/VProgressCircular/VProgressCircular.mjs +5 -5
  222. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  223. package/lib/components/VProgressLinear/VProgressLinear.mjs +6 -6
  224. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  225. package/lib/components/VRadio/VRadio.mjs +3 -3
  226. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  227. package/lib/components/VRadio/index.d.mts +4 -4
  228. package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
  229. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  230. package/lib/components/VRadioGroup/index.d.mts +32 -32
  231. package/lib/components/VRangeSlider/VRangeSlider.mjs +4 -4
  232. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  233. package/lib/components/VRangeSlider/index.d.mts +8 -8
  234. package/lib/components/VRating/VRating.mjs +6 -9
  235. package/lib/components/VRating/VRating.mjs.map +1 -1
  236. package/lib/components/VResponsive/VResponsive.css +1 -0
  237. package/lib/components/VResponsive/VResponsive.mjs +1 -1
  238. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  239. package/lib/components/VResponsive/VResponsive.sass +1 -0
  240. package/lib/components/VSelect/VSelect.mjs +24 -19
  241. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  242. package/lib/components/VSelect/index.d.mts +88 -88
  243. package/lib/components/VSelectionControl/VSelectionControl.mjs +7 -7
  244. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  245. package/lib/components/VSelectionControl/index.d.mts +2 -2
  246. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +6 -6
  247. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  248. package/lib/components/VSheet/VSheet.mjs +4 -4
  249. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  250. package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
  251. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  252. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +2 -2
  253. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  254. package/lib/components/VSlider/VSlider.mjs +6 -6
  255. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  256. package/lib/components/VSlider/VSliderThumb.mjs +8 -8
  257. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  258. package/lib/components/VSlider/VSliderTrack.mjs +3 -3
  259. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  260. package/lib/components/VSlider/index.d.mts +8 -8
  261. package/lib/components/VSlider/slider.mjs +4 -7
  262. package/lib/components/VSlider/slider.mjs.map +1 -1
  263. package/lib/components/VSnackbar/VSnackbar.mjs +7 -7
  264. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  265. package/lib/components/VSnackbar/index.d.mts +77 -77
  266. package/lib/components/VStepper/index.mjs +3 -2
  267. package/lib/components/VStepper/index.mjs.map +1 -1
  268. package/lib/components/VSwitch/VSwitch.mjs +6 -6
  269. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  270. package/lib/components/VSwitch/index.d.mts +41 -41
  271. package/lib/components/VSystemBar/VSystemBar.mjs +4 -4
  272. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  273. package/lib/components/VTable/VTable.mjs +1 -1
  274. package/lib/components/VTable/VTable.mjs.map +1 -1
  275. package/lib/components/VTabs/VTab.mjs +3 -3
  276. package/lib/components/VTabs/VTab.mjs.map +1 -1
  277. package/lib/components/VTabs/VTabs.css +1 -0
  278. package/lib/components/VTabs/VTabs.mjs +7 -7
  279. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  280. package/lib/components/VTabs/VTabs.sass +1 -0
  281. package/lib/components/VTabs/index.d.mts +24 -8
  282. package/lib/components/VTabs/shared.mjs +2 -0
  283. package/lib/components/VTabs/shared.mjs.map +1 -1
  284. package/lib/components/VTextField/VTextField.mjs +6 -6
  285. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  286. package/lib/components/VTextField/index.d.mts +72 -72
  287. package/lib/components/VTextarea/VTextarea.css +7 -7
  288. package/lib/components/VTextarea/VTextarea.mjs +8 -11
  289. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  290. package/lib/components/VTextarea/VTextarea.sass +9 -9
  291. package/lib/components/VTextarea/index.d.mts +60 -60
  292. package/lib/components/VThemeProvider/VThemeProvider.mjs +1 -1
  293. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  294. package/lib/components/VTimeline/VTimeline.mjs +4 -4
  295. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  296. package/lib/components/VTimeline/VTimelineDivider.mjs +5 -5
  297. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  298. package/lib/components/VTimeline/VTimelineItem.mjs +4 -7
  299. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  300. package/lib/components/VToolbar/VToolbar.mjs +8 -8
  301. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  302. package/lib/components/VToolbar/VToolbarItems.mjs +4 -4
  303. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  304. package/lib/components/VToolbar/VToolbarTitle.mjs +1 -1
  305. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  306. package/lib/components/VToolbar/index.d.mts +1 -1
  307. package/lib/components/VTooltip/VTooltip.mjs +6 -6
  308. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  309. package/lib/components/VTooltip/index.d.mts +113 -113
  310. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +15 -93
  311. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  312. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +9 -4
  313. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  314. package/lib/components/VVirtualScroll/index.d.mts +9 -9
  315. package/lib/components/VWindow/VWindow.mjs +6 -6
  316. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  317. package/lib/components/VWindow/VWindowItem.mjs +5 -5
  318. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  319. package/lib/components/index.d.mts +1970 -1838
  320. package/lib/components/transitions/createTransition.mjs +5 -8
  321. package/lib/components/transitions/createTransition.mjs.map +1 -1
  322. package/lib/components/transitions/dialog-transition.mjs +1 -3
  323. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  324. package/lib/components/transitions/index.d.mts +117 -117
  325. package/lib/composables/defaults.mjs +5 -0
  326. package/lib/composables/defaults.mjs.map +1 -1
  327. package/lib/composables/display.mjs +1 -1
  328. package/lib/composables/display.mjs.map +1 -1
  329. package/lib/composables/filter.mjs +2 -4
  330. package/lib/composables/filter.mjs.map +1 -1
  331. package/lib/composables/focus.mjs +1 -1
  332. package/lib/composables/focus.mjs.map +1 -1
  333. package/lib/composables/forwardRefs.mjs +2 -0
  334. package/lib/composables/forwardRefs.mjs.map +1 -1
  335. package/lib/composables/hydration.mjs +1 -1
  336. package/lib/composables/hydration.mjs.map +1 -1
  337. package/lib/composables/icons.mjs +7 -1
  338. package/lib/composables/icons.mjs.map +1 -1
  339. package/lib/composables/lazy.mjs +1 -3
  340. package/lib/composables/lazy.mjs.map +1 -1
  341. package/lib/composables/locale.mjs +2 -1
  342. package/lib/composables/locale.mjs.map +1 -1
  343. package/lib/composables/mutationObserver.mjs +2 -5
  344. package/lib/composables/mutationObserver.mjs.map +1 -1
  345. package/lib/composables/nested/nested.mjs +2 -2
  346. package/lib/composables/nested/nested.mjs.map +1 -1
  347. package/lib/composables/nested/selectStrategies.mjs +1 -0
  348. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  349. package/lib/composables/proxiedModel.mjs +3 -3
  350. package/lib/composables/proxiedModel.mjs.map +1 -1
  351. package/lib/composables/refs.mjs +4 -1
  352. package/lib/composables/refs.mjs.map +1 -1
  353. package/lib/composables/resizeObserver.mjs +4 -4
  354. package/lib/composables/resizeObserver.mjs.map +1 -1
  355. package/lib/composables/router.mjs +1 -4
  356. package/lib/composables/router.mjs.map +1 -1
  357. package/lib/composables/scopeId.mjs +1 -0
  358. package/lib/composables/scopeId.mjs.map +1 -1
  359. package/lib/composables/theme.mjs +1 -1
  360. package/lib/composables/theme.mjs.map +1 -1
  361. package/lib/composables/toggleScope.mjs +4 -0
  362. package/lib/composables/toggleScope.mjs.map +1 -1
  363. package/lib/composables/touch.mjs +1 -0
  364. package/lib/composables/touch.mjs.map +1 -1
  365. package/lib/composables/validation.mjs +2 -2
  366. package/lib/composables/validation.mjs.map +1 -1
  367. package/lib/composables/virtual.mjs +108 -0
  368. package/lib/composables/virtual.mjs.map +1 -0
  369. package/lib/directives/click-outside/index.mjs +2 -1
  370. package/lib/directives/click-outside/index.mjs.map +1 -1
  371. package/lib/directives/intersect/index.mjs +1 -1
  372. package/lib/directives/intersect/index.mjs.map +1 -1
  373. package/lib/directives/resize/index.mjs +2 -0
  374. package/lib/directives/resize/index.mjs.map +1 -1
  375. package/lib/directives/scroll/index.mjs +2 -0
  376. package/lib/directives/scroll/index.mjs.map +1 -1
  377. package/lib/directives/touch/index.mjs +1 -2
  378. package/lib/directives/touch/index.mjs.map +1 -1
  379. package/lib/entry-bundler.mjs +7 -2
  380. package/lib/entry-bundler.mjs.map +1 -1
  381. package/lib/framework.mjs +4 -6
  382. package/lib/framework.mjs.map +1 -1
  383. package/lib/iconsets/fa.mjs +1 -1
  384. package/lib/iconsets/fa.mjs.map +1 -1
  385. package/lib/iconsets/fa4.mjs +4 -3
  386. package/lib/iconsets/fa4.mjs.map +1 -1
  387. package/lib/iconsets/md.mjs +4 -3
  388. package/lib/iconsets/md.mjs.map +1 -1
  389. package/lib/iconsets/mdi-svg.mjs +36 -36
  390. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  391. package/lib/iconsets/mdi.mjs +4 -3
  392. package/lib/iconsets/mdi.mjs.map +1 -1
  393. package/lib/index.d.mts +35 -33
  394. package/lib/labs/VBottomSheet/VBottomSheet.mjs +1 -1
  395. package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +1 -1
  396. package/lib/labs/VBottomSheet/index.d.mts +21 -21
  397. package/lib/labs/VDataIterator/VDataIterator.mjs +7 -7
  398. package/lib/labs/VDataIterator/VDataIterator.mjs.map +1 -1
  399. package/lib/labs/VDataIterator/composables/items.mjs +2 -2
  400. package/lib/labs/VDataIterator/composables/items.mjs.map +1 -1
  401. package/lib/labs/VDataIterator/index.d.mts +28 -27
  402. package/lib/labs/VDataTable/VDataTable.css +5 -14
  403. package/lib/labs/VDataTable/VDataTable.mjs +8 -8
  404. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  405. package/lib/labs/VDataTable/VDataTable.sass +7 -15
  406. package/lib/labs/VDataTable/VDataTableColumn.mjs +2 -1
  407. package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
  408. package/lib/labs/VDataTable/VDataTableFooter.mjs +3 -3
  409. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  410. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +5 -5
  411. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  412. package/lib/labs/VDataTable/VDataTableHeaders.mjs +8 -8
  413. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  414. package/lib/labs/VDataTable/VDataTableRow.mjs +1 -1
  415. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  416. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -16
  417. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  418. package/lib/labs/VDataTable/VDataTableServer.mjs +7 -7
  419. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  420. package/lib/labs/VDataTable/VDataTableVirtual.mjs +34 -22
  421. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  422. package/lib/labs/VDataTable/composables/expand.mjs +4 -4
  423. package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
  424. package/lib/labs/VDataTable/composables/group.mjs +1 -1
  425. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  426. package/lib/labs/VDataTable/composables/headers.mjs +2 -2
  427. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  428. package/lib/labs/VDataTable/composables/items.mjs +5 -8
  429. package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
  430. package/lib/labs/VDataTable/composables/paginate.mjs +1 -1
  431. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  432. package/lib/labs/VDataTable/composables/select.mjs +4 -3
  433. package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
  434. package/lib/labs/VDataTable/composables/sort.mjs +4 -9
  435. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  436. package/lib/labs/VDataTable/index.d.mts +182 -83
  437. package/lib/labs/VDataTable/types.mjs.map +1 -1
  438. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
  439. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  440. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +4 -4
  441. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  442. package/lib/labs/components.d.mts +213 -114
  443. package/lib/labs/date/date.mjs.map +1 -1
  444. package/lib/labs/entry-bundler.mjs +3 -1
  445. package/lib/labs/entry-bundler.mjs.map +1 -1
  446. package/lib/locale/adapters/vue-i18n.d.mts +1 -1
  447. package/lib/locale/adapters/vue-i18n.mjs +5 -1
  448. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  449. package/lib/locale/adapters/vuetify.mjs +1 -3
  450. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  451. package/lib/util/anchor.mjs +1 -0
  452. package/lib/util/anchor.mjs.map +1 -1
  453. package/lib/util/animation.mjs +1 -0
  454. package/lib/util/animation.mjs.map +1 -1
  455. package/lib/util/bindProps.mjs +49 -0
  456. package/lib/util/bindProps.mjs.map +1 -0
  457. package/lib/util/color/APCA.mjs +1 -0
  458. package/lib/util/color/APCA.mjs.map +1 -1
  459. package/lib/util/color/transformCIELAB.mjs +2 -0
  460. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  461. package/lib/util/color/transformSRGB.mjs +3 -1
  462. package/lib/util/color/transformSRGB.mjs.map +1 -1
  463. package/lib/util/colorUtils.mjs +2 -2
  464. package/lib/util/colorUtils.mjs.map +1 -1
  465. package/lib/util/console.mjs +1 -0
  466. package/lib/util/console.mjs.map +1 -1
  467. package/lib/util/createSimpleFunctional.mjs +2 -1
  468. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  469. package/lib/util/defineComponent.mjs +5 -5
  470. package/lib/util/defineComponent.mjs.map +1 -1
  471. package/lib/util/getCurrentInstance.mjs +1 -2
  472. package/lib/util/getCurrentInstance.mjs.map +1 -1
  473. package/lib/util/helpers.mjs +6 -3
  474. package/lib/util/helpers.mjs.map +1 -1
  475. package/lib/util/index.mjs +1 -0
  476. package/lib/util/index.mjs.map +1 -1
  477. package/lib/util/injectSelf.mjs +2 -1
  478. package/lib/util/injectSelf.mjs.map +1 -1
  479. package/lib/util/propsFactory.mjs +1 -0
  480. package/lib/util/propsFactory.mjs.map +1 -1
  481. package/package.json +4 -4
  482. package/lib/labs/VDataTable/composables/virtual.mjs +0 -77
  483. package/lib/labs/VDataTable/composables/virtual.mjs.map +0 -1
@@ -10,13 +10,7 @@
10
10
  -webkit-mask-image: linear-gradient(to bottom, transparent, transparent calc(var(--v-field-padding-top, 0) + var(--v-input-padding-top, 0) - 6px), black calc(var(--v-field-padding-top, 0) + var(--v-input-padding-top, 0) + 4px));
11
11
  mask-image: linear-gradient(to bottom, transparent, transparent calc(var(--v-field-padding-top, 0) + var(--v-input-padding-top, 0) - 6px), black calc(var(--v-field-padding-top, 0) + var(--v-input-padding-top, 0) + 4px));
12
12
  }
13
- .v-textarea--auto-grow .v-field__input {
14
- overflow: hidden;
15
- }
16
- .v-textarea--no-resize .v-field__input {
17
- resize: none;
18
- }
19
- .v-textarea__sizer {
13
+ .v-textarea .v-field__input.v-textarea__sizer {
20
14
  visibility: hidden;
21
15
  position: absolute;
22
16
  top: 0;
@@ -25,6 +19,12 @@
25
19
  min-height: 0 !important;
26
20
  pointer-events: none;
27
21
  }
22
+ .v-textarea--auto-grow .v-field__input {
23
+ overflow: hidden;
24
+ }
25
+ .v-textarea--no-resize .v-field__input {
26
+ resize: none;
27
+ }
28
28
  .v-textarea .v-field--no-label textarea,
29
29
  .v-textarea .v-field--active textarea {
30
30
  opacity: 1;
@@ -4,19 +4,16 @@ import "./VTextarea.css";
4
4
  import "../VTextField/VTextField.css";
5
5
 
6
6
  // Components
7
- import { filterFieldProps, makeVFieldProps } from "../VField/VField.mjs";
8
- import { makeVInputProps, VInput } from "../VInput/VInput.mjs";
9
7
  import { VCounter } from "../VCounter/VCounter.mjs";
10
- import { VField } from "../VField/index.mjs"; // Directives
11
- import Intersect from "../../directives/intersect/index.mjs"; // Composables
12
- import { forwardRefs } from "../../composables/forwardRefs.mjs";
8
+ import { VField } from "../VField/index.mjs";
9
+ import { filterFieldProps, makeVFieldProps } from "../VField/VField.mjs";
10
+ import { makeVInputProps, VInput } from "../VInput/VInput.mjs"; // Composables
13
11
  import { useFocus } from "../../composables/focus.mjs";
14
- import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Utilities
15
- import { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from "../../util/index.mjs";
12
+ import { forwardRefs } from "../../composables/forwardRefs.mjs";
13
+ import { useProxiedModel } from "../../composables/proxiedModel.mjs"; // Directives
14
+ import Intersect from "../../directives/intersect/index.mjs"; // Utilities
16
15
  import { computed, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch, watchEffect } from 'vue';
17
-
18
- // Types
19
-
16
+ import { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
20
17
  export const makeVTextareaProps = propsFactory({
21
18
  autoGrow: Boolean,
22
19
  autofocus: Boolean,
@@ -40,7 +37,7 @@ export const makeVTextareaProps = propsFactory({
40
37
  modelModifiers: Object,
41
38
  ...makeVInputProps(),
42
39
  ...makeVFieldProps()
43
- }, 'v-textarea');
40
+ }, 'VTextarea');
44
41
  export const VTextarea = genericComponent()({
45
42
  name: 'VTextarea',
46
43
  directives: {
@@ -1 +1 @@
1
- {"version":3,"file":"VTextarea.mjs","names":["filterFieldProps","makeVFieldProps","makeVInputProps","VInput","VCounter","VField","Intersect","forwardRefs","useFocus","useProxiedModel","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","propsFactory","useRender","computed","nextTick","onBeforeUnmount","onMounted","ref","shallowRef","watch","watchEffect","makeVTextareaProps","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","VTextarea","name","directives","inheritAttrs","props","emits","e","focused","val","setup","_ref","attrs","emit","slots","model","isFocused","focus","blur","value","toString","length","max","maxlength","undefined","onIntersect","isIntersecting","entries","target","vInputRef","vFieldRef","controlHeight","textareaRef","isActive","active","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","isPlainOrUnderlined","includes","variant","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","newHeight","floor","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","filterProps","fieldProps","_createVNode","_mergeProps","$event","class","_ref2","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\nimport { VCounter, type VCounterSlot } from '@/components/VCounter/VCounter'\nimport { VField } from '@/components/VField'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Composables\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useFocus } from '@/composables/focus'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\nimport { computed, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch, watchEffect } from 'vue'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const makeVTextareaProps = propsFactory({\n autoGrow: Boolean,\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n noResize: Boolean,\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n maxRows: {\n type: [Number, String],\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n suffix: String,\n modelModifiers: Object as PropType<Record<string, boolean>>,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n}, 'v-textarea')\n\ntype VTextareaSlots = Omit<VInputSlots & VFieldSlots, 'default'> & {\n counter: VCounterSlot\n}\n\nexport const VTextarea = genericComponent<VTextareaSlots>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextareaProps(),\n\n emits: {\n 'click:control': (e: MouseEvent) => true,\n 'mousedown:control': (e: MouseEvent) => true,\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value || '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as string | number\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VInput>()\n const controlHeight = shallowRef('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n props.persistentPlaceholder ||\n isFocused.value ||\n props.active\n ))\n\n function onFocus () {\n if (textareaRef.value !== document.activeElement) {\n textareaRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLTextAreaElement\n model.value = el.value\n if (props.modelModifiers?.trim) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n const sizerRef = ref<HTMLTextAreaElement>()\n const rows = ref(+props.rows)\n const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant))\n watchEffect(() => {\n if (!props.autoGrow) rows.value = +props.rows\n })\n function calculateInputHeight () {\n if (!props.autoGrow) return\n\n nextTick(() => {\n if (!sizerRef.value || !vFieldRef.value) return\n\n const style = getComputedStyle(sizerRef.value)\n const fieldStyle = getComputedStyle(vFieldRef.value.$el)\n\n const padding = parseFloat(style.getPropertyValue('--v-field-padding-top')) +\n parseFloat(style.getPropertyValue('--v-input-padding-top')) +\n parseFloat(style.getPropertyValue('--v-field-padding-bottom'))\n\n const height = sizerRef.value.scrollHeight\n const lineHeight = parseFloat(style.lineHeight)\n const minHeight = Math.max(\n parseFloat(props.rows) * lineHeight + padding,\n parseFloat(fieldStyle.getPropertyValue('--v-input-control-height'))\n )\n const maxHeight = parseFloat(props.maxRows!) * lineHeight + padding || Infinity\n const newHeight = clamp(height ?? 0, minHeight, maxHeight)\n rows.value = Math.floor((newHeight - padding) / lineHeight)\n\n controlHeight.value = convertToUnit(newHeight)\n })\n }\n\n onMounted(calculateInputHeight)\n watch(model, calculateInputHeight)\n watch(() => props.rows, calculateInputHeight)\n watch(() => props.maxRows, calculateInputHeight)\n watch(() => props.density, calculateInputHeight)\n\n let observer: ResizeObserver | undefined\n watch(sizerRef, val => {\n if (val) {\n observer = new ResizeObserver(calculateInputHeight)\n observer.observe(sizerRef.value!)\n } else {\n observer?.disconnect()\n }\n })\n onBeforeUnmount(() => {\n observer?.disconnect()\n })\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const hasDetails = !!(hasCounter || slots.details)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = VInput.filterProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-textarea v-text-field',\n {\n 'v-textarea--prefixed': props.prefix,\n 'v-textarea--suffixed': props.suffix,\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-textarea--auto-grow': props.autoGrow,\n 'v-textarea--no-resize': props.noResize || props.autoGrow,\n 'v-text-field--plain-underlined': isPlainOrUnderlined.value,\n },\n props.class,\n ]}\n style={ props.style }\n { ...rootAttrs }\n { ...inputProps }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n style={{\n '--v-textarea-control-height': controlHeight.value,\n }}\n onClick={ onControlClick }\n onMousedown={ onControlMousedown }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\n active={ isActive.value || isDirty.value }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n dirty={ isDirty.value || props.dirty }\n disabled={ isDisabled.value }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n <textarea\n ref={ textareaRef }\n class={ fieldClass }\n value={ model.value }\n onInput={ onInput }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n placeholder={ props.placeholder }\n rows={ props.rows }\n name={ props.name }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { props.autoGrow && (\n <textarea\n class={[\n fieldClass,\n 'v-textarea__sizer',\n ]}\n v-model={ model.value }\n ref={ sizerRef }\n readonly\n aria-hidden=\"true\"\n />\n )}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n )}\n </>\n ),\n }}\n </VField>\n ),\n details: hasDetails ? slotProps => (\n <>\n { slots.details?.(slotProps) }\n\n { hasCounter && (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots:default={ slots.counter }\n />\n </>\n )}\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return forwardRefs({}, vInputRef, vFieldRef, textareaRef)\n },\n})\n\nexport type VTextarea = InstanceType<typeof VTextarea>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VTextarea.mjs","names":["VCounter","VField","filterFieldProps","makeVFieldProps","makeVInputProps","VInput","useFocus","forwardRefs","useProxiedModel","Intersect","computed","nextTick","onBeforeUnmount","onMounted","ref","shallowRef","watch","watchEffect","callEvent","clamp","convertToUnit","filterInputAttrs","genericComponent","propsFactory","useRender","makeVTextareaProps","autoGrow","Boolean","autofocus","counter","Number","String","counterValue","Function","prefix","placeholder","persistentPlaceholder","persistentCounter","noResize","rows","type","default","validator","v","isNaN","parseFloat","maxRows","suffix","modelModifiers","Object","VTextarea","name","directives","inheritAttrs","props","emits","e","focused","val","setup","_ref","attrs","emit","slots","model","isFocused","focus","blur","value","toString","length","max","maxlength","undefined","onIntersect","isIntersecting","entries","target","vInputRef","vFieldRef","controlHeight","textareaRef","isActive","active","onFocus","document","activeElement","onControlClick","onControlMousedown","onClear","stopPropagation","onInput","el","trim","caretPosition","selectionStart","selectionEnd","sizerRef","isPlainOrUnderlined","includes","variant","calculateInputHeight","style","getComputedStyle","fieldStyle","$el","padding","getPropertyValue","height","scrollHeight","lineHeight","minHeight","Math","maxHeight","Infinity","newHeight","floor","density","observer","ResizeObserver","observe","disconnect","hasCounter","hasDetails","details","rootAttrs","inputAttrs","modelValue","_","inputProps","filterProps","fieldProps","_createVNode","_mergeProps","$event","class","_ref2","isDisabled","isDirty","isReadonly","isValid","dirty","_ref3","fieldClass","slotProps","_Fragment","_withDirectives","_resolveDirective","handler","once","_vModelText"],"sources":["../../../src/components/VTextarea/VTextarea.tsx"],"sourcesContent":["// Styles\nimport './VTextarea.sass'\nimport '../VTextField/VTextField.sass'\n\n// Components\nimport { VCounter } from '@/components/VCounter/VCounter'\nimport { VField } from '@/components/VField'\nimport { filterFieldProps, makeVFieldProps } from '@/components/VField/VField'\nimport { makeVInputProps, VInput } from '@/components/VInput/VInput'\n\n// Composables\nimport { useFocus } from '@/composables/focus'\nimport { forwardRefs } from '@/composables/forwardRefs'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Directives\nimport Intersect from '@/directives/intersect'\n\n// Utilities\nimport { computed, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch, watchEffect } from 'vue'\nimport { callEvent, clamp, convertToUnit, filterInputAttrs, genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VCounterSlot } from '@/components/VCounter/VCounter'\nimport type { VFieldSlots } from '@/components/VField/VField'\nimport type { VInputSlots } from '@/components/VInput/VInput'\n\nexport const makeVTextareaProps = propsFactory({\n autoGrow: Boolean,\n autofocus: Boolean,\n counter: [Boolean, Number, String] as PropType<true | number | string>,\n counterValue: Function as PropType<(value: any) => number>,\n prefix: String,\n placeholder: String,\n persistentPlaceholder: Boolean,\n persistentCounter: Boolean,\n noResize: Boolean,\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n maxRows: {\n type: [Number, String],\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n suffix: String,\n modelModifiers: Object as PropType<Record<string, boolean>>,\n\n ...makeVInputProps(),\n ...makeVFieldProps(),\n}, 'VTextarea')\n\ntype VTextareaSlots = Omit<VInputSlots & VFieldSlots, 'default'> & {\n counter: VCounterSlot\n}\n\nexport const VTextarea = genericComponent<VTextareaSlots>()({\n name: 'VTextarea',\n\n directives: { Intersect },\n\n inheritAttrs: false,\n\n props: makeVTextareaProps(),\n\n emits: {\n 'click:control': (e: MouseEvent) => true,\n 'mousedown:control': (e: MouseEvent) => true,\n 'update:focused': (focused: boolean) => true,\n 'update:modelValue': (val: string) => true,\n },\n\n setup (props, { attrs, emit, slots }) {\n const model = useProxiedModel(props, 'modelValue')\n const { isFocused, focus, blur } = useFocus(props)\n const counterValue = computed(() => {\n return typeof props.counterValue === 'function'\n ? props.counterValue(model.value)\n : (model.value || '').toString().length\n })\n const max = computed(() => {\n if (attrs.maxlength) return attrs.maxlength as string | number\n\n if (\n !props.counter ||\n (typeof props.counter !== 'number' &&\n typeof props.counter !== 'string')\n ) return undefined\n\n return props.counter\n })\n\n function onIntersect (\n isIntersecting: boolean,\n entries: IntersectionObserverEntry[]\n ) {\n if (!props.autofocus || !isIntersecting) return\n\n (entries[0].target as HTMLInputElement)?.focus?.()\n }\n\n const vInputRef = ref<VInput>()\n const vFieldRef = ref<VInput>()\n const controlHeight = shallowRef('')\n const textareaRef = ref<HTMLInputElement>()\n const isActive = computed(() => (\n props.persistentPlaceholder ||\n isFocused.value ||\n props.active\n ))\n\n function onFocus () {\n if (textareaRef.value !== document.activeElement) {\n textareaRef.value?.focus()\n }\n\n if (!isFocused.value) focus()\n }\n function onControlClick (e: MouseEvent) {\n onFocus()\n\n emit('click:control', e)\n }\n function onControlMousedown (e: MouseEvent) {\n emit('mousedown:control', e)\n }\n function onClear (e: MouseEvent) {\n e.stopPropagation()\n\n onFocus()\n\n nextTick(() => {\n model.value = ''\n\n callEvent(props['onClick:clear'], e)\n })\n }\n function onInput (e: Event) {\n const el = e.target as HTMLTextAreaElement\n model.value = el.value\n if (props.modelModifiers?.trim) {\n const caretPosition = [el.selectionStart, el.selectionEnd]\n nextTick(() => {\n el.selectionStart = caretPosition[0]\n el.selectionEnd = caretPosition[1]\n })\n }\n }\n\n const sizerRef = ref<HTMLTextAreaElement>()\n const rows = ref(+props.rows)\n const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant))\n watchEffect(() => {\n if (!props.autoGrow) rows.value = +props.rows\n })\n function calculateInputHeight () {\n if (!props.autoGrow) return\n\n nextTick(() => {\n if (!sizerRef.value || !vFieldRef.value) return\n\n const style = getComputedStyle(sizerRef.value)\n const fieldStyle = getComputedStyle(vFieldRef.value.$el)\n\n const padding = parseFloat(style.getPropertyValue('--v-field-padding-top')) +\n parseFloat(style.getPropertyValue('--v-input-padding-top')) +\n parseFloat(style.getPropertyValue('--v-field-padding-bottom'))\n\n const height = sizerRef.value.scrollHeight\n const lineHeight = parseFloat(style.lineHeight)\n const minHeight = Math.max(\n parseFloat(props.rows) * lineHeight + padding,\n parseFloat(fieldStyle.getPropertyValue('--v-input-control-height'))\n )\n const maxHeight = parseFloat(props.maxRows!) * lineHeight + padding || Infinity\n const newHeight = clamp(height ?? 0, minHeight, maxHeight)\n rows.value = Math.floor((newHeight - padding) / lineHeight)\n\n controlHeight.value = convertToUnit(newHeight)\n })\n }\n\n onMounted(calculateInputHeight)\n watch(model, calculateInputHeight)\n watch(() => props.rows, calculateInputHeight)\n watch(() => props.maxRows, calculateInputHeight)\n watch(() => props.density, calculateInputHeight)\n\n let observer: ResizeObserver | undefined\n watch(sizerRef, val => {\n if (val) {\n observer = new ResizeObserver(calculateInputHeight)\n observer.observe(sizerRef.value!)\n } else {\n observer?.disconnect()\n }\n })\n onBeforeUnmount(() => {\n observer?.disconnect()\n })\n\n useRender(() => {\n const hasCounter = !!(slots.counter || props.counter || props.counterValue)\n const hasDetails = !!(hasCounter || slots.details)\n const [rootAttrs, inputAttrs] = filterInputAttrs(attrs)\n const [{ modelValue: _, ...inputProps }] = VInput.filterProps(props)\n const [fieldProps] = filterFieldProps(props)\n\n return (\n <VInput\n ref={ vInputRef }\n v-model={ model.value }\n class={[\n 'v-textarea v-text-field',\n {\n 'v-textarea--prefixed': props.prefix,\n 'v-textarea--suffixed': props.suffix,\n 'v-text-field--prefixed': props.prefix,\n 'v-text-field--suffixed': props.suffix,\n 'v-textarea--auto-grow': props.autoGrow,\n 'v-textarea--no-resize': props.noResize || props.autoGrow,\n 'v-text-field--plain-underlined': isPlainOrUnderlined.value,\n },\n props.class,\n ]}\n style={ props.style }\n { ...rootAttrs }\n { ...inputProps }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n focused={ isFocused.value }\n >\n {{\n ...slots,\n default: ({\n isDisabled,\n isDirty,\n isReadonly,\n isValid,\n }) => (\n <VField\n ref={ vFieldRef }\n style={{\n '--v-textarea-control-height': controlHeight.value,\n }}\n onClick={ onControlClick }\n onMousedown={ onControlMousedown }\n onClick:clear={ onClear }\n onClick:prependInner={ props['onClick:prependInner'] }\n onClick:appendInner={ props['onClick:appendInner'] }\n role=\"textbox\"\n { ...fieldProps }\n active={ isActive.value || isDirty.value }\n centerAffix={ rows.value === 1 && !isPlainOrUnderlined.value }\n dirty={ isDirty.value || props.dirty }\n disabled={ isDisabled.value }\n focused={ isFocused.value }\n error={ isValid.value === false }\n >\n {{\n ...slots,\n default: ({\n props: { class: fieldClass, ...slotProps },\n }) => (\n <>\n { props.prefix && (\n <span class=\"v-text-field__prefix\">\n { props.prefix }\n </span>\n )}\n\n <textarea\n ref={ textareaRef }\n class={ fieldClass }\n value={ model.value }\n onInput={ onInput }\n v-intersect={[{\n handler: onIntersect,\n }, null, ['once']]}\n autofocus={ props.autofocus }\n readonly={ isReadonly.value }\n disabled={ isDisabled.value }\n placeholder={ props.placeholder }\n rows={ props.rows }\n name={ props.name }\n onFocus={ onFocus }\n onBlur={ blur }\n { ...slotProps }\n { ...inputAttrs }\n />\n\n { props.autoGrow && (\n <textarea\n class={[\n fieldClass,\n 'v-textarea__sizer',\n ]}\n v-model={ model.value }\n ref={ sizerRef }\n readonly\n aria-hidden=\"true\"\n />\n )}\n\n { props.suffix && (\n <span class=\"v-text-field__suffix\">\n { props.suffix }\n </span>\n )}\n </>\n ),\n }}\n </VField>\n ),\n details: hasDetails ? slotProps => (\n <>\n { slots.details?.(slotProps) }\n\n { hasCounter && (\n <>\n <span />\n\n <VCounter\n active={ props.persistentCounter || isFocused.value }\n value={ counterValue.value }\n max={ max.value }\n v-slots:default={ slots.counter }\n />\n </>\n )}\n </>\n ) : undefined,\n }}\n </VInput>\n )\n })\n\n return forwardRefs({}, vInputRef, vFieldRef, textareaRef)\n },\n})\n\nexport type VTextarea = InstanceType<typeof VTextarea>\n"],"mappings":"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"}
@@ -20,6 +20,15 @@
20
20
  -webkit-mask-image: linear-gradient(to bottom, transparent, transparent $a, black $b)
21
21
  mask-image: linear-gradient(to bottom, transparent, transparent $a, black $b)
22
22
 
23
+ &.v-textarea__sizer
24
+ visibility: hidden
25
+ position: absolute
26
+ top: 0
27
+ left: 0
28
+ height: 0 !important
29
+ min-height: 0 !important
30
+ pointer-events: none
31
+
23
32
  &--auto-grow
24
33
  .v-field__input
25
34
  overflow: hidden
@@ -28,15 +37,6 @@
28
37
  .v-field__input
29
38
  resize: none
30
39
 
31
- &__sizer
32
- visibility: hidden
33
- position: absolute
34
- top: 0
35
- left: 0
36
- height: 0 !important
37
- min-height: 0 !important
38
- pointer-events: none
39
-
40
40
  .v-field--no-label,
41
41
  .v-field--active
42
42
  textarea
@@ -73,15 +73,15 @@ declare const VTextarea: {
73
73
  variant?: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled" | undefined;
74
74
  clearIcon?: IconValue | undefined;
75
75
  focused?: boolean | undefined;
76
- clearable?: boolean | undefined;
77
- centerAffix?: boolean | undefined;
78
- dirty?: boolean | undefined;
79
- persistentClear?: boolean | undefined;
80
- singleLine?: boolean | undefined;
81
76
  errorMessages?: string | readonly string[] | undefined;
82
77
  maxErrors?: string | number | undefined;
83
78
  rules?: readonly ValidationRule[] | undefined;
79
+ centerAffix?: boolean | undefined;
84
80
  persistentHint?: boolean | undefined;
81
+ clearable?: boolean | undefined;
82
+ dirty?: boolean | undefined;
83
+ persistentClear?: boolean | undefined;
84
+ singleLine?: boolean | undefined;
85
85
  persistentPlaceholder?: boolean | undefined;
86
86
  persistentCounter?: boolean | undefined;
87
87
  autoGrow?: boolean | undefined;
@@ -177,6 +177,10 @@ declare const VTextarea: {
177
177
  prependIcon?: IconValue | undefined;
178
178
  appendIcon?: IconValue | undefined;
179
179
  "v-slot:loader"?: false | ((arg: LoaderSlotProps) => vue.VNodeChild) | undefined;
180
+ "v-slot:label"?: false | ((arg: DefaultInputSlot & {
181
+ label: string | undefined;
182
+ props: Record<string, any>;
183
+ }) => vue.VNodeChild) | undefined;
180
184
  appendInnerIcon?: IconValue | undefined;
181
185
  prependInnerIcon?: IconValue | undefined;
182
186
  'onClick:clear'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
@@ -184,21 +188,17 @@ declare const VTextarea: {
184
188
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
185
189
  'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
186
190
  'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
187
- 'onUpdate:focused'?: (EventProp<[boolean], (args_0: boolean) => any> & ((focused: boolean) => any)) | undefined;
188
- baseColor?: string | undefined;
189
- "v-slot:clear"?: false | (() => vue.VNodeChild) | undefined;
190
- "v-slot:label"?: false | ((arg: DefaultInputSlot & {
191
- label: string | undefined;
192
- props: Record<string, any>;
193
- }) => vue.VNodeChild) | undefined;
194
- "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined;
195
- "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined;
196
191
  "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
192
+ 'onUpdate:focused'?: (EventProp<[boolean], (args_0: boolean) => any> & ((focused: boolean) => any)) | undefined;
197
193
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
198
194
  validationValue?: any;
199
195
  hint?: string | undefined;
200
196
  hideDetails?: boolean | "auto" | undefined;
201
197
  "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
198
+ baseColor?: string | undefined;
199
+ "v-slot:clear"?: false | (() => vue.VNodeChild) | undefined;
200
+ "v-slot:prepend-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined;
201
+ "v-slot:append-inner"?: false | ((arg: DefaultInputSlot) => vue.VNodeChild) | undefined;
202
202
  suffix?: string | undefined;
203
203
  counterValue?: ((value: any) => number) | undefined;
204
204
  modelModifiers?: Record<string, boolean> | undefined;
@@ -267,14 +267,14 @@ declare const VTextarea: {
267
267
  variant: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled";
268
268
  clearIcon: IconValue;
269
269
  focused: boolean;
270
- clearable: boolean;
271
- dirty: boolean;
272
- persistentClear: boolean;
273
- singleLine: boolean;
274
270
  errorMessages: string | readonly string[];
275
271
  maxErrors: string | number;
276
272
  rules: readonly ValidationRule[];
277
273
  persistentHint: boolean;
274
+ clearable: boolean;
275
+ dirty: boolean;
276
+ persistentClear: boolean;
277
+ singleLine: boolean;
278
278
  persistentPlaceholder: boolean;
279
279
  persistentCounter: boolean;
280
280
  autoGrow: boolean;
@@ -304,12 +304,12 @@ declare const VTextarea: {
304
304
  'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
305
305
  'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
306
306
  'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
307
- centerAffix?: boolean | undefined;
308
- baseColor?: string | undefined;
309
307
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
310
308
  validationValue?: any;
309
+ centerAffix?: boolean | undefined;
311
310
  hint?: string | undefined;
312
311
  hideDetails?: boolean | "auto" | undefined;
312
+ baseColor?: string | undefined;
313
313
  suffix?: string | undefined;
314
314
  counterValue?: ((value: any) => number) | undefined;
315
315
  modelModifiers?: Record<string, boolean> | undefined;
@@ -376,10 +376,10 @@ declare const VTextarea: {
376
376
  messages?: string | readonly string[] | undefined;
377
377
  density?: Density | undefined;
378
378
  focused?: boolean | undefined;
379
- centerAffix?: boolean | undefined;
380
379
  errorMessages?: string | readonly string[] | undefined;
381
380
  maxErrors?: string | number | undefined;
382
381
  rules?: readonly ValidationRule[] | undefined;
382
+ centerAffix?: boolean | undefined;
383
383
  persistentHint?: boolean | undefined;
384
384
  key?: string | number | symbol | undefined;
385
385
  id?: string | undefined;
@@ -450,8 +450,8 @@ declare const VTextarea: {
450
450
  appendIcon?: IconValue | undefined;
451
451
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
452
452
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
453
- 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
454
453
  "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
454
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
455
455
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
456
456
  validationValue?: any;
457
457
  hint?: string | undefined;
@@ -494,10 +494,10 @@ declare const VTextarea: {
494
494
  messages: string | readonly string[];
495
495
  density: Density;
496
496
  focused: boolean;
497
- centerAffix: boolean;
498
497
  errorMessages: string | readonly string[];
499
498
  maxErrors: string | number;
500
499
  rules: readonly ValidationRule[];
500
+ centerAffix: boolean;
501
501
  persistentHint: boolean;
502
502
  } & {
503
503
  id?: string | undefined;
@@ -552,10 +552,10 @@ declare const VTextarea: {
552
552
  messages: string | readonly string[];
553
553
  density: Density;
554
554
  focused: boolean;
555
- centerAffix: boolean;
556
555
  errorMessages: string | readonly string[];
557
556
  maxErrors: string | number;
558
557
  rules: readonly ValidationRule[];
558
+ centerAffix: boolean;
559
559
  persistentHint: boolean;
560
560
  }, {}, string, vue.SlotsType<Partial<{
561
561
  default: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -602,10 +602,10 @@ declare const VTextarea: {
602
602
  messages: string | readonly string[];
603
603
  density: Density;
604
604
  focused: boolean;
605
- centerAffix: boolean;
606
605
  errorMessages: string | readonly string[];
607
606
  maxErrors: string | number;
608
607
  rules: readonly ValidationRule[];
608
+ centerAffix: boolean;
609
609
  persistentHint: boolean;
610
610
  } & {
611
611
  id?: string | undefined;
@@ -649,7 +649,7 @@ declare const VTextarea: {
649
649
  reset: () => void;
650
650
  resetValidation: () => void;
651
651
  validate: (silent?: boolean) => Promise<string[]>;
652
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "v-slot:message" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "centerAffix" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
652
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "v-slot:message" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "centerAffix" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
653
653
  'click:control': (e: MouseEvent) => true;
654
654
  'mousedown:control': (e: MouseEvent) => true;
655
655
  'update:focused': (focused: boolean) => true;
@@ -670,15 +670,15 @@ declare const VTextarea: {
670
670
  variant: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled";
671
671
  clearIcon: IconValue;
672
672
  focused: boolean;
673
- clearable: boolean;
674
- centerAffix: boolean;
675
- dirty: boolean;
676
- persistentClear: boolean;
677
- singleLine: boolean;
678
673
  errorMessages: string | readonly string[];
679
674
  maxErrors: string | number;
680
675
  rules: readonly ValidationRule[];
676
+ centerAffix: boolean;
681
677
  persistentHint: boolean;
678
+ clearable: boolean;
679
+ dirty: boolean;
680
+ persistentClear: boolean;
681
+ singleLine: boolean;
682
682
  persistentPlaceholder: boolean;
683
683
  persistentCounter: boolean;
684
684
  autoGrow: boolean;
@@ -753,14 +753,14 @@ declare const VTextarea: {
753
753
  variant: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled";
754
754
  clearIcon: IconValue;
755
755
  focused: boolean;
756
- clearable: boolean;
757
- dirty: boolean;
758
- persistentClear: boolean;
759
- singleLine: boolean;
760
756
  errorMessages: string | readonly string[];
761
757
  maxErrors: string | number;
762
758
  rules: readonly ValidationRule[];
763
759
  persistentHint: boolean;
760
+ clearable: boolean;
761
+ dirty: boolean;
762
+ persistentClear: boolean;
763
+ singleLine: boolean;
764
764
  persistentPlaceholder: boolean;
765
765
  persistentCounter: boolean;
766
766
  autoGrow: boolean;
@@ -790,12 +790,12 @@ declare const VTextarea: {
790
790
  'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
791
791
  'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
792
792
  'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
793
- centerAffix?: boolean | undefined;
794
- baseColor?: string | undefined;
795
793
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
796
794
  validationValue?: any;
795
+ centerAffix?: boolean | undefined;
797
796
  hint?: string | undefined;
798
797
  hideDetails?: boolean | "auto" | undefined;
798
+ baseColor?: string | undefined;
799
799
  suffix?: string | undefined;
800
800
  counterValue?: ((value: any) => number) | undefined;
801
801
  modelModifiers?: Record<string, boolean> | undefined;
@@ -862,10 +862,10 @@ declare const VTextarea: {
862
862
  messages?: string | readonly string[] | undefined;
863
863
  density?: Density | undefined;
864
864
  focused?: boolean | undefined;
865
- centerAffix?: boolean | undefined;
866
865
  errorMessages?: string | readonly string[] | undefined;
867
866
  maxErrors?: string | number | undefined;
868
867
  rules?: readonly ValidationRule[] | undefined;
868
+ centerAffix?: boolean | undefined;
869
869
  persistentHint?: boolean | undefined;
870
870
  key?: string | number | symbol | undefined;
871
871
  id?: string | undefined;
@@ -936,8 +936,8 @@ declare const VTextarea: {
936
936
  appendIcon?: IconValue | undefined;
937
937
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
938
938
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
939
- 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
940
939
  "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
940
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
941
941
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
942
942
  validationValue?: any;
943
943
  hint?: string | undefined;
@@ -980,10 +980,10 @@ declare const VTextarea: {
980
980
  messages: string | readonly string[];
981
981
  density: Density;
982
982
  focused: boolean;
983
- centerAffix: boolean;
984
983
  errorMessages: string | readonly string[];
985
984
  maxErrors: string | number;
986
985
  rules: readonly ValidationRule[];
986
+ centerAffix: boolean;
987
987
  persistentHint: boolean;
988
988
  } & {
989
989
  id?: string | undefined;
@@ -1038,10 +1038,10 @@ declare const VTextarea: {
1038
1038
  messages: string | readonly string[];
1039
1039
  density: Density;
1040
1040
  focused: boolean;
1041
- centerAffix: boolean;
1042
1041
  errorMessages: string | readonly string[];
1043
1042
  maxErrors: string | number;
1044
1043
  rules: readonly ValidationRule[];
1044
+ centerAffix: boolean;
1045
1045
  persistentHint: boolean;
1046
1046
  }, {}, string, vue.SlotsType<Partial<{
1047
1047
  default: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -1088,10 +1088,10 @@ declare const VTextarea: {
1088
1088
  messages: string | readonly string[];
1089
1089
  density: Density;
1090
1090
  focused: boolean;
1091
- centerAffix: boolean;
1092
1091
  errorMessages: string | readonly string[];
1093
1092
  maxErrors: string | number;
1094
1093
  rules: readonly ValidationRule[];
1094
+ centerAffix: boolean;
1095
1095
  persistentHint: boolean;
1096
1096
  } & {
1097
1097
  id?: string | undefined;
@@ -1135,7 +1135,7 @@ declare const VTextarea: {
1135
1135
  reset: () => void;
1136
1136
  resetValidation: () => void;
1137
1137
  validate: (silent?: boolean) => Promise<string[]>;
1138
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "v-slot:message" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "centerAffix" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
1138
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "v-slot:message" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "centerAffix" | "persistentHint") | "v-slot:details">, `$${any}`>> & {} & vue.ComponentCustomProperties & {};
1139
1139
  __isFragment?: undefined;
1140
1140
  __isTeleport?: undefined;
1141
1141
  __isSuspense?: undefined;
@@ -1154,14 +1154,14 @@ declare const VTextarea: {
1154
1154
  variant: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled";
1155
1155
  clearIcon: IconValue;
1156
1156
  focused: boolean;
1157
- clearable: boolean;
1158
- dirty: boolean;
1159
- persistentClear: boolean;
1160
- singleLine: boolean;
1161
1157
  errorMessages: string | readonly string[];
1162
1158
  maxErrors: string | number;
1163
1159
  rules: readonly ValidationRule[];
1164
1160
  persistentHint: boolean;
1161
+ clearable: boolean;
1162
+ dirty: boolean;
1163
+ persistentClear: boolean;
1164
+ singleLine: boolean;
1165
1165
  persistentPlaceholder: boolean;
1166
1166
  persistentCounter: boolean;
1167
1167
  autoGrow: boolean;
@@ -1191,12 +1191,12 @@ declare const VTextarea: {
1191
1191
  'onClick:appendInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
1192
1192
  'onClick:prependInner'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
1193
1193
  'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
1194
- centerAffix?: boolean | undefined;
1195
- baseColor?: string | undefined;
1196
1194
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
1197
1195
  validationValue?: any;
1196
+ centerAffix?: boolean | undefined;
1198
1197
  hint?: string | undefined;
1199
1198
  hideDetails?: boolean | "auto" | undefined;
1199
+ baseColor?: string | undefined;
1200
1200
  suffix?: string | undefined;
1201
1201
  counterValue?: ((value: any) => number) | undefined;
1202
1202
  modelModifiers?: Record<string, boolean> | undefined;
@@ -1263,10 +1263,10 @@ declare const VTextarea: {
1263
1263
  messages?: string | readonly string[] | undefined;
1264
1264
  density?: Density | undefined;
1265
1265
  focused?: boolean | undefined;
1266
- centerAffix?: boolean | undefined;
1267
1266
  errorMessages?: string | readonly string[] | undefined;
1268
1267
  maxErrors?: string | number | undefined;
1269
1268
  rules?: readonly ValidationRule[] | undefined;
1269
+ centerAffix?: boolean | undefined;
1270
1270
  persistentHint?: boolean | undefined;
1271
1271
  key?: string | number | symbol | undefined;
1272
1272
  id?: string | undefined;
@@ -1337,8 +1337,8 @@ declare const VTextarea: {
1337
1337
  appendIcon?: IconValue | undefined;
1338
1338
  'onClick:append'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
1339
1339
  'onClick:prepend'?: EventProp<[MouseEvent], (args_0: MouseEvent) => any> | undefined;
1340
- 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
1341
1340
  "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
1341
+ 'onUpdate:focused'?: EventProp<[boolean], (args_0: boolean) => any> | undefined;
1342
1342
  validateOn?: "lazy" | ("input" | "blur" | "submit") | "input lazy" | "blur lazy" | "submit lazy" | "lazy input" | "lazy blur" | "lazy submit" | undefined;
1343
1343
  validationValue?: any;
1344
1344
  hint?: string | undefined;
@@ -1381,10 +1381,10 @@ declare const VTextarea: {
1381
1381
  messages: string | readonly string[];
1382
1382
  density: Density;
1383
1383
  focused: boolean;
1384
- centerAffix: boolean;
1385
1384
  errorMessages: string | readonly string[];
1386
1385
  maxErrors: string | number;
1387
1386
  rules: readonly ValidationRule[];
1387
+ centerAffix: boolean;
1388
1388
  persistentHint: boolean;
1389
1389
  } & {
1390
1390
  id?: string | undefined;
@@ -1439,10 +1439,10 @@ declare const VTextarea: {
1439
1439
  messages: string | readonly string[];
1440
1440
  density: Density;
1441
1441
  focused: boolean;
1442
- centerAffix: boolean;
1443
1442
  errorMessages: string | readonly string[];
1444
1443
  maxErrors: string | number;
1445
1444
  rules: readonly ValidationRule[];
1445
+ centerAffix: boolean;
1446
1446
  persistentHint: boolean;
1447
1447
  }, {}, string, vue.SlotsType<Partial<{
1448
1448
  default: (arg: VInputSlot) => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -1489,10 +1489,10 @@ declare const VTextarea: {
1489
1489
  messages: string | readonly string[];
1490
1490
  density: Density;
1491
1491
  focused: boolean;
1492
- centerAffix: boolean;
1493
1492
  errorMessages: string | readonly string[];
1494
1493
  maxErrors: string | number;
1495
1494
  rules: readonly ValidationRule[];
1495
+ centerAffix: boolean;
1496
1496
  persistentHint: boolean;
1497
1497
  } & {
1498
1498
  id?: string | undefined;
@@ -1536,7 +1536,7 @@ declare const VTextarea: {
1536
1536
  reset: () => void;
1537
1537
  resetValidation: () => void;
1538
1538
  validate: (silent?: boolean) => Promise<string[]>;
1539
- }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "onUpdate:focused" | "v-slot:message" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "centerAffix" | "errorMessages" | "maxErrors" | "rules" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1539
+ }> & {} & vue.ComponentCustomProperties & {}, "key" | "id" | "name" | "label" | "class" | "$children" | "ref" | "ref_for" | "ref_key" | "v-slot:default" | "v-slots" | "onVnodeBeforeMount" | "onVnodeMounted" | "onVnodeBeforeUpdate" | "onVnodeUpdated" | "onVnodeBeforeUnmount" | "onVnodeUnmounted" | "v-slot:append" | "v-slot:prepend" | "modelValue" | "onUpdate:modelValue" | "prependIcon" | "appendIcon" | "onClick:append" | "onClick:prepend" | "v-slot:message" | "onUpdate:focused" | "validateOn" | "validationValue" | "hint" | "hideDetails" | ("error" | "direction" | "style" | "disabled" | "readonly" | "messages" | "density" | "focused" | "errorMessages" | "maxErrors" | "rules" | "centerAffix" | "persistentHint") | "v-slot:details">, `$${any}`>, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
1540
1540
  'click:control': (e: MouseEvent) => true;
1541
1541
  'mousedown:control': (e: MouseEvent) => true;
1542
1542
  'update:focused': (focused: boolean) => true;
@@ -1557,15 +1557,15 @@ declare const VTextarea: {
1557
1557
  variant: "filled" | "outlined" | "plain" | "underlined" | "solo" | "solo-inverted" | "solo-filled";
1558
1558
  clearIcon: IconValue;
1559
1559
  focused: boolean;
1560
- clearable: boolean;
1561
- centerAffix: boolean;
1562
- dirty: boolean;
1563
- persistentClear: boolean;
1564
- singleLine: boolean;
1565
1560
  errorMessages: string | readonly string[];
1566
1561
  maxErrors: string | number;
1567
1562
  rules: readonly ValidationRule[];
1563
+ centerAffix: boolean;
1568
1564
  persistentHint: boolean;
1565
+ clearable: boolean;
1566
+ dirty: boolean;
1567
+ persistentClear: boolean;
1568
+ singleLine: boolean;
1569
1569
  persistentPlaceholder: boolean;
1570
1570
  persistentCounter: boolean;
1571
1571
  autoGrow: boolean;
@@ -12,7 +12,7 @@ export const makeVThemeProviderProps = propsFactory({
12
12
  ...makeComponentProps(),
13
13
  ...makeThemeProps(),
14
14
  ...makeTagProps()
15
- }, 'v-theme-provider');
15
+ }, 'VThemeProvider');
16
16
  export const VThemeProvider = genericComponent()({
17
17
  name: 'VThemeProvider',
18
18
  props: makeVThemeProviderProps(),