vuetify 3.3.1 → 3.3.2

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 (470) hide show
  1. package/dist/json/attributes.json +40 -44
  2. package/dist/json/importMap.json +4 -4
  3. package/dist/json/tags.json +0 -1
  4. package/dist/json/web-types.json +605 -748
  5. package/dist/vuetify-labs.css +53 -32
  6. package/dist/vuetify-labs.d.ts +1591 -1494
  7. package/dist/vuetify-labs.esm.js +8140 -8073
  8. package/dist/vuetify-labs.esm.js.map +1 -1
  9. package/dist/vuetify-labs.js +8139 -8072
  10. package/dist/vuetify-labs.min.css +2 -2
  11. package/dist/vuetify.css +21 -1
  12. package/dist/vuetify.d.ts +1187 -1187
  13. package/dist/vuetify.esm.js +6685 -6547
  14. package/dist/vuetify.esm.js.map +1 -1
  15. package/dist/vuetify.js +6684 -6546
  16. package/dist/vuetify.js.map +1 -1
  17. package/dist/vuetify.min.css +2 -2
  18. package/dist/vuetify.min.js +979 -975
  19. package/dist/vuetify.min.js.map +1 -1
  20. package/lib/blueprints/index.d.mts +31 -31
  21. package/lib/blueprints/md1.d.mts +31 -31
  22. package/lib/blueprints/md2.d.mts +31 -31
  23. package/lib/blueprints/md3.d.mts +31 -31
  24. package/lib/components/VAlert/VAlert.mjs +6 -6
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/index.d.mts +1 -1
  27. package/lib/components/VApp/VApp.mjs +4 -4
  28. package/lib/components/VApp/VApp.mjs.map +1 -1
  29. package/lib/components/VAppBar/VAppBar.mjs +9 -6
  30. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  31. package/lib/components/VAppBar/VAppBarNavIcon.mjs +1 -1
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  33. package/lib/components/VAppBar/index.d.mts +1 -1
  34. package/lib/components/VAutocomplete/VAutocomplete.mjs +11 -11
  35. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  36. package/lib/components/VAutocomplete/index.d.mts +88 -88
  37. package/lib/components/VAvatar/VAvatar.mjs +4 -4
  38. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  39. package/lib/components/VBadge/VBadge.mjs +6 -6
  40. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  41. package/lib/components/VBanner/VBanner.mjs +7 -10
  42. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  43. package/lib/components/VBanner/VBannerActions.mjs +2 -2
  44. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  45. package/lib/components/VBanner/VBannerText.mjs +1 -0
  46. package/lib/components/VBanner/VBannerText.mjs.map +1 -1
  47. package/lib/components/VBanner/index.d.mts +1 -1
  48. package/lib/components/VBottomNavigation/VBottomNavigation.mjs +8 -8
  49. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  50. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +6 -9
  51. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  52. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +2 -2
  53. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  54. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +3 -3
  55. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  56. package/lib/components/VBtn/VBtn.mjs +6 -6
  57. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  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 +7 -7
  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 +1 -1
  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 +3 -3
  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 +50 -50
  82. package/lib/components/VChip/VChip.mjs +7 -7
  83. package/lib/components/VChip/VChip.mjs.map +1 -1
  84. package/lib/components/VChipGroup/VChipGroup.mjs +4 -7
  85. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  86. package/lib/components/VCode/index.mjs +3 -0
  87. package/lib/components/VCode/index.mjs.map +1 -1
  88. package/lib/components/VColorPicker/VColorPicker.mjs +10 -12
  89. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  90. package/lib/components/VColorPicker/VColorPickerCanvas.mjs +2 -5
  91. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  92. package/lib/components/VColorPicker/VColorPickerEdit.mjs +3 -3
  93. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  94. package/lib/components/VColorPicker/VColorPickerPreview.mjs +3 -3
  95. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  96. package/lib/components/VColorPicker/VColorPickerSwatches.mjs +1 -1
  97. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  98. package/lib/components/VCombobox/VCombobox.mjs +13 -12
  99. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  100. package/lib/components/VCombobox/index.d.mts +88 -88
  101. package/lib/components/VCounter/VCounter.mjs +2 -2
  102. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  103. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs +4 -4
  104. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  105. package/lib/components/VDefaultsProvider/index.d.mts +7 -9
  106. package/lib/components/VDialog/VDialog.mjs +7 -7
  107. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  108. package/lib/components/VDialog/index.d.mts +66 -66
  109. package/lib/components/VDivider/VDivider.mjs +3 -3
  110. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  111. package/lib/components/VExpansionPanel/VExpansionPanel.mjs +5 -5
  112. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  113. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +3 -3
  114. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  115. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +5 -5
  116. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  117. package/lib/components/VExpansionPanel/VExpansionPanels.mjs +3 -3
  118. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  119. package/lib/components/VExpansionPanel/index.d.mts +1 -1
  120. package/lib/components/VField/VField.mjs +8 -8
  121. package/lib/components/VField/VField.mjs.map +1 -1
  122. package/lib/components/VField/VFieldLabel.mjs +1 -1
  123. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  124. package/lib/components/VField/index.d.mts +5 -5
  125. package/lib/components/VFileInput/VFileInput.mjs +5 -5
  126. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  127. package/lib/components/VFileInput/index.d.mts +60 -60
  128. package/lib/components/VFooter/VFooter.mjs +4 -4
  129. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  130. package/lib/components/VForm/VForm.mjs +3 -3
  131. package/lib/components/VForm/VForm.mjs.map +1 -1
  132. package/lib/components/VGrid/VCol.mjs +2 -2
  133. package/lib/components/VGrid/VCol.mjs.map +1 -1
  134. package/lib/components/VGrid/VContainer.mjs +3 -3
  135. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  136. package/lib/components/VGrid/VRow.mjs +2 -2
  137. package/lib/components/VGrid/VRow.mjs.map +1 -1
  138. package/lib/components/VGrid/VSpacer.mjs +1 -0
  139. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  140. package/lib/components/VHover/VHover.mjs +1 -1
  141. package/lib/components/VHover/VHover.mjs.map +1 -1
  142. package/lib/components/VIcon/VIcon.mjs +4 -4
  143. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  144. package/lib/components/VImg/VImg.mjs +5 -4
  145. package/lib/components/VImg/VImg.mjs.map +1 -1
  146. package/lib/components/VInput/InputIcon.mjs +3 -2
  147. package/lib/components/VInput/InputIcon.mjs.map +1 -1
  148. package/lib/components/VInput/VInput.mjs +8 -4
  149. package/lib/components/VInput/VInput.mjs.map +1 -1
  150. package/lib/components/VInput/index.d.mts +10 -10
  151. package/lib/components/VItemGroup/VItem.mjs +2 -2
  152. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  153. package/lib/components/VItemGroup/VItemGroup.mjs +1 -1
  154. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  155. package/lib/components/VKbd/index.mjs +3 -0
  156. package/lib/components/VKbd/index.mjs.map +1 -1
  157. package/lib/components/VLabel/VLabel.mjs +1 -1
  158. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  159. package/lib/components/VLayout/VLayout.mjs +3 -3
  160. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  161. package/lib/components/VLayout/VLayoutItem.mjs +1 -1
  162. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  163. package/lib/components/VLazy/VLazy.mjs +3 -3
  164. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  165. package/lib/components/VList/VList.css +1 -0
  166. package/lib/components/VList/VList.mjs +5 -4
  167. package/lib/components/VList/VList.mjs.map +1 -1
  168. package/lib/components/VList/VList.sass +1 -0
  169. package/lib/components/VList/VListChildren.mjs +3 -3
  170. package/lib/components/VList/VListChildren.mjs.map +1 -1
  171. package/lib/components/VList/VListGroup.mjs +8 -8
  172. package/lib/components/VList/VListGroup.mjs.map +1 -1
  173. package/lib/components/VList/VListImg.mjs +1 -0
  174. package/lib/components/VList/VListImg.mjs.map +1 -1
  175. package/lib/components/VList/VListItem.css +18 -0
  176. package/lib/components/VList/VListItem.mjs +9 -9
  177. package/lib/components/VList/VListItem.mjs.map +1 -1
  178. package/lib/components/VList/VListItem.sass +12 -0
  179. package/lib/components/VList/VListItemAction.mjs +1 -1
  180. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  181. package/lib/components/VList/VListItemMedia.mjs +1 -1
  182. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  183. package/lib/components/VList/VListItemSubtitle.mjs +1 -0
  184. package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
  185. package/lib/components/VList/VListItemTitle.mjs +1 -0
  186. package/lib/components/VList/VListItemTitle.mjs.map +1 -1
  187. package/lib/components/VList/VListSubheader.mjs +3 -3
  188. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  189. package/lib/components/VList/index.d.mts +24 -24
  190. package/lib/components/VLocaleProvider/VLocaleProvider.mjs +1 -1
  191. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  192. package/lib/components/VMain/VMain.mjs +3 -3
  193. package/lib/components/VMain/VMain.mjs.map +1 -1
  194. package/lib/components/VMenu/VMenu.mjs +7 -7
  195. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  196. package/lib/components/VMenu/index.d.mts +113 -113
  197. package/lib/components/VMenu/shared.mjs +2 -0
  198. package/lib/components/VMenu/shared.mjs.map +1 -1
  199. package/lib/components/VMessages/VMessages.mjs +3 -3
  200. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  201. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +17 -13
  202. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  203. package/lib/components/VOverlay/VOverlay.mjs +11 -14
  204. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  205. package/lib/components/VOverlay/index.d.mts +21 -21
  206. package/lib/components/VOverlay/locationStrategies.mjs +5 -5
  207. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  208. package/lib/components/VOverlay/scrollStrategies.mjs +3 -3
  209. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  210. package/lib/components/VOverlay/useActivator.mjs +6 -10
  211. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  212. package/lib/components/VOverlay/util/point.mjs +2 -0
  213. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  214. package/lib/components/VPagination/VPagination.mjs +9 -9
  215. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  216. package/lib/components/VParallax/VParallax.mjs +3 -6
  217. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  218. package/lib/components/VProgressCircular/VProgressCircular.mjs +5 -5
  219. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  220. package/lib/components/VProgressLinear/VProgressLinear.mjs +6 -6
  221. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  222. package/lib/components/VRadio/VRadio.mjs +3 -3
  223. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  224. package/lib/components/VRadio/index.d.mts +4 -4
  225. package/lib/components/VRadioGroup/VRadioGroup.mjs +4 -4
  226. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  227. package/lib/components/VRadioGroup/index.d.mts +32 -32
  228. package/lib/components/VRangeSlider/VRangeSlider.mjs +4 -4
  229. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  230. package/lib/components/VRangeSlider/index.d.mts +8 -8
  231. package/lib/components/VRating/VRating.mjs +6 -9
  232. package/lib/components/VRating/VRating.mjs.map +1 -1
  233. package/lib/components/VResponsive/VResponsive.css +1 -0
  234. package/lib/components/VResponsive/VResponsive.mjs +1 -1
  235. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  236. package/lib/components/VResponsive/VResponsive.sass +1 -0
  237. package/lib/components/VSelect/VSelect.mjs +9 -9
  238. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  239. package/lib/components/VSelect/index.d.mts +88 -88
  240. package/lib/components/VSelectionControl/VSelectionControl.mjs +7 -7
  241. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  242. package/lib/components/VSelectionControl/index.d.mts +2 -2
  243. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +6 -6
  244. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  245. package/lib/components/VSheet/VSheet.mjs +4 -4
  246. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  247. package/lib/components/VSlideGroup/VSlideGroup.mjs +7 -7
  248. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  249. package/lib/components/VSlideGroup/VSlideGroupItem.mjs +2 -2
  250. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  251. package/lib/components/VSlider/VSlider.mjs +6 -6
  252. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  253. package/lib/components/VSlider/VSliderThumb.mjs +6 -6
  254. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  255. package/lib/components/VSlider/VSliderTrack.mjs +3 -3
  256. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  257. package/lib/components/VSlider/index.d.mts +8 -8
  258. package/lib/components/VSlider/slider.mjs +4 -7
  259. package/lib/components/VSlider/slider.mjs.map +1 -1
  260. package/lib/components/VSnackbar/VSnackbar.mjs +7 -7
  261. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  262. package/lib/components/VSnackbar/index.d.mts +77 -77
  263. package/lib/components/VStepper/index.mjs +3 -2
  264. package/lib/components/VStepper/index.mjs.map +1 -1
  265. package/lib/components/VSwitch/VSwitch.mjs +6 -6
  266. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  267. package/lib/components/VSwitch/index.d.mts +41 -41
  268. package/lib/components/VSystemBar/VSystemBar.mjs +4 -4
  269. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  270. package/lib/components/VTable/VTable.mjs +1 -1
  271. package/lib/components/VTable/VTable.mjs.map +1 -1
  272. package/lib/components/VTabs/VTab.mjs +3 -3
  273. package/lib/components/VTabs/VTab.mjs.map +1 -1
  274. package/lib/components/VTabs/VTabs.mjs +7 -7
  275. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  276. package/lib/components/VTabs/shared.mjs +2 -0
  277. package/lib/components/VTabs/shared.mjs.map +1 -1
  278. package/lib/components/VTextField/VTextField.mjs +6 -6
  279. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  280. package/lib/components/VTextField/index.d.mts +72 -72
  281. package/lib/components/VTextarea/VTextarea.mjs +8 -11
  282. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  283. package/lib/components/VTextarea/index.d.mts +60 -60
  284. package/lib/components/VThemeProvider/VThemeProvider.mjs +1 -1
  285. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  286. package/lib/components/VTimeline/VTimeline.mjs +4 -4
  287. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  288. package/lib/components/VTimeline/VTimelineDivider.mjs +5 -5
  289. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  290. package/lib/components/VTimeline/VTimelineItem.mjs +4 -7
  291. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  292. package/lib/components/VToolbar/VToolbar.mjs +8 -8
  293. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  294. package/lib/components/VToolbar/VToolbarItems.mjs +4 -4
  295. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  296. package/lib/components/VToolbar/VToolbarTitle.mjs +1 -1
  297. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  298. package/lib/components/VToolbar/index.d.mts +1 -1
  299. package/lib/components/VTooltip/VTooltip.mjs +6 -6
  300. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  301. package/lib/components/VTooltip/index.d.mts +113 -113
  302. package/lib/components/VVirtualScroll/VVirtualScroll.mjs +15 -93
  303. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  304. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs +9 -4
  305. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  306. package/lib/components/VVirtualScroll/index.d.mts +9 -9
  307. package/lib/components/VWindow/VWindow.mjs +6 -6
  308. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  309. package/lib/components/VWindow/VWindowItem.mjs +5 -5
  310. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  311. package/lib/components/index.d.mts +1481 -1483
  312. package/lib/components/transitions/createTransition.mjs +5 -8
  313. package/lib/components/transitions/createTransition.mjs.map +1 -1
  314. package/lib/components/transitions/dialog-transition.mjs +1 -3
  315. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  316. package/lib/components/transitions/index.d.mts +117 -117
  317. package/lib/composables/defaults.mjs +5 -0
  318. package/lib/composables/defaults.mjs.map +1 -1
  319. package/lib/composables/display.mjs +1 -1
  320. package/lib/composables/display.mjs.map +1 -1
  321. package/lib/composables/filter.mjs +2 -4
  322. package/lib/composables/filter.mjs.map +1 -1
  323. package/lib/composables/focus.mjs +1 -1
  324. package/lib/composables/focus.mjs.map +1 -1
  325. package/lib/composables/forwardRefs.mjs +2 -0
  326. package/lib/composables/forwardRefs.mjs.map +1 -1
  327. package/lib/composables/hydration.mjs +1 -1
  328. package/lib/composables/hydration.mjs.map +1 -1
  329. package/lib/composables/icons.mjs +7 -1
  330. package/lib/composables/icons.mjs.map +1 -1
  331. package/lib/composables/lazy.mjs +1 -3
  332. package/lib/composables/lazy.mjs.map +1 -1
  333. package/lib/composables/locale.mjs +2 -1
  334. package/lib/composables/locale.mjs.map +1 -1
  335. package/lib/composables/mutationObserver.mjs +2 -5
  336. package/lib/composables/mutationObserver.mjs.map +1 -1
  337. package/lib/composables/nested/nested.mjs +2 -2
  338. package/lib/composables/nested/nested.mjs.map +1 -1
  339. package/lib/composables/nested/selectStrategies.mjs +1 -0
  340. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  341. package/lib/composables/proxiedModel.mjs +3 -3
  342. package/lib/composables/proxiedModel.mjs.map +1 -1
  343. package/lib/composables/refs.mjs +4 -1
  344. package/lib/composables/refs.mjs.map +1 -1
  345. package/lib/composables/resizeObserver.mjs +4 -4
  346. package/lib/composables/resizeObserver.mjs.map +1 -1
  347. package/lib/composables/router.mjs +1 -4
  348. package/lib/composables/router.mjs.map +1 -1
  349. package/lib/composables/scopeId.mjs +1 -0
  350. package/lib/composables/scopeId.mjs.map +1 -1
  351. package/lib/composables/theme.mjs.map +1 -1
  352. package/lib/composables/toggleScope.mjs +4 -0
  353. package/lib/composables/toggleScope.mjs.map +1 -1
  354. package/lib/composables/touch.mjs +1 -0
  355. package/lib/composables/touch.mjs.map +1 -1
  356. package/lib/composables/validation.mjs +2 -2
  357. package/lib/composables/validation.mjs.map +1 -1
  358. package/lib/composables/virtual.mjs +108 -0
  359. package/lib/composables/virtual.mjs.map +1 -0
  360. package/lib/directives/click-outside/index.mjs +2 -1
  361. package/lib/directives/click-outside/index.mjs.map +1 -1
  362. package/lib/directives/intersect/index.mjs +1 -1
  363. package/lib/directives/intersect/index.mjs.map +1 -1
  364. package/lib/directives/resize/index.mjs +2 -0
  365. package/lib/directives/resize/index.mjs.map +1 -1
  366. package/lib/directives/scroll/index.mjs +2 -0
  367. package/lib/directives/scroll/index.mjs.map +1 -1
  368. package/lib/directives/touch/index.mjs +1 -2
  369. package/lib/directives/touch/index.mjs.map +1 -1
  370. package/lib/entry-bundler.mjs +7 -2
  371. package/lib/entry-bundler.mjs.map +1 -1
  372. package/lib/framework.mjs +4 -6
  373. package/lib/framework.mjs.map +1 -1
  374. package/lib/iconsets/fa.mjs +1 -1
  375. package/lib/iconsets/fa.mjs.map +1 -1
  376. package/lib/iconsets/fa4.mjs +4 -3
  377. package/lib/iconsets/fa4.mjs.map +1 -1
  378. package/lib/iconsets/md.mjs +4 -3
  379. package/lib/iconsets/md.mjs.map +1 -1
  380. package/lib/iconsets/mdi-svg.mjs +1 -1
  381. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  382. package/lib/iconsets/mdi.mjs +4 -3
  383. package/lib/iconsets/mdi.mjs.map +1 -1
  384. package/lib/index.d.mts +34 -32
  385. package/lib/labs/VBottomSheet/VBottomSheet.mjs +1 -1
  386. package/lib/labs/VBottomSheet/VBottomSheet.mjs.map +1 -1
  387. package/lib/labs/VBottomSheet/index.d.mts +21 -21
  388. package/lib/labs/VDataIterator/VDataIterator.mjs +7 -7
  389. package/lib/labs/VDataIterator/VDataIterator.mjs.map +1 -1
  390. package/lib/labs/VDataIterator/composables/items.mjs +2 -2
  391. package/lib/labs/VDataIterator/composables/items.mjs.map +1 -1
  392. package/lib/labs/VDataIterator/index.d.mts +28 -27
  393. package/lib/labs/VDataTable/VDataTable.css +1 -0
  394. package/lib/labs/VDataTable/VDataTable.mjs +8 -8
  395. package/lib/labs/VDataTable/VDataTable.mjs.map +1 -1
  396. package/lib/labs/VDataTable/VDataTable.sass +1 -0
  397. package/lib/labs/VDataTable/VDataTableColumn.mjs +2 -1
  398. package/lib/labs/VDataTable/VDataTableColumn.mjs.map +1 -1
  399. package/lib/labs/VDataTable/VDataTableFooter.mjs +3 -3
  400. package/lib/labs/VDataTable/VDataTableFooter.mjs.map +1 -1
  401. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs +5 -5
  402. package/lib/labs/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  403. package/lib/labs/VDataTable/VDataTableHeaders.mjs +6 -6
  404. package/lib/labs/VDataTable/VDataTableHeaders.mjs.map +1 -1
  405. package/lib/labs/VDataTable/VDataTableRow.mjs +1 -1
  406. package/lib/labs/VDataTable/VDataTableRow.mjs.map +1 -1
  407. package/lib/labs/VDataTable/VDataTableRows.mjs +20 -16
  408. package/lib/labs/VDataTable/VDataTableRows.mjs.map +1 -1
  409. package/lib/labs/VDataTable/VDataTableServer.mjs +7 -7
  410. package/lib/labs/VDataTable/VDataTableServer.mjs.map +1 -1
  411. package/lib/labs/VDataTable/VDataTableVirtual.mjs +34 -22
  412. package/lib/labs/VDataTable/VDataTableVirtual.mjs.map +1 -1
  413. package/lib/labs/VDataTable/composables/expand.mjs +4 -4
  414. package/lib/labs/VDataTable/composables/expand.mjs.map +1 -1
  415. package/lib/labs/VDataTable/composables/group.mjs +1 -1
  416. package/lib/labs/VDataTable/composables/group.mjs.map +1 -1
  417. package/lib/labs/VDataTable/composables/headers.mjs +2 -2
  418. package/lib/labs/VDataTable/composables/headers.mjs.map +1 -1
  419. package/lib/labs/VDataTable/composables/items.mjs +5 -8
  420. package/lib/labs/VDataTable/composables/items.mjs.map +1 -1
  421. package/lib/labs/VDataTable/composables/paginate.mjs +1 -1
  422. package/lib/labs/VDataTable/composables/paginate.mjs.map +1 -1
  423. package/lib/labs/VDataTable/composables/select.mjs +1 -1
  424. package/lib/labs/VDataTable/composables/select.mjs.map +1 -1
  425. package/lib/labs/VDataTable/composables/sort.mjs +4 -9
  426. package/lib/labs/VDataTable/composables/sort.mjs.map +1 -1
  427. package/lib/labs/VDataTable/index.d.mts +182 -83
  428. package/lib/labs/VDataTable/types.mjs.map +1 -1
  429. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +1 -1
  430. package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  431. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs +4 -4
  432. package/lib/labs/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  433. package/lib/labs/components.d.mts +213 -114
  434. package/lib/labs/date/date.mjs.map +1 -1
  435. package/lib/labs/entry-bundler.mjs +3 -1
  436. package/lib/labs/entry-bundler.mjs.map +1 -1
  437. package/lib/locale/adapters/vue-i18n.d.mts +1 -1
  438. package/lib/locale/adapters/vue-i18n.mjs +5 -1
  439. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  440. package/lib/locale/adapters/vuetify.mjs +1 -3
  441. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  442. package/lib/util/anchor.mjs +1 -0
  443. package/lib/util/anchor.mjs.map +1 -1
  444. package/lib/util/animation.mjs +1 -0
  445. package/lib/util/animation.mjs.map +1 -1
  446. package/lib/util/color/APCA.mjs +1 -0
  447. package/lib/util/color/APCA.mjs.map +1 -1
  448. package/lib/util/color/transformCIELAB.mjs +2 -0
  449. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  450. package/lib/util/color/transformSRGB.mjs +3 -1
  451. package/lib/util/color/transformSRGB.mjs.map +1 -1
  452. package/lib/util/colorUtils.mjs +2 -2
  453. package/lib/util/colorUtils.mjs.map +1 -1
  454. package/lib/util/console.mjs +1 -0
  455. package/lib/util/console.mjs.map +1 -1
  456. package/lib/util/createSimpleFunctional.mjs +2 -1
  457. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  458. package/lib/util/defineComponent.mjs +5 -5
  459. package/lib/util/defineComponent.mjs.map +1 -1
  460. package/lib/util/getCurrentInstance.mjs +1 -2
  461. package/lib/util/getCurrentInstance.mjs.map +1 -1
  462. package/lib/util/helpers.mjs +3 -3
  463. package/lib/util/helpers.mjs.map +1 -1
  464. package/lib/util/injectSelf.mjs +2 -1
  465. package/lib/util/injectSelf.mjs.map +1 -1
  466. package/lib/util/propsFactory.mjs +1 -0
  467. package/lib/util/propsFactory.mjs.map +1 -1
  468. package/package.json +4 -4
  469. package/lib/labs/VDataTable/composables/virtual.mjs +0 -77
  470. package/lib/labs/VDataTable/composables/virtual.mjs.map +0 -1
