vuetify 3.5.14 → 3.5.16

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 (623) hide show
  1. package/dist/json/attributes.json +1 -5
  2. package/dist/json/importMap-labs.json +4 -4
  3. package/dist/json/importMap.json +108 -108
  4. package/dist/json/tags.json +0 -1
  5. package/dist/json/web-types.json +80 -19
  6. package/dist/vuetify-labs.css +2003 -1925
  7. package/dist/vuetify-labs.d.ts +10752 -10485
  8. package/dist/vuetify-labs.esm.js +180 -155
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +180 -155
  11. package/dist/vuetify-labs.min.css +3 -3
  12. package/dist/vuetify.css +2306 -2272
  13. package/dist/vuetify.d.ts +9316 -9253
  14. package/dist/vuetify.esm.js +127 -127
  15. package/dist/vuetify.esm.js.map +1 -1
  16. package/dist/vuetify.js +127 -127
  17. package/dist/vuetify.js.map +1 -1
  18. package/dist/vuetify.min.css +3 -3
  19. package/dist/vuetify.min.js +1083 -1086
  20. package/dist/vuetify.min.js.map +1 -1
  21. package/lib/blueprints/index.mjs.map +1 -1
  22. package/lib/blueprints/md1.mjs.map +1 -1
  23. package/lib/blueprints/md2.mjs.map +1 -1
  24. package/lib/blueprints/md3.mjs.map +1 -1
  25. package/lib/components/VAlert/VAlert.mjs.map +1 -1
  26. package/lib/components/VAlert/VAlertTitle.mjs.map +1 -1
  27. package/lib/components/VAlert/index.d.mts +55 -55
  28. package/lib/components/VAlert/index.mjs.map +1 -1
  29. package/lib/components/VApp/VApp.mjs.map +1 -1
  30. package/lib/components/VApp/index.mjs.map +1 -1
  31. package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
  32. package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
  33. package/lib/components/VAppBar/VAppBarTitle.mjs.map +1 -1
  34. package/lib/components/VAppBar/index.d.mts +162 -162
  35. package/lib/components/VAppBar/index.mjs.map +1 -1
  36. package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
  37. package/lib/components/VAutocomplete/index.d.mts +609 -609
  38. package/lib/components/VAutocomplete/index.mjs.map +1 -1
  39. package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
  40. package/lib/components/VAvatar/index.d.mts +30 -30
  41. package/lib/components/VAvatar/index.mjs.map +1 -1
  42. package/lib/components/VBadge/VBadge.mjs.map +1 -1
  43. package/lib/components/VBadge/index.d.mts +58 -58
  44. package/lib/components/VBadge/index.mjs.map +1 -1
  45. package/lib/components/VBanner/VBanner.mjs.map +1 -1
  46. package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
  47. package/lib/components/VBanner/VBannerText.mjs.map +1 -1
  48. package/lib/components/VBanner/index.d.mts +50 -50
  49. package/lib/components/VBanner/index.mjs.map +1 -1
  50. package/lib/components/VBottomNavigation/VBottomNavigation.css +1 -1
  51. package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
  52. package/lib/components/VBottomNavigation/_variables.scss +1 -1
  53. package/lib/components/VBottomNavigation/index.d.mts +60 -60
  54. package/lib/components/VBottomNavigation/index.mjs.map +1 -1
  55. package/lib/components/VBottomSheet/VBottomSheet.mjs.map +1 -1
  56. package/lib/components/VBottomSheet/index.d.mts +125 -125
  57. package/lib/components/VBottomSheet/index.mjs.map +1 -1
  58. package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
  59. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
  60. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
  61. package/lib/components/VBreadcrumbs/index.d.mts +34 -34
  62. package/lib/components/VBreadcrumbs/index.mjs.map +1 -1
  63. package/lib/components/VBtn/VBtn.css +4 -0
  64. package/lib/components/VBtn/VBtn.mjs +6 -8
  65. package/lib/components/VBtn/VBtn.mjs.map +1 -1
  66. package/lib/components/VBtn/VBtn.sass +4 -0
  67. package/lib/components/VBtn/_variables.scss +1 -0
  68. package/lib/components/VBtn/index.d.mts +100 -100
  69. package/lib/components/VBtn/index.mjs.map +1 -1
  70. package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
  71. package/lib/components/VBtnGroup/index.d.mts +23 -23
  72. package/lib/components/VBtnGroup/index.mjs.map +1 -1
  73. package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
  74. package/lib/components/VBtnToggle/index.d.mts +40 -40
  75. package/lib/components/VBtnToggle/index.mjs.map +1 -1
  76. package/lib/components/VCard/VCard.mjs.map +1 -1
  77. package/lib/components/VCard/VCardActions.mjs.map +1 -1
  78. package/lib/components/VCard/VCardItem.mjs.map +1 -1
  79. package/lib/components/VCard/VCardSubtitle.mjs.map +1 -1
  80. package/lib/components/VCard/VCardText.mjs.map +1 -1
  81. package/lib/components/VCard/VCardTitle.mjs.map +1 -1
  82. package/lib/components/VCard/index.d.mts +85 -85
  83. package/lib/components/VCard/index.mjs.map +1 -1
  84. package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
  85. package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
  86. package/lib/components/VCarousel/index.d.mts +121 -121
  87. package/lib/components/VCarousel/index.mjs.map +1 -1
  88. package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
  89. package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
  90. package/lib/components/VCheckbox/index.d.mts +154 -154
  91. package/lib/components/VCheckbox/index.mjs.map +1 -1
  92. package/lib/components/VChip/VChip.mjs.map +1 -1
  93. package/lib/components/VChip/index.d.mts +86 -86
  94. package/lib/components/VChip/index.mjs.map +1 -1
  95. package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
  96. package/lib/components/VChipGroup/index.d.mts +37 -37
  97. package/lib/components/VChipGroup/index.mjs.map +1 -1
  98. package/lib/components/VCode/index.mjs.map +1 -1
  99. package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
  100. package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
  101. package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
  102. package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
  103. package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
  104. package/lib/components/VColorPicker/index.d.mts +96 -96
  105. package/lib/components/VColorPicker/index.mjs.map +1 -1
  106. package/lib/components/VColorPicker/util/index.mjs.map +1 -1
  107. package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
  108. package/lib/components/VCombobox/index.d.mts +609 -609
  109. package/lib/components/VCombobox/index.mjs.map +1 -1
  110. package/lib/components/VCounter/VCounter.mjs.map +1 -1
  111. package/lib/components/VCounter/index.d.mts +20 -20
  112. package/lib/components/VCounter/index.mjs.map +1 -1
  113. package/lib/components/VDataIterator/VDataIterator.mjs.map +1 -1
  114. package/lib/components/VDataIterator/composables/items.mjs.map +1 -1
  115. package/lib/components/VDataIterator/index.d.mts +35 -35
  116. package/lib/components/VDataIterator/index.mjs.map +1 -1
  117. package/lib/components/VDataTable/VDataTable.mjs.map +1 -1
  118. package/lib/components/VDataTable/VDataTableColumn.mjs.map +1 -1
  119. package/lib/components/VDataTable/VDataTableFooter.mjs.map +1 -1
  120. package/lib/components/VDataTable/VDataTableGroupHeaderRow.mjs.map +1 -1
  121. package/lib/components/VDataTable/VDataTableHeaders.mjs.map +1 -1
  122. package/lib/components/VDataTable/VDataTableRow.mjs.map +1 -1
  123. package/lib/components/VDataTable/VDataTableRows.mjs.map +1 -1
  124. package/lib/components/VDataTable/VDataTableServer.mjs.map +1 -1
  125. package/lib/components/VDataTable/VDataTableVirtual.mjs.map +1 -1
  126. package/lib/components/VDataTable/composables/expand.mjs.map +1 -1
  127. package/lib/components/VDataTable/composables/group.mjs.map +1 -1
  128. package/lib/components/VDataTable/composables/headers.mjs.map +1 -1
  129. package/lib/components/VDataTable/composables/items.mjs.map +1 -1
  130. package/lib/components/VDataTable/composables/options.mjs +1 -1
  131. package/lib/components/VDataTable/composables/options.mjs.map +1 -1
  132. package/lib/components/VDataTable/composables/paginate.mjs.map +1 -1
  133. package/lib/components/VDataTable/composables/select.mjs.map +1 -1
  134. package/lib/components/VDataTable/composables/sort.mjs +8 -4
  135. package/lib/components/VDataTable/composables/sort.mjs.map +1 -1
  136. package/lib/components/VDataTable/index.d.mts +217 -217
  137. package/lib/components/VDataTable/index.mjs.map +1 -1
  138. package/lib/components/VDataTable/types.mjs.map +1 -1
  139. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  140. package/lib/components/VDatePicker/VDatePickerControls.mjs.map +1 -1
  141. package/lib/components/VDatePicker/VDatePickerHeader.mjs.map +1 -1
  142. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  143. package/lib/components/VDatePicker/VDatePickerMonths.mjs.map +1 -1
  144. package/lib/components/VDatePicker/VDatePickerYears.mjs.map +1 -1
  145. package/lib/components/VDatePicker/index.d.mts +110 -110
  146. package/lib/components/VDatePicker/index.mjs.map +1 -1
  147. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.mjs.map +1 -1
  148. package/lib/components/VDatePicker/util/eventHelpers.mjs.map +1 -1
  149. package/lib/components/VDatePicker/util/index.mjs.map +1 -1
  150. package/lib/components/VDatePicker/util/isDateAllowed.mjs.map +1 -1
  151. package/lib/components/VDatePicker/util/monthChange.mjs.map +1 -1
  152. package/lib/components/VDatePicker/util/pad.mjs.map +1 -1
  153. package/lib/components/VDatePicker/util/sanitizeDateString.mjs.map +1 -1
  154. package/lib/components/VDefaultsProvider/VDefaultsProvider.mjs.map +1 -1
  155. package/lib/components/VDefaultsProvider/index.mjs.map +1 -1
  156. package/lib/components/VDialog/VDialog.mjs +23 -13
  157. package/lib/components/VDialog/VDialog.mjs.map +1 -1
  158. package/lib/components/VDialog/index.d.mts +404 -377
  159. package/lib/components/VDialog/index.mjs.map +1 -1
  160. package/lib/components/VDivider/VDivider.mjs.map +1 -1
  161. package/lib/components/VDivider/index.d.mts +11 -11
  162. package/lib/components/VDivider/index.mjs.map +1 -1
  163. package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
  164. package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
  165. package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
  166. package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
  167. package/lib/components/VExpansionPanel/index.d.mts +111 -111
  168. package/lib/components/VExpansionPanel/index.mjs.map +1 -1
  169. package/lib/components/VField/VField.mjs.map +1 -1
  170. package/lib/components/VField/VFieldLabel.mjs.map +1 -1
  171. package/lib/components/VField/index.d.mts +46 -46
  172. package/lib/components/VField/index.mjs.map +1 -1
  173. package/lib/components/VFileInput/VFileInput.mjs +2 -4
  174. package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
  175. package/lib/components/VFileInput/index.d.mts +199 -199
  176. package/lib/components/VFileInput/index.mjs.map +1 -1
  177. package/lib/components/VFooter/VFooter.mjs.map +1 -1
  178. package/lib/components/VFooter/index.d.mts +50 -50
  179. package/lib/components/VFooter/index.mjs.map +1 -1
  180. package/lib/components/VForm/VForm.mjs.map +1 -1
  181. package/lib/components/VForm/index.d.mts +9 -9
  182. package/lib/components/VForm/index.mjs.map +1 -1
  183. package/lib/components/VGrid/VCol.mjs.map +1 -1
  184. package/lib/components/VGrid/VContainer.mjs.map +1 -1
  185. package/lib/components/VGrid/VRow.mjs.map +1 -1
  186. package/lib/components/VGrid/VSpacer.mjs.map +1 -1
  187. package/lib/components/VGrid/index.d.mts +142 -142
  188. package/lib/components/VGrid/index.mjs.map +1 -1
  189. package/lib/components/VHover/VHover.mjs.map +1 -1
  190. package/lib/components/VHover/index.mjs.map +1 -1
  191. package/lib/components/VIcon/VIcon.mjs.map +1 -1
  192. package/lib/components/VIcon/index.d.mts +24 -24
  193. package/lib/components/VIcon/index.mjs.map +1 -1
  194. package/lib/components/VImg/VImg.mjs.map +1 -1
  195. package/lib/components/VImg/index.d.mts +92 -92
  196. package/lib/components/VImg/index.mjs.map +1 -1
  197. package/lib/components/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -1
  198. package/lib/components/VInfiniteScroll/index.d.mts +22 -22
  199. package/lib/components/VInfiniteScroll/index.mjs.map +1 -1
  200. package/lib/components/VInput/InputIcon.mjs.map +1 -1
  201. package/lib/components/VInput/VInput.mjs.map +1 -1
  202. package/lib/components/VInput/index.d.mts +41 -41
  203. package/lib/components/VInput/index.mjs.map +1 -1
  204. package/lib/components/VItemGroup/VItem.mjs.map +1 -1
  205. package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
  206. package/lib/components/VItemGroup/index.d.mts +17 -17
  207. package/lib/components/VItemGroup/index.mjs.map +1 -1
  208. package/lib/components/VKbd/index.mjs.map +1 -1
  209. package/lib/components/VLabel/VLabel.mjs.map +1 -1
  210. package/lib/components/VLabel/index.d.mts +8 -8
  211. package/lib/components/VLabel/index.mjs.map +1 -1
  212. package/lib/components/VLayout/VLayout.mjs.map +1 -1
  213. package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
  214. package/lib/components/VLayout/index.d.mts +24 -24
  215. package/lib/components/VLayout/index.mjs.map +1 -1
  216. package/lib/components/VLazy/VLazy.mjs.map +1 -1
  217. package/lib/components/VLazy/index.d.mts +31 -31
  218. package/lib/components/VLazy/index.mjs.map +1 -1
  219. package/lib/components/VList/VList.mjs.map +1 -1
  220. package/lib/components/VList/VListChildren.mjs.map +1 -1
  221. package/lib/components/VList/VListGroup.mjs.map +1 -1
  222. package/lib/components/VList/VListImg.mjs.map +1 -1
  223. package/lib/components/VList/VListItem.mjs.map +1 -1
  224. package/lib/components/VList/VListItemAction.mjs.map +1 -1
  225. package/lib/components/VList/VListItemMedia.mjs.map +1 -1
  226. package/lib/components/VList/VListItemSubtitle.mjs.map +1 -1
  227. package/lib/components/VList/VListItemTitle.mjs.map +1 -1
  228. package/lib/components/VList/VListSubheader.mjs.map +1 -1
  229. package/lib/components/VList/index.d.mts +172 -172
  230. package/lib/components/VList/index.mjs.map +1 -1
  231. package/lib/components/VList/list.mjs.map +1 -1
  232. package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
  233. package/lib/components/VLocaleProvider/index.d.mts +7 -7
  234. package/lib/components/VLocaleProvider/index.mjs.map +1 -1
  235. package/lib/components/VMain/VMain.mjs.map +1 -1
  236. package/lib/components/VMain/index.d.mts +2 -2
  237. package/lib/components/VMain/index.mjs.map +1 -1
  238. package/lib/components/VMenu/VMenu.mjs +2 -1
  239. package/lib/components/VMenu/VMenu.mjs.map +1 -1
  240. package/lib/components/VMenu/index.d.mts +438 -423
  241. package/lib/components/VMenu/index.mjs.map +1 -1
  242. package/lib/components/VMenu/shared.mjs.map +1 -1
  243. package/lib/components/VMessages/VMessages.mjs.map +1 -1
  244. package/lib/components/VMessages/index.d.mts +20 -20
  245. package/lib/components/VMessages/index.mjs.map +1 -1
  246. package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
  247. package/lib/components/VNavigationDrawer/index.d.mts +63 -63
  248. package/lib/components/VNavigationDrawer/index.mjs.map +1 -1
  249. package/lib/components/VNavigationDrawer/sticky.mjs.map +1 -1
  250. package/lib/components/VNavigationDrawer/touch.mjs.map +1 -1
  251. package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
  252. package/lib/components/VNoSsr/index.mjs.map +1 -1
  253. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  254. package/lib/components/VOtpInput/index.d.mts +88 -88
  255. package/lib/components/VOtpInput/index.mjs.map +1 -1
  256. package/lib/components/VOverflowBtn/VOverflowBtn.mjs.map +1 -1
  257. package/lib/components/VOverflowBtn/index.mjs.map +1 -1
  258. package/lib/components/VOverlay/VOverlay.mjs +5 -0
  259. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  260. package/lib/components/VOverlay/index.d.mts +110 -104
  261. package/lib/components/VOverlay/index.mjs.map +1 -1
  262. package/lib/components/VOverlay/locationStrategies.mjs.map +1 -1
  263. package/lib/components/VOverlay/requestNewFrame.mjs.map +1 -1
  264. package/lib/components/VOverlay/scrollStrategies.mjs.map +1 -1
  265. package/lib/components/VOverlay/useActivator.mjs.map +1 -1
  266. package/lib/components/VOverlay/util/point.mjs.map +1 -1
  267. package/lib/components/VPagination/VPagination.mjs.map +1 -1
  268. package/lib/components/VPagination/index.d.mts +55 -55
  269. package/lib/components/VPagination/index.mjs.map +1 -1
  270. package/lib/components/VParallax/VParallax.mjs.map +1 -1
  271. package/lib/components/VParallax/index.d.mts +7 -7
  272. package/lib/components/VParallax/index.mjs.map +1 -1
  273. package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
  274. package/lib/components/VProgressCircular/index.d.mts +24 -24
  275. package/lib/components/VProgressCircular/index.mjs.map +1 -1
  276. package/lib/components/VProgressLinear/VProgressLinear.mjs +1 -11
  277. package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
  278. package/lib/components/VProgressLinear/index.d.mts +41 -62
  279. package/lib/components/VProgressLinear/index.mjs.map +1 -1
  280. package/lib/components/VRadio/VRadio.mjs.map +1 -1
  281. package/lib/components/VRadio/index.d.mts +41 -41
  282. package/lib/components/VRadio/index.mjs.map +1 -1
  283. package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
  284. package/lib/components/VRadioGroup/index.d.mts +85 -85
  285. package/lib/components/VRadioGroup/index.mjs.map +1 -1
  286. package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
  287. package/lib/components/VRangeSlider/index.d.mts +82 -82
  288. package/lib/components/VRangeSlider/index.mjs.map +1 -1
  289. package/lib/components/VRating/VRating.mjs.map +1 -1
  290. package/lib/components/VRating/index.d.mts +22 -22
  291. package/lib/components/VRating/index.mjs.map +1 -1
  292. package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
  293. package/lib/components/VResponsive/index.d.mts +23 -23
  294. package/lib/components/VResponsive/index.mjs.map +1 -1
  295. package/lib/components/VSelect/VSelect.mjs +1 -1
  296. package/lib/components/VSelect/VSelect.mjs.map +1 -1
  297. package/lib/components/VSelect/index.d.mts +609 -609
  298. package/lib/components/VSelect/index.mjs.map +1 -1
  299. package/lib/components/VSelect/useScrolling.mjs.map +1 -1
  300. package/lib/components/VSelectionControl/VSelectionControl.mjs +1 -1
  301. package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
  302. package/lib/components/VSelectionControl/index.d.mts +43 -43
  303. package/lib/components/VSelectionControl/index.mjs.map +1 -1
  304. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
  305. package/lib/components/VSelectionControlGroup/index.d.mts +39 -39
  306. package/lib/components/VSelectionControlGroup/index.mjs.map +1 -1
  307. package/lib/components/VSheet/VSheet.mjs.map +1 -1
  308. package/lib/components/VSheet/index.d.mts +34 -34
  309. package/lib/components/VSheet/index.mjs.map +1 -1
  310. package/lib/components/VSkeletonLoader/VSkeletonLoader.mjs.map +1 -1
  311. package/lib/components/VSkeletonLoader/index.d.mts +17 -17
  312. package/lib/components/VSkeletonLoader/index.mjs.map +1 -1
  313. package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
  314. package/lib/components/VSlideGroup/VSlideGroupItem.mjs.map +1 -1
  315. package/lib/components/VSlideGroup/helpers.mjs.map +1 -1
  316. package/lib/components/VSlideGroup/index.d.mts +24 -24
  317. package/lib/components/VSlideGroup/index.mjs.map +1 -1
  318. package/lib/components/VSlider/VSlider.mjs.map +1 -1
  319. package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
  320. package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
  321. package/lib/components/VSlider/index.d.mts +75 -75
  322. package/lib/components/VSlider/index.mjs.map +1 -1
  323. package/lib/components/VSlider/slider.mjs.map +1 -1
  324. package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
  325. package/lib/components/VSnackbar/index.d.mts +455 -440
  326. package/lib/components/VSnackbar/index.mjs.map +1 -1
  327. package/lib/components/VSparkline/VSparkline.mjs.map +1 -1
  328. package/lib/components/VSparkline/helpers/core.mjs.map +1 -1
  329. package/lib/components/VSparkline/helpers/math.mjs.map +1 -1
  330. package/lib/components/VSparkline/helpers/path.mjs.map +1 -1
  331. package/lib/components/VSparkline/index.mjs.map +1 -1
  332. package/lib/components/VSpeedDial/VSpeedDial.mjs.map +1 -1
  333. package/lib/components/VSpeedDial/index.mjs.map +1 -1
  334. package/lib/components/VStepper/VStepper.mjs.map +1 -1
  335. package/lib/components/VStepper/VStepperActions.mjs.map +1 -1
  336. package/lib/components/VStepper/VStepperHeader.mjs.map +1 -1
  337. package/lib/components/VStepper/VStepperItem.mjs.map +1 -1
  338. package/lib/components/VStepper/VStepperWindow.mjs.map +1 -1
  339. package/lib/components/VStepper/VStepperWindowItem.mjs.map +1 -1
  340. package/lib/components/VStepper/index.d.mts +115 -115
  341. package/lib/components/VStepper/index.mjs.map +1 -1
  342. package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
  343. package/lib/components/VSwitch/index.d.mts +88 -88
  344. package/lib/components/VSwitch/index.mjs.map +1 -1
  345. package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
  346. package/lib/components/VSystemBar/index.d.mts +39 -39
  347. package/lib/components/VSystemBar/index.mjs.map +1 -1
  348. package/lib/components/VTable/VTable.mjs.map +1 -1
  349. package/lib/components/VTable/index.d.mts +4 -4
  350. package/lib/components/VTable/index.mjs.map +1 -1
  351. package/lib/components/VTabs/VTab.mjs.map +1 -1
  352. package/lib/components/VTabs/VTabs.mjs.map +1 -1
  353. package/lib/components/VTabs/index.d.mts +437 -437
  354. package/lib/components/VTabs/index.mjs.map +1 -1
  355. package/lib/components/VTabs/shared.mjs.map +1 -1
  356. package/lib/components/VTextField/VTextField.mjs.map +1 -1
  357. package/lib/components/VTextField/index.d.mts +353 -353
  358. package/lib/components/VTextField/index.mjs.map +1 -1
  359. package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
  360. package/lib/components/VTextarea/index.d.mts +230 -230
  361. package/lib/components/VTextarea/index.mjs.map +1 -1
  362. package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
  363. package/lib/components/VThemeProvider/index.mjs.map +1 -1
  364. package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
  365. package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
  366. package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
  367. package/lib/components/VTimeline/index.d.mts +26 -26
  368. package/lib/components/VTimeline/index.mjs.map +1 -1
  369. package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
  370. package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
  371. package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
  372. package/lib/components/VToolbar/index.d.mts +53 -53
  373. package/lib/components/VToolbar/index.mjs.map +1 -1
  374. package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
  375. package/lib/components/VTooltip/index.d.mts +469 -454
  376. package/lib/components/VTooltip/index.mjs.map +1 -1
  377. package/lib/components/VTreeview/VTreeview.mjs.map +1 -1
  378. package/lib/components/VTreeview/VTreeviewNode.mjs.map +1 -1
  379. package/lib/components/VTreeview/index.mjs.map +1 -1
  380. package/lib/components/VTreeview/util/filterTreeItems.mjs.map +1 -1
  381. package/lib/components/VValidation/VValidation.mjs.map +1 -1
  382. package/lib/components/VValidation/index.d.mts +19 -19
  383. package/lib/components/VValidation/index.mjs.map +1 -1
  384. package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -1
  385. package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -1
  386. package/lib/components/VVirtualScroll/index.d.mts +10 -10
  387. package/lib/components/VVirtualScroll/index.mjs.map +1 -1
  388. package/lib/components/VWindow/VWindow.mjs.map +1 -1
  389. package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
  390. package/lib/components/VWindow/index.d.mts +31 -31
  391. package/lib/components/VWindow/index.mjs.map +1 -1
  392. package/lib/components/index.d.mts +9409 -9346
  393. package/lib/components/index.mjs.map +1 -1
  394. package/lib/components/transitions/createTransition.mjs.map +1 -1
  395. package/lib/components/transitions/dialog-transition.mjs.map +1 -1
  396. package/lib/components/transitions/expand-transition.mjs.map +1 -1
  397. package/lib/components/transitions/index.d.mts +200 -200
  398. package/lib/components/transitions/index.mjs.map +1 -1
  399. package/lib/composables/border.mjs.map +1 -1
  400. package/lib/composables/calendar.mjs +1 -1
  401. package/lib/composables/calendar.mjs.map +1 -1
  402. package/lib/composables/color.mjs.map +1 -1
  403. package/lib/composables/component.mjs.map +1 -1
  404. package/lib/composables/date/DateAdapter.mjs.map +1 -1
  405. package/lib/composables/date/adapters/vuetify.mjs +7 -6
  406. package/lib/composables/date/adapters/vuetify.mjs.map +1 -1
  407. package/lib/composables/date/date.mjs.map +1 -1
  408. package/lib/composables/date/index.mjs.map +1 -1
  409. package/lib/composables/defaults.mjs.map +1 -1
  410. package/lib/composables/delay.mjs.map +1 -1
  411. package/lib/composables/density.mjs.map +1 -1
  412. package/lib/composables/dimensions.mjs.map +1 -1
  413. package/lib/composables/directiveComponent.mjs.map +1 -1
  414. package/lib/composables/display.mjs.map +1 -1
  415. package/lib/composables/elevation.mjs.map +1 -1
  416. package/lib/composables/filter.mjs.map +1 -1
  417. package/lib/composables/focus.mjs.map +1 -1
  418. package/lib/composables/form.mjs.map +1 -1
  419. package/lib/composables/forwardRefs.mjs.map +1 -1
  420. package/lib/composables/goto.mjs.map +1 -1
  421. package/lib/composables/group.mjs.map +1 -1
  422. package/lib/composables/hydration.mjs.map +1 -1
  423. package/lib/composables/icons.mjs +2 -2
  424. package/lib/composables/icons.mjs.map +1 -1
  425. package/lib/composables/index.mjs.map +1 -1
  426. package/lib/composables/intersectionObserver.mjs.map +1 -1
  427. package/lib/composables/layout.mjs.map +1 -1
  428. package/lib/composables/lazy.mjs.map +1 -1
  429. package/lib/composables/list-items.mjs.map +1 -1
  430. package/lib/composables/loader.mjs.map +1 -1
  431. package/lib/composables/locale.mjs.map +1 -1
  432. package/lib/composables/location.mjs.map +1 -1
  433. package/lib/composables/mutationObserver.mjs.map +1 -1
  434. package/lib/composables/nested/activeStrategies.mjs.map +1 -1
  435. package/lib/composables/nested/nested.mjs.map +1 -1
  436. package/lib/composables/nested/openStrategies.mjs.map +1 -1
  437. package/lib/composables/nested/selectStrategies.mjs.map +1 -1
  438. package/lib/composables/position.mjs.map +1 -1
  439. package/lib/composables/proxiedModel.mjs.map +1 -1
  440. package/lib/composables/refs.mjs.map +1 -1
  441. package/lib/composables/resizeObserver.mjs.map +1 -1
  442. package/lib/composables/rounded.mjs +1 -1
  443. package/lib/composables/rounded.mjs.map +1 -1
  444. package/lib/composables/router.mjs +1 -1
  445. package/lib/composables/router.mjs.map +1 -1
  446. package/lib/composables/scopeId.mjs.map +1 -1
  447. package/lib/composables/scroll.mjs.map +1 -1
  448. package/lib/composables/selectLink.mjs.map +1 -1
  449. package/lib/composables/size.mjs.map +1 -1
  450. package/lib/composables/ssrBoot.mjs.map +1 -1
  451. package/lib/composables/stack.mjs.map +1 -1
  452. package/lib/composables/tag.mjs.map +1 -1
  453. package/lib/composables/teleport.mjs.map +1 -1
  454. package/lib/composables/theme.mjs.map +1 -1
  455. package/lib/composables/toggleScope.mjs.map +1 -1
  456. package/lib/composables/touch.mjs.map +1 -1
  457. package/lib/composables/transition.mjs.map +1 -1
  458. package/lib/composables/validation.mjs.map +1 -1
  459. package/lib/composables/variant.mjs.map +1 -1
  460. package/lib/composables/virtual.mjs.map +1 -1
  461. package/lib/directives/click-outside/index.mjs.map +1 -1
  462. package/lib/directives/color/index.mjs.map +1 -1
  463. package/lib/directives/index.mjs.map +1 -1
  464. package/lib/directives/intersect/index.mjs.map +1 -1
  465. package/lib/directives/mutate/index.mjs.map +1 -1
  466. package/lib/directives/resize/index.mjs.map +1 -1
  467. package/lib/directives/ripple/index.mjs.map +1 -1
  468. package/lib/directives/scroll/index.mjs.map +1 -1
  469. package/lib/directives/touch/index.mjs.map +1 -1
  470. package/lib/entry-bundler.mjs +1 -1
  471. package/lib/entry-bundler.mjs.map +1 -1
  472. package/lib/framework.mjs +1 -1
  473. package/lib/framework.mjs.map +1 -1
  474. package/lib/iconsets/fa-svg.mjs.map +1 -1
  475. package/lib/iconsets/fa.mjs.map +1 -1
  476. package/lib/iconsets/fa4.mjs.map +1 -1
  477. package/lib/iconsets/md.mjs.map +1 -1
  478. package/lib/iconsets/mdi-svg.mjs.map +1 -1
  479. package/lib/iconsets/mdi.mjs.map +1 -1
  480. package/lib/index.d.mts +36 -36
  481. package/lib/labs/VCalendar/VCalendar.mjs +15 -11
  482. package/lib/labs/VCalendar/VCalendar.mjs.map +1 -1
  483. package/lib/labs/VCalendar/VCalendarDay.mjs.map +1 -1
  484. package/lib/labs/VCalendar/VCalendarEvent.mjs.map +1 -1
  485. package/lib/labs/VCalendar/VCalendarHeader.mjs.map +1 -1
  486. package/lib/labs/VCalendar/VCalendarInterval.mjs.map +1 -1
  487. package/lib/labs/VCalendar/VCalendarIntervalEvent.mjs.map +1 -1
  488. package/lib/labs/VCalendar/VCalendarMonthDay.mjs +12 -4
  489. package/lib/labs/VCalendar/VCalendarMonthDay.mjs.map +1 -1
  490. package/lib/labs/VCalendar/index.d.mts +200 -52
  491. package/lib/labs/VCalendar/index.mjs.map +1 -1
  492. package/lib/labs/VConfirmEdit/VConfirmEdit.mjs.map +1 -1
  493. package/lib/labs/VConfirmEdit/__test__/VConfirmEdit.spec.cy.mjs.map +1 -1
  494. package/lib/labs/VConfirmEdit/index.d.mts +2 -2
  495. package/lib/labs/VConfirmEdit/index.mjs.map +1 -1
  496. package/lib/labs/VEmptyState/VEmptyState.css +7 -2
  497. package/lib/labs/VEmptyState/VEmptyState.mjs.map +1 -1
  498. package/lib/labs/VEmptyState/VEmptyState.sass +5 -0
  499. package/lib/labs/VEmptyState/_variables.scss +9 -6
  500. package/lib/labs/VEmptyState/index.d.mts +47 -47
  501. package/lib/labs/VEmptyState/index.mjs.map +1 -1
  502. package/lib/labs/VFab/VFab.mjs.map +1 -1
  503. package/lib/labs/VFab/index.d.mts +223 -223
  504. package/lib/labs/VFab/index.mjs.map +1 -1
  505. package/lib/labs/VNumberInput/VNumberInput.mjs.map +1 -1
  506. package/lib/labs/VNumberInput/index.d.mts +108 -108
  507. package/lib/labs/VNumberInput/index.mjs.map +1 -1
  508. package/lib/labs/VPicker/VPicker.mjs.map +1 -1
  509. package/lib/labs/VPicker/VPickerTitle.mjs.map +1 -1
  510. package/lib/labs/VPicker/index.d.mts +45 -45
  511. package/lib/labs/VPicker/index.mjs.map +1 -1
  512. package/lib/labs/VSparkline/VBarline.mjs.map +1 -1
  513. package/lib/labs/VSparkline/VSparkline.mjs.map +1 -1
  514. package/lib/labs/VSparkline/VTrendline.mjs.map +1 -1
  515. package/lib/labs/VSparkline/index.d.mts +38 -38
  516. package/lib/labs/VSparkline/index.mjs.map +1 -1
  517. package/lib/labs/VSparkline/util/line.mjs.map +1 -1
  518. package/lib/labs/VSparkline/util/path.mjs.map +1 -1
  519. package/lib/labs/VSpeedDial/VSpeedDial.css +39 -0
  520. package/lib/labs/VSpeedDial/VSpeedDial.mjs +19 -9
  521. package/lib/labs/VSpeedDial/VSpeedDial.mjs.map +1 -1
  522. package/lib/labs/VSpeedDial/VSpeedDial.sass +22 -0
  523. package/lib/labs/VSpeedDial/index.d.mts +297 -241
  524. package/lib/labs/VSpeedDial/index.mjs.map +1 -1
  525. package/lib/labs/VTimePicker/SelectingTimes.mjs.map +1 -1
  526. package/lib/labs/VTimePicker/VTimePicker.mjs +2 -2
  527. package/lib/labs/VTimePicker/VTimePicker.mjs.map +1 -1
  528. package/lib/labs/VTimePicker/VTimePickerClock.mjs +8 -5
  529. package/lib/labs/VTimePicker/VTimePickerClock.mjs.map +1 -1
  530. package/lib/labs/VTimePicker/VTimePickerControls.mjs.map +1 -1
  531. package/lib/labs/VTimePicker/index.d.mts +117 -117
  532. package/lib/labs/VTimePicker/index.mjs.map +1 -1
  533. package/lib/labs/VTreeview/VTreeview.mjs.map +1 -1
  534. package/lib/labs/VTreeview/VTreeviewChildren.mjs.map +1 -1
  535. package/lib/labs/VTreeview/VTreeviewGroup.mjs.map +1 -1
  536. package/lib/labs/VTreeview/VTreeviewItem.mjs.map +1 -1
  537. package/lib/labs/VTreeview/index.d.mts +201 -201
  538. package/lib/labs/VTreeview/index.mjs.map +1 -1
  539. package/lib/labs/VTreeview/shared.mjs.map +1 -1
  540. package/lib/labs/allComponents.mjs.map +1 -1
  541. package/lib/labs/components.d.mts +1251 -1047
  542. package/lib/labs/components.mjs.map +1 -1
  543. package/lib/labs/entry-bundler.mjs.map +1 -1
  544. package/lib/labs/index.mjs.map +1 -1
  545. package/lib/locale/adapters/vue-i18n.mjs.map +1 -1
  546. package/lib/locale/adapters/vuetify.mjs.map +1 -1
  547. package/lib/locale/af.mjs.map +1 -1
  548. package/lib/locale/ar.mjs.map +1 -1
  549. package/lib/locale/az.mjs.map +1 -1
  550. package/lib/locale/bg.mjs.map +1 -1
  551. package/lib/locale/ca.mjs.map +1 -1
  552. package/lib/locale/ckb.mjs.map +1 -1
  553. package/lib/locale/cs.mjs.map +1 -1
  554. package/lib/locale/da.mjs.map +1 -1
  555. package/lib/locale/de.mjs.map +1 -1
  556. package/lib/locale/el.mjs.map +1 -1
  557. package/lib/locale/en.mjs.map +1 -1
  558. package/lib/locale/es.mjs.map +1 -1
  559. package/lib/locale/et.mjs.map +1 -1
  560. package/lib/locale/fa.mjs.map +1 -1
  561. package/lib/locale/fi.mjs.map +1 -1
  562. package/lib/locale/fr.mjs.map +1 -1
  563. package/lib/locale/he.mjs.map +1 -1
  564. package/lib/locale/hr.mjs.map +1 -1
  565. package/lib/locale/hu.mjs.map +1 -1
  566. package/lib/locale/id.mjs.map +1 -1
  567. package/lib/locale/index.mjs.map +1 -1
  568. package/lib/locale/it.mjs.map +1 -1
  569. package/lib/locale/ja.mjs.map +1 -1
  570. package/lib/locale/km.mjs.map +1 -1
  571. package/lib/locale/ko.mjs.map +1 -1
  572. package/lib/locale/lt.mjs +25 -25
  573. package/lib/locale/lt.mjs.map +1 -1
  574. package/lib/locale/lv.mjs.map +1 -1
  575. package/lib/locale/nl.mjs.map +1 -1
  576. package/lib/locale/no.mjs.map +1 -1
  577. package/lib/locale/pl.mjs.map +1 -1
  578. package/lib/locale/pt.mjs.map +1 -1
  579. package/lib/locale/ro.mjs.map +1 -1
  580. package/lib/locale/ru.mjs.map +1 -1
  581. package/lib/locale/sk.mjs.map +1 -1
  582. package/lib/locale/sl.mjs +30 -30
  583. package/lib/locale/sl.mjs.map +1 -1
  584. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  585. package/lib/locale/sr-Latn.mjs.map +1 -1
  586. package/lib/locale/sv.mjs.map +1 -1
  587. package/lib/locale/th.mjs.map +1 -1
  588. package/lib/locale/tr.mjs.map +1 -1
  589. package/lib/locale/uk.mjs.map +1 -1
  590. package/lib/locale/vi.mjs.map +1 -1
  591. package/lib/locale/zh-Hans.mjs.map +1 -1
  592. package/lib/locale/zh-Hant.mjs.map +1 -1
  593. package/lib/services/goto/easing-patterns.mjs.map +1 -1
  594. package/lib/services/goto/index.mjs.map +1 -1
  595. package/lib/services/goto/util.mjs.map +1 -1
  596. package/lib/styles/main.css +30 -0
  597. package/lib/styles/settings/_variables.scss +1 -0
  598. package/lib/util/anchor.mjs.map +1 -1
  599. package/lib/util/animation.mjs.map +1 -1
  600. package/lib/util/bindProps.mjs.map +1 -1
  601. package/lib/util/box.mjs.map +1 -1
  602. package/lib/util/color/APCA.mjs.map +1 -1
  603. package/lib/util/color/transformCIELAB.mjs.map +1 -1
  604. package/lib/util/color/transformSRGB.mjs.map +1 -1
  605. package/lib/util/colorUtils.mjs.map +1 -1
  606. package/lib/util/colors.mjs.map +1 -1
  607. package/lib/util/console.mjs.map +1 -1
  608. package/lib/util/createSimpleFunctional.mjs.map +1 -1
  609. package/lib/util/defineComponent.mjs.map +1 -1
  610. package/lib/util/dom.mjs.map +1 -1
  611. package/lib/util/easing.mjs.map +1 -1
  612. package/lib/util/events.mjs.map +1 -1
  613. package/lib/util/getCurrentInstance.mjs.map +1 -1
  614. package/lib/util/getScrollParent.mjs.map +1 -1
  615. package/lib/util/globals.mjs.map +1 -1
  616. package/lib/util/helpers.mjs +8 -16
  617. package/lib/util/helpers.mjs.map +1 -1
  618. package/lib/util/index.mjs.map +1 -1
  619. package/lib/util/injectSelf.mjs.map +1 -1
  620. package/lib/util/isFixedPosition.mjs.map +1 -1
  621. package/lib/util/propsFactory.mjs.map +1 -1
  622. package/lib/util/useRender.mjs.map +1 -1
  623. package/package.json +25 -25
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["VNumberInput"],"sources":["../../../src/labs/VNumberInput/index.ts"],"sourcesContent":["export { VNumberInput } from './VNumberInput'\n"],"mappings":"SAASA,YAAY"}
1
+ {"version":3,"file":"index.mjs","names":["VNumberInput"],"sources":["../../../src/labs/VNumberInput/index.ts"],"sourcesContent":["export { VNumberInput } from './VNumberInput'\n"],"mappings":"SAASA,YAAY","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VPicker.mjs","names":["VPickerTitle","VDefaultsProvider","makeVSheetProps","VSheet","useBackgroundColor","toRef","genericComponent","propsFactory","useRender","makeVPickerProps","bgColor","String","landscape","Boolean","title","hideHeader","VPicker","name","props","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","sheetProps","filterProps","hasTitle","_createVNode","_mergeProps","actions","class","style","default","value","header","VBtn","slim","variant"],"sources":["../../../src/labs/VPicker/VPicker.tsx"],"sourcesContent":["// Styles\nimport './VPicker.sass'\n\n// Components\nimport { VPickerTitle } from './VPickerTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VPickerSlots = {\n header: never\n default: never\n actions: never\n title: never\n}\n\nexport const makeVPickerProps = propsFactory({\n bgColor: String,\n landscape: Boolean,\n title: String,\n hideHeader: Boolean,\n\n ...makeVSheetProps(),\n}, 'VPicker')\n\nexport const VPicker = genericComponent<VPickerSlots>()({\n name: 'VPicker',\n\n props: makeVPickerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n const hasTitle = !!(props.title || slots.title)\n\n return (\n <VSheet\n { ...sheetProps }\n color={ props.bgColor }\n class={[\n 'v-picker',\n {\n 'v-picker--landscape': props.landscape,\n 'v-picker--with-actions': !!slots.actions,\n },\n props.class,\n ]}\n style={ props.style }\n >\n { !props.hideHeader && (\n <div\n key=\"header\"\n class={[\n backgroundColorClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n ]}\n >\n { hasTitle && (\n <VPickerTitle key=\"picker-title\">\n { slots.title?.() ?? props.title }\n </VPickerTitle>\n )}\n\n { slots.header && (\n <div class=\"v-picker__header\">\n { slots.header() }\n </div>\n )}\n </div>\n )}\n\n <div class=\"v-picker__body\">\n { slots.default?.() }\n </div>\n\n { slots.actions && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n slim: true,\n variant: 'text',\n },\n }}\n >\n <div class=\"v-picker__actions\">\n { slots.actions() }\n </div>\n </VDefaultsProvider>\n )}\n </VSheet>\n )\n })\n\n return {}\n },\n})\n\nexport type VPicker = InstanceType<typeof VPicker>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY;AAAA,SACZC,iBAAiB;AAAA,SACjBC,eAAe,EAAEC,MAAM,8CAEhC;AAAA,SACSC,kBAAkB,uCAE3B;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAQA,OAAO,MAAMC,gBAAgB,GAAGF,YAAY,CAAC;EAC3CG,OAAO,EAAEC,MAAM;EACfC,SAAS,EAAEC,OAAO;EAClBC,KAAK,EAAEH,MAAM;EACbI,UAAU,EAAEF,OAAO;EAEnB,GAAGX,eAAe,CAAC;AACrB,CAAC,EAAE,SAAS,CAAC;AAEb,OAAO,MAAMc,OAAO,GAAGV,gBAAgB,CAAe,CAAC,CAAC;EACtDW,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAET,gBAAgB,CAAC,CAAC;EAEzBU,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,sBAAsB;MAAEC;IAAsB,CAAC,GAAGnB,kBAAkB,CAACC,KAAK,CAACa,KAAK,EAAE,OAAO,CAAC,CAAC;IACnGV,SAAS,CAAC,MAAM;MACd,MAAMgB,UAAU,GAAGrB,MAAM,CAACsB,WAAW,CAACP,KAAK,CAAC;MAC5C,MAAMQ,QAAQ,GAAG,CAAC,EAAER,KAAK,CAACJ,KAAK,IAAIO,KAAK,CAACP,KAAK,CAAC;MAE/C,OAAAa,YAAA,CAAAxB,MAAA,EAAAyB,WAAA,CAESJ,UAAU;QAAA,SACPN,KAAK,CAACR,OAAO;QAAA,SACd,CACL,UAAU,EACV;UACE,qBAAqB,EAAEQ,KAAK,CAACN,SAAS;UACtC,wBAAwB,EAAE,CAAC,CAACS,KAAK,CAACQ;QACpC,CAAC,EACDX,KAAK,CAACY,KAAK,CACZ;QAAA,SACOZ,KAAK,CAACa;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjB,CAACd,KAAK,CAACH,UAAU,IAAAY,YAAA;UAAA;UAAA,SAGR,CACLL,sBAAsB,CAACW,KAAK,CAC7B;UAAA,SACM,CACLV,qBAAqB,CAACU,KAAK;QAC5B,IAECP,QAAQ,IAAAC,YAAA,CAAA3B,YAAA;UAAA;QAAA;UAAAgC,OAAA,EAAAA,CAAA,MAEJX,KAAK,CAACP,KAAK,GAAG,CAAC,IAAII,KAAK,CAACJ,KAAK;QAAA,EAEnC,EAECO,KAAK,CAACa,MAAM,IAAAP,YAAA;UAAA;QAAA,IAERN,KAAK,CAACa,MAAM,CAAC,CAAC,EAEnB,EAEJ,EAAAP,YAAA;UAAA;QAAA,IAGGN,KAAK,CAACW,OAAO,GAAG,CAAC,IAGnBX,KAAK,CAACQ,OAAO,IAAAF,YAAA,CAAA1B,iBAAA;UAAA,YAED;YACRkC,IAAI,EAAE;cACJC,IAAI,EAAE,IAAI;cACVC,OAAO,EAAE;YACX;UACF;QAAC;UAAAL,OAAA,EAAAA,CAAA,MAAAL,YAAA;YAAA;UAAA,IAGGN,KAAK,CAACQ,OAAO,CAAC,CAAC;QAAA,EAGtB;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VPicker.mjs","names":["VPickerTitle","VDefaultsProvider","makeVSheetProps","VSheet","useBackgroundColor","toRef","genericComponent","propsFactory","useRender","makeVPickerProps","bgColor","String","landscape","Boolean","title","hideHeader","VPicker","name","props","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","sheetProps","filterProps","hasTitle","_createVNode","_mergeProps","actions","class","style","default","value","header","VBtn","slim","variant"],"sources":["../../../src/labs/VPicker/VPicker.tsx"],"sourcesContent":["// Styles\nimport './VPicker.sass'\n\n// Components\nimport { VPickerTitle } from './VPickerTitle'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVSheetProps, VSheet } from '@/components/VSheet/VSheet'\n\n// Composables\nimport { useBackgroundColor } from '@/composables/color'\n\n// Utilities\nimport { toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VPickerSlots = {\n header: never\n default: never\n actions: never\n title: never\n}\n\nexport const makeVPickerProps = propsFactory({\n bgColor: String,\n landscape: Boolean,\n title: String,\n hideHeader: Boolean,\n\n ...makeVSheetProps(),\n}, 'VPicker')\n\nexport const VPicker = genericComponent<VPickerSlots>()({\n name: 'VPicker',\n\n props: makeVPickerProps(),\n\n setup (props, { slots }) {\n const { backgroundColorClasses, backgroundColorStyles } = useBackgroundColor(toRef(props, 'color'))\n useRender(() => {\n const sheetProps = VSheet.filterProps(props)\n const hasTitle = !!(props.title || slots.title)\n\n return (\n <VSheet\n { ...sheetProps }\n color={ props.bgColor }\n class={[\n 'v-picker',\n {\n 'v-picker--landscape': props.landscape,\n 'v-picker--with-actions': !!slots.actions,\n },\n props.class,\n ]}\n style={ props.style }\n >\n { !props.hideHeader && (\n <div\n key=\"header\"\n class={[\n backgroundColorClasses.value,\n ]}\n style={[\n backgroundColorStyles.value,\n ]}\n >\n { hasTitle && (\n <VPickerTitle key=\"picker-title\">\n { slots.title?.() ?? props.title }\n </VPickerTitle>\n )}\n\n { slots.header && (\n <div class=\"v-picker__header\">\n { slots.header() }\n </div>\n )}\n </div>\n )}\n\n <div class=\"v-picker__body\">\n { slots.default?.() }\n </div>\n\n { slots.actions && (\n <VDefaultsProvider\n defaults={{\n VBtn: {\n slim: true,\n variant: 'text',\n },\n }}\n >\n <div class=\"v-picker__actions\">\n { slots.actions() }\n </div>\n </VDefaultsProvider>\n )}\n </VSheet>\n )\n })\n\n return {}\n },\n})\n\nexport type VPicker = InstanceType<typeof VPicker>\n"],"mappings":";AAAA;AACA;;AAEA;AAAA,SACSA,YAAY;AAAA,SACZC,iBAAiB;AAAA,SACjBC,eAAe,EAAEC,MAAM,8CAEhC;AAAA,SACSC,kBAAkB,uCAE3B;AACA,SAASC,KAAK,QAAQ,KAAK;AAAA,SAClBC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAQA,OAAO,MAAMC,gBAAgB,GAAGF,YAAY,CAAC;EAC3CG,OAAO,EAAEC,MAAM;EACfC,SAAS,EAAEC,OAAO;EAClBC,KAAK,EAAEH,MAAM;EACbI,UAAU,EAAEF,OAAO;EAEnB,GAAGX,eAAe,CAAC;AACrB,CAAC,EAAE,SAAS,CAAC;AAEb,OAAO,MAAMc,OAAO,GAAGV,gBAAgB,CAAe,CAAC,CAAC;EACtDW,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAET,gBAAgB,CAAC,CAAC;EAEzBU,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,sBAAsB;MAAEC;IAAsB,CAAC,GAAGnB,kBAAkB,CAACC,KAAK,CAACa,KAAK,EAAE,OAAO,CAAC,CAAC;IACnGV,SAAS,CAAC,MAAM;MACd,MAAMgB,UAAU,GAAGrB,MAAM,CAACsB,WAAW,CAACP,KAAK,CAAC;MAC5C,MAAMQ,QAAQ,GAAG,CAAC,EAAER,KAAK,CAACJ,KAAK,IAAIO,KAAK,CAACP,KAAK,CAAC;MAE/C,OAAAa,YAAA,CAAAxB,MAAA,EAAAyB,WAAA,CAESJ,UAAU;QAAA,SACPN,KAAK,CAACR,OAAO;QAAA,SACd,CACL,UAAU,EACV;UACE,qBAAqB,EAAEQ,KAAK,CAACN,SAAS;UACtC,wBAAwB,EAAE,CAAC,CAACS,KAAK,CAACQ;QACpC,CAAC,EACDX,KAAK,CAACY,KAAK,CACZ;QAAA,SACOZ,KAAK,CAACa;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjB,CAACd,KAAK,CAACH,UAAU,IAAAY,YAAA;UAAA;UAAA,SAGR,CACLL,sBAAsB,CAACW,KAAK,CAC7B;UAAA,SACM,CACLV,qBAAqB,CAACU,KAAK;QAC5B,IAECP,QAAQ,IAAAC,YAAA,CAAA3B,YAAA;UAAA;QAAA;UAAAgC,OAAA,EAAAA,CAAA,MAEJX,KAAK,CAACP,KAAK,GAAG,CAAC,IAAII,KAAK,CAACJ,KAAK;QAAA,EAEnC,EAECO,KAAK,CAACa,MAAM,IAAAP,YAAA;UAAA;QAAA,IAERN,KAAK,CAACa,MAAM,CAAC,CAAC,EAEnB,EAEJ,EAAAP,YAAA;UAAA;QAAA,IAGGN,KAAK,CAACW,OAAO,GAAG,CAAC,IAGnBX,KAAK,CAACQ,OAAO,IAAAF,YAAA,CAAA1B,iBAAA;UAAA,YAED;YACRkC,IAAI,EAAE;cACJC,IAAI,EAAE,IAAI;cACVC,OAAO,EAAE;YACX;UACF;QAAC;UAAAL,OAAA,EAAAA,CAAA,MAAAL,YAAA;YAAA;UAAA,IAGGN,KAAK,CAACQ,OAAO,CAAC,CAAC;QAAA,EAGtB;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VPickerTitle.mjs","names":["createSimpleFunctional","VPickerTitle"],"sources":["../../../src/labs/VPicker/VPickerTitle.ts"],"sourcesContent":["// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VPickerTitle = createSimpleFunctional('v-picker-title')\n\nexport type VPickerTitle = InstanceType<typeof VPickerTitle>\n"],"mappings":"AAAA;AAAA,SACSA,sBAAsB;AAE/B,OAAO,MAAMC,YAAY,GAAGD,sBAAsB,CAAC,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VPickerTitle.mjs","names":["createSimpleFunctional","VPickerTitle"],"sources":["../../../src/labs/VPicker/VPickerTitle.ts"],"sourcesContent":["// Utilities\nimport { createSimpleFunctional } from '@/util'\n\nexport const VPickerTitle = createSimpleFunctional('v-picker-title')\n\nexport type VPickerTitle = InstanceType<typeof VPickerTitle>\n"],"mappings":"AAAA;AAAA,SACSA,sBAAsB;AAE/B,OAAO,MAAMC,YAAY,GAAGD,sBAAsB,CAAC,gBAAgB,CAAC","ignoreList":[]}
@@ -15,25 +15,25 @@ declare const VPicker: {
15
15
  new (...args: any[]): vue.CreateComponentPublicInstance<{
16
16
  style: vue.StyleValue;
17
17
  tag: string;
18
- landscape: boolean;
19
18
  tile: boolean;
19
+ landscape: boolean;
20
20
  hideHeader: boolean;
21
21
  } & {
22
- location?: Anchor | undefined;
23
- height?: string | number | undefined;
22
+ class?: any;
23
+ title?: string | undefined;
24
24
  width?: string | number | undefined;
25
- border?: string | number | boolean | undefined;
25
+ height?: string | number | undefined;
26
+ theme?: string | undefined;
26
27
  color?: string | undefined;
28
+ border?: string | number | boolean | undefined;
29
+ position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
30
+ rounded?: string | number | boolean | undefined;
27
31
  maxHeight?: string | number | undefined;
28
32
  maxWidth?: string | number | undefined;
29
33
  minHeight?: string | number | undefined;
30
34
  minWidth?: string | number | undefined;
31
- position?: "fixed" | "absolute" | "static" | "sticky" | "relative" | undefined;
32
- title?: string | undefined;
33
- class?: any;
34
35
  elevation?: string | number | undefined;
35
- theme?: string | undefined;
36
- rounded?: string | number | boolean | undefined;
36
+ location?: Anchor | undefined;
37
37
  bgColor?: string | undefined;
38
38
  } & {
39
39
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
@@ -56,25 +56,25 @@ declare const VPicker: {
56
56
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
57
57
  style: vue.StyleValue;
58
58
  tag: string;
59
- landscape: boolean;
60
59
  tile: boolean;
60
+ landscape: boolean;
61
61
  hideHeader: boolean;
62
62
  } & {
63
- location?: Anchor | undefined;
64
- height?: string | number | undefined;
63
+ class?: any;
64
+ title?: string | undefined;
65
65
  width?: string | number | undefined;
66
- border?: string | number | boolean | undefined;
66
+ height?: string | number | undefined;
67
+ theme?: string | undefined;
67
68
  color?: string | undefined;
69
+ border?: string | number | boolean | undefined;
70
+ position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
71
+ rounded?: string | number | boolean | undefined;
68
72
  maxHeight?: string | number | undefined;
69
73
  maxWidth?: string | number | undefined;
70
74
  minHeight?: string | number | undefined;
71
75
  minWidth?: string | number | undefined;
72
- position?: "fixed" | "absolute" | "static" | "sticky" | "relative" | undefined;
73
- title?: string | undefined;
74
- class?: any;
75
76
  elevation?: string | number | undefined;
76
- theme?: string | undefined;
77
- rounded?: string | number | boolean | undefined;
77
+ location?: Anchor | undefined;
78
78
  bgColor?: string | undefined;
79
79
  } & {
80
80
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
@@ -97,9 +97,9 @@ declare const VPicker: {
97
97
  }, {
98
98
  style: vue.StyleValue;
99
99
  tag: string;
100
- landscape: boolean;
101
100
  rounded: string | number | boolean;
102
101
  tile: boolean;
102
+ landscape: boolean;
103
103
  hideHeader: boolean;
104
104
  }, true, {}, vue.SlotsType<Partial<{
105
105
  header: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -124,25 +124,25 @@ declare const VPicker: {
124
124
  }, {
125
125
  style: vue.StyleValue;
126
126
  tag: string;
127
- landscape: boolean;
128
127
  tile: boolean;
128
+ landscape: boolean;
129
129
  hideHeader: boolean;
130
130
  } & {
131
- location?: Anchor | undefined;
132
- height?: string | number | undefined;
131
+ class?: any;
132
+ title?: string | undefined;
133
133
  width?: string | number | undefined;
134
- border?: string | number | boolean | undefined;
134
+ height?: string | number | undefined;
135
+ theme?: string | undefined;
135
136
  color?: string | undefined;
137
+ border?: string | number | boolean | undefined;
138
+ position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
139
+ rounded?: string | number | boolean | undefined;
136
140
  maxHeight?: string | number | undefined;
137
141
  maxWidth?: string | number | undefined;
138
142
  minHeight?: string | number | undefined;
139
143
  minWidth?: string | number | undefined;
140
- position?: "fixed" | "absolute" | "static" | "sticky" | "relative" | undefined;
141
- title?: string | undefined;
142
- class?: any;
143
144
  elevation?: string | number | undefined;
144
- theme?: string | undefined;
145
- rounded?: string | number | boolean | undefined;
145
+ location?: Anchor | undefined;
146
146
  bgColor?: string | undefined;
147
147
  } & {
148
148
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
@@ -165,9 +165,9 @@ declare const VPicker: {
165
165
  }, {}, {}, {}, {}, {
166
166
  style: vue.StyleValue;
167
167
  tag: string;
168
- landscape: boolean;
169
168
  rounded: string | number | boolean;
170
169
  tile: boolean;
170
+ landscape: boolean;
171
171
  hideHeader: boolean;
172
172
  }>;
173
173
  __isFragment?: undefined;
@@ -176,25 +176,25 @@ declare const VPicker: {
176
176
  } & vue.ComponentOptionsBase<{
177
177
  style: vue.StyleValue;
178
178
  tag: string;
179
- landscape: boolean;
180
179
  tile: boolean;
180
+ landscape: boolean;
181
181
  hideHeader: boolean;
182
182
  } & {
183
- location?: Anchor | undefined;
184
- height?: string | number | undefined;
183
+ class?: any;
184
+ title?: string | undefined;
185
185
  width?: string | number | undefined;
186
- border?: string | number | boolean | undefined;
186
+ height?: string | number | undefined;
187
+ theme?: string | undefined;
187
188
  color?: string | undefined;
189
+ border?: string | number | boolean | undefined;
190
+ position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
191
+ rounded?: string | number | boolean | undefined;
188
192
  maxHeight?: string | number | undefined;
189
193
  maxWidth?: string | number | undefined;
190
194
  minHeight?: string | number | undefined;
191
195
  minWidth?: string | number | undefined;
192
- position?: "fixed" | "absolute" | "static" | "sticky" | "relative" | undefined;
193
- title?: string | undefined;
194
- class?: any;
195
196
  elevation?: string | number | undefined;
196
- theme?: string | undefined;
197
- rounded?: string | number | boolean | undefined;
197
+ location?: Anchor | undefined;
198
198
  bgColor?: string | undefined;
199
199
  } & {
200
200
  $children?: vue.VNodeChild | (() => vue.VNodeChild) | {
@@ -217,9 +217,9 @@ declare const VPicker: {
217
217
  }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
218
218
  style: vue.StyleValue;
219
219
  tag: string;
220
- landscape: boolean;
221
220
  rounded: string | number | boolean;
222
221
  tile: boolean;
222
+ landscape: boolean;
223
223
  hideHeader: boolean;
224
224
  }, {}, string, vue.SlotsType<Partial<{
225
225
  header: () => vue.VNode<vue.RendererNode, vue.RendererElement, {
@@ -241,12 +241,12 @@ declare const VPicker: {
241
241
  default: string;
242
242
  };
243
243
  rounded: {
244
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
244
+ type: (StringConstructor | NumberConstructor | BooleanConstructor)[];
245
245
  default: undefined;
246
246
  };
247
247
  tile: BooleanConstructor;
248
248
  position: {
249
- type: vue.PropType<"fixed" | "absolute" | "static" | "sticky" | "relative">;
249
+ type: vue.PropType<"fixed" | "absolute" | "relative" | "static" | "sticky">;
250
250
  validator: (v: any) => boolean;
251
251
  };
252
252
  location: vue.PropType<Anchor>;
@@ -265,7 +265,7 @@ declare const VPicker: {
265
265
  type: vue.PropType<vue.StyleValue>;
266
266
  default: null;
267
267
  };
268
- border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
268
+ border: (StringConstructor | NumberConstructor | BooleanConstructor)[];
269
269
  color: StringConstructor;
270
270
  bgColor: StringConstructor;
271
271
  landscape: BooleanConstructor;
@@ -278,12 +278,12 @@ declare const VPicker: {
278
278
  default: string;
279
279
  };
280
280
  rounded: {
281
- type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
281
+ type: (StringConstructor | NumberConstructor | BooleanConstructor)[];
282
282
  default: undefined;
283
283
  };
284
284
  tile: BooleanConstructor;
285
285
  position: {
286
- type: vue.PropType<"fixed" | "absolute" | "static" | "sticky" | "relative">;
286
+ type: vue.PropType<"fixed" | "absolute" | "relative" | "static" | "sticky">;
287
287
  validator: (v: any) => boolean;
288
288
  };
289
289
  location: vue.PropType<Anchor>;
@@ -302,7 +302,7 @@ declare const VPicker: {
302
302
  type: vue.PropType<vue.StyleValue>;
303
303
  default: null;
304
304
  };
305
- border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
305
+ border: (StringConstructor | NumberConstructor | BooleanConstructor)[];
306
306
  color: StringConstructor;
307
307
  bgColor: StringConstructor;
308
308
  landscape: BooleanConstructor;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["VPicker","VPickerTitle"],"sources":["../../../src/labs/VPicker/index.ts"],"sourcesContent":["export { VPicker } from './VPicker'\nexport { VPickerTitle } from './VPickerTitle'\n"],"mappings":"SAASA,OAAO;AAAA,SACPC,YAAY"}
1
+ {"version":3,"file":"index.mjs","names":["VPicker","VPickerTitle"],"sources":["../../../src/labs/VPicker/index.ts"],"sourcesContent":["export { VPicker } from './VPicker'\nexport { VPickerTitle } from './VPickerTitle'\n"],"mappings":"SAASA,OAAO;AAAA,SACPC,YAAY","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VBarline.mjs","names":["computed","makeLineProps","genericComponent","getPropertyFromItem","getUid","propsFactory","useRender","makeVBarlineProps","autoLineWidth","Boolean","VBarline","name","props","setup","_ref","slots","uid","id","autoDrawDuration","Number","hasLabels","showLabels","labels","length","label","lineWidth","parseFloat","totalWidth","Math","max","modelValue","value","width","boundary","minX","maxX","minY","maxY","parseInt","height","items","map","item","itemValue","genBars","values","totalValues","maxValue","minValue","min","gridX","gridY","horizonY","abs","index","x","y","parsedLabels","points","len","i","push","String","bars","offsetX","gradientData","gradient","slice","reverse","_createVNode","gradientDirection","color","smooth","autoDraw","_Fragment","textAnchor","dominantBaseline","fill","labelSize"],"sources":["../../../src/labs/VSparkline/VBarline.tsx"],"sourcesContent":["// Utilities\nimport { computed } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genericComponent, getPropertyFromItem, getUid, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VBarlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Bar {\n x: number\n y: number\n height: number\n value: number\n}\n\nexport const makeVBarlineProps = propsFactory({\n autoLineWidth: Boolean,\n\n ...makeLineProps(),\n}, 'VBarline')\n\nexport const VBarline = genericComponent<VBarlineSlots>()({\n name: 'VBarline',\n\n props: makeVBarlineProps(),\n\n setup (props, { slots }) {\n const uid = getUid()\n const id = computed(() => props.id || `barline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || 500)\n\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n\n const lineWidth = computed(() => parseFloat(props.lineWidth) || 4)\n\n const totalWidth = computed(() => Math.max(props.modelValue.length * lineWidth.value, Number(props.width)))\n\n const boundary = computed<Boundary>(() => {\n return {\n minX: 0,\n maxX: totalWidth.value,\n minY: 0,\n maxY: parseInt(props.height, 10),\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n\n function genBars (\n values: number[],\n boundary: Boundary\n ): Bar[] {\n const { minX, maxX, minY, maxY } = boundary\n const totalValues = values.length\n let maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n let minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n if (minValue > 0 && props.min == null) minValue = 0\n if (maxValue < 0 && props.max == null) maxValue = 0\n\n const gridX = maxX / totalValues\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n const horizonY = maxY - Math.abs(minValue * gridY)\n\n return values.map((value, index) => {\n const height = Math.abs(gridY * value)\n\n return {\n x: minX + index * gridX,\n y: horizonY - height +\n +(value < 0) * height,\n height,\n value,\n }\n })\n }\n\n const parsedLabels = computed(() => {\n const labels = []\n const points = genBars(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n const bars = computed(() => genBars(items.value, boundary.value))\n const offsetX = computed(() => (Math.abs(bars.value[0].x - bars.value[1].x) - lineWidth.value) / 2)\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n return (\n <svg\n display=\"block\"\n >\n <defs>\n <linearGradient\n id={ id.value }\n gradientUnits=\"userSpaceOnUse\"\n x1={ props.gradientDirection === 'left' ? '100%' : '0' }\n y1={ props.gradientDirection === 'top' ? '100%' : '0' }\n x2={ props.gradientDirection === 'right' ? '100%' : '0' }\n y2={ props.gradientDirection === 'bottom' ? '100%' : '0' }\n >\n {\n gradientData.map((color, index) => (\n <stop offset={ index / (Math.max(gradientData.length - 1, 1)) } stop-color={ color || 'currentColor' } />\n ))\n }\n </linearGradient>\n </defs>\n\n <clipPath id={ `${id.value}-clip` }>\n {\n bars.value.map(item => (\n <rect\n x={ item.x + offsetX.value }\n y={ item.y }\n width={ lineWidth.value }\n height={ item.height }\n rx={ typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0 }\n ry={ typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0 }\n >\n { props.autoDraw && (\n <>\n <animate\n attributeName=\"y\"\n from={ item.y + item.height }\n to={ item.y }\n dur={ `${autoDrawDuration.value}ms` }\n fill=\"freeze\"\n />\n <animate\n attributeName=\"height\"\n from=\"0\"\n to={ item.height }\n dur={ `${autoDrawDuration.value}ms` }\n fill=\"freeze\"\n />\n </>\n )}\n </rect>\n ))\n }\n </clipPath>\n\n { hasLabels.value && (\n <g\n key=\"labels\"\n style={{\n textAnchor: 'middle',\n dominantBaseline: 'mathematical',\n fill: 'currentColor',\n }}\n >\n {\n parsedLabels.value.map((item, i) => (\n <text\n x={ item.x + offsetX.value + lineWidth.value / 2 }\n y={ (parseInt(props.height, 10) - 2) + (parseInt(props.labelSize, 10) || 7 * 0.75) }\n font-size={ Number(props.labelSize) || 7 }\n >\n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n </text>\n ))\n }\n </g>\n )}\n\n <g\n clip-path={ `url(#${id.value}-clip)` }\n fill={ `url(#${id.value})` }\n >\n <rect\n x={ 0 }\n y={ 0 }\n width={ Math.max(props.modelValue.length * lineWidth.value, Number(props.width)) }\n height={ props.height }\n ></rect>\n </g>\n </svg>\n )\n })\n },\n})\n\nexport type VBarline = InstanceType<typeof VBarline>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VBarline.mjs","names":["computed","makeLineProps","genericComponent","getPropertyFromItem","getUid","propsFactory","useRender","makeVBarlineProps","autoLineWidth","Boolean","VBarline","name","props","setup","_ref","slots","uid","id","autoDrawDuration","Number","hasLabels","showLabels","labels","length","label","lineWidth","parseFloat","totalWidth","Math","max","modelValue","value","width","boundary","minX","maxX","minY","maxY","parseInt","height","items","map","item","itemValue","genBars","values","totalValues","maxValue","minValue","min","gridX","gridY","horizonY","abs","index","x","y","parsedLabels","points","len","i","push","String","bars","offsetX","gradientData","gradient","slice","reverse","_createVNode","gradientDirection","color","smooth","autoDraw","_Fragment","textAnchor","dominantBaseline","fill","labelSize"],"sources":["../../../src/labs/VSparkline/VBarline.tsx"],"sourcesContent":["// Utilities\nimport { computed } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genericComponent, getPropertyFromItem, getUid, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VBarlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Bar {\n x: number\n y: number\n height: number\n value: number\n}\n\nexport const makeVBarlineProps = propsFactory({\n autoLineWidth: Boolean,\n\n ...makeLineProps(),\n}, 'VBarline')\n\nexport const VBarline = genericComponent<VBarlineSlots>()({\n name: 'VBarline',\n\n props: makeVBarlineProps(),\n\n setup (props, { slots }) {\n const uid = getUid()\n const id = computed(() => props.id || `barline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || 500)\n\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n\n const lineWidth = computed(() => parseFloat(props.lineWidth) || 4)\n\n const totalWidth = computed(() => Math.max(props.modelValue.length * lineWidth.value, Number(props.width)))\n\n const boundary = computed<Boundary>(() => {\n return {\n minX: 0,\n maxX: totalWidth.value,\n minY: 0,\n maxY: parseInt(props.height, 10),\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n\n function genBars (\n values: number[],\n boundary: Boundary\n ): Bar[] {\n const { minX, maxX, minY, maxY } = boundary\n const totalValues = values.length\n let maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n let minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n if (minValue > 0 && props.min == null) minValue = 0\n if (maxValue < 0 && props.max == null) maxValue = 0\n\n const gridX = maxX / totalValues\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n const horizonY = maxY - Math.abs(minValue * gridY)\n\n return values.map((value, index) => {\n const height = Math.abs(gridY * value)\n\n return {\n x: minX + index * gridX,\n y: horizonY - height +\n +(value < 0) * height,\n height,\n value,\n }\n })\n }\n\n const parsedLabels = computed(() => {\n const labels = []\n const points = genBars(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n const bars = computed(() => genBars(items.value, boundary.value))\n const offsetX = computed(() => (Math.abs(bars.value[0].x - bars.value[1].x) - lineWidth.value) / 2)\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n return (\n <svg\n display=\"block\"\n >\n <defs>\n <linearGradient\n id={ id.value }\n gradientUnits=\"userSpaceOnUse\"\n x1={ props.gradientDirection === 'left' ? '100%' : '0' }\n y1={ props.gradientDirection === 'top' ? '100%' : '0' }\n x2={ props.gradientDirection === 'right' ? '100%' : '0' }\n y2={ props.gradientDirection === 'bottom' ? '100%' : '0' }\n >\n {\n gradientData.map((color, index) => (\n <stop offset={ index / (Math.max(gradientData.length - 1, 1)) } stop-color={ color || 'currentColor' } />\n ))\n }\n </linearGradient>\n </defs>\n\n <clipPath id={ `${id.value}-clip` }>\n {\n bars.value.map(item => (\n <rect\n x={ item.x + offsetX.value }\n y={ item.y }\n width={ lineWidth.value }\n height={ item.height }\n rx={ typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0 }\n ry={ typeof props.smooth === 'number' ? props.smooth : props.smooth ? 2 : 0 }\n >\n { props.autoDraw && (\n <>\n <animate\n attributeName=\"y\"\n from={ item.y + item.height }\n to={ item.y }\n dur={ `${autoDrawDuration.value}ms` }\n fill=\"freeze\"\n />\n <animate\n attributeName=\"height\"\n from=\"0\"\n to={ item.height }\n dur={ `${autoDrawDuration.value}ms` }\n fill=\"freeze\"\n />\n </>\n )}\n </rect>\n ))\n }\n </clipPath>\n\n { hasLabels.value && (\n <g\n key=\"labels\"\n style={{\n textAnchor: 'middle',\n dominantBaseline: 'mathematical',\n fill: 'currentColor',\n }}\n >\n {\n parsedLabels.value.map((item, i) => (\n <text\n x={ item.x + offsetX.value + lineWidth.value / 2 }\n y={ (parseInt(props.height, 10) - 2) + (parseInt(props.labelSize, 10) || 7 * 0.75) }\n font-size={ Number(props.labelSize) || 7 }\n >\n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n </text>\n ))\n }\n </g>\n )}\n\n <g\n clip-path={ `url(#${id.value}-clip)` }\n fill={ `url(#${id.value})` }\n >\n <rect\n x={ 0 }\n y={ 0 }\n width={ Math.max(props.modelValue.length * lineWidth.value, Number(props.width)) }\n height={ props.height }\n ></rect>\n </g>\n </svg>\n )\n })\n },\n})\n\nexport type VBarline = InstanceType<typeof VBarline>\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VSparkline.mjs","names":["makeVBarlineProps","VBarline","makeVTrendlineProps","VTrendline","useTextColor","computed","toRef","genericComponent","propsFactory","useRender","makeVSparklineProps","type","String","default","VSparkline","name","props","setup","_ref","slots","textColorClasses","textColorStyles","hasLabels","Boolean","showLabels","labels","length","label","totalHeight","height","parseInt","value","labelSize","Tag","lineProps","filterProps","_createVNode","_mergeProps","width"],"sources":["../../../src/labs/VSparkline/VSparkline.tsx"],"sourcesContent":["// Components\nimport { makeVBarlineProps, VBarline } from './VBarline'\nimport { makeVTrendlineProps, VTrendline } from './VTrendline'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport const makeVSparklineProps = propsFactory({\n type: {\n type: String as PropType<'trend' | 'bar'>,\n default: 'trend',\n },\n\n ...makeVBarlineProps(),\n ...makeVTrendlineProps(),\n}, 'VSparkline')\n\nexport type VSparklineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport const VSparkline = genericComponent<VSparklineSlots>()({\n name: 'VSparkline',\n\n props: makeVSparklineProps(),\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const totalHeight = computed(() => {\n let height = parseInt(props.height, 10)\n\n if (hasLabels.value) height += parseInt(props.labelSize, 10) * 1.5\n\n return height\n })\n\n useRender(() => {\n const Tag = props.type === 'trend' ? VTrendline : VBarline\n const lineProps = props.type === 'trend' ? VTrendline.filterProps(props) : VBarline.filterProps(props)\n\n return (\n <Tag\n key={ props.type }\n class={ textColorClasses.value }\n style={ textColorStyles.value }\n viewBox={ `0 0 ${props.width} ${parseInt(totalHeight.value, 10)}` }\n { ...lineProps }\n v-slots={ slots }\n />\n )\n })\n },\n})\n\nexport type VSparkline = InstanceType<typeof VSparkline>\n"],"mappings":";AAAA;AAAA,SACSA,iBAAiB,EAAEC,QAAQ;AAAA,SAC3BC,mBAAmB,EAAEC,UAAU,4BAExC;AAAA,SACSC,YAAY,uCAErB;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA;;AAEA,OAAO,MAAMC,mBAAmB,GAAGF,YAAY,CAAC;EAC9CG,IAAI,EAAE;IACJA,IAAI,EAAEC,MAAmC;IACzCC,OAAO,EAAE;EACX,CAAC;EAED,GAAGb,iBAAiB,CAAC,CAAC;EACtB,GAAGE,mBAAmB,CAAC;AACzB,CAAC,EAAE,YAAY,CAAC;AAOhB,OAAO,MAAMY,UAAU,GAAGP,gBAAgB,CAAkB,CAAC,CAAC;EAC5DQ,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEN,mBAAmB,CAAC,CAAC;EAE5BO,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,gBAAgB;MAAEC;IAAgB,CAAC,GAAGjB,YAAY,CAACE,KAAK,CAACU,KAAK,EAAE,OAAO,CAAC,CAAC;IACjF,MAAMM,SAAS,GAAGjB,QAAQ,CAAC,MAAM;MAC/B,OAAOkB,OAAO,CACZP,KAAK,CAACQ,UAAU,IAChBR,KAAK,CAACS,MAAM,CAACC,MAAM,GAAG,CAAC,IACvB,CAAC,CAACP,KAAK,EAAEQ,KACX,CAAC;IACH,CAAC,CAAC;IACF,MAAMC,WAAW,GAAGvB,QAAQ,CAAC,MAAM;MACjC,IAAIwB,MAAM,GAAGC,QAAQ,CAACd,KAAK,CAACa,MAAM,EAAE,EAAE,CAAC;MAEvC,IAAIP,SAAS,CAACS,KAAK,EAAEF,MAAM,IAAIC,QAAQ,CAACd,KAAK,CAACgB,SAAS,EAAE,EAAE,CAAC,GAAG,GAAG;MAElE,OAAOH,MAAM;IACf,CAAC,CAAC;IAEFpB,SAAS,CAAC,MAAM;MACd,MAAMwB,GAAG,GAAGjB,KAAK,CAACL,IAAI,KAAK,OAAO,GAAGR,UAAU,GAAGF,QAAQ;MAC1D,MAAMiC,SAAS,GAAGlB,KAAK,CAACL,IAAI,KAAK,OAAO,GAAGR,UAAU,CAACgC,WAAW,CAACnB,KAAK,CAAC,GAAGf,QAAQ,CAACkC,WAAW,CAACnB,KAAK,CAAC;MAEtG,OAAAoB,YAAA,CAAAH,GAAA,EAAAI,WAAA;QAAA,OAEUrB,KAAK,CAACL,IAAI;QAAA,SACRS,gBAAgB,CAACW,KAAK;QAAA,SACtBV,eAAe,CAACU,KAAK;QAAA,WAClB,OAAMf,KAAK,CAACsB,KAAM,IAAGR,QAAQ,CAACF,WAAW,CAACG,KAAK,EAAE,EAAE,CAAE;MAAC,GAC5DG,SAAS,GACJf,KAAK;IAGrB,CAAC,CAAC;EACJ;AACF,CAAC,CAAC"}
1
+ {"version":3,"file":"VSparkline.mjs","names":["makeVBarlineProps","VBarline","makeVTrendlineProps","VTrendline","useTextColor","computed","toRef","genericComponent","propsFactory","useRender","makeVSparklineProps","type","String","default","VSparkline","name","props","setup","_ref","slots","textColorClasses","textColorStyles","hasLabels","Boolean","showLabels","labels","length","label","totalHeight","height","parseInt","value","labelSize","Tag","lineProps","filterProps","_createVNode","_mergeProps","width"],"sources":["../../../src/labs/VSparkline/VSparkline.tsx"],"sourcesContent":["// Components\nimport { makeVBarlineProps, VBarline } from './VBarline'\nimport { makeVTrendlineProps, VTrendline } from './VTrendline'\n\n// Composables\nimport { useTextColor } from '@/composables/color'\n\n// Utilities\nimport { computed, toRef } from 'vue'\nimport { genericComponent, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\n\n// Types\n\nexport const makeVSparklineProps = propsFactory({\n type: {\n type: String as PropType<'trend' | 'bar'>,\n default: 'trend',\n },\n\n ...makeVBarlineProps(),\n ...makeVTrendlineProps(),\n}, 'VSparkline')\n\nexport type VSparklineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport const VSparkline = genericComponent<VSparklineSlots>()({\n name: 'VSparkline',\n\n props: makeVSparklineProps(),\n\n setup (props, { slots }) {\n const { textColorClasses, textColorStyles } = useTextColor(toRef(props, 'color'))\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const totalHeight = computed(() => {\n let height = parseInt(props.height, 10)\n\n if (hasLabels.value) height += parseInt(props.labelSize, 10) * 1.5\n\n return height\n })\n\n useRender(() => {\n const Tag = props.type === 'trend' ? VTrendline : VBarline\n const lineProps = props.type === 'trend' ? VTrendline.filterProps(props) : VBarline.filterProps(props)\n\n return (\n <Tag\n key={ props.type }\n class={ textColorClasses.value }\n style={ textColorStyles.value }\n viewBox={ `0 0 ${props.width} ${parseInt(totalHeight.value, 10)}` }\n { ...lineProps }\n v-slots={ slots }\n />\n )\n })\n },\n})\n\nexport type VSparkline = InstanceType<typeof VSparkline>\n"],"mappings":";AAAA;AAAA,SACSA,iBAAiB,EAAEC,QAAQ;AAAA,SAC3BC,mBAAmB,EAAEC,UAAU,4BAExC;AAAA,SACSC,YAAY,uCAErB;AACA,SAASC,QAAQ,EAAEC,KAAK,QAAQ,KAAK;AAAA,SAC5BC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,gCAElD;AAGA;;AAEA,OAAO,MAAMC,mBAAmB,GAAGF,YAAY,CAAC;EAC9CG,IAAI,EAAE;IACJA,IAAI,EAAEC,MAAmC;IACzCC,OAAO,EAAE;EACX,CAAC;EAED,GAAGb,iBAAiB,CAAC,CAAC;EACtB,GAAGE,mBAAmB,CAAC;AACzB,CAAC,EAAE,YAAY,CAAC;AAOhB,OAAO,MAAMY,UAAU,GAAGP,gBAAgB,CAAkB,CAAC,CAAC;EAC5DQ,IAAI,EAAE,YAAY;EAElBC,KAAK,EAAEN,mBAAmB,CAAC,CAAC;EAE5BO,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,gBAAgB;MAAEC;IAAgB,CAAC,GAAGjB,YAAY,CAACE,KAAK,CAACU,KAAK,EAAE,OAAO,CAAC,CAAC;IACjF,MAAMM,SAAS,GAAGjB,QAAQ,CAAC,MAAM;MAC/B,OAAOkB,OAAO,CACZP,KAAK,CAACQ,UAAU,IAChBR,KAAK,CAACS,MAAM,CAACC,MAAM,GAAG,CAAC,IACvB,CAAC,CAACP,KAAK,EAAEQ,KACX,CAAC;IACH,CAAC,CAAC;IACF,MAAMC,WAAW,GAAGvB,QAAQ,CAAC,MAAM;MACjC,IAAIwB,MAAM,GAAGC,QAAQ,CAACd,KAAK,CAACa,MAAM,EAAE,EAAE,CAAC;MAEvC,IAAIP,SAAS,CAACS,KAAK,EAAEF,MAAM,IAAIC,QAAQ,CAACd,KAAK,CAACgB,SAAS,EAAE,EAAE,CAAC,GAAG,GAAG;MAElE,OAAOH,MAAM;IACf,CAAC,CAAC;IAEFpB,SAAS,CAAC,MAAM;MACd,MAAMwB,GAAG,GAAGjB,KAAK,CAACL,IAAI,KAAK,OAAO,GAAGR,UAAU,GAAGF,QAAQ;MAC1D,MAAMiC,SAAS,GAAGlB,KAAK,CAACL,IAAI,KAAK,OAAO,GAAGR,UAAU,CAACgC,WAAW,CAACnB,KAAK,CAAC,GAAGf,QAAQ,CAACkC,WAAW,CAACnB,KAAK,CAAC;MAEtG,OAAAoB,YAAA,CAAAH,GAAA,EAAAI,WAAA;QAAA,OAEUrB,KAAK,CAACL,IAAI;QAAA,SACRS,gBAAgB,CAACW,KAAK;QAAA,SACtBV,eAAe,CAACU,KAAK;QAAA,WAClB,OAAMf,KAAK,CAACsB,KAAM,IAAGR,QAAQ,CAACF,WAAW,CAACG,KAAK,EAAE,EAAE,CAAE;MAAC,GAC5DG,SAAS,GACJf,KAAK;IAGrB,CAAC,CAAC;EACJ;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"VTrendline.mjs","names":["computed","nextTick","ref","watch","makeLineProps","genPath","_genPath","genericComponent","getPropertyFromItem","getUid","propsFactory","useRender","makeVTrendlineProps","fill","Boolean","VTrendline","name","props","setup","_ref","slots","uid","id","autoDrawDuration","Number","lastLength","path","genPoints","values","boundary","minX","maxX","minY","maxY","totalValues","length","maxValue","max","Math","minValue","min","gridX","gridY","map","value","index","x","y","hasLabels","showLabels","labels","label","lineWidth","parseFloat","totalWidth","width","padding","parseInt","height","items","modelValue","item","itemValue","parsedLabels","points","len","i","push","String","autoDraw","pathRef","getTotalLength","style","strokeDasharray","strokeDashoffset","getBoundingClientRect","transition","autoDrawEasing","transformOrigin","transform","immediate","smooth","gradientData","gradient","slice","reverse","_createVNode","gradientDirection","color","textAnchor","dominantBaseline","labelSize"],"sources":["../../../src/labs/VSparkline/VTrendline.tsx"],"sourcesContent":["// Utilities\nimport { computed, nextTick, ref, watch } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genPath as _genPath } from './util/path'\nimport { genericComponent, getPropertyFromItem, getUid, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VTrendlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Point {\n x: number\n y: number\n value: number\n}\n\nexport const makeVTrendlineProps = propsFactory({\n fill: Boolean,\n\n ...makeLineProps(),\n}, 'VTrendline')\n\nexport const VTrendline = genericComponent<VTrendlineSlots>()({\n name: 'VTrendline',\n\n props: makeVTrendlineProps(),\n\n setup (props, { slots }) {\n const uid = getUid()\n const id = computed(() => props.id || `trendline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000))\n\n const lastLength = ref(0)\n const path = ref<SVGPathElement | null>(null)\n\n function genPoints (\n values: number[],\n boundary: Boundary\n ): Point[] {\n const { minX, maxX, minY, maxY } = boundary\n const totalValues = values.length\n const maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n const minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n const gridX = (maxX - minX) / (totalValues - 1)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n\n return values.map((value, index) => {\n return {\n x: minX + index * gridX,\n y: maxY - (value - minValue) * gridY,\n value,\n }\n })\n }\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const lineWidth = computed(() => {\n return parseFloat(props.lineWidth) || 4\n })\n const totalWidth = computed(() => Number(props.width))\n\n const boundary = computed<Boundary>(() => {\n const padding = Number(props.padding)\n\n return {\n minX: padding,\n maxX: totalWidth.value - padding,\n minY: padding,\n maxY: parseInt(props.height, 10) - padding,\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n const parsedLabels = computed(() => {\n const labels = []\n const points = genPoints(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n watch(() => props.modelValue, async () => {\n await nextTick()\n\n if (!props.autoDraw || !path.value) return\n\n const pathRef = path.value\n const length = pathRef.getTotalLength()\n\n if (!props.fill) {\n // Initial setup to \"hide\" the line by using the stroke dash array\n pathRef.style.strokeDasharray = `${length}`\n pathRef.style.strokeDashoffset = `${length}`\n\n // Force reflow to ensure the transition starts from this state\n pathRef.getBoundingClientRect()\n\n // Animate the stroke dash offset to \"draw\" the line\n pathRef.style.transition = `stroke-dashoffset ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.strokeDashoffset = '0'\n } else {\n // Your existing logic for filled paths remains the same\n pathRef.style.transformOrigin = 'bottom center'\n pathRef.style.transition = 'none'\n pathRef.style.transform = `scaleY(0)`\n pathRef.getBoundingClientRect()\n pathRef.style.transition = `transform ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.transform = `scaleY(1)`\n }\n\n lastLength.value = length\n }, { immediate: true })\n\n function genPath (fill: boolean) {\n return _genPath(\n genPoints(items.value, boundary.value),\n props.smooth ? 8 : Number(props.smooth),\n fill,\n parseInt(props.height, 10)\n )\n }\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n\n return (\n <svg\n display=\"block\"\n stroke-width={ parseFloat(props.lineWidth) ?? 4 }\n >\n <defs>\n <linearGradient\n id={ id.value }\n gradientUnits=\"userSpaceOnUse\"\n x1={ props.gradientDirection === 'left' ? '100%' : '0' }\n y1={ props.gradientDirection === 'top' ? '100%' : '0' }\n x2={ props.gradientDirection === 'right' ? '100%' : '0' }\n y2={ props.gradientDirection === 'bottom' ? '100%' : '0' }\n >\n {\n gradientData.map((color, index) => (\n <stop offset={ index / (Math.max(gradientData.length - 1, 1)) } stop-color={ color || 'currentColor' } />\n ))\n }\n </linearGradient>\n </defs>\n\n { hasLabels.value && (\n <g\n key=\"labels\"\n style={{\n textAnchor: 'middle',\n dominantBaseline: 'mathematical',\n fill: 'currentColor',\n }}\n >\n {\n parsedLabels.value.map((item, i) => (\n <text\n x={ item.x + (lineWidth.value / 2) + lineWidth.value / 2 }\n y={ (parseInt(props.height, 10) - 4) + (parseInt(props.labelSize, 10) || 7 * 0.75) }\n font-size={ Number(props.labelSize) || 7 }\n >\n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n </text>\n ))\n }\n </g>\n )}\n\n <path\n ref={ path }\n d={ genPath(props.fill) }\n fill={ props.fill ? `url(#${id.value})` : 'none' }\n stroke={ props.fill ? 'none' : `url(#${id.value})` }\n />\n\n { props.fill && (\n <path\n d={ genPath(false) }\n fill=\"none\"\n stroke={ props.color ?? props.gradient?.[0] }\n />\n )}\n </svg>\n )\n })\n },\n})\n\nexport type VTrendline = InstanceType<typeof VTrendline>\n"],"mappings":"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"}
1
+ {"version":3,"file":"VTrendline.mjs","names":["computed","nextTick","ref","watch","makeLineProps","genPath","_genPath","genericComponent","getPropertyFromItem","getUid","propsFactory","useRender","makeVTrendlineProps","fill","Boolean","VTrendline","name","props","setup","_ref","slots","uid","id","autoDrawDuration","Number","lastLength","path","genPoints","values","boundary","minX","maxX","minY","maxY","totalValues","length","maxValue","max","Math","minValue","min","gridX","gridY","map","value","index","x","y","hasLabels","showLabels","labels","label","lineWidth","parseFloat","totalWidth","width","padding","parseInt","height","items","modelValue","item","itemValue","parsedLabels","points","len","i","push","String","autoDraw","pathRef","getTotalLength","style","strokeDasharray","strokeDashoffset","getBoundingClientRect","transition","autoDrawEasing","transformOrigin","transform","immediate","smooth","gradientData","gradient","slice","reverse","_createVNode","gradientDirection","color","textAnchor","dominantBaseline","labelSize"],"sources":["../../../src/labs/VSparkline/VTrendline.tsx"],"sourcesContent":["// Utilities\nimport { computed, nextTick, ref, watch } from 'vue'\nimport { makeLineProps } from './util/line'\nimport { genPath as _genPath } from './util/path'\nimport { genericComponent, getPropertyFromItem, getUid, propsFactory, useRender } from '@/util'\n\n// Types\nexport type VTrendlineSlots = {\n default: void\n label: { index: number, value: string }\n}\n\nexport type SparklineItem = number | { value: number }\n\nexport type SparklineText = {\n x: number\n value: string\n}\n\nexport interface Boundary {\n minX: number\n minY: number\n maxX: number\n maxY: number\n}\n\nexport interface Point {\n x: number\n y: number\n value: number\n}\n\nexport const makeVTrendlineProps = propsFactory({\n fill: Boolean,\n\n ...makeLineProps(),\n}, 'VTrendline')\n\nexport const VTrendline = genericComponent<VTrendlineSlots>()({\n name: 'VTrendline',\n\n props: makeVTrendlineProps(),\n\n setup (props, { slots }) {\n const uid = getUid()\n const id = computed(() => props.id || `trendline-${uid}`)\n const autoDrawDuration = computed(() => Number(props.autoDrawDuration) || (props.fill ? 500 : 2000))\n\n const lastLength = ref(0)\n const path = ref<SVGPathElement | null>(null)\n\n function genPoints (\n values: number[],\n boundary: Boundary\n ): Point[] {\n const { minX, maxX, minY, maxY } = boundary\n const totalValues = values.length\n const maxValue = props.max != null ? Number(props.max) : Math.max(...values)\n const minValue = props.min != null ? Number(props.min) : Math.min(...values)\n\n const gridX = (maxX - minX) / (totalValues - 1)\n const gridY = (maxY - minY) / ((maxValue - minValue) || 1)\n\n return values.map((value, index) => {\n return {\n x: minX + index * gridX,\n y: maxY - (value - minValue) * gridY,\n value,\n }\n })\n }\n const hasLabels = computed(() => {\n return Boolean(\n props.showLabels ||\n props.labels.length > 0 ||\n !!slots?.label\n )\n })\n const lineWidth = computed(() => {\n return parseFloat(props.lineWidth) || 4\n })\n const totalWidth = computed(() => Number(props.width))\n\n const boundary = computed<Boundary>(() => {\n const padding = Number(props.padding)\n\n return {\n minX: padding,\n maxX: totalWidth.value - padding,\n minY: padding,\n maxY: parseInt(props.height, 10) - padding,\n }\n })\n const items = computed(() => props.modelValue.map(item => getPropertyFromItem(item, props.itemValue, item)))\n const parsedLabels = computed(() => {\n const labels = []\n const points = genPoints(items.value, boundary.value)\n const len = points.length\n\n for (let i = 0; labels.length < len; i++) {\n const item = points[i]\n let value = props.labels[i]\n\n if (!value) {\n value = typeof item === 'object'\n ? item.value\n : item\n }\n\n labels.push({\n x: item.x,\n value: String(value),\n })\n }\n\n return labels\n })\n\n watch(() => props.modelValue, async () => {\n await nextTick()\n\n if (!props.autoDraw || !path.value) return\n\n const pathRef = path.value\n const length = pathRef.getTotalLength()\n\n if (!props.fill) {\n // Initial setup to \"hide\" the line by using the stroke dash array\n pathRef.style.strokeDasharray = `${length}`\n pathRef.style.strokeDashoffset = `${length}`\n\n // Force reflow to ensure the transition starts from this state\n pathRef.getBoundingClientRect()\n\n // Animate the stroke dash offset to \"draw\" the line\n pathRef.style.transition = `stroke-dashoffset ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.strokeDashoffset = '0'\n } else {\n // Your existing logic for filled paths remains the same\n pathRef.style.transformOrigin = 'bottom center'\n pathRef.style.transition = 'none'\n pathRef.style.transform = `scaleY(0)`\n pathRef.getBoundingClientRect()\n pathRef.style.transition = `transform ${autoDrawDuration.value}ms ${props.autoDrawEasing}`\n pathRef.style.transform = `scaleY(1)`\n }\n\n lastLength.value = length\n }, { immediate: true })\n\n function genPath (fill: boolean) {\n return _genPath(\n genPoints(items.value, boundary.value),\n props.smooth ? 8 : Number(props.smooth),\n fill,\n parseInt(props.height, 10)\n )\n }\n\n useRender(() => {\n const gradientData = !props.gradient.slice().length ? [''] : props.gradient.slice().reverse()\n\n return (\n <svg\n display=\"block\"\n stroke-width={ parseFloat(props.lineWidth) ?? 4 }\n >\n <defs>\n <linearGradient\n id={ id.value }\n gradientUnits=\"userSpaceOnUse\"\n x1={ props.gradientDirection === 'left' ? '100%' : '0' }\n y1={ props.gradientDirection === 'top' ? '100%' : '0' }\n x2={ props.gradientDirection === 'right' ? '100%' : '0' }\n y2={ props.gradientDirection === 'bottom' ? '100%' : '0' }\n >\n {\n gradientData.map((color, index) => (\n <stop offset={ index / (Math.max(gradientData.length - 1, 1)) } stop-color={ color || 'currentColor' } />\n ))\n }\n </linearGradient>\n </defs>\n\n { hasLabels.value && (\n <g\n key=\"labels\"\n style={{\n textAnchor: 'middle',\n dominantBaseline: 'mathematical',\n fill: 'currentColor',\n }}\n >\n {\n parsedLabels.value.map((item, i) => (\n <text\n x={ item.x + (lineWidth.value / 2) + lineWidth.value / 2 }\n y={ (parseInt(props.height, 10) - 4) + (parseInt(props.labelSize, 10) || 7 * 0.75) }\n font-size={ Number(props.labelSize) || 7 }\n >\n { slots.label?.({ index: i, value: item.value }) ?? item.value }\n </text>\n ))\n }\n </g>\n )}\n\n <path\n ref={ path }\n d={ genPath(props.fill) }\n fill={ props.fill ? `url(#${id.value})` : 'none' }\n stroke={ props.fill ? 'none' : `url(#${id.value})` }\n />\n\n { props.fill && (\n <path\n d={ genPath(false) }\n fill=\"none\"\n stroke={ props.color ?? props.gradient?.[0] }\n />\n )}\n </svg>\n )\n })\n },\n})\n\nexport type VTrendline = InstanceType<typeof VTrendline>\n"],"mappings":"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","ignoreList":[]}