vuetify 3.8.6 → 3.8.7

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 (341) hide show
  1. package/dist/json/attributes.json +1767 -1767
  2. package/dist/json/importMap-labs.json +20 -20
  3. package/dist/json/importMap.json +176 -176
  4. package/dist/json/web-types.json +3266 -3266
  5. package/dist/vuetify-labs.cjs +1002 -904
  6. package/dist/vuetify-labs.css +6207 -6207
  7. package/dist/vuetify-labs.d.ts +62 -62
  8. package/dist/vuetify-labs.esm.js +1003 -905
  9. package/dist/vuetify-labs.esm.js.map +1 -1
  10. package/dist/vuetify-labs.js +1002 -904
  11. package/dist/vuetify-labs.min.css +2 -2
  12. package/dist/vuetify.cjs +889 -791
  13. package/dist/vuetify.cjs.map +1 -1
  14. package/dist/vuetify.css +3094 -3094
  15. package/dist/vuetify.d.ts +62 -62
  16. package/dist/vuetify.esm.js +890 -792
  17. package/dist/vuetify.esm.js.map +1 -1
  18. package/dist/vuetify.js +889 -791
  19. package/dist/vuetify.js.map +1 -1
  20. package/dist/vuetify.min.css +2 -2
  21. package/dist/vuetify.min.js +971 -963
  22. package/dist/vuetify.min.js.map +1 -1
  23. package/lib/components/VAlert/VAlert.js +11 -11
  24. package/lib/components/VAlert/VAlert.js.map +1 -1
  25. package/lib/components/VApp/VApp.js +5 -5
  26. package/lib/components/VApp/VApp.js.map +1 -1
  27. package/lib/components/VAutocomplete/VAutocomplete.js +9 -9
  28. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  29. package/lib/components/VAvatar/VAvatar.js +4 -4
  30. package/lib/components/VAvatar/VAvatar.js.map +1 -1
  31. package/lib/components/VBadge/VBadge.js +3 -3
  32. package/lib/components/VBadge/VBadge.js.map +1 -1
  33. package/lib/components/VBanner/VBanner.js +6 -6
  34. package/lib/components/VBanner/VBanner.js.map +1 -1
  35. package/lib/components/VBanner/VBannerActions.js +4 -4
  36. package/lib/components/VBanner/VBannerActions.js.map +1 -1
  37. package/lib/components/VBottomNavigation/VBottomNavigation.js +6 -6
  38. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  39. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +5 -5
  40. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  41. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.js +4 -4
  42. package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.js.map +1 -1
  43. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +5 -5
  44. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  45. package/lib/components/VBtn/VBtn.js +7 -7
  46. package/lib/components/VBtn/VBtn.js.map +1 -1
  47. package/lib/components/VBtnGroup/VBtnGroup.js +4 -4
  48. package/lib/components/VBtnGroup/VBtnGroup.js.map +1 -1
  49. package/lib/components/VCard/VCard.js +5 -5
  50. package/lib/components/VCard/VCard.js.map +1 -1
  51. package/lib/components/VCard/VCardActions.js +4 -4
  52. package/lib/components/VCard/VCardActions.js.map +1 -1
  53. package/lib/components/VCard/VCardItem.js +9 -9
  54. package/lib/components/VCard/VCardItem.js.map +1 -1
  55. package/lib/components/VCard/VCardSubtitle.js +4 -4
  56. package/lib/components/VCard/VCardSubtitle.js.map +1 -1
  57. package/lib/components/VCard/VCardText.js +4 -4
  58. package/lib/components/VCard/VCardText.js.map +1 -1
  59. package/lib/components/VCarousel/VCarousel.js +4 -4
  60. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  61. package/lib/components/VChip/VChip.js +11 -11
  62. package/lib/components/VChip/VChip.js.map +1 -1
  63. package/lib/components/VColorPicker/VColorPicker.js +3 -3
  64. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  65. package/lib/components/VColorPicker/VColorPickerCanvas.js +9 -9
  66. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  67. package/lib/components/VColorPicker/VColorPickerEdit.js +6 -6
  68. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  69. package/lib/components/VColorPicker/VColorPickerPreview.js +11 -11
  70. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  71. package/lib/components/VColorPicker/VColorPickerSwatches.js +10 -10
  72. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  73. package/lib/components/VCombobox/VCombobox.js +9 -9
  74. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  75. package/lib/components/VConfirmEdit/VConfirmEdit.js +3 -3
  76. package/lib/components/VConfirmEdit/VConfirmEdit.js.map +1 -1
  77. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.js +3 -3
  78. package/lib/components/VConfirmEdit/__test__/VConfirmEdit.spec.browser.js.map +1 -1
  79. package/lib/components/VCounter/VCounter.js +5 -5
  80. package/lib/components/VCounter/VCounter.js.map +1 -1
  81. package/lib/components/VDataIterator/VDataIterator.js +5 -5
  82. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  83. package/lib/components/VDataTable/VDataTable.js +4 -4
  84. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  85. package/lib/components/VDataTable/VDataTableColumn.js +5 -5
  86. package/lib/components/VDataTable/VDataTableColumn.js.map +1 -1
  87. package/lib/components/VDataTable/VDataTableFooter.js +6 -6
  88. package/lib/components/VDataTable/VDataTableFooter.js.map +1 -1
  89. package/lib/components/VDataTable/VDataTableGroupHeaderRow.js +7 -7
  90. package/lib/components/VDataTable/VDataTableGroupHeaderRow.js.map +1 -1
  91. package/lib/components/VDataTable/VDataTableHeaders.js +11 -11
  92. package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
  93. package/lib/components/VDataTable/VDataTableRow.js +6 -6
  94. package/lib/components/VDataTable/VDataTableRow.js.map +1 -1
  95. package/lib/components/VDataTable/VDataTableRows.js +7 -7
  96. package/lib/components/VDataTable/VDataTableRows.js.map +1 -1
  97. package/lib/components/VDataTable/VDataTableServer.js +4 -4
  98. package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
  99. package/lib/components/VDataTable/VDataTableVirtual.js +14 -14
  100. package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
  101. package/lib/components/VDatePicker/VDatePicker.js +3 -3
  102. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  103. package/lib/components/VDatePicker/VDatePickerControls.js +5 -5
  104. package/lib/components/VDatePicker/VDatePickerControls.js.map +1 -1
  105. package/lib/components/VDatePicker/VDatePickerHeader.js +8 -8
  106. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  107. package/lib/components/VDatePicker/VDatePickerMonth.js +10 -10
  108. package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
  109. package/lib/components/VDatePicker/VDatePickerMonths.js +5 -5
  110. package/lib/components/VDatePicker/VDatePickerMonths.js.map +1 -1
  111. package/lib/components/VDatePicker/VDatePickerYears.js +5 -5
  112. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  113. package/lib/components/VDialog/__test__/VDialog.spec.browser.js +5 -5
  114. package/lib/components/VDialog/__test__/VDialog.spec.browser.js.map +1 -1
  115. package/lib/components/VDivider/VDivider.js +10 -10
  116. package/lib/components/VDivider/VDivider.js.map +1 -1
  117. package/lib/components/VEmptyState/VEmptyState.js +14 -14
  118. package/lib/components/VEmptyState/VEmptyState.js.map +1 -1
  119. package/lib/components/VExpansionPanel/VExpansionPanel.js +6 -6
  120. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  121. package/lib/components/VExpansionPanel/VExpansionPanelText.js +5 -5
  122. package/lib/components/VExpansionPanel/VExpansionPanelText.js.map +1 -1
  123. package/lib/components/VExpansionPanel/VExpansionPanelTitle.js +10 -10
  124. package/lib/components/VExpansionPanel/VExpansionPanelTitle.js.map +1 -1
  125. package/lib/components/VExpansionPanel/VExpansionPanels.js +4 -4
  126. package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  127. package/lib/components/VFab/VFab.js +7 -7
  128. package/lib/components/VFab/VFab.js.map +1 -1
  129. package/lib/components/VField/VField.js +20 -18
  130. package/lib/components/VField/VField.js.map +1 -1
  131. package/lib/components/VField/VFieldLabel.js +4 -4
  132. package/lib/components/VField/VFieldLabel.js.map +1 -1
  133. package/lib/components/VFileInput/VFileInput.js +5 -5
  134. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  135. package/lib/components/VFooter/VFooter.js +4 -4
  136. package/lib/components/VFooter/VFooter.js.map +1 -1
  137. package/lib/components/VForm/VForm.js +4 -4
  138. package/lib/components/VForm/VForm.js.map +1 -1
  139. package/lib/components/VGrid/VContainer.js +4 -4
  140. package/lib/components/VGrid/VContainer.js.map +1 -1
  141. package/lib/components/VIcon/VIcon.js +5 -5
  142. package/lib/components/VIcon/VIcon.js.map +1 -1
  143. package/lib/components/VImg/VImg.js +19 -19
  144. package/lib/components/VImg/VImg.js.map +1 -1
  145. package/lib/components/VInfiniteScroll/VInfiniteScroll.js +10 -10
  146. package/lib/components/VInfiniteScroll/VInfiniteScroll.js.map +1 -1
  147. package/lib/components/VInput/InputIcon.d.ts +1 -1
  148. package/lib/components/VInput/InputIcon.js +5 -4
  149. package/lib/components/VInput/InputIcon.js.map +1 -1
  150. package/lib/components/VInput/VInput.js +9 -9
  151. package/lib/components/VInput/VInput.js.map +1 -1
  152. package/lib/components/VItemGroup/VItemGroup.js +3 -3
  153. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  154. package/lib/components/VLabel/VLabel.js +5 -5
  155. package/lib/components/VLabel/VLabel.js.map +1 -1
  156. package/lib/components/VLayout/VLayout.js +4 -4
  157. package/lib/components/VLayout/VLayout.js.map +1 -1
  158. package/lib/components/VLayout/VLayoutItem.js +4 -4
  159. package/lib/components/VLayout/VLayoutItem.js.map +1 -1
  160. package/lib/components/VLazy/VLazy.js +6 -6
  161. package/lib/components/VLazy/VLazy.js.map +1 -1
  162. package/lib/components/VList/VList.js +4 -4
  163. package/lib/components/VList/VList.js.map +1 -1
  164. package/lib/components/VList/VListGroup.js +5 -5
  165. package/lib/components/VList/VListGroup.js.map +1 -1
  166. package/lib/components/VList/VListItem.js +11 -11
  167. package/lib/components/VList/VListItem.js.map +1 -1
  168. package/lib/components/VList/VListItemAction.js +4 -4
  169. package/lib/components/VList/VListItemAction.js.map +1 -1
  170. package/lib/components/VList/VListItemMedia.js +4 -4
  171. package/lib/components/VList/VListItemMedia.js.map +1 -1
  172. package/lib/components/VList/VListItemSubtitle.js +4 -4
  173. package/lib/components/VList/VListItemSubtitle.js.map +1 -1
  174. package/lib/components/VList/VListSubheader.js +6 -6
  175. package/lib/components/VList/VListSubheader.js.map +1 -1
  176. package/lib/components/VLocaleProvider/VLocaleProvider.js +4 -4
  177. package/lib/components/VLocaleProvider/VLocaleProvider.js.map +1 -1
  178. package/lib/components/VMain/VMain.js +5 -5
  179. package/lib/components/VMain/VMain.js.map +1 -1
  180. package/lib/components/VMessages/VMessages.js +4 -4
  181. package/lib/components/VMessages/VMessages.js.map +1 -1
  182. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +7 -7
  183. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  184. package/lib/components/VNavigationDrawer/touch.js +2 -4
  185. package/lib/components/VNavigationDrawer/touch.js.map +1 -1
  186. package/lib/components/VNumberInput/VNumberInput.js +38 -22
  187. package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
  188. package/lib/components/VOtpInput/VOtpInput.js +7 -7
  189. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  190. package/lib/components/VOverlay/VOverlay.js +8 -8
  191. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  192. package/lib/components/VOverlay/locationStrategies.js +16 -8
  193. package/lib/components/VOverlay/locationStrategies.js.map +1 -1
  194. package/lib/components/VPagination/VPagination.js +11 -11
  195. package/lib/components/VPagination/VPagination.js.map +1 -1
  196. package/lib/components/VParallax/VParallax.js +4 -4
  197. package/lib/components/VParallax/VParallax.js.map +1 -1
  198. package/lib/components/VProgressCircular/VProgressCircular.js +14 -14
  199. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  200. package/lib/components/VProgressLinear/VProgressLinear.js +26 -26
  201. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  202. package/lib/components/VRadioGroup/VRadioGroup.js +2 -2
  203. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  204. package/lib/components/VRangeSlider/VRangeSlider.js +5 -5
  205. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  206. package/lib/components/VRating/VRating.js +14 -14
  207. package/lib/components/VRating/VRating.js.map +1 -1
  208. package/lib/components/VResponsive/VResponsive.js +9 -9
  209. package/lib/components/VResponsive/VResponsive.js.map +1 -1
  210. package/lib/components/VSelect/VSelect.js +43 -14
  211. package/lib/components/VSelect/VSelect.js.map +1 -1
  212. package/lib/components/VSelectionControl/VSelectionControl.js +11 -11
  213. package/lib/components/VSelectionControl/VSelectionControl.js.map +1 -1
  214. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js +5 -5
  215. package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js.map +1 -1
  216. package/lib/components/VSheet/VSheet.js +3 -3
  217. package/lib/components/VSheet/VSheet.js.map +1 -1
  218. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +4 -4
  219. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  220. package/lib/components/VSlideGroup/VSlideGroup.js +12 -12
  221. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  222. package/lib/components/VSlider/VSlider.js +4 -4
  223. package/lib/components/VSlider/VSlider.js.map +1 -1
  224. package/lib/components/VSlider/VSliderThumb.js +19 -19
  225. package/lib/components/VSlider/VSliderThumb.js.map +1 -1
  226. package/lib/components/VSlider/VSliderTrack.js +23 -23
  227. package/lib/components/VSlider/VSliderTrack.js.map +1 -1
  228. package/lib/components/VSlider/slider.js +1 -1
  229. package/lib/components/VSlider/slider.js.map +1 -1
  230. package/lib/components/VSnackbar/VSnackbar.js +4 -4
  231. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  232. package/lib/components/VSnackbarQueue/VSnackbarQueue.js +3 -3
  233. package/lib/components/VSnackbarQueue/VSnackbarQueue.js.map +1 -1
  234. package/lib/components/VSparkline/VBarline.js +12 -12
  235. package/lib/components/VSparkline/VBarline.js.map +1 -1
  236. package/lib/components/VSparkline/VTrendline.js +8 -8
  237. package/lib/components/VSparkline/VTrendline.js.map +1 -1
  238. package/lib/components/VStepper/VStepper.js +2 -2
  239. package/lib/components/VStepper/VStepper.js.map +1 -1
  240. package/lib/components/VStepper/VStepperActions.js +2 -2
  241. package/lib/components/VStepper/VStepperActions.js.map +1 -1
  242. package/lib/components/VStepper/VStepperItem.js +10 -10
  243. package/lib/components/VStepper/VStepperItem.js.map +1 -1
  244. package/lib/components/VSwitch/VSwitch.js +10 -10
  245. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  246. package/lib/components/VSystemBar/VSystemBar.js +4 -4
  247. package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
  248. package/lib/components/VTable/VTable.js +8 -8
  249. package/lib/components/VTable/VTable.js.map +1 -1
  250. package/lib/components/VTabs/VTab.js +4 -4
  251. package/lib/components/VTabs/VTab.js.map +1 -1
  252. package/lib/components/VTabs/VTabs.js +2 -2
  253. package/lib/components/VTabs/VTabs.js.map +1 -1
  254. package/lib/components/VTextField/VTextField.js +12 -12
  255. package/lib/components/VTextField/VTextField.js.map +1 -1
  256. package/lib/components/VTextarea/VTextarea.js +10 -10
  257. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  258. package/lib/components/VThemeProvider/VThemeProvider.js +3 -3
  259. package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
  260. package/lib/components/VTimeline/VTimeline.js +5 -5
  261. package/lib/components/VTimeline/VTimeline.js.map +1 -1
  262. package/lib/components/VTimeline/VTimelineDivider.js +17 -17
  263. package/lib/components/VTimeline/VTimelineDivider.js.map +1 -1
  264. package/lib/components/VTimeline/VTimelineItem.js +9 -9
  265. package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
  266. package/lib/components/VToolbar/VToolbar.js +13 -13
  267. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  268. package/lib/components/VToolbar/VToolbarItems.js +4 -4
  269. package/lib/components/VToolbar/VToolbarItems.js.map +1 -1
  270. package/lib/components/VToolbar/VToolbarTitle.js +4 -4
  271. package/lib/components/VToolbar/VToolbarTitle.js.map +1 -1
  272. package/lib/components/VVirtualScroll/VVirtualScroll.js +13 -13
  273. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  274. package/lib/components/VVirtualScroll/VVirtualScrollItem.js +3 -3
  275. package/lib/components/VVirtualScroll/VVirtualScrollItem.js.map +1 -1
  276. package/lib/components/VWindow/VWindow.js +13 -13
  277. package/lib/components/VWindow/VWindow.js.map +1 -1
  278. package/lib/components/VWindow/VWindowItem.js +6 -6
  279. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  280. package/lib/composables/filter.js +8 -8
  281. package/lib/composables/filter.js.map +1 -1
  282. package/lib/composables/goto.js +1 -1
  283. package/lib/composables/goto.js.map +1 -1
  284. package/lib/composables/icons.js +6 -6
  285. package/lib/composables/icons.js.map +1 -1
  286. package/lib/composables/loader.js +3 -3
  287. package/lib/composables/loader.js.map +1 -1
  288. package/lib/composables/variant.js +5 -5
  289. package/lib/composables/variant.js.map +1 -1
  290. package/lib/entry-bundler.js +1 -1
  291. package/lib/framework.d.ts +62 -62
  292. package/lib/framework.js +1 -1
  293. package/lib/labs/VCalendar/VCalendar.js +15 -15
  294. package/lib/labs/VCalendar/VCalendar.js.map +1 -1
  295. package/lib/labs/VCalendar/VCalendarDay.js +4 -4
  296. package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
  297. package/lib/labs/VCalendar/VCalendarHeader.js +4 -4
  298. package/lib/labs/VCalendar/VCalendarHeader.js.map +1 -1
  299. package/lib/labs/VCalendar/VCalendarInterval.js +10 -10
  300. package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
  301. package/lib/labs/VCalendar/VCalendarIntervalEvent.js +2 -2
  302. package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
  303. package/lib/labs/VCalendar/VCalendarMonthDay.js +6 -6
  304. package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
  305. package/lib/labs/VColorInput/VColorInput.js +3 -3
  306. package/lib/labs/VColorInput/VColorInput.js.map +1 -1
  307. package/lib/labs/VDateInput/VDateInput.js +2 -2
  308. package/lib/labs/VDateInput/VDateInput.js.map +1 -1
  309. package/lib/labs/VFileUpload/VFileUpload.js +9 -9
  310. package/lib/labs/VFileUpload/VFileUpload.js.map +1 -1
  311. package/lib/labs/VFileUpload/VFileUploadItem.js +3 -3
  312. package/lib/labs/VFileUpload/VFileUploadItem.js.map +1 -1
  313. package/lib/labs/VIconBtn/VIconBtn.js +7 -7
  314. package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
  315. package/lib/labs/VPicker/VPicker.js +7 -7
  316. package/lib/labs/VPicker/VPicker.js.map +1 -1
  317. package/lib/labs/VPullToRefresh/VPullToRefresh.js +13 -13
  318. package/lib/labs/VPullToRefresh/VPullToRefresh.js.map +1 -1
  319. package/lib/labs/VStepperVertical/VStepperVertical.js +2 -2
  320. package/lib/labs/VStepperVertical/VStepperVertical.js.map +1 -1
  321. package/lib/labs/VStepperVertical/VStepperVerticalItem.js +5 -5
  322. package/lib/labs/VStepperVertical/VStepperVerticalItem.js.map +1 -1
  323. package/lib/labs/VTimePicker/VTimePicker.js +2 -2
  324. package/lib/labs/VTimePicker/VTimePicker.js.map +1 -1
  325. package/lib/labs/VTimePicker/VTimePickerClock.js +15 -15
  326. package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
  327. package/lib/labs/VTimePicker/VTimePickerControls.js +24 -24
  328. package/lib/labs/VTimePicker/VTimePickerControls.js.map +1 -1
  329. package/lib/labs/VTreeview/VTreeviewChildren.js +2 -2
  330. package/lib/labs/VTreeview/VTreeviewChildren.js.map +1 -1
  331. package/lib/labs/VTreeview/VTreeviewGroup.js +2 -2
  332. package/lib/labs/VTreeview/VTreeviewGroup.js.map +1 -1
  333. package/lib/labs/VTreeview/VTreeviewItem.js +3 -3
  334. package/lib/labs/VTreeview/VTreeviewItem.js.map +1 -1
  335. package/lib/util/box.d.ts +1 -0
  336. package/lib/util/box.js +27 -0
  337. package/lib/util/box.js.map +1 -1
  338. package/lib/util/helpers.d.ts +1 -0
  339. package/lib/util/helpers.js +15 -0
  340. package/lib/util/helpers.js.map +1 -1
  341. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"VPicker.js","names":["VPickerTitle","VDefaultsProvider","makeVSheetProps","VSheet","useBackgroundColor","genericComponent","propsFactory","useRender","makeVPickerProps","bgColor","String","divided","Boolean","landscape","title","hideHeader","VPicker","name","props","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","color","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 { 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 divided: Boolean,\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(() => 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--divided': props.divided,\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,6CAEhC;AAAA,SACSC,kBAAkB,sCAE3B;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,+BAElD;AAQA,OAAO,MAAMC,gBAAgB,GAAGF,YAAY,CAAC;EAC3CG,OAAO,EAAEC,MAAM;EACfC,OAAO,EAAEC,OAAO;EAChBC,SAAS,EAAED,OAAO;EAClBE,KAAK,EAAEJ,MAAM;EACbK,UAAU,EAAEH,OAAO;EAEnB,GAAGV,eAAe,CAAC;AACrB,CAAC,EAAE,SAAS,CAAC;AAEb,OAAO,MAAMc,OAAO,GAAGX,gBAAgB,CAAe,CAAC,CAAC;EACtDY,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAEV,gBAAgB,CAAC,CAAC;EAEzBW,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,sBAAsB;MAAEC;IAAsB,CAAC,GAAGnB,kBAAkB,CAAC,MAAMc,KAAK,CAACM,KAAK,CAAC;IAC/FjB,SAAS,CAAC,MAAM;MACd,MAAMkB,UAAU,GAAGtB,MAAM,CAACuB,WAAW,CAACR,KAAK,CAAC;MAC5C,MAAMS,QAAQ,GAAG,CAAC,EAAET,KAAK,CAACJ,KAAK,IAAIO,KAAK,CAACP,KAAK,CAAC;MAE/C,OAAAc,YAAA,CAAAzB,MAAA,EAAA0B,WAAA,CAESJ,UAAU;QAAA,SACPP,KAAK,CAACT,OAAO;QAAA,SACd,CACL,UAAU,EACV;UACE,mBAAmB,EAAES,KAAK,CAACP,OAAO;UAClC,qBAAqB,EAAEO,KAAK,CAACL,SAAS;UACtC,wBAAwB,EAAE,CAAC,CAACQ,KAAK,CAACS;QACpC,CAAC,EACDZ,KAAK,CAACa,KAAK,CACZ;QAAA,SACOb,KAAK,CAACc;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjB,CAACf,KAAK,CAACH,UAAU,IAAAa,YAAA;UAAA;UAAA,SAGR,CACLN,sBAAsB,CAACY,KAAK,CAC7B;UAAA,SACM,CACLX,qBAAqB,CAACW,KAAK;QAC5B,IAECP,QAAQ,IAAAC,YAAA,CAAA5B,YAAA;UAAA;QAAA;UAAAiC,OAAA,EAAAA,CAAA,MAEJZ,KAAK,CAACP,KAAK,GAAG,CAAC,IAAII,KAAK,CAACJ,KAAK;QAAA,EAEnC,EAECO,KAAK,CAACc,MAAM,IAAAP,YAAA;UAAA;QAAA,IAERP,KAAK,CAACc,MAAM,CAAC,CAAC,EAEnB,EAEJ,EAAAP,YAAA;UAAA;QAAA,IAGGP,KAAK,CAACY,OAAO,GAAG,CAAC,IAGnBZ,KAAK,CAACS,OAAO,IAAAF,YAAA,CAAA3B,iBAAA;UAAA,YAED;YACRmC,IAAI,EAAE;cACJC,IAAI,EAAE,IAAI;cACVC,OAAO,EAAE;YACX;UACF;QAAC;UAAAL,OAAA,EAAAA,CAAA,MAAAL,YAAA;YAAA;UAAA,IAGGP,KAAK,CAACS,OAAO,CAAC,CAAC;QAAA,EAGtB;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"VPicker.js","names":["VPickerTitle","VDefaultsProvider","makeVSheetProps","VSheet","useBackgroundColor","genericComponent","propsFactory","useRender","makeVPickerProps","bgColor","String","divided","Boolean","landscape","title","hideHeader","VPicker","name","props","setup","_ref","slots","backgroundColorClasses","backgroundColorStyles","color","sheetProps","filterProps","hasTitle","_createVNode","_mergeProps","actions","class","style","default","_createElementVNode","_normalizeClass","value","_normalizeStyle","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 { 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 divided: Boolean,\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(() => 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--divided': props.divided,\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,6CAEhC;AAAA,SACSC,kBAAkB,sCAE3B;AAAA,SACSC,gBAAgB,EAAEC,YAAY,EAAEC,SAAS,+BAElD;AAQA,OAAO,MAAMC,gBAAgB,GAAGF,YAAY,CAAC;EAC3CG,OAAO,EAAEC,MAAM;EACfC,OAAO,EAAEC,OAAO;EAChBC,SAAS,EAAED,OAAO;EAClBE,KAAK,EAAEJ,MAAM;EACbK,UAAU,EAAEH,OAAO;EAEnB,GAAGV,eAAe,CAAC;AACrB,CAAC,EAAE,SAAS,CAAC;AAEb,OAAO,MAAMc,OAAO,GAAGX,gBAAgB,CAAe,CAAC,CAAC;EACtDY,IAAI,EAAE,SAAS;EAEfC,KAAK,EAAEV,gBAAgB,CAAC,CAAC;EAEzBW,KAAKA,CAAED,KAAK,EAAAE,IAAA,EAAa;IAAA,IAAX;MAAEC;IAAM,CAAC,GAAAD,IAAA;IACrB,MAAM;MAAEE,sBAAsB;MAAEC;IAAsB,CAAC,GAAGnB,kBAAkB,CAAC,MAAMc,KAAK,CAACM,KAAK,CAAC;IAC/FjB,SAAS,CAAC,MAAM;MACd,MAAMkB,UAAU,GAAGtB,MAAM,CAACuB,WAAW,CAACR,KAAK,CAAC;MAC5C,MAAMS,QAAQ,GAAG,CAAC,EAAET,KAAK,CAACJ,KAAK,IAAIO,KAAK,CAACP,KAAK,CAAC;MAE/C,OAAAc,YAAA,CAAAzB,MAAA,EAAA0B,WAAA,CAESJ,UAAU;QAAA,SACPP,KAAK,CAACT,OAAO;QAAA,SACd,CACL,UAAU,EACV;UACE,mBAAmB,EAAES,KAAK,CAACP,OAAO;UAClC,qBAAqB,EAAEO,KAAK,CAACL,SAAS;UACtC,wBAAwB,EAAE,CAAC,CAACQ,KAAK,CAACS;QACpC,CAAC,EACDZ,KAAK,CAACa,KAAK,CACZ;QAAA,SACOb,KAAK,CAACc;MAAK;QAAAC,OAAA,EAAAA,CAAA,MAEjB,CAACf,KAAK,CAACH,UAAU,IAAAmB,mBAAA;UAAA;UAAA,SAAAC,eAAA,CAGR,CACLb,sBAAsB,CAACc,KAAK,CAC7B;UAAA,SAAAC,eAAA,CACM,CACLd,qBAAqB,CAACa,KAAK,CAC5B;QAAA,IAECT,QAAQ,IAAAC,YAAA,CAAA5B,YAAA;UAAA;QAAA;UAAAiC,OAAA,EAAAA,CAAA,MAEJZ,KAAK,CAACP,KAAK,GAAG,CAAC,IAAII,KAAK,CAACJ,KAAK;QAAA,EAEnC,EAECO,KAAK,CAACiB,MAAM,IAAAJ,mBAAA;UAAA;QAAA,IAERb,KAAK,CAACiB,MAAM,CAAC,CAAC,EAEnB,EAEJ,EAAAJ,mBAAA;UAAA;QAAA,IAGGb,KAAK,CAACY,OAAO,GAAG,CAAC,IAGnBZ,KAAK,CAACS,OAAO,IAAAF,YAAA,CAAA3B,iBAAA;UAAA,YAED;YACRsC,IAAI,EAAE;cACJC,IAAI,EAAE,IAAI;cACVC,OAAO,EAAE;YACX;UACF;QAAC;UAAAR,OAAA,EAAAA,CAAA,MAAAC,mBAAA;YAAA;UAAA,IAGGb,KAAK,CAACS,OAAO,CAAC,CAAC;QAAA,EAGtB;MAAA;IAGP,CAAC,CAAC;IAEF,OAAO,CAAC,CAAC;EACX;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode } from "vue";
1
+ import { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle } from "vue";
2
2
  // Styles
3
3
  import "./VPullToRefresh.css";
4
4
 
@@ -75,7 +75,7 @@ export const VPullToRefresh = genericComponent()({
75
75
  goingUp.value = newVal < oldVal;
76
76
  });
77
77
  useRender(() => {
78
- return _createVNode("div", {
78
+ return _createElementVNode("div", {
79
79
  "class": ['v-pull-to-refresh'],
80
80
  "onTouchstart": onTouchstart,
81
81
  "onTouchmove": onTouchmove,
@@ -85,32 +85,32 @@ export const VPullToRefresh = genericComponent()({
85
85
  "onMouseleave": onTouchend,
86
86
  "onMousemove": onTouchmove,
87
87
  "ref": containerRef
88
- }, [_createVNode("div", {
89
- "class": ['v-pull-to-refresh__pull-down', {
88
+ }, [_createElementVNode("div", {
89
+ "class": _normalizeClass(['v-pull-to-refresh__pull-down', {
90
90
  'v-pull-to-refresh__pull-down--touching': touching.value
91
- }],
92
- "style": {
91
+ }]),
92
+ "style": _normalizeStyle({
93
93
  top: convertToUnit(-1 * props.pullDownThreshold + topOffset.value),
94
94
  height: convertToUnit(props.pullDownThreshold)
95
- }
95
+ })
96
96
  }, [slots.pullDownPanel ? slots.pullDownPanel({
97
97
  canRefresh: canRefresh.value,
98
98
  goingUp: goingUp.value,
99
99
  refreshing: refreshing.value
100
- }) : _createVNode("div", {
100
+ }) : _createElementVNode("div", {
101
101
  "class": ['v-pull-to-refresh__pull-down-default']
102
102
  }, [refreshing.value ? _createVNode(VProgressCircular, {
103
103
  "indeterminate": true,
104
104
  "active": false
105
105
  }, null) : _createVNode(VIcon, {
106
106
  "icon": canRefresh.value || goingUp.value ? '$sortAsc' : '$sortDesc'
107
- }, null)])]), _createVNode("div", {
108
- "class": ['v-pull-to-refresh__scroll-container', {
107
+ }, null)])]), _createElementVNode("div", {
108
+ "class": _normalizeClass(['v-pull-to-refresh__scroll-container', {
109
109
  'v-pull-to-refresh__scroll-container--touching': touching.value
110
- }],
111
- "style": {
110
+ }]),
111
+ "style": _normalizeStyle({
112
112
  top: convertToUnit(topOffset.value)
113
- }
113
+ })
114
114
  }, [slots.default?.()])]);
115
115
  });
116
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VPullToRefresh.js","names":["VIcon","VProgressCircular","computed","onMounted","ref","shallowRef","watch","clamp","convertToUnit","genericComponent","getScrollParents","useRender","VPullToRefresh","name","props","disabled","Boolean","pullDownThreshold","type","Number","default","emits","load","options","setup","_ref","slots","emit","touchstartY","scrollParents","touchDiff","containerRef","refreshing","goingUp","touching","canRefresh","value","topOffset","onTouchstart","e","clientY","touches","onTouchmove","touchY","length","scrollTop","onTouchend","done","stopScrolling","forEach","p","style","overflow","newVal","oldVal","_createVNode","top","height","pullDownPanel"],"sources":["../../../src/labs/VPullToRefresh/VPullToRefresh.tsx"],"sourcesContent":["// Styles\nimport './VPullToRefresh.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Utilities\nimport { computed, onMounted, ref, shallowRef, watch } from 'vue'\nimport { clamp, convertToUnit, genericComponent, getScrollParents, useRender } from '@/util'\n\nexport type VPullToRefreshSlots = {\n default: never\n pullDownPanel: {\n canRefresh: boolean\n goingUp: boolean\n refreshing: boolean\n }\n}\n\nexport const VPullToRefresh = genericComponent<VPullToRefreshSlots>()({\n name: 'VPullToRefresh',\n\n props: {\n disabled: Boolean,\n pullDownThreshold: {\n type: Number,\n default: 64,\n },\n },\n\n emits: {\n load: (options: { done: () => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n let touchstartY = 0\n let scrollParents: HTMLElement[] = []\n\n const touchDiff = shallowRef(0)\n const containerRef = ref<HTMLElement>()\n\n const refreshing = shallowRef(false)\n const goingUp = shallowRef(false)\n const touching = shallowRef(false)\n\n const canRefresh = computed(() => touchDiff.value >= props.pullDownThreshold && !refreshing.value)\n const topOffset = computed(() => clamp(touchDiff.value, 0, props.pullDownThreshold))\n\n function onTouchstart (e: TouchEvent | MouseEvent) {\n if (refreshing.value || props.disabled) return\n touching.value = true\n touchstartY = 'clientY' in e ? e.clientY : e.touches[0].clientY\n }\n\n function onTouchmove (e: TouchEvent | MouseEvent) {\n if (refreshing.value || !touching.value || props.disabled) return\n\n const touchY = 'clientY' in e ? e.clientY : e.touches[0].clientY\n\n if (scrollParents.length && !scrollParents[0].scrollTop) {\n touchDiff.value = touchY - touchstartY\n }\n }\n\n function onTouchend (e: TouchEvent | MouseEvent) {\n if (refreshing.value || props.disabled) return\n touching.value = false\n if (canRefresh.value) {\n function done () {\n if (!refreshing.value) return\n touchDiff.value = 0\n refreshing.value = false\n }\n emit('load', { done })\n refreshing.value = true\n } else {\n touchDiff.value = 0\n }\n }\n\n onMounted(() => {\n scrollParents = getScrollParents(containerRef.value)\n })\n\n watch([topOffset, refreshing], () => {\n if (scrollParents.length) {\n const stopScrolling = topOffset.value && !refreshing.value\n scrollParents.forEach(p => p.style.overflow = stopScrolling ? 'hidden' : 'auto')\n }\n })\n\n watch(topOffset, (newVal, oldVal) => {\n goingUp.value = newVal < oldVal\n })\n\n useRender(() => {\n return (\n <div\n class={[\n 'v-pull-to-refresh',\n ]}\n onTouchstart={ onTouchstart }\n onTouchmove={ onTouchmove }\n onTouchend={ onTouchend }\n onMousedown={ onTouchstart }\n onMouseup={ onTouchend }\n onMouseleave={ onTouchend }\n onMousemove={ onTouchmove }\n ref={ containerRef }\n >\n <div\n class={[\n 'v-pull-to-refresh__pull-down',\n {\n 'v-pull-to-refresh__pull-down--touching': touching.value,\n },\n ]}\n style={{\n top: convertToUnit(-1 * props.pullDownThreshold + topOffset.value),\n height: convertToUnit(props.pullDownThreshold),\n }}\n >\n { slots.pullDownPanel\n ? slots.pullDownPanel({\n canRefresh: canRefresh.value,\n goingUp: goingUp.value,\n refreshing: refreshing.value,\n }) : (\n <div\n class={[\n 'v-pull-to-refresh__pull-down-default',\n ]}\n >\n {\n refreshing.value ? (\n <VProgressCircular\n indeterminate\n active={ false }\n />\n ) : (\n <VIcon\n icon={ canRefresh.value || goingUp.value ? '$sortAsc' : '$sortDesc' }\n />\n )\n }\n </div>\n )\n }\n </div>\n <div\n class={[\n 'v-pull-to-refresh__scroll-container',\n {\n 'v-pull-to-refresh__scroll-container--touching': touching.value,\n },\n ]}\n style={{ top: convertToUnit(topOffset.value) }}\n >\n { slots.default?.() }\n </div>\n </div>\n )\n })\n },\n})\n\nexport type VPullToRefresh = InstanceType<typeof VPullToRefresh>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VPullToRefresh.js","names":["VIcon","VProgressCircular","computed","onMounted","ref","shallowRef","watch","clamp","convertToUnit","genericComponent","getScrollParents","useRender","VPullToRefresh","name","props","disabled","Boolean","pullDownThreshold","type","Number","default","emits","load","options","setup","_ref","slots","emit","touchstartY","scrollParents","touchDiff","containerRef","refreshing","goingUp","touching","canRefresh","value","topOffset","onTouchstart","e","clientY","touches","onTouchmove","touchY","length","scrollTop","onTouchend","done","stopScrolling","forEach","p","style","overflow","newVal","oldVal","_createElementVNode","_normalizeClass","_normalizeStyle","top","height","pullDownPanel","_createVNode"],"sources":["../../../src/labs/VPullToRefresh/VPullToRefresh.tsx"],"sourcesContent":["// Styles\nimport './VPullToRefresh.sass'\n\n// Components\nimport { VIcon } from '@/components/VIcon'\nimport { VProgressCircular } from '@/components/VProgressCircular'\n\n// Utilities\nimport { computed, onMounted, ref, shallowRef, watch } from 'vue'\nimport { clamp, convertToUnit, genericComponent, getScrollParents, useRender } from '@/util'\n\nexport type VPullToRefreshSlots = {\n default: never\n pullDownPanel: {\n canRefresh: boolean\n goingUp: boolean\n refreshing: boolean\n }\n}\n\nexport const VPullToRefresh = genericComponent<VPullToRefreshSlots>()({\n name: 'VPullToRefresh',\n\n props: {\n disabled: Boolean,\n pullDownThreshold: {\n type: Number,\n default: 64,\n },\n },\n\n emits: {\n load: (options: { done: () => void }) => true,\n },\n\n setup (props, { slots, emit }) {\n let touchstartY = 0\n let scrollParents: HTMLElement[] = []\n\n const touchDiff = shallowRef(0)\n const containerRef = ref<HTMLElement>()\n\n const refreshing = shallowRef(false)\n const goingUp = shallowRef(false)\n const touching = shallowRef(false)\n\n const canRefresh = computed(() => touchDiff.value >= props.pullDownThreshold && !refreshing.value)\n const topOffset = computed(() => clamp(touchDiff.value, 0, props.pullDownThreshold))\n\n function onTouchstart (e: TouchEvent | MouseEvent) {\n if (refreshing.value || props.disabled) return\n touching.value = true\n touchstartY = 'clientY' in e ? e.clientY : e.touches[0].clientY\n }\n\n function onTouchmove (e: TouchEvent | MouseEvent) {\n if (refreshing.value || !touching.value || props.disabled) return\n\n const touchY = 'clientY' in e ? e.clientY : e.touches[0].clientY\n\n if (scrollParents.length && !scrollParents[0].scrollTop) {\n touchDiff.value = touchY - touchstartY\n }\n }\n\n function onTouchend (e: TouchEvent | MouseEvent) {\n if (refreshing.value || props.disabled) return\n touching.value = false\n if (canRefresh.value) {\n function done () {\n if (!refreshing.value) return\n touchDiff.value = 0\n refreshing.value = false\n }\n emit('load', { done })\n refreshing.value = true\n } else {\n touchDiff.value = 0\n }\n }\n\n onMounted(() => {\n scrollParents = getScrollParents(containerRef.value)\n })\n\n watch([topOffset, refreshing], () => {\n if (scrollParents.length) {\n const stopScrolling = topOffset.value && !refreshing.value\n scrollParents.forEach(p => p.style.overflow = stopScrolling ? 'hidden' : 'auto')\n }\n })\n\n watch(topOffset, (newVal, oldVal) => {\n goingUp.value = newVal < oldVal\n })\n\n useRender(() => {\n return (\n <div\n class={[\n 'v-pull-to-refresh',\n ]}\n onTouchstart={ onTouchstart }\n onTouchmove={ onTouchmove }\n onTouchend={ onTouchend }\n onMousedown={ onTouchstart }\n onMouseup={ onTouchend }\n onMouseleave={ onTouchend }\n onMousemove={ onTouchmove }\n ref={ containerRef }\n >\n <div\n class={[\n 'v-pull-to-refresh__pull-down',\n {\n 'v-pull-to-refresh__pull-down--touching': touching.value,\n },\n ]}\n style={{\n top: convertToUnit(-1 * props.pullDownThreshold + topOffset.value),\n height: convertToUnit(props.pullDownThreshold),\n }}\n >\n { slots.pullDownPanel\n ? slots.pullDownPanel({\n canRefresh: canRefresh.value,\n goingUp: goingUp.value,\n refreshing: refreshing.value,\n }) : (\n <div\n class={[\n 'v-pull-to-refresh__pull-down-default',\n ]}\n >\n {\n refreshing.value ? (\n <VProgressCircular\n indeterminate\n active={ false }\n />\n ) : (\n <VIcon\n icon={ canRefresh.value || goingUp.value ? '$sortAsc' : '$sortDesc' }\n />\n )\n }\n </div>\n )\n }\n </div>\n <div\n class={[\n 'v-pull-to-refresh__scroll-container',\n {\n 'v-pull-to-refresh__scroll-container--touching': touching.value,\n },\n ]}\n style={{ top: convertToUnit(topOffset.value) }}\n >\n { slots.default?.() }\n </div>\n </div>\n )\n })\n },\n})\n\nexport type VPullToRefresh = InstanceType<typeof VPullToRefresh>\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { Fragment as _Fragment, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
1
+ import { Fragment as _Fragment, createVNode as _createVNode, createElementVNode as _createElementVNode, mergeProps as _mergeProps } from "vue";
2
2
  // Components
3
3
  import { VStepperVerticalItem } from "./VStepperVerticalItem.js";
4
4
  import { makeVExpansionPanelsProps, VExpansionPanels } from "../../components/VExpansionPanel/VExpansionPanels.js";
@@ -85,7 +85,7 @@ export const VStepperVertical = genericComponent()({
85
85
  prev,
86
86
  next
87
87
  } = _ref2;
88
- return _createVNode(_Fragment, null, [items.value.map(_ref3 => {
88
+ return _createElementVNode(_Fragment, null, [items.value.map(_ref3 => {
89
89
  let {
90
90
  raw,
91
91
  ...item
@@ -1 +1 @@
1
- {"version":3,"file":"VStepperVertical.js","names":["VStepperVerticalItem","makeVExpansionPanelsProps","VExpansionPanels","makeStepperProps","provideDefaults","useProxiedModel","computed","ref","toRefs","genericComponent","getPropertyFromItem","omit","propsFactory","useRender","makeVStepperVerticalProps","prevText","type","String","default","nextText","mandatory","variant","VStepperVertical","name","props","emits","val","setup","_ref","slots","vExpansionPanelsRef","color","eager","editable","hideActions","model","items","map","item","index","title","itemTitle","value","itemValue","raw","static","VStepperActions","expansionPanelProps","filterProps","_createVNode","_mergeProps","$event","altLabels","flat","nonLinear","mobile","class","style","_ref2","prev","next","_Fragment","_ref3","step"],"sources":["../../../src/labs/VStepperVertical/VStepperVertical.tsx"],"sourcesContent":["// Components\nimport { VStepperVerticalItem } from './VStepperVerticalItem'\nimport { makeVExpansionPanelsProps, VExpansionPanels } from '@/components/VExpansionPanel/VExpansionPanels'\nimport { makeStepperProps } from '@/components/VStepper/VStepper'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperVerticalItemActionSlot } from './VStepperVerticalItem'\nimport type { VStepperSlot } from '@/components/VStepper/VStepper'\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\nimport type { GenericProps } from '@/util'\n\nexport type VStepperVerticalSlots<T> = {\n actions: StepperVerticalItemActionSlot<T>\n default: VStepperSlot & { step: T }\n icon: StepperItemSlot<T>\n title: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n} & {\n [key: `header-item.${string}`]: StepperItemSlot<T>\n [key: `item.${string}`]: StepperItemSlot<T>\n}\n\nexport const makeVStepperVerticalProps = propsFactory({\n prevText: {\n type: String,\n default: '$vuetify.stepper.prev',\n },\n nextText: {\n type: String,\n default: '$vuetify.stepper.next',\n },\n\n ...makeStepperProps(),\n ...omit(makeVExpansionPanelsProps({\n mandatory: 'force' as const,\n variant: 'accordion' as const,\n }), ['static']),\n}, 'VStepperVertical')\n\nexport const VStepperVertical = genericComponent<new <T = number>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VStepperVerticalSlots<T>,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VStepperVertical',\n\n props: makeVStepperVerticalProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const vExpansionPanelsRef = ref<typeof VExpansionPanels>()\n const { color, eager, editable, prevText, nextText, hideActions } = toRefs(props)\n\n const model = useProxiedModel(props, 'modelValue')\n const items = computed(() => props.items.map((item, index) => {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, index + 1)\n\n return {\n title,\n value,\n raw: item,\n }\n }))\n\n provideDefaults({\n VStepperVerticalItem: {\n color,\n eager,\n editable,\n prevText,\n nextText,\n hideActions,\n static: true,\n },\n VStepperActions: {\n color,\n },\n })\n\n useRender(() => {\n const expansionPanelProps = VExpansionPanels.filterProps(props)\n\n return (\n <VExpansionPanels\n { ...expansionPanelProps }\n v-model={ model.value }\n ref={ vExpansionPanelsRef }\n class={[\n 'v-stepper',\n {\n 'v-stepper--alt-labels': props.altLabels,\n 'v-stepper--flat': props.flat,\n 'v-stepper--non-linear': props.nonLinear,\n 'v-stepper--mobile': props.mobile,\n },\n props.class,\n ]}\n style={ props.style }\n >\n {{\n ...slots,\n default: ({ prev, next }) => {\n return (\n <>\n { items.value.map(({ raw, ...item }) => (\n <VStepperVerticalItem { ...item }>\n {{\n ...slots,\n default: slots[`item.${item.value}`],\n }}\n </VStepperVerticalItem>\n ))}\n\n { slots.default?.({ prev, next, step: model.value }) }\n </>\n )\n },\n }}\n </VExpansionPanels>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVertical = InstanceType<typeof VStepperVertical>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VStepperVertical.js","names":["VStepperVerticalItem","makeVExpansionPanelsProps","VExpansionPanels","makeStepperProps","provideDefaults","useProxiedModel","computed","ref","toRefs","genericComponent","getPropertyFromItem","omit","propsFactory","useRender","makeVStepperVerticalProps","prevText","type","String","default","nextText","mandatory","variant","VStepperVertical","name","props","emits","val","setup","_ref","slots","vExpansionPanelsRef","color","eager","editable","hideActions","model","items","map","item","index","title","itemTitle","value","itemValue","raw","static","VStepperActions","expansionPanelProps","filterProps","_createVNode","_mergeProps","$event","altLabels","flat","nonLinear","mobile","class","style","_ref2","prev","next","_createElementVNode","_Fragment","_ref3","step"],"sources":["../../../src/labs/VStepperVertical/VStepperVertical.tsx"],"sourcesContent":["// Components\nimport { VStepperVerticalItem } from './VStepperVerticalItem'\nimport { makeVExpansionPanelsProps, VExpansionPanels } from '@/components/VExpansionPanel/VExpansionPanels'\nimport { makeStepperProps } from '@/components/VStepper/VStepper'\n\n// Composables\nimport { provideDefaults } from '@/composables/defaults'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, ref, toRefs } from 'vue'\nimport { genericComponent, getPropertyFromItem, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperVerticalItemActionSlot } from './VStepperVerticalItem'\nimport type { VStepperSlot } from '@/components/VStepper/VStepper'\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\nimport type { GenericProps } from '@/util'\n\nexport type VStepperVerticalSlots<T> = {\n actions: StepperVerticalItemActionSlot<T>\n default: VStepperSlot & { step: T }\n icon: StepperItemSlot<T>\n title: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n} & {\n [key: `header-item.${string}`]: StepperItemSlot<T>\n [key: `item.${string}`]: StepperItemSlot<T>\n}\n\nexport const makeVStepperVerticalProps = propsFactory({\n prevText: {\n type: String,\n default: '$vuetify.stepper.prev',\n },\n nextText: {\n type: String,\n default: '$vuetify.stepper.next',\n },\n\n ...makeStepperProps(),\n ...omit(makeVExpansionPanelsProps({\n mandatory: 'force' as const,\n variant: 'accordion' as const,\n }), ['static']),\n}, 'VStepperVertical')\n\nexport const VStepperVertical = genericComponent<new <T = number>(\n props: {\n modelValue?: T\n 'onUpdate:modelValue'?: (value: T) => void\n },\n slots: VStepperVerticalSlots<T>,\n) => GenericProps<typeof props, typeof slots>>()({\n name: 'VStepperVertical',\n\n props: makeVStepperVerticalProps(),\n\n emits: {\n 'update:modelValue': (val: any) => true,\n },\n\n setup (props, { slots }) {\n const vExpansionPanelsRef = ref<typeof VExpansionPanels>()\n const { color, eager, editable, prevText, nextText, hideActions } = toRefs(props)\n\n const model = useProxiedModel(props, 'modelValue')\n const items = computed(() => props.items.map((item, index) => {\n const title = getPropertyFromItem(item, props.itemTitle, item)\n const value = getPropertyFromItem(item, props.itemValue, index + 1)\n\n return {\n title,\n value,\n raw: item,\n }\n }))\n\n provideDefaults({\n VStepperVerticalItem: {\n color,\n eager,\n editable,\n prevText,\n nextText,\n hideActions,\n static: true,\n },\n VStepperActions: {\n color,\n },\n })\n\n useRender(() => {\n const expansionPanelProps = VExpansionPanels.filterProps(props)\n\n return (\n <VExpansionPanels\n { ...expansionPanelProps }\n v-model={ model.value }\n ref={ vExpansionPanelsRef }\n class={[\n 'v-stepper',\n {\n 'v-stepper--alt-labels': props.altLabels,\n 'v-stepper--flat': props.flat,\n 'v-stepper--non-linear': props.nonLinear,\n 'v-stepper--mobile': props.mobile,\n },\n props.class,\n ]}\n style={ props.style }\n >\n {{\n ...slots,\n default: ({ prev, next }) => {\n return (\n <>\n { items.value.map(({ raw, ...item }) => (\n <VStepperVerticalItem { ...item }>\n {{\n ...slots,\n default: slots[`item.${item.value}`],\n }}\n </VStepperVerticalItem>\n ))}\n\n { slots.default?.({ prev, next, step: model.value }) }\n </>\n )\n },\n }}\n </VExpansionPanels>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVertical = InstanceType<typeof VStepperVertical>\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { Fragment as _Fragment, createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
1
+ import { Fragment as _Fragment, createVNode as _createVNode, createElementVNode as _createElementVNode, mergeProps as _mergeProps } from "vue";
2
2
  // Styles
3
3
  import "./VStepperVerticalItem.css";
4
4
 
@@ -93,7 +93,7 @@ export const VStepperVerticalItem = genericComponent()({
93
93
  "hide-actions": false,
94
94
  "value": step.value
95
95
  }), {
96
- title: () => _createVNode(_Fragment, null, [_createVNode(VAvatar, {
96
+ title: () => _createElementVNode(_Fragment, null, [_createVNode(VAvatar, {
97
97
  "key": "stepper-avatar",
98
98
  "class": "v-stepper-vertical-item__avatar",
99
99
  "color": hasColor ? props.color : undefined,
@@ -103,12 +103,12 @@ export const VStepperVerticalItem = genericComponent()({
103
103
  default: () => [slots.icon?.(slotProps.value) ?? (icon.value ? _createVNode(VIcon, {
104
104
  "icon": icon.value
105
105
  }, null) : step.value)]
106
- }), _createVNode("div", null, [_createVNode("div", {
106
+ }), _createElementVNode("div", null, [_createElementVNode("div", {
107
107
  "class": "v-stepper-vertical-item__title"
108
- }, [slots.title?.(slotProps.value) ?? props.title]), _createVNode("div", {
108
+ }, [slots.title?.(slotProps.value) ?? props.title]), _createElementVNode("div", {
109
109
  "class": "v-stepper-vertical-item__subtitle"
110
110
  }, [slots.subtitle?.(slotProps.value) ?? props.subtitle])])]),
111
- text: () => _createVNode(_Fragment, null, [slots.default?.(slotProps.value) ?? props.text, hasActions && _createVNode(VDefaultsProvider, {
111
+ text: () => _createElementVNode(_Fragment, null, [slots.default?.(slotProps.value) ?? props.text, hasActions && _createVNode(VDefaultsProvider, {
112
112
  "defaults": {
113
113
  VStepperVerticalActions: {
114
114
  disabled: disabled.value,
@@ -1 +1 @@
1
- {"version":3,"file":"VStepperVerticalItem.js","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type StepperVerticalItemActionSlot<T = any> = StepperItemSlot<T> & {\n next: () => void\n prev: () => void\n}\n\nexport type VStepperVerticalItemSlots<T = any> = {\n default: StepperItemSlot<T>\n icon: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n title: StepperItemSlot<T>\n text: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n actions: StepperVerticalItemActionSlot<T>\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n } satisfies StepperItemSlot))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n } satisfies StepperVerticalItemActionSlot))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VStepperVerticalItem.js","names":["VStepperVerticalActions","VAvatar","VDefaultsProvider","makeVExpansionPanelProps","VExpansionPanel","VIcon","makeStepperItemProps","computed","ref","genericComponent","omit","propsFactory","useRender","makeVStepperVerticalItemProps","hideActions","Boolean","expandIcon","collapseIcon","VStepperVerticalItem","name","props","emits","click:next","click:prev","click:finish","setup","_ref","emit","slots","vExpansionPanelRef","step","isNaN","parseInt","value","Number","groupItem","isSelected","isValid","rules","every","handler","canEdit","disabled","editable","hasError","error","hasCompleted","complete","length","isFirst","icon","errorIcon","completeIcon","editIcon","slotProps","title","subtitle","actionProps","prev","onClickPrev","next","onClickNext","isLast","group","hasColor","hasActions","actions","expansionPanelProps","filterProps","_createVNode","_mergeProps","class","style","_createElementVNode","_Fragment","color","undefined","default","text","finish"],"sources":["../../../src/labs/VStepperVertical/VStepperVerticalItem.tsx"],"sourcesContent":["// Styles\nimport './VStepperVerticalItem.sass'\n\n// Components\nimport { VStepperVerticalActions } from './VStepperVerticalActions'\nimport { VAvatar } from '@/components/VAvatar/VAvatar'\nimport { VDefaultsProvider } from '@/components/VDefaultsProvider/VDefaultsProvider'\nimport { makeVExpansionPanelProps, VExpansionPanel } from '@/components/VExpansionPanel/VExpansionPanel'\nimport { VIcon } from '@/components/VIcon/VIcon'\nimport { makeStepperItemProps } from '@/components/VStepper/VStepperItem'\n\n// Utilities\nimport { computed, ref } from 'vue'\nimport { genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { StepperItemSlot } from '@/components/VStepper/VStepperItem'\n\nexport type StepperVerticalItemActionSlot<T = any> = StepperItemSlot<T> & {\n next: () => void\n prev: () => void\n}\n\nexport type VStepperVerticalItemSlots<T = any> = {\n default: StepperItemSlot<T>\n icon: StepperItemSlot<T>\n subtitle: StepperItemSlot<T>\n title: StepperItemSlot<T>\n text: StepperItemSlot<T>\n prev: StepperVerticalItemActionSlot<T>\n next: StepperVerticalItemActionSlot<T>\n actions: StepperVerticalItemActionSlot<T>\n}\n\nexport const makeVStepperVerticalItemProps = propsFactory({\n hideActions: Boolean,\n\n ...makeStepperItemProps(),\n ...omit(makeVExpansionPanelProps({\n expandIcon: '',\n collapseIcon: '',\n }), ['hideActions']),\n}, 'VStepperVerticalItem')\n\nexport const VStepperVerticalItem = genericComponent<VStepperVerticalItemSlots>()({\n name: 'VStepperVerticalItem',\n\n props: makeVStepperVerticalItemProps(),\n\n emits: {\n 'click:next': () => true,\n 'click:prev': () => true,\n 'click:finish': () => true,\n },\n\n setup (props, { emit, slots }) {\n const vExpansionPanelRef = ref<typeof VExpansionPanel>()\n const step = computed(() => !isNaN(parseInt(props.value)) ? Number(props.value) : props.value)\n const groupItem = computed(() => vExpansionPanelRef.value?.groupItem)\n const isSelected = computed(() => groupItem.value?.isSelected.value ?? false)\n const isValid = computed(() => isSelected.value ? props.rules.every(handler => handler() === true) : null)\n const canEdit = computed(() => !props.disabled && props.editable)\n const hasError = computed(() => props.error || (isSelected.value && !isValid.value))\n const hasCompleted = computed(() => props.complete || (props.rules.length > 0 && isValid.value === true))\n\n const disabled = computed(() => {\n if (props.disabled) return props.disabled\n if (groupItem.value?.isFirst.value) return 'prev'\n\n return false\n })\n const icon = computed(() => {\n if (hasError.value) return props.errorIcon\n if (hasCompleted.value) return props.completeIcon\n if (groupItem.value?.isSelected.value && props.editable) return props.editIcon\n\n return props.icon\n })\n\n const slotProps = computed(() => ({\n canEdit: canEdit.value,\n hasError: hasError.value,\n hasCompleted: hasCompleted.value,\n title: props.title,\n subtitle: props.subtitle,\n step: step.value,\n } satisfies StepperItemSlot))\n\n const actionProps = computed(() => ({\n ...slotProps.value,\n prev: onClickPrev,\n next: onClickNext,\n } satisfies StepperVerticalItemActionSlot))\n\n function onClickNext () {\n emit('click:next')\n\n if (groupItem.value?.isLast.value) return\n\n groupItem.value.group.next()\n }\n\n function onClickPrev () {\n emit('click:prev')\n\n groupItem.value.group.prev()\n }\n\n useRender(() => {\n const hasColor = (\n hasCompleted.value ||\n groupItem.value?.isSelected.value\n ) && (\n !hasError.value &&\n !props.disabled\n )\n\n const hasActions = !props.hideActions || !!slots.actions\n const expansionPanelProps = VExpansionPanel.filterProps(props)\n\n return (\n <VExpansionPanel\n _as=\"VStepperVerticalItem\"\n ref={ vExpansionPanelRef }\n { ...expansionPanelProps }\n class={[\n 'v-stepper-vertical-item',\n {\n 'v-stepper-vertical-item--complete': hasCompleted.value,\n 'v-stepper-vertical-item--disabled': props.disabled,\n 'v-stepper-vertical-item--editable': canEdit.value,\n 'v-stepper-vertical-item--error': hasError.value,\n },\n props.class,\n ]}\n readonly={ !props.editable }\n style={ props.style }\n color=\"\"\n hide-actions={ false }\n value={ step.value }\n >\n {{\n title: () => (\n <>\n <VAvatar\n key=\"stepper-avatar\"\n class=\"v-stepper-vertical-item__avatar\"\n color={ hasColor ? props.color : undefined }\n size={ 24 }\n start\n >\n { slots.icon?.(slotProps.value) ?? (\n icon.value ? (\n <VIcon icon={ icon.value }></VIcon>\n ) : step.value\n )}\n </VAvatar>\n\n <div>\n <div class=\"v-stepper-vertical-item__title\">\n { slots.title?.(slotProps.value) ?? props.title }\n </div>\n\n <div class=\"v-stepper-vertical-item__subtitle\">\n { slots.subtitle?.(slotProps.value) ?? props.subtitle }\n </div>\n </div>\n </>\n ),\n text: () => (\n <>\n { slots.default?.(slotProps.value) ?? props.text }\n\n { hasActions && (\n <VDefaultsProvider\n defaults={{\n VStepperVerticalActions: {\n disabled: disabled.value,\n finish: groupItem.value?.isLast.value,\n },\n }}\n >\n { slots.actions?.(actionProps.value) ?? (\n <VStepperVerticalActions\n onClick:next={ onClickNext }\n onClick:prev={ onClickPrev }\n v-slots={{\n prev: slots.prev ? () => slots.prev?.(actionProps.value) : undefined,\n next: slots.next ? () => slots.next?.(actionProps.value) : undefined,\n }}\n />\n )}\n </VDefaultsProvider>\n )}\n </>\n ),\n }}\n </VExpansionPanel>\n )\n })\n\n return {}\n },\n})\n\nexport type VStepperVerticalItem = InstanceType<typeof VStepperVerticalItem>\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode, mergeProps as _mergeProps } from "vue";
1
+ import { createElementVNode as _createElementVNode, mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
2
2
  // Styles
3
3
  import "./VTimePicker.css";
4
4
 
@@ -228,7 +228,7 @@ export const VTimePicker = genericComponent()({
228
228
  "class": ['v-time-picker', props.class],
229
229
  "style": props.style
230
230
  }), {
231
- title: () => slots.title?.() ?? _createVNode("div", {
231
+ title: () => slots.title?.() ?? _createElementVNode("div", {
232
232
  "class": "v-time-picker__title"
233
233
  }, [t(props.title)]),
234
234
  header: () => _createVNode(VTimePickerControls, _mergeProps(timePickerControlsProps, {
@@ -1 +1 @@
1
- {"version":3,"file":"VTimePicker.js","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","useProxiedModel","computed","onMounted","ref","watch","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","viewMode","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","onChange","emitChange","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType<VTimePickerViewMode>,\n default: 'hour',\n },\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n viewMode={ viewMode.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n viewMode.value === 'hour'\n ? isAllowedHourCb.value\n : (viewMode.value === 'minute'\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ viewMode.value === 'hour' && !isAmPm.value }\n format={ viewMode.value === 'hour'\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"VTimePicker.js","names":["pad","VTimePickerClock","VTimePickerControls","makeVPickerProps","VPicker","useLocale","useProxiedModel","computed","onMounted","ref","watch","createRange","genericComponent","omit","propsFactory","useRender","rangeHours24","rangeHours12am","rangeHours12pm","map","v","range60","makeVTimePickerProps","allowedHours","Function","Array","allowedMinutes","allowedSeconds","ampmInTitle","Boolean","disabled","format","type","String","default","max","min","viewMode","modelValue","readonly","scrollable","useSeconds","title","VTimePicker","name","props","emits","val","setup","_ref","emit","slots","t","inputHour","inputMinute","inputSecond","lazyInputHour","lazyInputMinute","lazyInputSecond","period","controlsRef","clockRef","isAllowedHourCb","cb","includes","minHour","Number","split","maxHour","isAllowedMinuteCb","isHourAllowed","value","minMinute","maxMinute","minTime","maxTime","time","isAllowedSecondCb","isMinuteAllowed","minSecond","maxSecond","isAmPm","setInputData","genValue","emitValue","convert24to12","hour","convert12to24","Date","getHours","getMinutes","getSeconds","minute","second","trim","toLowerCase","match","parseInt","firstAllowed","allowedFn","range","first","find","length","setPeriod","newHour","onInput","onChange","emitChange","pickerProps","filterProps","timePickerControlsProps","timePickerClockProps","_createVNode","_mergeProps","undefined","class","style","_createElementVNode","header","actions"],"sources":["../../../src/labs/VTimePicker/VTimePicker.tsx"],"sourcesContent":["// Styles\nimport './VTimePicker.sass'\n\n// Components\nimport { pad } from './util'\nimport { VTimePickerClock } from './VTimePickerClock'\nimport { VTimePickerControls } from './VTimePickerControls'\nimport { makeVPickerProps, VPicker } from '@/labs/VPicker/VPicker'\n\n// Composables\nimport { useLocale } from '@/composables/locale'\nimport { useProxiedModel } from '@/composables/proxiedModel'\n\n// Utilities\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { createRange, genericComponent, omit, propsFactory, useRender } from '@/util'\n\n// Types\nimport type { PropType } from 'vue'\nimport type { VTimePickerViewMode } from './shared'\nimport type { VPickerSlots } from '@/labs/VPicker/VPicker'\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\n\nexport type VTimePickerSlots = Omit<VPickerSlots, 'header'>\n\nexport const makeVTimePickerProps = propsFactory({\n allowedHours: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedMinutes: [Function, Array] as PropType<AllowFunction | number[]>,\n allowedSeconds: [Function, Array] as PropType<AllowFunction | number[]>,\n ampmInTitle: Boolean,\n disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n },\n max: String,\n min: String,\n viewMode: {\n type: String as PropType<VTimePickerViewMode>,\n default: 'hour',\n },\n modelValue: null as any as PropType<any>,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n ...omit(makeVPickerProps({ title: '$vuetify.timePicker.title' }), ['landscape']),\n}, 'VTimePicker')\n\nexport const VTimePicker = genericComponent<VTimePickerSlots>()({\n name: 'VTimePicker',\n\n props: makeVTimePickerProps(),\n\n emits: {\n 'update:hour': (val: number) => true,\n 'update:minute': (val: number) => true,\n 'update:period': (val: Period) => true,\n 'update:second': (val: number) => true,\n 'update:modelValue': (val: string) => true,\n 'update:viewMode': (val: VTimePickerViewMode) => true,\n },\n\n setup (props, { emit, slots }) {\n const { t } = useLocale()\n const inputHour = ref(null as number | null)\n const inputMinute = ref(null as number | null)\n const inputSecond = ref(null as number | null)\n const lazyInputHour = ref(null as number | null)\n const lazyInputMinute = ref(null as number | null)\n const lazyInputSecond = ref(null as number | null)\n const period = ref('am' as Period)\n const viewMode = useProxiedModel(props, 'viewMode', 'hour')\n const controlsRef = ref<VTimePickerControls | null>(null)\n const clockRef = ref<VTimePickerClock | null>(null)\n\n const isAllowedHourCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n if (props.allowedHours instanceof Array) {\n cb = (val: number) => (props.allowedHours as number[]).includes(val)\n } else {\n cb = props.allowedHours as AllowFunction\n }\n\n if (!props.min && !props.max) return cb\n\n const minHour = props.min ? Number(props.min.split(':')[0]) : 0\n const maxHour = props.max ? Number(props.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= Number(minHour) &&\n val <= Number(maxHour) &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedMinuteCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n if (props.allowedMinutes instanceof Array) {\n cb = (val: number) => (props.allowedMinutes as number[]).includes(val)\n } else {\n cb = props.allowedMinutes as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = props.min ? props.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = props.max ? props.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + Number(minMinute)\n const maxTime = maxHour * 60 + Number(maxMinute)\n\n return (val: number) => {\n const time = 60 * inputHour.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAllowedSecondCb = computed((): AllowFunction => {\n let cb: AllowFunction\n\n const isHourAllowed = !isAllowedHourCb.value || inputHour.value === null || isAllowedHourCb.value(inputHour.value)\n const isMinuteAllowed = isHourAllowed &&\n (!isAllowedMinuteCb.value ||\n inputMinute.value === null ||\n isAllowedMinuteCb.value(inputMinute.value)\n )\n\n if (props.allowedSeconds instanceof Array) {\n cb = (val: number) => (props.allowedSeconds as number[]).includes(val)\n } else {\n cb = props.allowedSeconds as AllowFunction\n }\n\n if (!props.min && !props.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = props.min ? props.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = props.max ? props.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + Number(minSecond || 0)\n const maxTime = maxHour * 3600 + maxMinute * 60 + Number(maxSecond || 0)\n\n return (val: number) => {\n const time = 3600 * inputHour.value! + 60 * inputMinute.value! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n })\n\n const isAmPm = computed((): boolean => {\n return props.format === 'ampm'\n })\n\n watch(() => props.modelValue, val => setInputData(val))\n\n onMounted(() => {\n setInputData(props.modelValue)\n })\n\n function genValue () {\n if (inputHour.value != null && inputMinute.value != null && (!props.useSeconds || inputSecond.value != null)) {\n return `${pad(inputHour.value)}:${pad(inputMinute.value)}` + (props.useSeconds ? `:${pad(inputSecond.value!)}` : '')\n }\n\n return null\n }\n\n function emitValue () {\n const value = genValue()\n if (value !== null) emit('update:modelValue', value)\n }\n\n function convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n function convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n }\n\n function setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n inputHour.value = null\n inputMinute.value = null\n inputSecond.value = null\n } else if (value instanceof Date) {\n inputHour.value = value.getHours()\n inputMinute.value = value.getMinutes()\n inputSecond.value = value.getSeconds()\n } else {\n const [hour, , minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n inputHour.value = period ? convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n inputMinute.value = parseInt(minute, 10)\n inputSecond.value = parseInt(second || 0, 10)\n }\n\n period.value = (inputHour.value == null || inputHour.value < 12) ? 'am' : 'pm'\n }\n\n function firstAllowed (type: VTimePickerViewMode, value: number) {\n const allowedFn = type === 'hour' ? isAllowedHourCb.value : (type === 'minute' ? isAllowedMinuteCb.value : isAllowedSecondCb.value)\n if (!allowedFn) return value\n\n // TODO: clean up (Note from V2 code)\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (isAmPm.value\n ? (value < 12\n ? rangeHours12am\n : rangeHours12pm)\n : rangeHours24))\n const first = range.find(v => allowedFn((v + value) % range.length + range[0]))\n return ((first || 0) + value) % range.length + range[0]\n }\n\n function setPeriod (val: Period) {\n period.value = val\n if (inputHour.value != null) {\n const newHour = inputHour.value! + (period.value === 'am' ? -12 : 12)\n inputHour.value = firstAllowed('hour', newHour)\n }\n emit('update:period', val)\n emitValue()\n return true\n }\n\n function onInput (value: number) {\n if (viewMode.value === 'hour') {\n inputHour.value = isAmPm.value ? convert12to24(value, period.value) : value\n } else if (viewMode.value === 'minute') {\n inputMinute.value = value\n } else {\n inputSecond.value = value\n }\n }\n\n function onChange (value: number) {\n switch (viewMode.value || 'hour') {\n case 'hour':\n emit('update:hour', value)\n break\n case 'minute':\n emit('update:minute', value)\n break\n case 'second':\n emit('update:second', value)\n break\n default:\n break\n }\n\n const emitChange = inputHour.value !== null && inputMinute.value !== null && (props.useSeconds ? inputSecond.value !== null : true)\n if (viewMode.value === 'hour') {\n viewMode.value = 'minute'\n } else if (props.useSeconds && viewMode.value === 'minute') {\n viewMode.value = 'second'\n }\n\n if (inputHour.value === lazyInputHour.value &&\n inputMinute.value === lazyInputMinute.value &&\n (!props.useSeconds || inputSecond.value === lazyInputSecond.value)\n ) return\n\n const time = genValue()\n if (time === null) return\n\n lazyInputHour.value = inputHour.value\n lazyInputMinute.value = inputMinute.value\n props.useSeconds && (lazyInputSecond.value = inputSecond.value)\n\n emitChange && emitValue()\n }\n\n useRender(() => {\n const pickerProps = VPicker.filterProps(props)\n const timePickerControlsProps = VTimePickerControls.filterProps(props)\n const timePickerClockProps = VTimePickerClock.filterProps(omit(props, ['format', 'modelValue', 'min', 'max']))\n\n return (\n <VPicker\n { ...pickerProps }\n color={ undefined }\n class={[\n 'v-time-picker',\n props.class,\n ]}\n style={ props.style }\n v-slots={{\n title: () => slots.title?.() ?? (\n <div class=\"v-time-picker__title\">\n { t(props.title) }\n </div>\n ),\n header: () => (\n <VTimePickerControls\n { ...timePickerControlsProps }\n ampm={ isAmPm.value || props.ampmInTitle }\n ampmReadonly={ isAmPm.value && !props.ampmInTitle }\n hour={ inputHour.value as number }\n minute={ inputMinute.value as number }\n period={ period.value }\n second={ inputSecond.value as number }\n viewMode={ viewMode.value }\n onUpdate:period={ (val: Period) => setPeriod(val) }\n onUpdate:viewMode={ (value: VTimePickerViewMode) => (viewMode.value = value) }\n ref={ controlsRef }\n />\n ),\n default: () => (\n <VTimePickerClock\n { ...timePickerClockProps }\n allowedValues={\n viewMode.value === 'hour'\n ? isAllowedHourCb.value\n : (viewMode.value === 'minute'\n ? isAllowedMinuteCb.value\n : isAllowedSecondCb.value)\n }\n double={ viewMode.value === 'hour' && !isAmPm.value }\n format={ viewMode.value === 'hour'\n ? (isAmPm.value ? convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2)\n }\n max={ viewMode.value === 'hour' ? (isAmPm.value && period.value === 'am' ? 11 : 23) : 59 }\n min={ viewMode.value === 'hour' && isAmPm.value && period.value === 'pm' ? 12 : 0 }\n size={ 20 }\n step={ viewMode.value === 'hour' ? 1 : 5 }\n modelValue={ viewMode.value === 'hour'\n ? inputHour.value as number\n : (viewMode.value === 'minute'\n ? inputMinute.value as number\n : inputSecond.value as number)\n }\n onChange={ onChange }\n onInput={ onInput }\n ref={ clockRef }\n />\n ),\n actions: slots.actions,\n }}\n />\n )\n })\n },\n})\n\nexport type VTimePicker = InstanceType<typeof VTimePicker>\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { createVNode as _createVNode } from "vue";
1
+ import { normalizeClass as _normalizeClass, normalizeStyle as _normalizeStyle, createElementVNode as _createElementVNode } from "vue";
2
2
  // Styles
3
3
  import "./VTimePickerClock.css";
4
4
 
@@ -208,37 +208,37 @@ export const VTimePickerClock = genericComponent()({
208
208
  }
209
209
  }
210
210
  useRender(() => {
211
- return _createVNode("div", {
212
- "class": [{
211
+ return _createElementVNode("div", {
212
+ "class": _normalizeClass([{
213
213
  'v-time-picker-clock': true,
214
214
  'v-time-picker-clock--indeterminate': props.modelValue == null,
215
215
  'v-time-picker-clock--readonly': props.readonly
216
- }],
216
+ }]),
217
217
  "onMousedown": onMouseDown,
218
218
  "onTouchstart": onMouseDown,
219
219
  "onWheel": wheel,
220
220
  "ref": clockRef
221
- }, [_createVNode("div", {
221
+ }, [_createElementVNode("div", {
222
222
  "class": "v-time-picker-clock__inner",
223
223
  "ref": innerClockRef
224
- }, [_createVNode("div", {
225
- "class": [{
224
+ }, [_createElementVNode("div", {
225
+ "class": _normalizeClass([{
226
226
  'v-time-picker-clock__hand': true,
227
227
  'v-time-picker-clock__hand--inner': isInner(props.modelValue)
228
- }, textColorClasses.value],
229
- "style": [{
228
+ }, textColorClasses.value]),
229
+ "style": _normalizeStyle([{
230
230
  transform: `rotate(${props.rotate + degreesPerUnit.value * (displayedValue.value - props.min)}deg) scaleY(${handScale(displayedValue.value)})`
231
- }, textColorStyles.value]
231
+ }, textColorStyles.value])
232
232
  }, null), genChildren.value.map(value => {
233
233
  const isActive = value === displayedValue.value;
234
- return _createVNode("div", {
235
- "class": [{
234
+ return _createElementVNode("div", {
235
+ "class": _normalizeClass([{
236
236
  'v-time-picker-clock__item': true,
237
237
  'v-time-picker-clock__item--active': isActive,
238
238
  'v-time-picker-clock__item--disabled': props.disabled || !isAllowed(value)
239
- }, isActive && backgroundColorClasses.value],
240
- "style": [getTransform(value), isActive && backgroundColorStyles.value]
241
- }, [_createVNode("span", null, [props.format(value)])]);
239
+ }, isActive && backgroundColorClasses.value]),
240
+ "style": _normalizeStyle([getTransform(value), isActive && backgroundColorStyles.value])
241
+ }, [_createElementVNode("span", null, [props.format(value)])]);
242
242
  })])]);
243
243
  });
244
244
  }