@@ -87,37 +87,6 @@ type DefaultsInstance = undefined | {
87
87
  };
88
88
  type DefaultsOptions = Partial<DefaultsInstance>;
89
89
 
90
- interface DateAdapter<Date> {
91
- date(value?: any): Date | null;
92
- format(date: Date, formatString: string): string;
93
- startOfMonth(date: Date): Date;
94
- endOfMonth(date: Date): Date;
95
- startOfYear(date: Date): Date;
96
- endOfYear(date: Date): Date;
97
- isAfter(date: Date, comparing: Date): boolean;
98
- isEqual(date: Date, comparing: Date): boolean;
99
- isSameDay(date: Date, comparing: Date): boolean;
100
- isSameMonth(date: Date, comparing: Date): boolean;
101
- isValid(date: any): boolean;
102
- isWithinRange(date: Date, range: [Date, Date]): boolean;
103
- addDays(date: Date, amount: number): Date;
104
- addMonths(date: Date, amount: number): Date;
105
- getYear(date: Date): number;
106
- setYear(date: Date, year: number): Date;
107
- getDiff(date: Date, comparing: Date | string, unit?: string): number;
108
- getWeek(date: Date): number;
109
- getWeekArray(date: Date): (Date | null)[][];
110
- getWeekdays(): string[];
111
- getMonth(date: Date): number;
112
- }
113
-
114
- interface DateInstance extends DateAdapter<Date> {
115
- locale: string;
116
- }
117
- type DateOptions = {
118
- adapter: (new (locale: string) => DateInstance) | DateInstance;
119
- };
120
-
121
90
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
122
91
  declare const IconValue: PropType<IconValue>;
123
92
  interface IconAliases {
@@ -172,6 +141,37 @@ type IconOptions = {
172
141
  sets: Record<string, IconSet>;
173
142
  };
174
143
 
144
+ interface DateAdapter<Date> {
145
+ date(value?: any): Date | null;
146
+ format(date: Date, formatString: string): string;
147
+ startOfMonth(date: Date): Date;
148
+ endOfMonth(date: Date): Date;
149
+ startOfYear(date: Date): Date;
150
+ endOfYear(date: Date): Date;
151
+ isAfter(date: Date, comparing: Date): boolean;
152
+ isEqual(date: Date, comparing: Date): boolean;
153
+ isSameDay(date: Date, comparing: Date): boolean;
154
+ isSameMonth(date: Date, comparing: Date): boolean;
155
+ isValid(date: any): boolean;
156
+ isWithinRange(date: Date, range: [Date, Date]): boolean;
157
+ addDays(date: Date, amount: number): Date;
158
+ addMonths(date: Date, amount: number): Date;
159
+ getYear(date: Date): number;
160
+ setYear(date: Date, year: number): Date;
161
+ getDiff(date: Date, comparing: Date | string, unit?: string): number;
162
+ getWeek(date: Date): number;
163
+ getWeekArray(date: Date): (Date | null)[][];
164
+ getWeekdays(): string[];
165
+ getMonth(date: Date): number;
166
+ }
167
+
168
+ interface DateInstance extends DateAdapter<Date> {
169
+ locale: string;
170
+ }
171
+ type DateOptions = {
172
+ adapter: (new (locale: string) => DateInstance) | DateInstance;
173
+ };
174
+
175
175
  interface VuetifyOptions {
176
176
  aliases?: Record<string, any>;
177
177
  blueprint?: Blueprint;
@@ -87,37 +87,6 @@ type DefaultsInstance = undefined | {
87
87
  };
88
88
  type DefaultsOptions = Partial<DefaultsInstance>;
89
89
 
90
- interface DateAdapter<Date> {
91
- date(value?: any): Date | null;
92
- format(date: Date, formatString: string): string;
93
- startOfMonth(date: Date): Date;
94
- endOfMonth(date: Date): Date;
95
- startOfYear(date: Date): Date;
96
- endOfYear(date: Date): Date;
97
- isAfter(date: Date, comparing: Date): boolean;
98
- isEqual(date: Date, comparing: Date): boolean;
99
- isSameDay(date: Date, comparing: Date): boolean;
100
- isSameMonth(date: Date, comparing: Date): boolean;
101
- isValid(date: any): boolean;
102
- isWithinRange(date: Date, range: [Date, Date]): boolean;
103
- addDays(date: Date, amount: number): Date;
104
- addMonths(date: Date, amount: number): Date;
105
- getYear(date: Date): number;
106
- setYear(date: Date, year: number): Date;
107
- getDiff(date: Date, comparing: Date | string, unit?: string): number;
108
- getWeek(date: Date): number;
109
- getWeekArray(date: Date): (Date | null)[][];
110
- getWeekdays(): string[];
111
- getMonth(date: Date): number;
112
- }
113
-
114
- interface DateInstance extends DateAdapter<Date> {
115
- locale: string;
116
- }
117
- type DateOptions = {
118
- adapter: (new (locale: string) => DateInstance) | DateInstance;
119
- };
120
-
121
90
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
122
91
  declare const IconValue: PropType<IconValue>;
123
92
  interface IconAliases {
@@ -172,6 +141,37 @@ type IconOptions = {
172
141
  sets: Record<string, IconSet>;
173
142
  };
174
143
 
144
+ interface DateAdapter<Date> {
145
+ date(value?: any): Date | null;
146
+ format(date: Date, formatString: string): string;
147
+ startOfMonth(date: Date): Date;
148
+ endOfMonth(date: Date): Date;
149
+ startOfYear(date: Date): Date;
150
+ endOfYear(date: Date): Date;
151
+ isAfter(date: Date, comparing: Date): boolean;
152
+ isEqual(date: Date, comparing: Date): boolean;
153
+ isSameDay(date: Date, comparing: Date): boolean;
154
+ isSameMonth(date: Date, comparing: Date): boolean;
155
+ isValid(date: any): boolean;
156
+ isWithinRange(date: Date, range: [Date, Date]): boolean;
157
+ addDays(date: Date, amount: number): Date;
158
+ addMonths(date: Date, amount: number): Date;
159
+ getYear(date: Date): number;
160
+ setYear(date: Date, year: number): Date;
161
+ getDiff(date: Date, comparing: Date | string, unit?: string): number;
162
+ getWeek(date: Date): number;
163
+ getWeekArray(date: Date): (Date | null)[][];
164
+ getWeekdays(): string[];
165
+ getMonth(date: Date): number;
166
+ }
167
+
168
+ interface DateInstance extends DateAdapter<Date> {
169
+ locale: string;
170
+ }
171
+ type DateOptions = {
172
+ adapter: (new (locale: string) => DateInstance) | DateInstance;
173
+ };
174
+
175
175
  interface VuetifyOptions {
176
176
  aliases?: Record<string, any>;
177
177
  blueprint?: Blueprint;
@@ -87,37 +87,6 @@ type DefaultsInstance = undefined | {
87
87
  };
88
88
  type DefaultsOptions = Partial<DefaultsInstance>;
89
89
 
90
- interface DateAdapter<Date> {
91
- date(value?: any): Date | null;
92
- format(date: Date, formatString: string): string;
93
- startOfMonth(date: Date): Date;
94
- endOfMonth(date: Date): Date;
95
- startOfYear(date: Date): Date;
96
- endOfYear(date: Date): Date;
97
- isAfter(date: Date, comparing: Date): boolean;
98
- isEqual(date: Date, comparing: Date): boolean;
99
- isSameDay(date: Date, comparing: Date): boolean;
100
- isSameMonth(date: Date, comparing: Date): boolean;
101
- isValid(date: any): boolean;
102
- isWithinRange(date: Date, range: [Date, Date]): boolean;
103
- addDays(date: Date, amount: number): Date;
104
- addMonths(date: Date, amount: number): Date;
105
- getYear(date: Date): number;
106
- setYear(date: Date, year: number): Date;
107
- getDiff(date: Date, comparing: Date | string, unit?: string): number;
108
- getWeek(date: Date): number;
109
- getWeekArray(date: Date): (Date | null)[][];
110
- getWeekdays(): string[];
111
- getMonth(date: Date): number;
112
- }
113
-
114
- interface DateInstance extends DateAdapter<Date> {
115
- locale: string;
116
- }
117
- type DateOptions = {
118
- adapter: (new (locale: string) => DateInstance) | DateInstance;
119
- };
120
-
121
90
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
122
91
  declare const IconValue: PropType<IconValue>;
123
92
  interface IconAliases {
@@ -172,6 +141,37 @@ type IconOptions = {
172
141
  sets: Record<string, IconSet>;
173
142
  };
174
143
 
144
+ interface DateAdapter<Date> {
145
+ date(value?: any): Date | null;
146
+ format(date: Date, formatString: string): string;
147
+ startOfMonth(date: Date): Date;
148
+ endOfMonth(date: Date): Date;
149
+ startOfYear(date: Date): Date;
150
+ endOfYear(date: Date): Date;
151
+ isAfter(date: Date, comparing: Date): boolean;
152
+ isEqual(date: Date, comparing: Date): boolean;
153
+ isSameDay(date: Date, comparing: Date): boolean;
154
+ isSameMonth(date: Date, comparing: Date): boolean;
155
+ isValid(date: any): boolean;
156
+ isWithinRange(date: Date, range: [Date, Date]): boolean;
157
+ addDays(date: Date, amount: number): Date;
158
+ addMonths(date: Date, amount: number): Date;
159
+ getYear(date: Date): number;
160
+ setYear(date: Date, year: number): Date;
161
+ getDiff(date: Date, comparing: Date | string, unit?: string): number;
162
+ getWeek(date: Date): number;
163
+ getWeekArray(date: Date): (Date | null)[][];
164
+ getWeekdays(): string[];
165
+ getMonth(date: Date): number;
166
+ }
167
+
168
+ interface DateInstance extends DateAdapter<Date> {
169
+ locale: string;
170
+ }
171
+ type DateOptions = {
172
+ adapter: (new (locale: string) => DateInstance) | DateInstance;
173
+ };
174
+
175
175
  interface VuetifyOptions {
176
176
  aliases?: Record<string, any>;
177
177
  blueprint?: Blueprint;
@@ -87,37 +87,6 @@ type DefaultsInstance = undefined | {
87
87
  };
88
88
  type DefaultsOptions = Partial<DefaultsInstance>;
89
89
 
90
- interface DateAdapter<Date> {
91
- date(value?: any): Date | null;
92
- format(date: Date, formatString: string): string;
93
- startOfMonth(date: Date): Date;
94
- endOfMonth(date: Date): Date;
95
- startOfYear(date: Date): Date;
96
- endOfYear(date: Date): Date;
97
- isAfter(date: Date, comparing: Date): boolean;
98
- isEqual(date: Date, comparing: Date): boolean;
99
- isSameDay(date: Date, comparing: Date): boolean;
100
- isSameMonth(date: Date, comparing: Date): boolean;
101
- isValid(date: any): boolean;
102
- isWithinRange(date: Date, range: [Date, Date]): boolean;
103
- addDays(date: Date, amount: number): Date;
104
- addMonths(date: Date, amount: number): Date;
105
- getYear(date: Date): number;
106
- setYear(date: Date, year: number): Date;
107
- getDiff(date: Date, comparing: Date | string, unit?: string): number;
108
- getWeek(date: Date): number;
109
- getWeekArray(date: Date): (Date | null)[][];
110
- getWeekdays(): string[];
111
- getMonth(date: Date): number;
112
- }
113
-
114
- interface DateInstance extends DateAdapter<Date> {
115
- locale: string;
116
- }
117
- type DateOptions = {
118
- adapter: (new (locale: string) => DateInstance) | DateInstance;
119
- };
120
-
121
90
  type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
122
91
  declare const IconValue: PropType<IconValue>;
123
92
  interface IconAliases {
@@ -172,6 +141,37 @@ type IconOptions = {
172
141
  sets: Record<string, IconSet>;
173
142
  };
174
143
 
144
+ interface DateAdapter<Date> {
145
+ date(value?: any): Date | null;
146
+ format(date: Date, formatString: string): string;
147
+ startOfMonth(date: Date): Date;
148
+ endOfMonth(date: Date): Date;
149
+ startOfYear(date: Date): Date;
150
+ endOfYear(date: Date): Date;
151
+ isAfter(date: Date, comparing: Date): boolean;
152
+ isEqual(date: Date, comparing: Date): boolean;
153
+ isSameDay(date: Date, comparing: Date): boolean;
154
+ isSameMonth(date: Date, comparing: Date): boolean;
155
+ isValid(date: any): boolean;
156
+ isWithinRange(date: Date, range: [Date, Date]): boolean;
157
+ addDays(date: Date, amount: number): Date;
158
+ addMonths(date: Date, amount: number): Date;
159
+ getYear(date: Date): number;
160
+ setYear(date: Date, year: number): Date;
161
+ getDiff(date: Date, comparing: Date | string, unit?: string): number;
162
+ getWeek(date: Date): number;
163
+ getWeekArray(date: Date): (Date | null)[][];
164
+ getWeekdays(): string[];
165
+ getMonth(date: Date): number;
166
+ }
167
+
168
+ interface DateInstance extends DateAdapter<Date> {
169
+ locale: string;
170
+ }
171
+ type DateOptions = {
172
+ adapter: (new (locale: string) => DateInstance) | DateInstance;
173
+ };
174
+
175
175
  interface VuetifyOptions {
176
176
  aliases?: Record<string, any>;
177
177
  blueprint?: Blueprint;
@@ -7,20 +7,20 @@ import { VAlertTitle } from "./VAlertTitle.mjs";
7
7
  import { VBtn } from "../VBtn/index.mjs";
8
8
  import { VDefaultsProvider } from "../VDefaultsProvider/index.mjs";
9
9
  import { VIcon } from "../VIcon/index.mjs"; // Composables
10
- import { genOverlays, makeVariantProps, useVariant } from "../../composables/variant.mjs";
11
- import { IconValue } from "../../composables/icons.mjs";
10
+ import { useTextColor } from "../../composables/color.mjs";
12
11
  import { makeComponentProps } from "../../composables/component.mjs";
13
12
  import { makeDensityProps, useDensity } from "../../composables/density.mjs";
14
13
  import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
15
14
  import { makeElevationProps, useElevation } from "../../composables/elevation.mjs";
15
+ import { IconValue } from "../../composables/icons.mjs";
16
+ import { useLocale } from "../../composables/locale.mjs";
16
17
  import { makeLocationProps, useLocation } from "../../composables/location.mjs";
17
18
  import { makePositionProps, usePosition } from "../../composables/position.mjs";
19
+ import { useProxiedModel } from "../../composables/proxiedModel.mjs";
18
20
  import { makeRoundedProps, useRounded } from "../../composables/rounded.mjs";
19
21
  import { makeTagProps } from "../../composables/tag.mjs";
20
22
  import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
21
- import { useLocale } from "../../composables/locale.mjs";
22
- import { useProxiedModel } from "../../composables/proxiedModel.mjs";
23
- import { useTextColor } from "../../composables/color.mjs"; // Utilities
23
+ import { genOverlays, makeVariantProps, useVariant } from "../../composables/variant.mjs"; // Utilities
24
24
  import { computed, toRef } from 'vue';
25
25
  import { genericComponent, propsFactory } from "../../util/index.mjs"; // Types
26
26
  const allowedTypes = ['success', 'info', 'warning', 'error'];
@@ -68,7 +68,7 @@ export const makeVAlertProps = propsFactory({
68
68
  ...makeVariantProps({
69
69
  variant: 'flat'
70
70
  })
71
- }, 'v-alert');
71
+ }, 'VAlert');
72
72
  export const VAlert = genericComponent()({
73
73
  name: 'VAlert',
74
74
  props: makeVAlertProps(),
@@ -1 +1 @@
1
- {"version":3,"file":"VAlert.mjs","names":["VAlertTitle","VBtn","VDefaultsProvider","VIcon","genOverlays","makeVariantProps","useVariant","IconValue","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","makeLocationProps","useLocation","makePositionProps","usePosition","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","useLocale","useProxiedModel","useTextColor","computed","toRef","genericComponent","propsFactory","allowedTypes","makeVAlertProps","border","type","Boolean","String","validator","val","includes","borderColor","closable","closeIcon","default","closeLabel","icon","Function","Object","modelValue","prominent","title","text","variant","VAlert","name","props","emits","e","value","setup","_ref","emit","slots","isActive","undefined","variantProps","color","themeClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","locationStyles","positionClasses","roundedClasses","textColorClasses","textColorStyles","t","closeProps","onClick","hasPrepend","prepend","hasTitle","hasClose","close","_createVNode","tag","class","style","density","size","append","_mergeProps"],"sources":["../../../src/components/VAlert/VAlert.tsx"],"sourcesContent":["// Styles\nimport './VAlert.sass'\n\n// Components\nimport { VAlertTitle } from './VAlertTitle'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\nimport { IconValue } from '@/composables/icons'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst allowedTypes = ['success', 'info', 'warning', 'error'] as const\n\ntype ContextualType = typeof allowedTypes[number]\n\nexport const makeVAlertProps = propsFactory({\n border: {\n type: [Boolean, String] as PropType<boolean | 'top' | 'end' | 'bottom' | 'start'>,\n validator: (val: boolean | string) => {\n return typeof val === 'boolean' || [\n 'top',\n 'end',\n 'bottom',\n 'start',\n ].includes(val)\n },\n },\n borderColor: String,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$close',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n icon: {\n type: [Boolean, String, Function, Object] as PropType<false | IconValue>,\n default: null,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n prominent: Boolean,\n title: String,\n text: String,\n type: {\n type: String as PropType<ContextualType>,\n validator: (val: ContextualType) => allowedTypes.includes(val),\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'flat' } as const),\n}, 'v-alert')\n\nexport type VAlertSlots = {\n default: never\n prepend: never\n title: never\n text: never\n append: never\n close: { props: Record<string, any> }\n}\n\nexport const VAlert = genericComponent<VAlertSlots>()({\n name: 'VAlert',\n\n props: makeVAlertProps(),\n\n emits: {\n 'click:close': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const icon = computed(() => {\n if (props.icon === false) return undefined\n if (!props.type) return props.icon\n\n return props.icon ?? `$${props.type}`\n })\n const variantProps = computed(() => ({\n color: props.color ?? props.type,\n variant: props.variant,\n }))\n\n const { themeClasses } = provideTheme(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'borderColor'))\n const { t } = useLocale()\n\n const closeProps = computed(() => ({\n 'aria-label': t(props.closeLabel),\n onClick (e: MouseEvent) {\n isActive.value = false\n\n emit('click:close', e)\n },\n }))\n\n return () => {\n const hasPrepend = !!(slots.prepend || icon.value)\n const hasTitle = !!(slots.title || props.title)\n const hasClose = !!(slots.close || props.closable)\n\n return isActive.value && (\n <props.tag\n class={[\n 'v-alert',\n props.border && {\n 'v-alert--border': !!props.border,\n [`v-alert--border-${props.border === true ? 'start' : props.border}`]: true,\n },\n {\n 'v-alert--prominent': props.prominent,\n },\n themeClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n props.style,\n ]}\n role=\"alert\"\n >\n { genOverlays(false, 'v-alert') }\n\n { props.border && (\n <div\n key=\"border\"\n class={[\n 'v-alert__border',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n />\n )}\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-alert__prepend\">\n { !slots.prepend ? (\n <VIcon\n key=\"prepend-icon\"\n density={ props.density }\n icon={ icon.value }\n size={ props.prominent ? 44 : 28 }\n />\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !icon.value }\n defaults={{\n VIcon: {\n density: props.density,\n icon: icon.value,\n size: props.prominent ? 44 : 28,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-alert__content\">\n { hasTitle && (\n <VAlertTitle key=\"title\">\n { slots.title?.() ?? props.title }\n </VAlertTitle>\n )}\n\n { slots.text?.() ?? props.text }\n\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div key=\"append\" class=\"v-alert__append\">\n { slots.append() }\n </div>\n )}\n\n { hasClose && (\n <div key=\"close\" class=\"v-alert__close\">\n { !slots.close ? (\n <VBtn\n key=\"close-btn\"\n icon={ props.closeIcon }\n size=\"x-small\"\n variant=\"text\"\n { ...closeProps.value }\n />\n ) : (\n <VDefaultsProvider\n key=\"close-defaults\"\n defaults={{\n VBtn: {\n icon: props.closeIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n >\n { slots.close?.({ props: closeProps.value }) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n </props.tag>\n )\n }\n },\n})\n\nexport type VAlert = InstanceType<typeof VAlert>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VAlert.mjs","names":["VAlertTitle","VBtn","VDefaultsProvider","VIcon","useTextColor","makeComponentProps","makeDensityProps","useDensity","makeDimensionProps","useDimension","makeElevationProps","useElevation","IconValue","useLocale","makeLocationProps","useLocation","makePositionProps","usePosition","useProxiedModel","makeRoundedProps","useRounded","makeTagProps","makeThemeProps","provideTheme","genOverlays","makeVariantProps","useVariant","computed","toRef","genericComponent","propsFactory","allowedTypes","makeVAlertProps","border","type","Boolean","String","validator","val","includes","borderColor","closable","closeIcon","default","closeLabel","icon","Function","Object","modelValue","prominent","title","text","variant","VAlert","name","props","emits","e","value","setup","_ref","emit","slots","isActive","undefined","variantProps","color","themeClasses","colorClasses","colorStyles","variantClasses","densityClasses","dimensionStyles","elevationClasses","locationStyles","positionClasses","roundedClasses","textColorClasses","textColorStyles","t","closeProps","onClick","hasPrepend","prepend","hasTitle","hasClose","close","_createVNode","tag","class","style","density","size","append","_mergeProps"],"sources":["../../../src/components/VAlert/VAlert.tsx"],"sourcesContent":["// Styles\nimport './VAlert.sass'\n\n// Components\nimport { VAlertTitle } from './VAlertTitle'\nimport { VBtn } from '@/components/VBtn'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider'\nimport { VIcon } from '@/components/VIcon'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeDensityProps, useDensity } from '@/composables/density'\nimport { makeDimensionProps, useDimension } from '@/composables/dimensions'\nimport { makeElevationProps, useElevation } from '@/composables/elevation'\nimport { IconValue } from '@/composables/icons'\nimport { useLocale } from '@/composables/locale'\nimport { makeLocationProps, useLocation } from '@/composables/location'\nimport { makePositionProps, usePosition } from '@/composables/position'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeRoundedProps, useRounded } from '@/composables/rounded'\nimport { makeTagProps } from '@/composables/tag'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { genOverlays, makeVariantProps, useVariant } from '@/composables/variant'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\nconst allowedTypes = ['success', 'info', 'warning', 'error'] as const\n\ntype ContextualType = typeof allowedTypes[number]\n\nexport const makeVAlertProps = propsFactory({\n border: {\n type: [Boolean, String] as PropType<boolean | 'top' | 'end' | 'bottom' | 'start'>,\n validator: (val: boolean | string) => {\n return typeof val === 'boolean' || [\n 'top',\n 'end',\n 'bottom',\n 'start',\n ].includes(val)\n },\n },\n borderColor: String,\n closable: Boolean,\n closeIcon: {\n type: IconValue,\n default: '$close',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n icon: {\n type: [Boolean, String, Function, Object] as PropType<false | IconValue>,\n default: null,\n },\n modelValue: {\n type: Boolean,\n default: true,\n },\n prominent: Boolean,\n title: String,\n text: String,\n type: {\n type: String as PropType<ContextualType>,\n validator: (val: ContextualType) => allowedTypes.includes(val),\n },\n\n ...makeComponentProps(),\n ...makeDensityProps(),\n ...makeDimensionProps(),\n ...makeElevationProps(),\n ...makeLocationProps(),\n ...makePositionProps(),\n ...makeRoundedProps(),\n ...makeTagProps(),\n ...makeThemeProps(),\n ...makeVariantProps({ variant: 'flat' } as const),\n}, 'VAlert')\n\nexport type VAlertSlots = {\n default: never\n prepend: never\n title: never\n text: never\n append: never\n close: { props: Record<string, any> }\n}\n\nexport const VAlert = genericComponent<VAlertSlots>()({\n name: 'VAlert',\n\n props: makeVAlertProps(),\n\n emits: {\n 'click:close': (e: MouseEvent) => true,\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { emit, slots }) {\n const isActive = useProxiedModel(props, 'modelValue')\n const icon = computed(() => {\n if (props.icon === false) return undefined\n if (!props.type) return props.icon\n\n return props.icon ?? `$${props.type}`\n })\n const variantProps = computed(() => ({\n color: props.color ?? props.type,\n variant: props.variant,\n }))\n\n const { themeClasses } = provideTheme(props)\n const { colorClasses, colorStyles, variantClasses } = useVariant(variantProps)\n const { densityClasses } = useDensity(props)\n const { dimensionStyles } = useDimension(props)\n const { elevationClasses } = useElevation(props)\n const { locationStyles } = useLocation(props)\n const { positionClasses } = usePosition(props)\n const { roundedClasses } = useRounded(props)\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'borderColor'))\n const { t } = useLocale()\n\n const closeProps = computed(() => ({\n 'aria-label': t(props.closeLabel),\n onClick (e: MouseEvent) {\n isActive.value = false\n\n emit('click:close', e)\n },\n }))\n\n return () => {\n const hasPrepend = !!(slots.prepend || icon.value)\n const hasTitle = !!(slots.title || props.title)\n const hasClose = !!(slots.close || props.closable)\n\n return isActive.value && (\n <props.tag\n class={[\n 'v-alert',\n props.border && {\n 'v-alert--border': !!props.border,\n [`v-alert--border-${props.border === true ? 'start' : props.border}`]: true,\n },\n {\n 'v-alert--prominent': props.prominent,\n },\n themeClasses.value,\n colorClasses.value,\n densityClasses.value,\n elevationClasses.value,\n positionClasses.value,\n roundedClasses.value,\n variantClasses.value,\n props.class,\n ]}\n style={[\n colorStyles.value,\n dimensionStyles.value,\n locationStyles.value,\n props.style,\n ]}\n role=\"alert\"\n >\n { genOverlays(false, 'v-alert') }\n\n { props.border && (\n <div\n key=\"border\"\n class={[\n 'v-alert__border',\n textColorClasses.value,\n ]}\n style={ textColorStyles.value }\n />\n )}\n\n { hasPrepend && (\n <div key=\"prepend\" class=\"v-alert__prepend\">\n { !slots.prepend ? (\n <VIcon\n key=\"prepend-icon\"\n density={ props.density }\n icon={ icon.value }\n size={ props.prominent ? 44 : 28 }\n />\n ) : (\n <VDefaultsProvider\n key=\"prepend-defaults\"\n disabled={ !icon.value }\n defaults={{\n VIcon: {\n density: props.density,\n icon: icon.value,\n size: props.prominent ? 44 : 28,\n },\n }}\n v-slots:default={ slots.prepend }\n />\n )}\n </div>\n )}\n\n <div class=\"v-alert__content\">\n { hasTitle && (\n <VAlertTitle key=\"title\">\n { slots.title?.() ?? props.title }\n </VAlertTitle>\n )}\n\n { slots.text?.() ?? props.text }\n\n { slots.default?.() }\n </div>\n\n { slots.append && (\n <div key=\"append\" class=\"v-alert__append\">\n { slots.append() }\n </div>\n )}\n\n { hasClose && (\n <div key=\"close\" class=\"v-alert__close\">\n { !slots.close ? (\n <VBtn\n key=\"close-btn\"\n icon={ props.closeIcon }\n size=\"x-small\"\n variant=\"text\"\n { ...closeProps.value }\n />\n ) : (\n <VDefaultsProvider\n key=\"close-defaults\"\n defaults={{\n VBtn: {\n icon: props.closeIcon,\n size: 'x-small',\n variant: 'text',\n },\n }}\n >\n { slots.close?.({ props: closeProps.value }) }\n </VDefaultsProvider>\n )}\n </div>\n )}\n </props.tag>\n )\n }\n },\n})\n\nexport type VAlert = InstanceType<typeof VAlert>\n"],"mappings":"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"}
@@ -66,6 +66,7 @@ declare const VAlert: {
66
66
  ref_key?: string | undefined;
67
67
  theme?: string | undefined;
68
68
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
69
+ "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
69
70
  'v-slots'?: {
70
71
  default?: false | (() => vue.VNodeChild) | undefined;
71
72
  prepend?: false | (() => vue.VNodeChild) | undefined;
@@ -114,7 +115,6 @@ declare const VAlert: {
114
115
  }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
115
116
  [key: string]: any;
116
117
  }>) => void)[] | undefined;
117
- "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
118
118
  "v-slot:title"?: false | (() => vue.VNodeChild) | undefined;
119
119
  "v-slot:append"?: false | (() => vue.VNodeChild) | undefined;
120
120
  "v-slot:prepend"?: false | (() => vue.VNodeChild) | undefined;
@@ -3,10 +3,10 @@ import { createVNode as _createVNode } from "vue";
3
3
  import "./VApp.css";
4
4
 
5
5
  // Composables
6
- import { createLayout, makeLayoutProps } from "../../composables/layout.mjs";
7
6
  import { makeComponentProps } from "../../composables/component.mjs";
8
- import { makeThemeProps, provideTheme } from "../../composables/theme.mjs";
9
- import { useRtl } from "../../composables/locale.mjs"; // Utilities
7
+ import { createLayout, makeLayoutProps } from "../../composables/layout.mjs";
8
+ import { useRtl } from "../../composables/locale.mjs";
9
+ import { makeThemeProps, provideTheme } from "../../composables/theme.mjs"; // Utilities
10
10
  import { genericComponent, propsFactory, useRender } from "../../util/index.mjs";
11
11
  export const makeVAppProps = propsFactory({
12
12
  ...makeComponentProps(),
@@ -14,7 +14,7 @@ export const makeVAppProps = propsFactory({
14
14
  fullHeight: true
15
15
  }),
16
16
  ...makeThemeProps()
17
- }, 'v-app');
17
+ }, 'VApp');
18
18
  export const VApp = genericComponent()({
19
19
  name: 'VApp',
20
20
  props: makeVAppProps(),
@@ -1 +1 @@
1
- {"version":3,"file":"VApp.mjs","names":["createLayout","makeLayoutProps","makeComponentProps","makeThemeProps","provideTheme","useRtl","genericComponent","propsFactory","useRender","makeVAppProps","fullHeight","VApp","name","props","setup","_ref","slots","theme","layoutClasses","layoutStyles","getLayoutItem","items","layoutRef","rtlClasses","_createVNode","themeClasses","value","class","style","default"],"sources":["../../../src/components/VApp/VApp.tsx"],"sourcesContent":["// Styles\nimport './VApp.sass'\n\n// Composables\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\nimport { makeComponentProps } from '@/composables/component'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\nimport { useRtl } from '@/composables/locale'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVAppProps = propsFactory({\n ...makeComponentProps(),\n ...makeLayoutProps({ fullHeight: true }),\n ...makeThemeProps(),\n}, 'v-app')\n\nexport const VApp = genericComponent()({\n name: 'VApp',\n\n props: makeVAppProps(),\n\n setup (props, { slots }) {\n const theme = provideTheme(props)\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n const { rtlClasses } = useRtl()\n\n useRender(() => (\n <div\n ref={ layoutRef }\n class={[\n 'v-application',\n theme.themeClasses.value,\n layoutClasses.value,\n rtlClasses.value,\n props.class,\n ]}\n style={[\n layoutStyles.value,\n props.style,\n ]}\n >\n <div class=\"v-application__wrap\">\n { slots.default?.() }\n </div>\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n theme,\n }\n },\n})\n\nexport type VApp = InstanceType<typeof VApp>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY,EAAEC,eAAe;AAAA,SAC7BC,kBAAkB;AAAA,SAClBC,cAAc,EAAEC,YAAY;AAAA,SAC5BC,MAAM,wCAEf;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAAC;EACxC,GAAGL,kBAAkB,EAAE;EACvB,GAAGD,eAAe,CAAC;IAAES,UAAU,EAAE;EAAK,CAAC,CAAC;EACxC,GAAGP,cAAc;AACnB,CAAC,EAAE,OAAO,CAAC;AAEX,OAAO,MAAMQ,IAAI,GAAGL,gBAAgB,EAAE,CAAC;EACrCM,IAAI,EAAE,MAAM;EAEZC,KAAK,EAAEJ,aAAa,EAAE;EAEtBK,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAME,KAAK,GAAGb,YAAY,CAACS,KAAK,CAAC;IACjC,MAAM;MAAEK,aAAa;MAAEC,YAAY;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAU,CAAC,GAAGtB,YAAY,CAACa,KAAK,CAAC;IAC5F,MAAM;MAAEU;IAAW,CAAC,GAAGlB,MAAM,EAAE;IAE/BG,SAAS,CAAC,MAAAgB,YAAA;MAAA,OAEAF,SAAS;MAAA,SACR,CACL,eAAe,EACfL,KAAK,CAACQ,YAAY,CAACC,KAAK,EACxBR,aAAa,CAACQ,KAAK,EACnBH,UAAU,CAACG,KAAK,EAChBb,KAAK,CAACc,KAAK,CACZ;MAAA,SACM,CACLR,YAAY,CAACO,KAAK,EAClBb,KAAK,CAACe,KAAK;IACZ,IAAAJ,YAAA;MAAA,SAEU;IAAqB,IAC5BR,KAAK,CAACa,OAAO,IAAI,IAGxB,CAAC;IAEF,OAAO;MACLT,aAAa;MACbC,KAAK;MACLJ;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VApp.mjs","names":["makeComponentProps","createLayout","makeLayoutProps","useRtl","makeThemeProps","provideTheme","genericComponent","propsFactory","useRender","makeVAppProps","fullHeight","VApp","name","props","setup","_ref","slots","theme","layoutClasses","layoutStyles","getLayoutItem","items","layoutRef","rtlClasses","_createVNode","themeClasses","value","class","style","default"],"sources":["../../../src/components/VApp/VApp.tsx"],"sourcesContent":["// Styles\nimport './VApp.sass'\n\n// Composables\nimport { makeComponentProps } from '@/composables/component'\nimport { createLayout, makeLayoutProps } from '@/composables/layout'\nimport { useRtl } from '@/composables/locale'\nimport { makeThemeProps, provideTheme } from '@/composables/theme'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\nexport const makeVAppProps = propsFactory({\n ...makeComponentProps(),\n ...makeLayoutProps({ fullHeight: true }),\n ...makeThemeProps(),\n}, 'VApp')\n\nexport const VApp = genericComponent()({\n name: 'VApp',\n\n props: makeVAppProps(),\n\n setup (props, { slots }) {\n const theme = provideTheme(props)\n const { layoutClasses, layoutStyles, getLayoutItem, items, layoutRef } = createLayout(props)\n const { rtlClasses } = useRtl()\n\n useRender(() => (\n <div\n ref={ layoutRef }\n class={[\n 'v-application',\n theme.themeClasses.value,\n layoutClasses.value,\n rtlClasses.value,\n props.class,\n ]}\n style={[\n layoutStyles.value,\n props.style,\n ]}\n >\n <div class=\"v-application__wrap\">\n { slots.default?.() }\n </div>\n </div>\n ))\n\n return {\n getLayoutItem,\n items,\n theme,\n }\n },\n})\n\nexport type VApp = InstanceType<typeof VApp>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,kBAAkB;AAAA,SAClBC,YAAY,EAAEC,eAAe;AAAA,SAC7BC,MAAM;AAAA,SACNC,cAAc,EAAEC,YAAY,uCAErC;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS;AAElD,OAAO,MAAMC,aAAa,GAAGF,YAAY,CAAC;EACxC,GAAGP,kBAAkB,EAAE;EACvB,GAAGE,eAAe,CAAC;IAAEQ,UAAU,EAAE;EAAK,CAAC,CAAC;EACxC,GAAGN,cAAc;AACnB,CAAC,EAAE,MAAM,CAAC;AAEV,OAAO,MAAMO,IAAI,GAAGL,gBAAgB,EAAE,CAAC;EACrCM,IAAI,EAAE,MAAM;EAEZC,KAAK,EAAEJ,aAAa,EAAE;EAEtBK,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAME,KAAK,GAAGZ,YAAY,CAACQ,KAAK,CAAC;IACjC,MAAM;MAAEK,aAAa;MAAEC,YAAY;MAAEC,aAAa;MAAEC,KAAK;MAAEC;IAAU,CAAC,GAAGrB,YAAY,CAACY,KAAK,CAAC;IAC5F,MAAM;MAAEU;IAAW,CAAC,GAAGpB,MAAM,EAAE;IAE/BK,SAAS,CAAC,MAAAgB,YAAA;MAAA,OAEAF,SAAS;MAAA,SACR,CACL,eAAe,EACfL,KAAK,CAACQ,YAAY,CAACC,KAAK,EACxBR,aAAa,CAACQ,KAAK,EACnBH,UAAU,CAACG,KAAK,EAChBb,KAAK,CAACc,KAAK,CACZ;MAAA,SACM,CACLR,YAAY,CAACO,KAAK,EAClBb,KAAK,CAACe,KAAK;IACZ,IAAAJ,YAAA;MAAA,SAEU;IAAqB,IAC5BR,KAAK,CAACa,OAAO,IAAI,IAGxB,CAAC;IAEF,OAAO;MACLT,aAAa;MACbC,KAAK;MACLJ;IACF,CAAC;EACH;AACF,CAAC,CAAC"}
@@ -5,9 +5,10 @@ import "./VAppBar.css";
5
5
  // Components
6
6
  import { makeVToolbarProps, VToolbar } from "../VToolbar/VToolbar.mjs"; // Composables
7
7
  import { makeLayoutItemProps, useLayoutItem } from "../../composables/layout.mjs";
8
- import { makeScrollProps, useScroll } from "../../composables/scroll.mjs";
9
8
  import { useProxiedModel } from "../../composables/proxiedModel.mjs";
10
- import { useSsrBoot } from "../../composables/ssrBoot.mjs"; // Utilities
9
+ import { makeScrollProps, useScroll } from "../../composables/scroll.mjs";
10
+ import { useSsrBoot } from "../../composables/ssrBoot.mjs";
11
+ import { useToggleScope } from "../../composables/toggleScope.mjs"; // Utilities
11
12
  import { computed, ref, shallowRef, toRef, watch } from 'vue';
12
13
  import { genericComponent, propsFactory, useRender } from "../../util/index.mjs"; // Types
13
14
  export const makeVAppBarProps = propsFactory({
@@ -28,7 +29,7 @@ export const makeVAppBarProps = propsFactory({
28
29
  type: [Number, String],
29
30
  default: 64
30
31
  }
31
- }, 'v-app-bar');
32
+ }, 'VAppBar');
32
33
  export const VAppBar = genericComponent()({
33
34
  name: 'VAppBar',
34
35
  props: makeVAppBarProps(),
@@ -90,10 +91,12 @@ export const VAppBar = genericComponent()({
90
91
  isActive.value = true;
91
92
  }
92
93
  }
93
- watch(currentScroll, setActive, {
94
- immediate: true
94
+ useToggleScope(() => !!props.scrollBehavior, () => {
95
+ watch(currentScroll, setActive, {
96
+ immediate: true
97
+ });
98
+ watch(scrollBehavior, setActive);
95
99
  });
96
- watch(scrollBehavior, setActive);
97
100
  const {
98
101
  ssrBootStyles
99
102
  } = useSsrBoot();
@@ -1 +1 @@
1
- {"version":3,"file":"VAppBar.mjs","names":["makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","makeScrollProps","useScroll","useProxiedModel","useSsrBoot","computed","ref","shallowRef","toRef","watch","genericComponent","propsFactory","useRender","makeVAppBarProps","scrollBehavior","String","modelValue","type","Boolean","default","location","validator","value","includes","height","Number","VAppBar","name","props","emits","setup","_ref","slots","vToolbarRef","isActive","behavior","Set","split","hide","has","inverted","collapse","elevate","fadeImage","canScroll","currentScroll","scrollThreshold","isScrollingUp","scrollRatio","isCollapsed","isFlat","flat","opacity","undefined","contentHeight","extensionHeight","setActive","immediate","ssrBootStyles","layoutItemStyles","id","order","parseInt","position","layoutSize","elementSize","active","absolute","toolbarProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { makeScrollProps, useScroll } from '@/composables/scroll'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { useSsrBoot } from '@/composables/ssrBoot'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VToolbarSlots } from '@/components/VToolbar/VToolbar'\n\nexport const makeVAppBarProps = propsFactory({\n scrollBehavior: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n location: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n ...makeScrollProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n}, 'v-app-bar')\n\nexport const VAppBar = genericComponent<VToolbarSlots>()({\n name: 'VAppBar',\n\n props: makeVAppBarProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref<VToolbar>()\n const isActive = useProxiedModel(props, 'modelValue')\n const scrollBehavior = computed(() => {\n const behavior = new Set(props.scrollBehavior?.split(' ') ?? [])\n return {\n hide: behavior.has('hide'),\n // fullyHide: behavior.has('fully-hide'),\n inverted: behavior.has('inverted'),\n collapse: behavior.has('collapse'),\n elevate: behavior.has('elevate'),\n fadeImage: behavior.has('fade-image'),\n // shrink: behavior.has('shrink'),\n }\n })\n const canScroll = computed(() => {\n const behavior = scrollBehavior.value\n return (\n behavior.hide ||\n // behavior.fullyHide ||\n behavior.inverted ||\n behavior.collapse ||\n behavior.elevate ||\n behavior.fadeImage ||\n // behavior.shrink ||\n !isActive.value\n )\n })\n const {\n currentScroll,\n scrollThreshold,\n isScrollingUp,\n scrollRatio,\n } = useScroll(props, { canScroll })\n\n const isCollapsed = computed(() => props.collapse || (\n scrollBehavior.value.collapse &&\n (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0)\n ))\n const isFlat = computed(() => props.flat || (\n scrollBehavior.value.elevate &&\n (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0)\n ))\n const opacity = computed(() => (\n scrollBehavior.value.fadeImage\n ? (scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value)\n : undefined\n ))\n const height = computed(() => {\n if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0\n\n const height = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n function setActive () {\n if (scrollBehavior.value.hide) {\n if (scrollBehavior.value.inverted) {\n isActive.value = currentScroll.value > scrollThreshold.value\n } else {\n isActive.value = isScrollingUp.value || (currentScroll.value < scrollThreshold.value)\n }\n } else {\n isActive.value = true\n }\n }\n\n watch(currentScroll, setActive, { immediate: true })\n watch(scrollBehavior, setActive)\n\n const { ssrBootStyles } = useSsrBoot()\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize: height,\n elementSize: shallowRef(undefined),\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n useRender(() => {\n const [toolbarProps] = VToolbar.filterProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.location === 'bottom',\n },\n props.class,\n ]}\n style={[\n {\n ...layoutItemStyles.value,\n '--v-toolbar-image-opacity': opacity.value,\n height: undefined,\n ...ssrBootStyles.value,\n },\n props.style,\n ]}\n { ...toolbarProps }\n collapse={ isCollapsed.value }\n flat={ isFlat.value }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VAppBar.mjs","names":["makeVToolbarProps","VToolbar","makeLayoutItemProps","useLayoutItem","useProxiedModel","makeScrollProps","useScroll","useSsrBoot","useToggleScope","computed","ref","shallowRef","toRef","watch","genericComponent","propsFactory","useRender","makeVAppBarProps","scrollBehavior","String","modelValue","type","Boolean","default","location","validator","value","includes","height","Number","VAppBar","name","props","emits","setup","_ref","slots","vToolbarRef","isActive","behavior","Set","split","hide","has","inverted","collapse","elevate","fadeImage","canScroll","currentScroll","scrollThreshold","isScrollingUp","scrollRatio","isCollapsed","isFlat","flat","opacity","undefined","contentHeight","extensionHeight","setActive","immediate","ssrBootStyles","layoutItemStyles","id","order","parseInt","position","layoutSize","elementSize","active","absolute","toolbarProps","filterProps","_createVNode","_mergeProps","class","style"],"sources":["../../../src/components/VAppBar/VAppBar.tsx"],"sourcesContent":["// Styles\nimport './VAppBar.sass'\n\n// Components\nimport { makeVToolbarProps, VToolbar } from '@/components/VToolbar/VToolbar'\n\n// Composables\nimport { makeLayoutItemProps, useLayoutItem } from '@/composables/layout'\nimport { useProxiedModel } from '@/composables/proxiedModel'\nimport { makeScrollProps, useScroll } from '@/composables/scroll'\nimport { useSsrBoot } from '@/composables/ssrBoot'\nimport { useToggleScope } from '@/composables/toggleScope'\n\n// Utilities\nimport { computed, ref, shallowRef, toRef, watch } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VToolbarSlots } from '@/components/VToolbar/VToolbar'\n\nexport const makeVAppBarProps = propsFactory({\n scrollBehavior: String,\n modelValue: {\n type: Boolean,\n default: true,\n },\n location: {\n type: String as PropType<'top' | 'bottom'>,\n default: 'top',\n validator: (value: any) => ['top', 'bottom'].includes(value),\n },\n\n ...makeVToolbarProps(),\n ...makeLayoutItemProps(),\n ...makeScrollProps(),\n\n height: {\n type: [Number, String],\n default: 64,\n },\n}, 'VAppBar')\n\nexport const VAppBar = genericComponent<VToolbarSlots>()({\n name: 'VAppBar',\n\n props: makeVAppBarProps(),\n\n emits: {\n 'update:modelValue': (value: boolean) => true,\n },\n\n setup (props, { slots }) {\n const vToolbarRef = ref<VToolbar>()\n const isActive = useProxiedModel(props, 'modelValue')\n const scrollBehavior = computed(() => {\n const behavior = new Set(props.scrollBehavior?.split(' ') ?? [])\n return {\n hide: behavior.has('hide'),\n // fullyHide: behavior.has('fully-hide'),\n inverted: behavior.has('inverted'),\n collapse: behavior.has('collapse'),\n elevate: behavior.has('elevate'),\n fadeImage: behavior.has('fade-image'),\n // shrink: behavior.has('shrink'),\n }\n })\n const canScroll = computed(() => {\n const behavior = scrollBehavior.value\n return (\n behavior.hide ||\n // behavior.fullyHide ||\n behavior.inverted ||\n behavior.collapse ||\n behavior.elevate ||\n behavior.fadeImage ||\n // behavior.shrink ||\n !isActive.value\n )\n })\n const {\n currentScroll,\n scrollThreshold,\n isScrollingUp,\n scrollRatio,\n } = useScroll(props, { canScroll })\n\n const isCollapsed = computed(() => props.collapse || (\n scrollBehavior.value.collapse &&\n (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0)\n ))\n const isFlat = computed(() => props.flat || (\n scrollBehavior.value.elevate &&\n (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0)\n ))\n const opacity = computed(() => (\n scrollBehavior.value.fadeImage\n ? (scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value)\n : undefined\n ))\n const height = computed(() => {\n if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0\n\n const height = vToolbarRef.value?.contentHeight ?? 0\n const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0\n\n return (height + extensionHeight)\n })\n function setActive () {\n if (scrollBehavior.value.hide) {\n if (scrollBehavior.value.inverted) {\n isActive.value = currentScroll.value > scrollThreshold.value\n } else {\n isActive.value = isScrollingUp.value || (currentScroll.value < scrollThreshold.value)\n }\n } else {\n isActive.value = true\n }\n }\n\n useToggleScope(() => !!props.scrollBehavior, () => {\n watch(currentScroll, setActive, { immediate: true })\n watch(scrollBehavior, setActive)\n })\n\n const { ssrBootStyles } = useSsrBoot()\n const { layoutItemStyles } = useLayoutItem({\n id: props.name,\n order: computed(() => parseInt(props.order, 10)),\n position: toRef(props, 'location'),\n layoutSize: height,\n elementSize: shallowRef(undefined),\n active: isActive,\n absolute: toRef(props, 'absolute'),\n })\n\n useRender(() => {\n const [toolbarProps] = VToolbar.filterProps(props)\n\n return (\n <VToolbar\n ref={ vToolbarRef }\n class={[\n 'v-app-bar',\n {\n 'v-app-bar--bottom': props.location === 'bottom',\n },\n props.class,\n ]}\n style={[\n {\n ...layoutItemStyles.value,\n '--v-toolbar-image-opacity': opacity.value,\n height: undefined,\n ...ssrBootStyles.value,\n },\n props.style,\n ]}\n { ...toolbarProps }\n collapse={ isCollapsed.value }\n flat={ isFlat.value }\n v-slots={ slots }\n />\n )\n })\n\n return {}\n },\n})\n\nexport type VAppBar = InstanceType<typeof VAppBar>\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ export const makeVAppBarNavIconProps = propsFactory({
7
7
  icon: '$menu',
8
8
  variant: 'text'
9
9
  })
10
- }, 'v-app-bar-nav-icon');
10
+ }, 'VAppBarNavIcon');
11
11
  export const VAppBarNavIcon = genericComponent()({
12
12
  name: 'VAppBarNavIcon',
13
13
  props: makeVAppBarNavIconProps(),
@@ -1 +1 @@
1
- {"version":3,"file":"VAppBarNavIcon.mjs","names":["makeVBtnProps","VBtn","genericComponent","propsFactory","useRender","makeVAppBarNavIconProps","icon","variant","VAppBarNavIcon","name","props","setup","_ref","slots","_createVNode","_mergeProps"],"sources":["../../../src/components/VAppBar/VAppBarNavIcon.tsx"],"sourcesContent":["// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VBtnSlots } from '@/components/VBtn/VBtn'\n\nexport const makeVAppBarNavIconProps = propsFactory({\n ...makeVBtnProps({\n icon: '$menu',\n variant: 'text' as const,\n }),\n}, 'v-app-bar-nav-icon')\n\nexport const VAppBarNavIcon = genericComponent<VBtnSlots>()({\n name: 'VAppBarNavIcon',\n\n props: makeVAppBarNavIconProps(),\n\n setup (props, { slots }) {\n useRender(() => (\n <VBtn\n { ...props }\n class={[\n 'v-app-bar-nav-icon',\n ]}\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VAppBarNavIcon = InstanceType<typeof VAppBarNavIcon>\n"],"mappings":";AAAA;AAAA,SACSA,aAAa,EAAEC,IAAI,4BAE5B;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CAAC;EAClD,GAAGH,aAAa,CAAC;IACfM,IAAI,EAAE,OAAO;IACbC,OAAO,EAAE;EACX,CAAC;AACH,CAAC,EAAE,oBAAoB,CAAC;AAExB,OAAO,MAAMC,cAAc,GAAGN,gBAAgB,EAAa,CAAC;EAC1DO,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAEL,uBAAuB,EAAE;EAEhCM,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBR,SAAS,CAAC,MAAAU,YAAA,CAAAb,IAAA,EAAAc,WAAA,CAEDL,KAAK;MAAA,SACH,CACL,oBAAoB;IACrB,IACSG,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VAppBarNavIcon.mjs","names":["makeVBtnProps","VBtn","genericComponent","propsFactory","useRender","makeVAppBarNavIconProps","icon","variant","VAppBarNavIcon","name","props","setup","_ref","slots","_createVNode","_mergeProps"],"sources":["../../../src/components/VAppBar/VAppBarNavIcon.tsx"],"sourcesContent":["// Components\nimport { makeVBtnProps, VBtn } from '@/components/VBtn/VBtn'\n\n// Utilities\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { VBtnSlots } from '@/components/VBtn/VBtn'\n\nexport const makeVAppBarNavIconProps = propsFactory({\n ...makeVBtnProps({\n icon: '$menu',\n variant: 'text' as const,\n }),\n}, 'VAppBarNavIcon')\n\nexport const VAppBarNavIcon = genericComponent<VBtnSlots>()({\n name: 'VAppBarNavIcon',\n\n props: makeVAppBarNavIconProps(),\n\n setup (props, { slots }) {\n useRender(() => (\n <VBtn\n { ...props }\n class={[\n 'v-app-bar-nav-icon',\n ]}\n v-slots={ slots }\n />\n ))\n\n return {}\n },\n})\n\nexport type VAppBarNavIcon = InstanceType<typeof VAppBarNavIcon>\n"],"mappings":";AAAA;AAAA,SACSA,aAAa,EAAEC,IAAI,4BAE5B;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA,OAAO,MAAMC,uBAAuB,GAAGF,YAAY,CAAC;EAClD,GAAGH,aAAa,CAAC;IACfM,IAAI,EAAE,OAAO;IACbC,OAAO,EAAE;EACX,CAAC;AACH,CAAC,EAAE,gBAAgB,CAAC;AAEpB,OAAO,MAAMC,cAAc,GAAGN,gBAAgB,EAAa,CAAC;EAC1DO,IAAI,EAAE,gBAAgB;EAEtBC,KAAK,EAAEL,uBAAuB,EAAE;EAEhCM,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrBR,SAAS,CAAC,MAAAU,YAAA,CAAAb,IAAA,EAAAc,WAAA,CAEDL,KAAK;MAAA,SACH,CACL,oBAAoB;IACrB,IACSG,KAAK,CAElB,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
@@ -1136,6 +1136,7 @@ declare const VAppBarTitle: {
1136
1136
  ref_for?: boolean | undefined;
1137
1137
  ref_key?: string | undefined;
1138
1138
  "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
1139
+ "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
1139
1140
  'v-slots'?: {
1140
1141
  default?: false | (() => vue.VNodeChild) | undefined;
1141
1142
  text?: false | (() => vue.VNodeChild) | undefined;
@@ -1178,7 +1179,6 @@ declare const VAppBarTitle: {
1178
1179
  }>) => void) | ((vnode: vue.VNode<vue.RendererNode, vue.RendererElement, {
1179
1180
  [key: string]: any;
1180
1181
  }>) => void)[] | undefined;
1181
- "v-slot:text"?: false | (() => vue.VNodeChild) | undefined;
1182
1182
  };
1183
1183
  $attrs: {
1184
1184
  [x: string]: unknown;