@dimailn/vuetify 2.7.2-alpha4 → 2.7.2-alpha41

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 (1510) hide show
  1. package/dist/vuetify.js +4797 -2636
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VAlert/VAlert.js +46 -12
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VApp/VApp.js.map +1 -1
  8. package/es5/components/VAppBar/VAppBar.js +23 -17
  9. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  10. package/es5/components/VAppBar/VAppBarNavIcon.js +5 -1
  11. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  12. package/es5/components/VAppBar/VAppBarTitle.js.map +1 -1
  13. package/es5/components/VAppBar/index.js.map +1 -1
  14. package/es5/components/VAutocomplete/VAutocomplete.js +11 -7
  15. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  16. package/es5/components/VAvatar/VAvatar.js +3 -1
  17. package/es5/components/VAvatar/VAvatar.js.map +1 -1
  18. package/es5/components/VBadge/VBadge.js +46 -14
  19. package/es5/components/VBadge/VBadge.js.map +1 -1
  20. package/es5/components/VBanner/VBanner.js +51 -15
  21. package/es5/components/VBanner/VBanner.js.map +1 -1
  22. package/es5/components/VBottomNavigation/VBottomNavigation.js +41 -14
  23. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  24. package/es5/components/VBottomSheet/VBottomSheet.js.map +1 -1
  25. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +22 -8
  26. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  27. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +28 -2
  28. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  29. package/es5/components/VBreadcrumbs/index.js.map +1 -1
  30. package/es5/components/VBtn/VBtn.js +20 -16
  31. package/es5/components/VBtn/VBtn.js.map +1 -1
  32. package/es5/components/VBtnToggle/VBtnToggle.js.map +1 -1
  33. package/es5/components/VCalendar/VCalendar.js +27 -29
  34. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  35. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  36. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  37. package/es5/components/VCalendar/VCalendarDaily.js +47 -60
  38. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  39. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  40. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  41. package/es5/components/VCalendar/VCalendarWeekly.js +38 -36
  42. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  43. package/es5/components/VCalendar/index.js.map +1 -1
  44. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  45. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  46. package/es5/components/VCalendar/mixins/calendar-with-events.js +46 -59
  47. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  48. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  49. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  50. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  51. package/es5/components/VCalendar/modes/common.js.map +1 -1
  52. package/es5/components/VCalendar/modes/index.js.map +1 -1
  53. package/es5/components/VCalendar/modes/stack.js.map +1 -1
  54. package/es5/components/VCalendar/util/events.js.map +1 -1
  55. package/es5/components/VCalendar/util/props.js.map +1 -1
  56. package/es5/components/VCalendar/util/timestamp.js.map +1 -1
  57. package/es5/components/VCard/VCard.js +2 -1
  58. package/es5/components/VCard/VCard.js.map +1 -1
  59. package/es5/components/VCard/index.js.map +1 -1
  60. package/es5/components/VCarousel/VCarousel.js +62 -18
  61. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  62. package/es5/components/VCarousel/VCarouselItem.js +11 -4
  63. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  64. package/es5/components/VCarousel/index.js.map +1 -1
  65. package/es5/components/VCheckbox/VCheckbox.js +40 -9
  66. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  67. package/es5/components/VCheckbox/VSimpleCheckbox.js +94 -38
  68. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  69. package/es5/components/VCheckbox/index.js.map +1 -1
  70. package/es5/components/VChip/VChip.js +30 -12
  71. package/es5/components/VChip/VChip.js.map +1 -1
  72. package/es5/components/VChipGroup/VChipGroup.js.map +1 -1
  73. package/es5/components/VColorPicker/VColorPicker.js +57 -38
  74. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  75. package/es5/components/VColorPicker/VColorPickerCanvas.js +45 -46
  76. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  77. package/es5/components/VColorPicker/VColorPickerEdit.js +29 -26
  78. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  79. package/es5/components/VColorPicker/VColorPickerPreview.js +41 -30
  80. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  81. package/es5/components/VColorPicker/VColorPickerSwatches.js +16 -11
  82. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  83. package/es5/components/VColorPicker/util/index.js.map +1 -1
  84. package/es5/components/VCombobox/VCombobox.js +1 -0
  85. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  86. package/es5/components/VContent/VContent.js +25 -6
  87. package/es5/components/VContent/VContent.js.map +1 -1
  88. package/es5/components/VCounter/VCounter.js.map +1 -1
  89. package/es5/components/VData/VData.js +15 -2
  90. package/es5/components/VData/VData.js.map +1 -1
  91. package/es5/components/VDataIterator/VDataFooter.js +21 -7
  92. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  93. package/es5/components/VDataIterator/VDataIterator.js +47 -50
  94. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  95. package/es5/components/VDataIterator/index.js.map +1 -1
  96. package/es5/components/VDataTable/MobileRow.js.map +1 -1
  97. package/es5/components/VDataTable/Row.js +6 -3
  98. package/es5/components/VDataTable/Row.js.map +1 -1
  99. package/es5/components/VDataTable/RowGroup.js +46 -15
  100. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  101. package/es5/components/VDataTable/VDataTable.js +94 -81
  102. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  103. package/es5/components/VDataTable/VDataTableHeader.js +8 -7
  104. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  105. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +8 -2
  106. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  107. package/es5/components/VDataTable/VDataTableHeaderMobile.js +32 -38
  108. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  109. package/es5/components/VDataTable/VEditDialog.js +26 -22
  110. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  111. package/es5/components/VDataTable/VSimpleTable.js +1 -1
  112. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  113. package/es5/components/VDataTable/VVirtualTable.js +6 -6
  114. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  115. package/es5/components/VDataTable/index.js.map +1 -1
  116. package/es5/components/VDataTable/mixins/header.js +7 -9
  117. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  118. package/es5/components/VDatePicker/VDatePicker.js +54 -37
  119. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  120. package/es5/components/VDatePicker/VDatePickerDateTable.js +2 -2
  121. package/es5/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  122. package/es5/components/VDatePicker/VDatePickerHeader.js +68 -24
  123. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  124. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  125. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  126. package/es5/components/VDatePicker/VDatePickerTitle.js +61 -16
  127. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  128. package/es5/components/VDatePicker/VDatePickerYears.js +47 -23
  129. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  130. package/es5/components/VDatePicker/index.js.map +1 -1
  131. package/es5/components/VDatePicker/mixins/date-picker-table.js +52 -31
  132. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  133. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  134. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  135. package/es5/components/VDatePicker/util/eventHelpers.js +27 -17
  136. package/es5/components/VDatePicker/util/eventHelpers.js.map +1 -1
  137. package/es5/components/VDatePicker/util/index.js.map +1 -1
  138. package/es5/components/VDialog/VDialog.js +60 -34
  139. package/es5/components/VDialog/VDialog.js.map +1 -1
  140. package/es5/components/VDivider/VDivider.js.map +1 -1
  141. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  142. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  143. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +12 -10
  144. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  145. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +17 -20
  146. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  147. package/es5/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  148. package/es5/components/VExpansionPanel/index.js.map +1 -1
  149. package/es5/components/VFileInput/VFileInput.js +53 -28
  150. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  151. package/es5/components/VFooter/VFooter.js +7 -6
  152. package/es5/components/VFooter/VFooter.js.map +1 -1
  153. package/es5/components/VForm/VForm.js +45 -30
  154. package/es5/components/VForm/VForm.js.map +1 -1
  155. package/es5/components/VGrid/VCol.js +6 -4
  156. package/es5/components/VGrid/VCol.js.map +1 -1
  157. package/es5/components/VGrid/VContainer.js +27 -10
  158. package/es5/components/VGrid/VContainer.js.map +1 -1
  159. package/es5/components/VGrid/VRow.js +1 -1
  160. package/es5/components/VGrid/VRow.js.map +1 -1
  161. package/es5/components/VGrid/grid.js +35 -15
  162. package/es5/components/VGrid/grid.js.map +1 -1
  163. package/es5/components/VGrid/index.js.map +1 -1
  164. package/es5/components/VHover/VHover.js +24 -17
  165. package/es5/components/VHover/VHover.js.map +1 -1
  166. package/es5/components/VIcon/VIcon.js +79 -54
  167. package/es5/components/VIcon/VIcon.js.map +1 -1
  168. package/es5/components/VImg/VImg.js +13 -9
  169. package/es5/components/VImg/VImg.js.map +1 -1
  170. package/es5/components/VInput/VInput.js +74 -15
  171. package/es5/components/VInput/VInput.js.map +1 -1
  172. package/es5/components/VItemGroup/VItem.js +21 -17
  173. package/es5/components/VItemGroup/VItem.js.map +1 -1
  174. package/es5/components/VItemGroup/VItemGroup.js +11 -2
  175. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  176. package/es5/components/VItemGroup/index.js.map +1 -1
  177. package/es5/components/VLabel/VLabel.js +3 -1
  178. package/es5/components/VLabel/VLabel.js.map +1 -1
  179. package/es5/components/VLazy/VLazy.js +12 -16
  180. package/es5/components/VLazy/VLazy.js.map +1 -1
  181. package/es5/components/VList/VList.js +2 -2
  182. package/es5/components/VList/VList.js.map +1 -1
  183. package/es5/components/VList/VListGroup.js +73 -40
  184. package/es5/components/VList/VListGroup.js.map +1 -1
  185. package/es5/components/VList/VListItem.js +67 -20
  186. package/es5/components/VList/VListItem.js.map +1 -1
  187. package/es5/components/VList/VListItemAction.js +23 -9
  188. package/es5/components/VList/VListItemAction.js.map +1 -1
  189. package/es5/components/VList/VListItemAvatar.js.map +1 -1
  190. package/es5/components/VList/VListItemGroup.js.map +1 -1
  191. package/es5/components/VList/VListItemIcon.js +3 -1
  192. package/es5/components/VList/VListItemIcon.js.map +1 -1
  193. package/es5/components/VList/index.js.map +1 -1
  194. package/es5/components/VMain/VMain.js +1 -1
  195. package/es5/components/VMain/VMain.js.map +1 -1
  196. package/es5/components/VMenu/VMenu.js +62 -32
  197. package/es5/components/VMenu/VMenu.js.map +1 -1
  198. package/es5/components/VMessages/VMessages.js +40 -10
  199. package/es5/components/VMessages/VMessages.js.map +1 -1
  200. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +41 -19
  201. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  202. package/es5/components/VOtpInput/VOtpInput.js +87 -34
  203. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  204. package/es5/components/VOverflowBtn/VOverflowBtn.js +18 -14
  205. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  206. package/es5/components/VOverlay/VOverlay.js +31 -3
  207. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  208. package/es5/components/VPagination/VPagination.js +48 -27
  209. package/es5/components/VPagination/VPagination.js.map +1 -1
  210. package/es5/components/VParallax/VParallax.js.map +1 -1
  211. package/es5/components/VPicker/VPicker.js +7 -4
  212. package/es5/components/VPicker/VPicker.js.map +1 -1
  213. package/es5/components/VProgressCircular/VProgressCircular.js +6 -13
  214. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  215. package/es5/components/VProgressLinear/VProgressLinear.js +51 -30
  216. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  217. package/es5/components/VRadioGroup/VRadio.js +11 -2
  218. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  219. package/es5/components/VRadioGroup/VRadioGroup.js +30 -2
  220. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  221. package/es5/components/VRadioGroup/index.js.map +1 -1
  222. package/es5/components/VRangeSlider/VRangeSlider.js +57 -32
  223. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  224. package/es5/components/VRating/VRating.js +45 -17
  225. package/es5/components/VRating/VRating.js.map +1 -1
  226. package/es5/components/VResponsive/VResponsive.js.map +1 -1
  227. package/es5/components/VSelect/VSelect.js +161 -81
  228. package/es5/components/VSelect/VSelect.js.map +1 -1
  229. package/es5/components/VSelect/VSelectList.js +126 -46
  230. package/es5/components/VSelect/VSelectList.js.map +1 -1
  231. package/es5/components/VSheet/VSheet.js +3 -1
  232. package/es5/components/VSheet/VSheet.js.map +1 -1
  233. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  234. package/es5/components/VSlideGroup/VSlideGroup.js +43 -29
  235. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  236. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  237. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  238. package/es5/components/VSlideGroup/index.js.map +1 -1
  239. package/es5/components/VSlider/VSlider.js +67 -35
  240. package/es5/components/VSlider/VSlider.js.map +1 -1
  241. package/es5/components/VSnackbar/VSnackbar.js +8 -3
  242. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  243. package/es5/components/VSparkline/VSparkline.js +48 -68
  244. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  245. package/es5/components/VSparkline/helpers/core.js.map +1 -1
  246. package/es5/components/VSparkline/helpers/math.js.map +1 -1
  247. package/es5/components/VSpeedDial/VSpeedDial.js +19 -19
  248. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  249. package/es5/components/VStepper/VStepper.js +3 -2
  250. package/es5/components/VStepper/VStepper.js.map +1 -1
  251. package/es5/components/VStepper/VStepperContent.js +9 -8
  252. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  253. package/es5/components/VStepper/VStepperStep.js +15 -21
  254. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  255. package/es5/components/VStepper/index.js.map +1 -1
  256. package/es5/components/VSubheader/VSubheader.js +1 -1
  257. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  258. package/es5/components/VSwitch/VSwitch.js +11 -9
  259. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  260. package/es5/components/VSystemBar/VSystemBar.js +5 -5
  261. package/es5/components/VSystemBar/VSystemBar.js.map +1 -1
  262. package/es5/components/VTabs/VTab.js +9 -1
  263. package/es5/components/VTabs/VTab.js.map +1 -1
  264. package/es5/components/VTabs/VTabItem.js.map +1 -1
  265. package/es5/components/VTabs/VTabs.js +74 -25
  266. package/es5/components/VTabs/VTabs.js.map +1 -1
  267. package/es5/components/VTabs/VTabsBar.js +3 -0
  268. package/es5/components/VTabs/VTabsBar.js.map +1 -1
  269. package/es5/components/VTabs/VTabsItems.js +1 -0
  270. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  271. package/es5/components/VTabs/VTabsSlider.js.map +1 -1
  272. package/es5/components/VTabs/index.js.map +1 -1
  273. package/es5/components/VTextField/VTextField.js +42 -29
  274. package/es5/components/VTextField/VTextField.js.map +1 -1
  275. package/es5/components/VTextarea/VTextarea.js +1 -1
  276. package/es5/components/VTextarea/VTextarea.js.map +1 -1
  277. package/es5/components/VThemeProvider/VThemeProvider.js.map +1 -1
  278. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  279. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  280. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  281. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  282. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  283. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  284. package/es5/components/VTimePicker/index.js.map +1 -1
  285. package/es5/components/VTimeline/VTimeline.js.map +1 -1
  286. package/es5/components/VTimeline/VTimelineItem.js +8 -2
  287. package/es5/components/VTimeline/VTimelineItem.js.map +1 -1
  288. package/es5/components/VTimeline/index.js.map +1 -1
  289. package/es5/components/VToolbar/VToolbar.js +3 -6
  290. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  291. package/es5/components/VToolbar/index.js.map +1 -1
  292. package/es5/components/VTooltip/VTooltip.js +14 -20
  293. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  294. package/es5/components/VTreeview/VTreeview.js +24 -18
  295. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  296. package/es5/components/VTreeview/VTreeviewNode.js +12 -6
  297. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  298. package/es5/components/VTreeview/index.js.map +1 -1
  299. package/es5/components/VVirtualScroll/VVirtualScroll.js +15 -19
  300. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  301. package/es5/components/VWindow/VWindow.js +13 -8
  302. package/es5/components/VWindow/VWindow.js.map +1 -1
  303. package/es5/components/VWindow/VWindowItem.js +10 -10
  304. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  305. package/es5/components/VWindow/index.js.map +1 -1
  306. package/es5/components/transitions/createTransition.js +10 -2
  307. package/es5/components/transitions/createTransition.js.map +1 -1
  308. package/es5/components/transitions/expand-transition.js +1 -0
  309. package/es5/components/transitions/expand-transition.js.map +1 -1
  310. package/es5/components/transitions/index.js.map +1 -1
  311. package/es5/directives/click-outside/index.js.map +1 -1
  312. package/es5/directives/color/index.js +6 -3
  313. package/es5/directives/color/index.js.map +1 -1
  314. package/es5/directives/intersect/index.js +21 -8
  315. package/es5/directives/intersect/index.js.map +1 -1
  316. package/es5/directives/mutate/index.js +13 -13
  317. package/es5/directives/mutate/index.js.map +1 -1
  318. package/es5/directives/resize/index.js +8 -8
  319. package/es5/directives/resize/index.js.map +1 -1
  320. package/es5/directives/ripple/index.js +5 -2
  321. package/es5/directives/ripple/index.js.map +1 -1
  322. package/es5/directives/scroll/index.js +8 -8
  323. package/es5/directives/scroll/index.js.map +1 -1
  324. package/es5/directives/touch/index.js +11 -8
  325. package/es5/directives/touch/index.js.map +1 -1
  326. package/es5/framework.js +1 -1
  327. package/es5/framework.js.map +1 -1
  328. package/es5/index.js.map +1 -1
  329. package/es5/install.js +10 -33
  330. package/es5/install.js.map +1 -1
  331. package/es5/locale/af.js.map +1 -1
  332. package/es5/locale/ar.js.map +1 -1
  333. package/es5/locale/az.js.map +1 -1
  334. package/es5/locale/bg.js.map +1 -1
  335. package/es5/locale/ca.js.map +1 -1
  336. package/es5/locale/ckb.js.map +1 -1
  337. package/es5/locale/cs.js.map +1 -1
  338. package/es5/locale/da.js.map +1 -1
  339. package/es5/locale/de.js.map +1 -1
  340. package/es5/locale/el.js.map +1 -1
  341. package/es5/locale/en.js.map +1 -1
  342. package/es5/locale/es.js.map +1 -1
  343. package/es5/locale/et.js.map +1 -1
  344. package/es5/locale/fa.js.map +1 -1
  345. package/es5/locale/fi.js.map +1 -1
  346. package/es5/locale/fr.js.map +1 -1
  347. package/es5/locale/he.js.map +1 -1
  348. package/es5/locale/hr.js.map +1 -1
  349. package/es5/locale/hu.js.map +1 -1
  350. package/es5/locale/id.js.map +1 -1
  351. package/es5/locale/it.js.map +1 -1
  352. package/es5/locale/ja.js.map +1 -1
  353. package/es5/locale/ko.js.map +1 -1
  354. package/es5/locale/lt.js.map +1 -1
  355. package/es5/locale/lv.js.map +1 -1
  356. package/es5/locale/nl.js.map +1 -1
  357. package/es5/locale/no.js.map +1 -1
  358. package/es5/locale/pl.js.map +1 -1
  359. package/es5/locale/pt.js.map +1 -1
  360. package/es5/locale/ro.js.map +1 -1
  361. package/es5/locale/ru.js.map +1 -1
  362. package/es5/locale/sk.js.map +1 -1
  363. package/es5/locale/sl.js.map +1 -1
  364. package/es5/locale/sr-Cyrl.js.map +1 -1
  365. package/es5/locale/sr-Latn.js.map +1 -1
  366. package/es5/locale/sv.js.map +1 -1
  367. package/es5/locale/th.js.map +1 -1
  368. package/es5/locale/tr.js.map +1 -1
  369. package/es5/locale/uk.js.map +1 -1
  370. package/es5/locale/vi.js.map +1 -1
  371. package/es5/locale/zh-Hans.js.map +1 -1
  372. package/es5/locale/zh-Hant.js.map +1 -1
  373. package/es5/mixins/activatable/index.js +17 -19
  374. package/es5/mixins/activatable/index.js.map +1 -1
  375. package/es5/mixins/applicationable/index.js +4 -4
  376. package/es5/mixins/applicationable/index.js.map +1 -1
  377. package/es5/mixins/binds-attrs/index.js +1 -1
  378. package/es5/mixins/binds-attrs/index.js.map +1 -1
  379. package/es5/mixins/bootable/index.js +1 -2
  380. package/es5/mixins/bootable/index.js.map +1 -1
  381. package/es5/mixins/button-group/index.js.map +1 -1
  382. package/es5/mixins/colorable/index.js +1 -0
  383. package/es5/mixins/colorable/index.js.map +1 -1
  384. package/es5/mixins/comparable/index.js.map +1 -1
  385. package/es5/mixins/delayable/index.js.map +1 -1
  386. package/es5/mixins/dependent/index.js.map +1 -1
  387. package/es5/mixins/detachable/index.js +13 -10
  388. package/es5/mixins/detachable/index.js.map +1 -1
  389. package/es5/mixins/elevatable/index.js.map +1 -1
  390. package/es5/mixins/filterable/index.js.map +1 -1
  391. package/es5/mixins/groupable/index.js +6 -2
  392. package/es5/mixins/groupable/index.js.map +1 -1
  393. package/es5/mixins/intersectable/index.js +2 -2
  394. package/es5/mixins/intersectable/index.js.map +1 -1
  395. package/es5/mixins/loadable/index.js +3 -1
  396. package/es5/mixins/loadable/index.js.map +1 -1
  397. package/es5/mixins/localable/index.js.map +1 -1
  398. package/es5/mixins/measurable/index.js.map +1 -1
  399. package/es5/mixins/menuable/index.js +3 -3
  400. package/es5/mixins/menuable/index.js.map +1 -1
  401. package/es5/mixins/mobile/index.js.map +1 -1
  402. package/es5/mixins/mouse/index.js +10 -5
  403. package/es5/mixins/mouse/index.js.map +1 -1
  404. package/es5/mixins/overlayable/index.js +5 -3
  405. package/es5/mixins/overlayable/index.js.map +1 -1
  406. package/es5/mixins/picker/index.js +13 -3
  407. package/es5/mixins/picker/index.js.map +1 -1
  408. package/es5/mixins/picker-button/index.js.map +1 -1
  409. package/es5/mixins/positionable/index.js.map +1 -1
  410. package/es5/mixins/proxyable/index.js +5 -2
  411. package/es5/mixins/proxyable/index.js.map +1 -1
  412. package/es5/mixins/registrable/index.js.map +1 -1
  413. package/es5/mixins/returnable/index.js.map +1 -1
  414. package/es5/mixins/rippleable/index.js.map +1 -1
  415. package/es5/mixins/roundable/index.js.map +1 -1
  416. package/es5/mixins/routable/index.js +5 -2
  417. package/es5/mixins/routable/index.js.map +1 -1
  418. package/es5/mixins/scrollable/index.js.map +1 -1
  419. package/es5/mixins/selectable/index.js +9 -7
  420. package/es5/mixins/selectable/index.js.map +1 -1
  421. package/es5/mixins/sizeable/index.js.map +1 -1
  422. package/es5/mixins/ssr-bootable/index.js.map +1 -1
  423. package/es5/mixins/stackable/index.js.map +1 -1
  424. package/es5/mixins/themeable/index.js.map +1 -1
  425. package/es5/mixins/toggleable/index.js.map +1 -1
  426. package/es5/mixins/transitionable/index.js.map +1 -1
  427. package/es5/mixins/translatable/index.js +1 -1
  428. package/es5/mixins/translatable/index.js.map +1 -1
  429. package/es5/mixins/validatable/index.js +34 -7
  430. package/es5/mixins/validatable/index.js.map +1 -1
  431. package/es5/presets/default/index.js.map +1 -1
  432. package/es5/services/application/index.js.map +1 -1
  433. package/es5/services/breakpoint/index.js.map +1 -1
  434. package/es5/services/goto/index.js.map +1 -1
  435. package/es5/services/goto/util.js +42 -3
  436. package/es5/services/goto/util.js.map +1 -1
  437. package/es5/services/icons/index.js.map +1 -1
  438. package/es5/services/icons/presets/fa-svg.js.map +1 -1
  439. package/es5/services/icons/presets/fa.js.map +1 -1
  440. package/es5/services/icons/presets/fa4.js.map +1 -1
  441. package/es5/services/icons/presets/index.js.map +1 -1
  442. package/es5/services/icons/presets/md.js.map +1 -1
  443. package/es5/services/icons/presets/mdi-svg.js.map +1 -1
  444. package/es5/services/icons/presets/mdi.js.map +1 -1
  445. package/es5/services/lang/index.js.map +1 -1
  446. package/es5/services/presets/index.js.map +1 -1
  447. package/es5/services/service/index.js.map +1 -1
  448. package/es5/services/theme/index.js +21 -72
  449. package/es5/services/theme/index.js.map +1 -1
  450. package/es5/services/theme/utils.js.map +1 -1
  451. package/es5/types/vue-augment.js +4 -0
  452. package/es5/types/vue-augment.js.map +1 -0
  453. package/es5/types/vue-internal.js +6 -0
  454. package/es5/types/vue-internal.js.map +1 -0
  455. package/es5/util/color/transformCIELAB.js.map +1 -1
  456. package/es5/util/color/transformSRGB.js.map +1 -1
  457. package/es5/util/colorUtils.js.map +1 -1
  458. package/es5/util/colors.js.map +1 -1
  459. package/es5/util/console.js +49 -18
  460. package/es5/util/console.js.map +1 -1
  461. package/es5/util/dedupeModelListeners.js.map +1 -1
  462. package/es5/util/helpers.js +89 -21
  463. package/es5/util/helpers.js.map +1 -1
  464. package/es5/util/legacyEventsMixin.js +48 -0
  465. package/es5/util/legacyEventsMixin.js.map +1 -0
  466. package/es5/util/make-directive-activatable.js +1 -1
  467. package/es5/util/make-directive-activatable.js.map +1 -1
  468. package/es5/util/mergeData.js +6 -23
  469. package/es5/util/mergeData.js.map +1 -1
  470. package/es5/util/mixins.js +4 -3
  471. package/es5/util/mixins.js.map +1 -1
  472. package/es5/util/rebuildFunctionalSlots.js.map +1 -1
  473. package/lib/components/VAlert/VAlert.js +17 -13
  474. package/lib/components/VAlert/VAlert.js.map +1 -1
  475. package/lib/components/VApp/VApp.js.map +1 -1
  476. package/lib/components/VAppBar/VAppBar.js +23 -16
  477. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  478. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  479. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  480. package/lib/components/VAppBar/VAppBarTitle.js.map +1 -1
  481. package/lib/components/VAppBar/index.js.map +1 -1
  482. package/lib/components/VAutocomplete/VAutocomplete.js +12 -8
  483. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  484. package/lib/components/VAvatar/VAvatar.js +3 -1
  485. package/lib/components/VAvatar/VAvatar.js.map +1 -1
  486. package/lib/components/VBadge/VBadge.js +26 -13
  487. package/lib/components/VBadge/VBadge.js.map +1 -1
  488. package/lib/components/VBanner/VBanner.js +20 -13
  489. package/lib/components/VBanner/VBanner.js.map +1 -1
  490. package/lib/components/VBottomNavigation/VBottomNavigation.js +21 -15
  491. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  492. package/lib/components/VBottomSheet/VBottomSheet.js.map +1 -1
  493. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +7 -5
  494. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  495. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +25 -3
  496. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  497. package/lib/components/VBreadcrumbs/index.js.map +1 -1
  498. package/lib/components/VBtn/VBtn.js +21 -21
  499. package/lib/components/VBtn/VBtn.js.map +1 -1
  500. package/lib/components/VBtnToggle/VBtnToggle.js.map +1 -1
  501. package/lib/components/VCalendar/VCalendar.js +26 -31
  502. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  503. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  504. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  505. package/lib/components/VCalendar/VCalendarDaily.js +25 -33
  506. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  507. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  508. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  509. package/lib/components/VCalendar/VCalendarWeekly.js +36 -40
  510. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  511. package/lib/components/VCalendar/index.js.map +1 -1
  512. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  513. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  514. package/lib/components/VCalendar/mixins/calendar-with-events.js +20 -40
  515. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  516. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  517. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  518. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  519. package/lib/components/VCalendar/modes/common.js.map +1 -1
  520. package/lib/components/VCalendar/modes/index.js.map +1 -1
  521. package/lib/components/VCalendar/modes/stack.js.map +1 -1
  522. package/lib/components/VCalendar/util/events.js.map +1 -1
  523. package/lib/components/VCalendar/util/props.js.map +1 -1
  524. package/lib/components/VCalendar/util/timestamp.js.map +1 -1
  525. package/lib/components/VCard/VCard.js +3 -2
  526. package/lib/components/VCard/VCard.js.map +1 -1
  527. package/lib/components/VCard/index.js.map +1 -1
  528. package/lib/components/VCarousel/VCarousel.js +37 -17
  529. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  530. package/lib/components/VCarousel/VCarouselItem.js +4 -3
  531. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  532. package/lib/components/VCarousel/index.js.map +1 -1
  533. package/lib/components/VCheckbox/VCheckbox.js +19 -9
  534. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  535. package/lib/components/VCheckbox/VSimpleCheckbox.js +83 -39
  536. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  537. package/lib/components/VCheckbox/index.js.map +1 -1
  538. package/lib/components/VChip/VChip.js +21 -11
  539. package/lib/components/VChip/VChip.js.map +1 -1
  540. package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
  541. package/lib/components/VColorPicker/VColorPicker.js +48 -45
  542. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  543. package/lib/components/VColorPicker/VColorPickerCanvas.js +41 -43
  544. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  545. package/lib/components/VColorPicker/VColorPickerEdit.js +25 -31
  546. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  547. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -32
  548. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  549. package/lib/components/VColorPicker/VColorPickerSwatches.js +16 -10
  550. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  551. package/lib/components/VColorPicker/util/index.js.map +1 -1
  552. package/lib/components/VCombobox/VCombobox.js +1 -0
  553. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  554. package/lib/components/VContent/VContent.js +19 -4
  555. package/lib/components/VContent/VContent.js.map +1 -1
  556. package/lib/components/VCounter/VCounter.js.map +1 -1
  557. package/lib/components/VData/VData.js +17 -2
  558. package/lib/components/VData/VData.js.map +1 -1
  559. package/lib/components/VDataIterator/VDataFooter.js +15 -7
  560. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  561. package/lib/components/VDataIterator/VDataIterator.js +32 -35
  562. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  563. package/lib/components/VDataIterator/index.js.map +1 -1
  564. package/lib/components/VDataTable/MobileRow.js.map +1 -1
  565. package/lib/components/VDataTable/Row.js +6 -3
  566. package/lib/components/VDataTable/Row.js.map +1 -1
  567. package/lib/components/VDataTable/RowGroup.js +30 -14
  568. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  569. package/lib/components/VDataTable/VDataTable.js +67 -73
  570. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  571. package/lib/components/VDataTable/VDataTableHeader.js +10 -8
  572. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  573. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +7 -1
  574. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  575. package/lib/components/VDataTable/VDataTableHeaderMobile.js +19 -26
  576. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  577. package/lib/components/VDataTable/VEditDialog.js +18 -18
  578. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  579. package/lib/components/VDataTable/VSimpleTable.js +1 -1
  580. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  581. package/lib/components/VDataTable/VVirtualTable.js +2 -3
  582. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  583. package/lib/components/VDataTable/index.js.map +1 -1
  584. package/lib/components/VDataTable/mixins/header.js +3 -8
  585. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  586. package/lib/components/VDatePicker/VDatePicker.js +41 -28
  587. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  588. package/lib/components/VDatePicker/VDatePickerDateTable.js +2 -2
  589. package/lib/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  590. package/lib/components/VDatePicker/VDatePickerHeader.js +45 -21
  591. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  592. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  593. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  594. package/lib/components/VDatePicker/VDatePickerTitle.js +34 -11
  595. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  596. package/lib/components/VDatePicker/VDatePickerYears.js +17 -8
  597. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  598. package/lib/components/VDatePicker/index.js.map +1 -1
  599. package/lib/components/VDatePicker/mixins/date-picker-table.js +30 -17
  600. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  601. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  602. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  603. package/lib/components/VDatePicker/util/eventHelpers.js +26 -14
  604. package/lib/components/VDatePicker/util/eventHelpers.js.map +1 -1
  605. package/lib/components/VDatePicker/util/index.js.map +1 -1
  606. package/lib/components/VDialog/VDialog.js +14 -6
  607. package/lib/components/VDialog/VDialog.js.map +1 -1
  608. package/lib/components/VDivider/VDivider.js.map +1 -1
  609. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  610. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  611. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +2 -2
  612. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  613. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +4 -7
  614. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  615. package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  616. package/lib/components/VExpansionPanel/index.js.map +1 -1
  617. package/lib/components/VFileInput/VFileInput.js +44 -26
  618. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  619. package/lib/components/VFooter/VFooter.js +6 -4
  620. package/lib/components/VFooter/VFooter.js.map +1 -1
  621. package/lib/components/VForm/VForm.js +41 -26
  622. package/lib/components/VForm/VForm.js.map +1 -1
  623. package/lib/components/VGrid/VCol.js +8 -7
  624. package/lib/components/VGrid/VCol.js.map +1 -1
  625. package/lib/components/VGrid/VContainer.js +14 -10
  626. package/lib/components/VGrid/VContainer.js.map +1 -1
  627. package/lib/components/VGrid/VRow.js +3 -4
  628. package/lib/components/VGrid/VRow.js.map +1 -1
  629. package/lib/components/VGrid/grid.js +16 -14
  630. package/lib/components/VGrid/grid.js.map +1 -1
  631. package/lib/components/VGrid/index.js.map +1 -1
  632. package/lib/components/VHover/VHover.js +24 -18
  633. package/lib/components/VHover/VHover.js.map +1 -1
  634. package/lib/components/VIcon/VIcon.js +81 -58
  635. package/lib/components/VIcon/VIcon.js.map +1 -1
  636. package/lib/components/VImg/VImg.js +8 -10
  637. package/lib/components/VImg/VImg.js.map +1 -1
  638. package/lib/components/VInput/VInput.js +39 -12
  639. package/lib/components/VInput/VInput.js.map +1 -1
  640. package/lib/components/VItemGroup/VItem.js +24 -20
  641. package/lib/components/VItemGroup/VItem.js.map +1 -1
  642. package/lib/components/VItemGroup/VItemGroup.js +14 -5
  643. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  644. package/lib/components/VItemGroup/index.js.map +1 -1
  645. package/lib/components/VLabel/VLabel.js +3 -1
  646. package/lib/components/VLabel/VLabel.js.map +1 -1
  647. package/lib/components/VLazy/VLazy.js +13 -17
  648. package/lib/components/VLazy/VLazy.js.map +1 -1
  649. package/lib/components/VList/VList.js +3 -3
  650. package/lib/components/VList/VList.js.map +1 -1
  651. package/lib/components/VList/VListGroup.js +34 -32
  652. package/lib/components/VList/VListGroup.js.map +1 -1
  653. package/lib/components/VList/VListItem.js +42 -18
  654. package/lib/components/VList/VListItem.js.map +1 -1
  655. package/lib/components/VList/VListItemAction.js +15 -9
  656. package/lib/components/VList/VListItemAction.js.map +1 -1
  657. package/lib/components/VList/VListItemAvatar.js.map +1 -1
  658. package/lib/components/VList/VListItemGroup.js.map +1 -1
  659. package/lib/components/VList/VListItemIcon.js +3 -1
  660. package/lib/components/VList/VListItemIcon.js.map +1 -1
  661. package/lib/components/VList/index.js.map +1 -1
  662. package/lib/components/VMain/VMain.js +2 -2
  663. package/lib/components/VMain/VMain.js.map +1 -1
  664. package/lib/components/VMenu/VMenu.js +18 -6
  665. package/lib/components/VMenu/VMenu.js.map +1 -1
  666. package/lib/components/VMessages/VMessages.js +20 -6
  667. package/lib/components/VMessages/VMessages.js.map +1 -1
  668. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +17 -12
  669. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  670. package/lib/components/VOtpInput/VOtpInput.js +103 -35
  671. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  672. package/lib/components/VOverflowBtn/VOverflowBtn.js +16 -15
  673. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  674. package/lib/components/VOverlay/VOverlay.js +13 -2
  675. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  676. package/lib/components/VPagination/VPagination.js +28 -23
  677. package/lib/components/VPagination/VPagination.js.map +1 -1
  678. package/lib/components/VParallax/VParallax.js.map +1 -1
  679. package/lib/components/VPicker/VPicker.js +4 -4
  680. package/lib/components/VPicker/VPicker.js.map +1 -1
  681. package/lib/components/VProgressCircular/VProgressCircular.js +6 -7
  682. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  683. package/lib/components/VProgressLinear/VProgressLinear.js +45 -22
  684. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  685. package/lib/components/VRadioGroup/VRadio.js +3 -2
  686. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  687. package/lib/components/VRadioGroup/VRadioGroup.js +14 -5
  688. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  689. package/lib/components/VRadioGroup/index.js.map +1 -1
  690. package/lib/components/VRangeSlider/VRangeSlider.js +17 -5
  691. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  692. package/lib/components/VRating/VRating.js +11 -0
  693. package/lib/components/VRating/VRating.js.map +1 -1
  694. package/lib/components/VResponsive/VResponsive.js.map +1 -1
  695. package/lib/components/VSelect/VSelect.js +104 -42
  696. package/lib/components/VSelect/VSelect.js.map +1 -1
  697. package/lib/components/VSelect/VSelectList.js +73 -33
  698. package/lib/components/VSelect/VSelectList.js.map +1 -1
  699. package/lib/components/VSheet/VSheet.js +3 -2
  700. package/lib/components/VSheet/VSheet.js.map +1 -1
  701. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  702. package/lib/components/VSlideGroup/VSlideGroup.js +26 -24
  703. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  704. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  705. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  706. package/lib/components/VSlideGroup/index.js.map +1 -1
  707. package/lib/components/VSlider/VSlider.js +36 -26
  708. package/lib/components/VSlider/VSlider.js.map +1 -1
  709. package/lib/components/VSnackbar/VSnackbar.js +2 -1
  710. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  711. package/lib/components/VSparkline/VSparkline.js +48 -67
  712. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  713. package/lib/components/VSparkline/helpers/core.js.map +1 -1
  714. package/lib/components/VSparkline/helpers/math.js.map +1 -1
  715. package/lib/components/VSpeedDial/VSpeedDial.js +13 -17
  716. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  717. package/lib/components/VStepper/VStepper.js +4 -3
  718. package/lib/components/VStepper/VStepper.js.map +1 -1
  719. package/lib/components/VStepper/VStepperContent.js +7 -8
  720. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  721. package/lib/components/VStepper/VStepperStep.js +9 -20
  722. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  723. package/lib/components/VStepper/index.js.map +1 -1
  724. package/lib/components/VSubheader/VSubheader.js +1 -1
  725. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  726. package/lib/components/VSwitch/VSwitch.js +2 -4
  727. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  728. package/lib/components/VSystemBar/VSystemBar.js +1 -2
  729. package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
  730. package/lib/components/VTabs/VTab.js +8 -2
  731. package/lib/components/VTabs/VTab.js.map +1 -1
  732. package/lib/components/VTabs/VTabItem.js.map +1 -1
  733. package/lib/components/VTabs/VTabs.js +38 -9
  734. package/lib/components/VTabs/VTabs.js.map +1 -1
  735. package/lib/components/VTabs/VTabsBar.js +3 -0
  736. package/lib/components/VTabs/VTabsBar.js.map +1 -1
  737. package/lib/components/VTabs/VTabsItems.js +1 -0
  738. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  739. package/lib/components/VTabs/VTabsSlider.js.map +1 -1
  740. package/lib/components/VTabs/index.js.map +1 -1
  741. package/lib/components/VTextField/VTextField.js +15 -19
  742. package/lib/components/VTextField/VTextField.js.map +1 -1
  743. package/lib/components/VTextarea/VTextarea.js +1 -1
  744. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  745. package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
  746. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  747. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  748. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  749. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  750. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  751. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  752. package/lib/components/VTimePicker/index.js.map +1 -1
  753. package/lib/components/VTimeline/VTimeline.js.map +1 -1
  754. package/lib/components/VTimeline/VTimelineItem.js +4 -2
  755. package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
  756. package/lib/components/VTimeline/index.js.map +1 -1
  757. package/lib/components/VToolbar/VToolbar.js +6 -7
  758. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  759. package/lib/components/VToolbar/index.js.map +1 -1
  760. package/lib/components/VTooltip/VTooltip.js +11 -22
  761. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  762. package/lib/components/VTreeview/VTreeview.js +15 -13
  763. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  764. package/lib/components/VTreeview/VTreeviewNode.js +4 -6
  765. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  766. package/lib/components/VTreeview/index.js.map +1 -1
  767. package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -14
  768. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  769. package/lib/components/VWindow/VWindow.js +9 -9
  770. package/lib/components/VWindow/VWindow.js.map +1 -1
  771. package/lib/components/VWindow/VWindowItem.js +5 -7
  772. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  773. package/lib/components/VWindow/index.js.map +1 -1
  774. package/lib/components/transitions/createTransition.js +7 -4
  775. package/lib/components/transitions/createTransition.js.map +1 -1
  776. package/lib/components/transitions/expand-transition.js +1 -0
  777. package/lib/components/transitions/expand-transition.js.map +1 -1
  778. package/lib/components/transitions/index.js.map +1 -1
  779. package/lib/directives/click-outside/index.js.map +1 -1
  780. package/lib/directives/color/index.js +6 -3
  781. package/lib/directives/color/index.js.map +1 -1
  782. package/lib/directives/intersect/index.js +21 -8
  783. package/lib/directives/intersect/index.js.map +1 -1
  784. package/lib/directives/mutate/index.js +13 -13
  785. package/lib/directives/mutate/index.js.map +1 -1
  786. package/lib/directives/resize/index.js +8 -8
  787. package/lib/directives/resize/index.js.map +1 -1
  788. package/lib/directives/ripple/index.js +5 -3
  789. package/lib/directives/ripple/index.js.map +1 -1
  790. package/lib/directives/scroll/index.js +8 -8
  791. package/lib/directives/scroll/index.js.map +1 -1
  792. package/lib/directives/touch/index.js +11 -8
  793. package/lib/directives/touch/index.js.map +1 -1
  794. package/lib/framework.js +1 -1
  795. package/lib/framework.js.map +1 -1
  796. package/lib/install.js +5 -28
  797. package/lib/install.js.map +1 -1
  798. package/lib/locale/af.js.map +1 -1
  799. package/lib/locale/ar.js.map +1 -1
  800. package/lib/locale/az.js.map +1 -1
  801. package/lib/locale/bg.js.map +1 -1
  802. package/lib/locale/ca.js.map +1 -1
  803. package/lib/locale/ckb.js.map +1 -1
  804. package/lib/locale/cs.js.map +1 -1
  805. package/lib/locale/da.js.map +1 -1
  806. package/lib/locale/de.js.map +1 -1
  807. package/lib/locale/el.js.map +1 -1
  808. package/lib/locale/en.js.map +1 -1
  809. package/lib/locale/es.js.map +1 -1
  810. package/lib/locale/et.js.map +1 -1
  811. package/lib/locale/fa.js.map +1 -1
  812. package/lib/locale/fi.js.map +1 -1
  813. package/lib/locale/fr.js.map +1 -1
  814. package/lib/locale/he.js.map +1 -1
  815. package/lib/locale/hr.js.map +1 -1
  816. package/lib/locale/hu.js.map +1 -1
  817. package/lib/locale/id.js.map +1 -1
  818. package/lib/locale/it.js.map +1 -1
  819. package/lib/locale/ja.js.map +1 -1
  820. package/lib/locale/ko.js.map +1 -1
  821. package/lib/locale/lt.js.map +1 -1
  822. package/lib/locale/lv.js.map +1 -1
  823. package/lib/locale/nl.js.map +1 -1
  824. package/lib/locale/no.js.map +1 -1
  825. package/lib/locale/pl.js.map +1 -1
  826. package/lib/locale/pt.js.map +1 -1
  827. package/lib/locale/ro.js.map +1 -1
  828. package/lib/locale/ru.js.map +1 -1
  829. package/lib/locale/sk.js.map +1 -1
  830. package/lib/locale/sl.js.map +1 -1
  831. package/lib/locale/sr-Cyrl.js.map +1 -1
  832. package/lib/locale/sr-Latn.js.map +1 -1
  833. package/lib/locale/sv.js.map +1 -1
  834. package/lib/locale/th.js.map +1 -1
  835. package/lib/locale/tr.js.map +1 -1
  836. package/lib/locale/uk.js.map +1 -1
  837. package/lib/locale/vi.js.map +1 -1
  838. package/lib/locale/zh-Hans.js.map +1 -1
  839. package/lib/locale/zh-Hant.js.map +1 -1
  840. package/lib/mixins/activatable/index.js +19 -20
  841. package/lib/mixins/activatable/index.js.map +1 -1
  842. package/lib/mixins/applicationable/index.js +4 -4
  843. package/lib/mixins/applicationable/index.js.map +1 -1
  844. package/lib/mixins/binds-attrs/index.js +1 -1
  845. package/lib/mixins/binds-attrs/index.js.map +1 -1
  846. package/lib/mixins/bootable/index.js +2 -4
  847. package/lib/mixins/bootable/index.js.map +1 -1
  848. package/lib/mixins/button-group/index.js.map +1 -1
  849. package/lib/mixins/colorable/index.js +1 -0
  850. package/lib/mixins/colorable/index.js.map +1 -1
  851. package/lib/mixins/comparable/index.js.map +1 -1
  852. package/lib/mixins/delayable/index.js.map +1 -1
  853. package/lib/mixins/dependent/index.js.map +1 -1
  854. package/lib/mixins/detachable/index.js +14 -11
  855. package/lib/mixins/detachable/index.js.map +1 -1
  856. package/lib/mixins/elevatable/index.js.map +1 -1
  857. package/lib/mixins/filterable/index.js.map +1 -1
  858. package/lib/mixins/groupable/index.js +4 -2
  859. package/lib/mixins/groupable/index.js.map +1 -1
  860. package/lib/mixins/intersectable/index.js +2 -2
  861. package/lib/mixins/intersectable/index.js.map +1 -1
  862. package/lib/mixins/loadable/index.js +3 -1
  863. package/lib/mixins/loadable/index.js.map +1 -1
  864. package/lib/mixins/localable/index.js.map +1 -1
  865. package/lib/mixins/measurable/index.js.map +1 -1
  866. package/lib/mixins/menuable/index.js +3 -3
  867. package/lib/mixins/menuable/index.js.map +1 -1
  868. package/lib/mixins/mobile/index.js.map +1 -1
  869. package/lib/mixins/mouse/index.js +9 -5
  870. package/lib/mixins/mouse/index.js.map +1 -1
  871. package/lib/mixins/overlayable/index.js +4 -2
  872. package/lib/mixins/overlayable/index.js.map +1 -1
  873. package/lib/mixins/picker/index.js +5 -3
  874. package/lib/mixins/picker/index.js.map +1 -1
  875. package/lib/mixins/picker-button/index.js +1 -2
  876. package/lib/mixins/picker-button/index.js.map +1 -1
  877. package/lib/mixins/positionable/index.js.map +1 -1
  878. package/lib/mixins/proxyable/index.js +5 -2
  879. package/lib/mixins/proxyable/index.js.map +1 -1
  880. package/lib/mixins/registrable/index.js.map +1 -1
  881. package/lib/mixins/returnable/index.js.map +1 -1
  882. package/lib/mixins/rippleable/index.js.map +1 -1
  883. package/lib/mixins/roundable/index.js.map +1 -1
  884. package/lib/mixins/routable/index.js +5 -2
  885. package/lib/mixins/routable/index.js.map +1 -1
  886. package/lib/mixins/scrollable/index.js.map +1 -1
  887. package/lib/mixins/selectable/index.js +15 -12
  888. package/lib/mixins/selectable/index.js.map +1 -1
  889. package/lib/mixins/sizeable/index.js.map +1 -1
  890. package/lib/mixins/ssr-bootable/index.js.map +1 -1
  891. package/lib/mixins/stackable/index.js.map +1 -1
  892. package/lib/mixins/themeable/index.js.map +1 -1
  893. package/lib/mixins/toggleable/index.js.map +1 -1
  894. package/lib/mixins/transitionable/index.js.map +1 -1
  895. package/lib/mixins/translatable/index.js +1 -1
  896. package/lib/mixins/translatable/index.js.map +1 -1
  897. package/lib/mixins/validatable/index.js +17 -7
  898. package/lib/mixins/validatable/index.js.map +1 -1
  899. package/lib/presets/default/index.js.map +1 -1
  900. package/lib/services/application/index.js.map +1 -1
  901. package/lib/services/breakpoint/index.js.map +1 -1
  902. package/lib/services/goto/index.js.map +1 -1
  903. package/lib/services/goto/util.js +42 -3
  904. package/lib/services/goto/util.js.map +1 -1
  905. package/lib/services/icons/index.js.map +1 -1
  906. package/lib/services/icons/presets/fa-svg.js.map +1 -1
  907. package/lib/services/icons/presets/fa.js.map +1 -1
  908. package/lib/services/icons/presets/fa4.js.map +1 -1
  909. package/lib/services/icons/presets/index.js.map +1 -1
  910. package/lib/services/icons/presets/md.js.map +1 -1
  911. package/lib/services/icons/presets/mdi-svg.js.map +1 -1
  912. package/lib/services/icons/presets/mdi.js.map +1 -1
  913. package/lib/services/lang/index.js.map +1 -1
  914. package/lib/services/presets/index.js.map +1 -1
  915. package/lib/services/service/index.js.map +1 -1
  916. package/lib/services/theme/index.js +19 -65
  917. package/lib/services/theme/index.js.map +1 -1
  918. package/lib/services/theme/utils.js.map +1 -1
  919. package/lib/types/vue-augment.js +5 -0
  920. package/lib/types/vue-augment.js.map +1 -0
  921. package/lib/types/vue-internal.js +2 -0
  922. package/lib/types/vue-internal.js.map +1 -0
  923. package/lib/util/color/transformCIELAB.js.map +1 -1
  924. package/lib/util/color/transformSRGB.js.map +1 -1
  925. package/lib/util/colorUtils.js.map +1 -1
  926. package/lib/util/colors.js.map +1 -1
  927. package/lib/util/console.js +47 -17
  928. package/lib/util/console.js.map +1 -1
  929. package/lib/util/dedupeModelListeners.js.map +1 -1
  930. package/lib/util/helpers.js +79 -21
  931. package/lib/util/helpers.js.map +1 -1
  932. package/lib/util/legacyEventsMixin.js +37 -0
  933. package/lib/util/legacyEventsMixin.js.map +1 -0
  934. package/lib/util/make-directive-activatable.js +1 -1
  935. package/lib/util/make-directive-activatable.js.map +1 -1
  936. package/lib/util/mergeData.js +6 -23
  937. package/lib/util/mergeData.js.map +1 -1
  938. package/lib/util/mixins.js +3 -2
  939. package/lib/util/mixins.js.map +1 -1
  940. package/lib/util/rebuildFunctionalSlots.js.map +1 -1
  941. package/package.json +5 -4
  942. package/src/components/VAlert/VAlert.ts +43 -33
  943. package/src/components/VAlert/__tests__/VAlert.spec.ts +88 -60
  944. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +18 -20
  945. package/src/components/VApp/VApp.ts +9 -9
  946. package/src/components/VApp/__tests__/VApp.spec.ts +35 -29
  947. package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
  948. package/src/components/VAppBar/VAppBar.ts +31 -24
  949. package/src/components/VAppBar/VAppBarNavIcon.ts +4 -4
  950. package/src/components/VAppBar/VAppBarTitle.ts +13 -13
  951. package/src/components/VAppBar/__tests__/VAppBar.spec.ts +284 -99
  952. package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +3 -7
  953. package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
  954. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +4 -5
  955. package/src/components/VAppBar/index.ts +2 -2
  956. package/src/components/VAutocomplete/VAutocomplete.ts +54 -26
  957. package/src/components/VAutocomplete/__tests__/VAutocomplete.spec.ts +153 -100
  958. package/src/components/VAutocomplete/__tests__/VAutocomplete2.spec.ts +140 -113
  959. package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +130 -68
  960. package/src/components/VAvatar/VAvatar.ts +9 -9
  961. package/src/components/VAvatar/__tests__/VAvatar.spec.ts +72 -10
  962. package/src/components/VBadge/VBadge.ts +49 -37
  963. package/src/components/VBadge/__tests__/VBadge.spec.ts +64 -47
  964. package/src/components/VBadge/__tests__/__snapshots__/VBadge.spec.ts.snap +5 -5
  965. package/src/components/VBanner/VBanner.ts +46 -33
  966. package/src/components/VBanner/__tests__/VBanner.spec.ts +65 -66
  967. package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +3 -3
  968. package/src/components/VBottomNavigation/VBottomNavigation.ts +44 -28
  969. package/src/components/VBottomNavigation/__tests__/VBottomNavigation.spec.ts +55 -49
  970. package/src/components/VBottomNavigation/__tests__/__snapshots__/VBottomNavigation.spec.ts.snap +10 -10
  971. package/src/components/VBottomSheet/VBottomSheet.ts +5 -5
  972. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +18 -14
  973. package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +38 -14
  974. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +141 -26
  975. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbsItem.spec.ts +14 -10
  976. package/src/components/VBreadcrumbs/index.ts +2 -2
  977. package/src/components/VBtn/VBtn.ts +42 -34
  978. package/src/components/VBtn/__tests__/VBtn.spec.ts +268 -248
  979. package/src/components/VBtn/__tests__/__snapshots__/VBtn.spec.ts.snap +13 -73
  980. package/src/components/VBtnToggle/VBtnToggle.ts +6 -6
  981. package/src/components/VBtnToggle/__tests__/VBtnToggle.spec.ts +11 -7
  982. package/src/components/VCalendar/VCalendar.ts +41 -40
  983. package/src/components/VCalendar/VCalendarCategory.ts +28 -25
  984. package/src/components/VCalendar/VCalendarDaily.ts +59 -66
  985. package/src/components/VCalendar/VCalendarMonthly.ts +4 -3
  986. package/src/components/VCalendar/VCalendarWeekly.ts +47 -48
  987. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +36 -52
  988. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +33 -31
  989. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +57 -55
  990. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +38 -38
  991. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  992. package/src/components/VCalendar/index.ts +2 -2
  993. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  994. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +45 -42
  995. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +60 -67
  996. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +63 -60
  997. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +15 -14
  998. package/src/components/VCalendar/mixins/calendar-base.ts +12 -17
  999. package/src/components/VCalendar/mixins/calendar-with-events.ts +56 -69
  1000. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +5 -5
  1001. package/src/components/VCalendar/mixins/times.ts +10 -10
  1002. package/src/components/VCalendar/modes/__tests__/common.spec.ts +12 -12
  1003. package/src/components/VCalendar/modes/common.ts +2 -2
  1004. package/src/components/VCalendar/modes/index.ts +1 -1
  1005. package/src/components/VCalendar/modes/stack.ts +1 -1
  1006. package/src/components/VCalendar/util/__tests__/events.spec.ts +10 -10
  1007. package/src/components/VCalendar/util/__tests__/timestamp.spec.ts +18 -18
  1008. package/src/components/VCalendar/util/events.ts +2 -2
  1009. package/src/components/VCalendar/util/props.ts +56 -58
  1010. package/src/components/VCalendar/util/timestamp.ts +2 -2
  1011. package/src/components/VCard/VCard.ts +13 -11
  1012. package/src/components/VCard/__tests__/VCard.spec.ts +58 -40
  1013. package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
  1014. package/src/components/VCard/index.ts +3 -3
  1015. package/src/components/VCarousel/VCarousel.ts +58 -31
  1016. package/src/components/VCarousel/VCarouselItem.ts +16 -12
  1017. package/src/components/VCarousel/__tests__/VCarousel.spec.ts +101 -78
  1018. package/src/components/VCarousel/__tests__/VCarouselItem.spec.ts +11 -7
  1019. package/src/components/VCarousel/__tests__/__snapshots__/VCarousel.spec.ts.snap +1 -1
  1020. package/src/components/VCarousel/index.ts +2 -2
  1021. package/src/components/VCheckbox/VCheckbox.ts +35 -22
  1022. package/src/components/VCheckbox/VSimpleCheckbox.ts +101 -51
  1023. package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +170 -159
  1024. package/src/components/VCheckbox/__tests__/VSimpleCheckbox.spec.ts +46 -13
  1025. package/src/components/VCheckbox/__tests__/__snapshots__/VCheckbox.spec.ts.snap +54 -50
  1026. package/src/components/VCheckbox/index.ts +2 -2
  1027. package/src/components/VChip/VChip.ts +40 -35
  1028. package/src/components/VChip/__tests__/VChip.spec.ts +76 -63
  1029. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
  1030. package/src/components/VChipGroup/VChipGroup.ts +8 -8
  1031. package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +19 -26
  1032. package/src/components/VColorPicker/VColorPicker.ts +68 -58
  1033. package/src/components/VColorPicker/VColorPickerCanvas.ts +59 -52
  1034. package/src/components/VColorPicker/VColorPickerEdit.ts +57 -55
  1035. package/src/components/VColorPicker/VColorPickerPreview.ts +56 -36
  1036. package/src/components/VColorPicker/VColorPickerSwatches.ts +53 -40
  1037. package/src/components/VColorPicker/__tests__/VColorPicker.spec.ts +68 -68
  1038. package/src/components/VColorPicker/__tests__/VColorPickerCanvas.spec.ts +23 -21
  1039. package/src/components/VColorPicker/__tests__/VColorPickerEdit.spec.ts +65 -63
  1040. package/src/components/VColorPicker/__tests__/VColorPickerPreview.spec.ts +106 -35
  1041. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +236 -193
  1042. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +48 -31
  1043. package/src/components/VColorPicker/util/__tests__/index.spec.ts +2 -2
  1044. package/src/components/VColorPicker/util/index.ts +5 -5
  1045. package/src/components/VCombobox/VCombobox.ts +33 -10
  1046. package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +220 -192
  1047. package/src/components/VCombobox/__tests__/VCombobox.spec.ts +145 -114
  1048. package/src/components/VContent/VContent.ts +13 -5
  1049. package/src/components/VCounter/VCounter.ts +6 -6
  1050. package/src/components/VCounter/__tests__/VCounter.spec.ts +10 -25
  1051. package/src/components/VData/VData.ts +53 -41
  1052. package/src/components/VData/__tests__/VData.spec.ts +174 -195
  1053. package/src/components/VDataIterator/VDataFooter.ts +43 -35
  1054. package/src/components/VDataIterator/VDataIterator.ts +77 -60
  1055. package/src/components/VDataIterator/__tests__/VDataFooter.spec.ts +66 -67
  1056. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +133 -165
  1057. package/src/components/VDataIterator/__tests__/__snapshots__/VDataFooter.spec.ts.snap +113 -103
  1058. package/src/components/VDataIterator/__tests__/__snapshots__/VDataIterator.spec.ts.snap +94 -84
  1059. package/src/components/VDataIterator/index.ts +2 -2
  1060. package/src/components/VDataTable/MobileRow.ts +7 -7
  1061. package/src/components/VDataTable/Row.ts +13 -9
  1062. package/src/components/VDataTable/RowGroup.ts +40 -23
  1063. package/src/components/VDataTable/VDataTable.ts +131 -126
  1064. package/src/components/VDataTable/VDataTableHeader.ts +12 -13
  1065. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +23 -13
  1066. package/src/components/VDataTable/VDataTableHeaderMobile.ts +29 -35
  1067. package/src/components/VDataTable/VEditDialog.ts +33 -31
  1068. package/src/components/VDataTable/VSimpleTable.ts +12 -13
  1069. package/src/components/VDataTable/VVirtualTable.ts +25 -27
  1070. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +65 -76
  1071. package/src/components/VDataTable/__tests__/Row.spec.ts +73 -82
  1072. package/src/components/VDataTable/__tests__/RowGroup.spec.ts +11 -9
  1073. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +1007 -1011
  1074. package/src/components/VDataTable/__tests__/VDataTableHeader.spec.ts +60 -54
  1075. package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +68 -56
  1076. package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +70 -44
  1077. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +19 -21
  1078. package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
  1079. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +3560 -1901
  1080. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +157 -186
  1081. package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +6 -6
  1082. package/src/components/VDataTable/__tests__/__snapshots__/VSimpleTable.spec.ts.snap +22 -18
  1083. package/src/components/VDataTable/index.ts +2 -2
  1084. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +14 -17
  1085. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +31 -31
  1086. package/src/components/VDataTable/mixins/header.ts +17 -22
  1087. package/src/components/VDatePicker/VDatePicker.ts +92 -72
  1088. package/src/components/VDatePicker/VDatePickerDateTable.ts +25 -20
  1089. package/src/components/VDatePicker/VDatePickerHeader.ts +66 -41
  1090. package/src/components/VDatePicker/VDatePickerMonthTable.ts +8 -8
  1091. package/src/components/VDatePicker/VDatePickerTitle.ts +54 -28
  1092. package/src/components/VDatePicker/VDatePickerYears.ts +26 -24
  1093. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +371 -353
  1094. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +191 -165
  1095. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +115 -129
  1096. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +107 -97
  1097. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +94 -108
  1098. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +68 -44
  1099. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +40 -37
  1100. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +628 -595
  1101. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +248 -228
  1102. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  1103. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  1104. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  1105. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +18 -9
  1106. package/src/components/VDatePicker/index.ts +3 -3
  1107. package/src/components/VDatePicker/mixins/date-picker-table.ts +68 -51
  1108. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  1109. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  1110. package/src/components/VDatePicker/util/eventHelpers.ts +33 -13
  1111. package/src/components/VDatePicker/util/index.ts +2 -2
  1112. package/src/components/VDialog/VDialog.ts +43 -34
  1113. package/src/components/VDialog/__tests__/VDialog.spec.ts +131 -127
  1114. package/src/components/VDialog/__tests__/__snapshots__/VDialog.spec.ts.snap +0 -15
  1115. package/src/components/VDivider/VDivider.ts +4 -5
  1116. package/src/components/VDivider/__tests__/VDivider.spec.ts +14 -18
  1117. package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
  1118. package/src/components/VExpansionPanel/VExpansionPanel.ts +13 -8
  1119. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +12 -15
  1120. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +19 -24
  1121. package/src/components/VExpansionPanel/VExpansionPanels.ts +6 -6
  1122. package/src/components/VExpansionPanel/__tests__/VExpansionPanel.spec.ts +59 -43
  1123. package/src/components/VExpansionPanel/__tests__/VExpansionPanelHeader.spec.ts +9 -7
  1124. package/src/components/VExpansionPanel/__tests__/VExpansionPanels.spec.ts +11 -7
  1125. package/src/components/VExpansionPanel/__tests__/__snapshots__/VExpansionPanel.spec.ts.snap +12 -11
  1126. package/src/components/VExpansionPanel/index.ts +2 -2
  1127. package/src/components/VFileInput/VFileInput.ts +68 -53
  1128. package/src/components/VFileInput/__tests__/VFileInput.spec.ts +106 -76
  1129. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +242 -146
  1130. package/src/components/VFooter/VFooter.ts +15 -16
  1131. package/src/components/VFooter/__tests__/VFooter.spec.ts +35 -28
  1132. package/src/components/VForm/VForm.ts +71 -43
  1133. package/src/components/VForm/__tests__/VForm.spec.ts +114 -94
  1134. package/src/components/VGrid/VCol.ts +18 -18
  1135. package/src/components/VGrid/VContainer.ts +20 -16
  1136. package/src/components/VGrid/VRow.ts +17 -17
  1137. package/src/components/VGrid/__tests__/VCol.spec.ts +34 -32
  1138. package/src/components/VGrid/__tests__/VContainer.spec.ts +59 -4
  1139. package/src/components/VGrid/__tests__/VFlex.spec.ts +4 -4
  1140. package/src/components/VGrid/__tests__/VGrid.spec.ts +19 -19
  1141. package/src/components/VGrid/__tests__/VLayout.spec.ts +4 -4
  1142. package/src/components/VGrid/grid.ts +18 -19
  1143. package/src/components/VGrid/index.ts +3 -3
  1144. package/src/components/VHover/VHover.ts +27 -22
  1145. package/src/components/VHover/__tests__/VHover.spec.ts +50 -34
  1146. package/src/components/VIcon/VIcon.ts +107 -80
  1147. package/src/components/VIcon/__tests__/VIcon.spec.ts +143 -127
  1148. package/src/components/VIcon/__tests__/__snapshots__/VIcon.spec.ts.snap +19 -74
  1149. package/src/components/VImg/VImg.ts +52 -52
  1150. package/src/components/VImg/__tests__/VImg.spec.ts +42 -41
  1151. package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +71 -66
  1152. package/src/components/VInput/VInput.ts +75 -47
  1153. package/src/components/VInput/__tests__/VInput.spec.ts +115 -160
  1154. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +50 -101
  1155. package/src/components/VItemGroup/VItem.ts +35 -29
  1156. package/src/components/VItemGroup/VItemGroup.ts +30 -20
  1157. package/src/components/VItemGroup/__tests__/VItem.spec.ts +40 -48
  1158. package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +124 -152
  1159. package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
  1160. package/src/components/VItemGroup/index.ts +3 -3
  1161. package/src/components/VLabel/VLabel.ts +9 -9
  1162. package/src/components/VLabel/__tests__/VLabel.spec.ts +244 -18
  1163. package/src/components/VLazy/VLazy.ts +28 -29
  1164. package/src/components/VLazy/__tests__/VLazy.spec.ts +11 -9
  1165. package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +1 -1
  1166. package/src/components/VList/VList.ts +15 -15
  1167. package/src/components/VList/VListGroup.ts +62 -50
  1168. package/src/components/VList/VListItem.ts +72 -39
  1169. package/src/components/VList/VListItemAction.ts +12 -11
  1170. package/src/components/VList/VListItemAvatar.ts +5 -5
  1171. package/src/components/VList/VListItemGroup.ts +7 -7
  1172. package/src/components/VList/VListItemIcon.ts +2 -2
  1173. package/src/components/VList/__tests__/VList.spec.ts +22 -21
  1174. package/src/components/VList/__tests__/VListGroup.spec.ts +74 -66
  1175. package/src/components/VList/__tests__/VListItem.spec.ts +157 -78
  1176. package/src/components/VList/__tests__/VListItemAction.spec.ts +34 -33
  1177. package/src/components/VList/__tests__/VListItemAvatar.spec.ts +6 -3
  1178. package/src/components/VList/__tests__/VListItemGroup.spec.ts +6 -3
  1179. package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
  1180. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +6 -7
  1181. package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
  1182. package/src/components/VList/__tests__/__snapshots__/VListItemAction.spec.ts.snap +20 -6
  1183. package/src/components/VList/index.ts +3 -3
  1184. package/src/components/VMain/VMain.ts +11 -11
  1185. package/src/components/VMain/__tests__/VMain.spec.ts +74 -20
  1186. package/src/components/VMenu/VMenu.ts +60 -38
  1187. package/src/components/VMenu/__tests__/VMenu.spec.ts +119 -98
  1188. package/src/components/VMenu/__tests__/__snapshots__/VMenu.spec.ts.snap +3 -5
  1189. package/src/components/VMessages/VMessages.ts +29 -11
  1190. package/src/components/VMessages/__tests__/VMessages.spec.ts +60 -21
  1191. package/src/components/VMessages/__tests__/__snapshots__/VMessages.spec.ts.snap +16 -25
  1192. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +51 -43
  1193. package/src/components/VNavigationDrawer/__tests__/VNavigationDrawer.spec.ts +125 -112
  1194. package/src/components/VOtpInput/VOtpInput.ts +109 -49
  1195. package/src/components/VOtpInput/__tests__/VOtpInput.spec.ts +85 -88
  1196. package/src/components/VOverflowBtn/VOverflowBtn.ts +22 -17
  1197. package/src/components/VOverflowBtn/__tests__/VOverflowBtn.spec.ts +21 -21
  1198. package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +38 -46
  1199. package/src/components/VOverlay/VOverlay.ts +31 -17
  1200. package/src/components/VOverlay/__tests__/VOverlay.spec.ts +7 -7
  1201. package/src/components/VPagination/VPagination.ts +61 -49
  1202. package/src/components/VPagination/__tests__/VPagination.spec.ts +106 -92
  1203. package/src/components/VPagination/__tests__/__snapshots__/VPagination.spec.ts.snap +214 -459
  1204. package/src/components/VParallax/VParallax.ts +17 -17
  1205. package/src/components/VParallax/__tests__/VParallax.spec.ts +6 -6
  1206. package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
  1207. package/src/components/VPicker/VPicker.ts +30 -30
  1208. package/src/components/VPicker/__tests__/VPicker.spec.ts +25 -26
  1209. package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
  1210. package/src/components/VProgressCircular/VProgressCircular.ts +25 -26
  1211. package/src/components/VProgressCircular/__tests__/VProgressCircular.spec.ts +46 -39
  1212. package/src/components/VProgressCircular/__tests__/__snapshots__/VProgressCircular.spec.ts.snap +62 -62
  1213. package/src/components/VProgressLinear/VProgressLinear.ts +81 -52
  1214. package/src/components/VProgressLinear/__tests__/VProgressLinear.spec.ts +418 -103
  1215. package/src/components/VProgressLinear/__tests__/__snapshots__/VProgressLinear.spec.ts.snap +53 -79
  1216. package/src/components/VRadioGroup/VRadio.ts +25 -23
  1217. package/src/components/VRadioGroup/VRadioGroup.ts +30 -17
  1218. package/src/components/VRadioGroup/__tests__/VRadio.spec.ts +65 -52
  1219. package/src/components/VRadioGroup/__tests__/VRadioGroup.spec.ts +7 -7
  1220. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadio.spec.ts.snap +29 -33
  1221. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadioGroup.spec.ts.snap +10 -18
  1222. package/src/components/VRadioGroup/index.ts +2 -2
  1223. package/src/components/VRangeSlider/VRangeSlider.ts +37 -22
  1224. package/src/components/VRangeSlider/__tests__/VRangeSlider.spec.ts +52 -52
  1225. package/src/components/VRangeSlider/__tests__/__snapshots__/VRangeSlider.spec.ts.snap +32 -38
  1226. package/src/components/VRating/VRating.ts +39 -26
  1227. package/src/components/VRating/__tests__/VRating.spec.ts +45 -51
  1228. package/src/components/VResponsive/VResponsive.ts +9 -9
  1229. package/src/components/VResponsive/__tests__/VResponsive.spec.ts +12 -7
  1230. package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
  1231. package/src/components/VSelect/VSelect.ts +148 -81
  1232. package/src/components/VSelect/VSelectList.ts +94 -51
  1233. package/src/components/VSelect/__tests__/VSelect.spec.ts +211 -170
  1234. package/src/components/VSelect/__tests__/VSelect2.spec.ts +164 -148
  1235. package/src/components/VSelect/__tests__/VSelect3.spec.ts +149 -131
  1236. package/src/components/VSelect/__tests__/VSelect4.spec.ts +109 -98
  1237. package/src/components/VSelect/__tests__/VSelectList.spec.ts +50 -45
  1238. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
  1239. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +48 -60
  1240. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +9 -297
  1241. package/src/components/VSelect/__tests__/__snapshots__/VSelectList.spec.ts.snap +30 -27
  1242. package/src/components/VSheet/VSheet.ts +9 -8
  1243. package/src/components/VSheet/__tests__/VSheet.spec.ts +9 -9
  1244. package/src/components/VSkeletonLoader/VSkeletonLoader.ts +13 -14
  1245. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +29 -22
  1246. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +60 -60
  1247. package/src/components/VSlideGroup/VSlideGroup.ts +58 -53
  1248. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  1249. package/src/components/VSlideGroup/__tests__/VSlideGroup.spec.ts +101 -93
  1250. package/src/components/VSlideGroup/__tests__/__snapshots__/VSlideGroup.spec.ts.snap +13 -34
  1251. package/src/components/VSlideGroup/index.ts +3 -3
  1252. package/src/components/VSlider/VSlider.ts +110 -89
  1253. package/src/components/VSlider/__tests__/VSlider.spec.ts +223 -321
  1254. package/src/components/VSlider/__tests__/__snapshots__/VSlider.spec.ts.snap +157 -246
  1255. package/src/components/VSnackbar/VSnackbar.ts +26 -26
  1256. package/src/components/VSnackbar/__tests__/VSnackbar.spec.ts +59 -50
  1257. package/src/components/VSparkline/VSparkline.ts +85 -121
  1258. package/src/components/VSparkline/__tests__/VSparkline.spec.ts +80 -82
  1259. package/src/components/VSparkline/helpers/core.ts +2 -2
  1260. package/src/components/VSparkline/helpers/math.ts +1 -1
  1261. package/src/components/VSpeedDial/VSpeedDial.ts +27 -28
  1262. package/src/components/VSpeedDial/__tests__/VSpeedDial.spec.ts +28 -20
  1263. package/src/components/VSpeedDial/__tests__/__snapshots__/VSpeedDial.spec.ts.snap +6 -6
  1264. package/src/components/VStepper/VStepper.ts +18 -16
  1265. package/src/components/VStepper/VStepperContent.ts +27 -33
  1266. package/src/components/VStepper/VStepperStep.ts +26 -35
  1267. package/src/components/VStepper/__tests__/VStepper.spec.ts +8 -5
  1268. package/src/components/VStepper/__tests__/VStepperContent.spec.ts +142 -129
  1269. package/src/components/VStepper/__tests__/VStepperStep.spec.ts +66 -59
  1270. package/src/components/VStepper/__tests__/__snapshots__/VStepperStep.spec.ts.snap +10 -12
  1271. package/src/components/VStepper/index.ts +3 -3
  1272. package/src/components/VSubheader/VSubheader.ts +5 -5
  1273. package/src/components/VSubheader/__tests__/VSubheader.spec.ts +13 -8
  1274. package/src/components/VSubheader/__tests__/__snapshots__/VSubheader.spec.ts.snap +1 -1
  1275. package/src/components/VSwitch/VSwitch.ts +27 -28
  1276. package/src/components/VSwitch/__tests__/VSwitch.spec.ts +41 -51
  1277. package/src/components/VSwitch/__tests__/__snapshots__/VSwitch.spec.ts.snap +11 -15
  1278. package/src/components/VSystemBar/VSystemBar.ts +11 -12
  1279. package/src/components/VSystemBar/__tests__/VSystemBar.spec.ts +94 -22
  1280. package/src/components/VTabs/VTab.ts +29 -16
  1281. package/src/components/VTabs/VTabItem.ts +3 -3
  1282. package/src/components/VTabs/VTabs.ts +61 -31
  1283. package/src/components/VTabs/VTabsBar.ts +17 -11
  1284. package/src/components/VTabs/VTabsItems.ts +8 -6
  1285. package/src/components/VTabs/VTabsSlider.ts +4 -4
  1286. package/src/components/VTabs/__tests__/VTab.spec.ts +56 -45
  1287. package/src/components/VTabs/__tests__/VTabs.spec.ts +199 -86
  1288. package/src/components/VTabs/__tests__/VTabsBar.spec.ts +69 -28
  1289. package/src/components/VTabs/__tests__/VTabsSlider.spec.ts +10 -9
  1290. package/src/components/VTabs/__tests__/__snapshots__/VTabs.spec.ts.snap +1 -3
  1291. package/src/components/VTabs/index.ts +2 -2
  1292. package/src/components/VTextField/VTextField.ts +54 -51
  1293. package/src/components/VTextField/__tests__/VTextField.spec.ts +425 -332
  1294. package/src/components/VTextField/__tests__/__snapshots__/VTextField.spec.ts.snap +49 -73
  1295. package/src/components/VTextarea/VTextarea.ts +10 -23
  1296. package/src/components/VTextarea/__tests__/VTextarea.spec.ts +171 -43
  1297. package/src/components/VTextarea/__tests__/__snapshots__/VTextarea.spec.ts.snap +99 -4
  1298. package/src/components/VThemeProvider/VThemeProvider.ts +2 -2
  1299. package/src/components/VThemeProvider/__tests__/VThemeProvider.spec.ts +50 -11
  1300. package/src/components/VTimePicker/VTimePicker.ts +210 -100
  1301. package/src/components/VTimePicker/VTimePickerClock.ts +59 -71
  1302. package/src/components/VTimePicker/VTimePickerTitle.ts +15 -14
  1303. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +214 -201
  1304. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +106 -109
  1305. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +66 -60
  1306. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +120 -40
  1307. package/src/components/VTimePicker/index.ts +2 -2
  1308. package/src/components/VTimeline/VTimeline.ts +6 -6
  1309. package/src/components/VTimeline/VTimelineItem.ts +21 -19
  1310. package/src/components/VTimeline/__tests__/VTimelineItem.spec.ts +29 -39
  1311. package/src/components/VTimeline/__tests__/__snapshots__/VTimelineItem.spec.ts.snap +6 -7
  1312. package/src/components/VTimeline/index.ts +2 -2
  1313. package/src/components/VToolbar/VToolbar.ts +22 -23
  1314. package/src/components/VToolbar/__tests__/VToolbar.spec.ts +61 -37
  1315. package/src/components/VToolbar/index.ts +3 -3
  1316. package/src/components/VTooltip/VTooltip.ts +42 -48
  1317. package/src/components/VTooltip/__tests__/VTooltip.spec.ts +85 -99
  1318. package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
  1319. package/src/components/VTreeview/VTreeview.ts +47 -41
  1320. package/src/components/VTreeview/VTreeviewNode.ts +45 -47
  1321. package/src/components/VTreeview/__tests__/VTreeview.spec.ts +273 -279
  1322. package/src/components/VTreeview/__tests__/VTreeviewNode.spec.ts +83 -87
  1323. package/src/components/VTreeview/__tests__/__snapshots__/VTreeview.spec.ts.snap +141 -141
  1324. package/src/components/VTreeview/__tests__/__snapshots__/VTreeviewNode.spec.ts.snap +32 -26
  1325. package/src/components/VTreeview/index.ts +2 -2
  1326. package/src/components/VVirtualScroll/VVirtualScroll.ts +27 -28
  1327. package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +31 -27
  1328. package/src/components/VWindow/VWindow.ts +31 -31
  1329. package/src/components/VWindow/VWindowItem.ts +16 -16
  1330. package/src/components/VWindow/__tests__/VWindow.spec.ts +323 -204
  1331. package/src/components/VWindow/__tests__/VWindowItem.spec.ts +247 -91
  1332. package/src/components/VWindow/__tests__/__snapshots__/VWindow.spec.ts.snap +59 -0
  1333. package/src/components/VWindow/__tests__/__snapshots__/VWindowItem.spec.ts.snap +36 -0
  1334. package/src/components/VWindow/index.ts +2 -2
  1335. package/src/components/transitions/createTransition.ts +16 -16
  1336. package/src/components/transitions/expand-transition.ts +5 -3
  1337. package/src/components/transitions/index.ts +3 -3
  1338. package/src/directives/click-outside/__tests__/click-outside-shadow-dom.spec.ts +7 -7
  1339. package/src/directives/click-outside/__tests__/click-outside.spec.ts +7 -7
  1340. package/src/directives/click-outside/index.ts +5 -5
  1341. package/src/directives/color/__tests__/color.spec.ts +66 -42
  1342. package/src/directives/color/index.ts +14 -9
  1343. package/src/directives/intersect/__tests__/intersect.spec.ts +10 -10
  1344. package/src/directives/intersect/index.ts +82 -42
  1345. package/src/directives/mutate/__tests__/mutate.spec.ts +48 -42
  1346. package/src/directives/mutate/index.ts +58 -49
  1347. package/src/directives/resize/__tests__/resize.spec.ts +5 -5
  1348. package/src/directives/resize/index.ts +34 -15
  1349. package/src/directives/ripple/__tests__/ripple.spec.ts +38 -40
  1350. package/src/directives/ripple/index.ts +6 -8
  1351. package/src/directives/scroll/__tests__/scroll.spec.ts +20 -20
  1352. package/src/directives/scroll/index.ts +36 -21
  1353. package/src/directives/touch/__tests__/touch.spec.ts +23 -16
  1354. package/src/directives/touch/index.ts +44 -32
  1355. package/src/framework.ts +6 -7
  1356. package/src/globals.d.ts +8 -91
  1357. package/src/index.ts +1 -1
  1358. package/src/install.ts +10 -32
  1359. package/src/locale/af.ts +16 -16
  1360. package/src/locale/ar.ts +16 -16
  1361. package/src/locale/az.ts +16 -16
  1362. package/src/locale/bg.ts +16 -16
  1363. package/src/locale/ca.ts +16 -16
  1364. package/src/locale/ckb.ts +16 -16
  1365. package/src/locale/cs.ts +16 -16
  1366. package/src/locale/da.ts +16 -16
  1367. package/src/locale/de.ts +16 -16
  1368. package/src/locale/el.ts +16 -16
  1369. package/src/locale/en.ts +16 -16
  1370. package/src/locale/es.ts +16 -16
  1371. package/src/locale/et.ts +16 -16
  1372. package/src/locale/fa.ts +16 -16
  1373. package/src/locale/fi.ts +16 -16
  1374. package/src/locale/fr.ts +16 -16
  1375. package/src/locale/he.ts +16 -16
  1376. package/src/locale/hr.ts +16 -16
  1377. package/src/locale/hu.ts +16 -16
  1378. package/src/locale/id.ts +16 -16
  1379. package/src/locale/it.ts +16 -16
  1380. package/src/locale/ja.ts +16 -16
  1381. package/src/locale/ko.ts +16 -16
  1382. package/src/locale/lt.ts +16 -16
  1383. package/src/locale/lv.ts +16 -16
  1384. package/src/locale/nl.ts +16 -16
  1385. package/src/locale/no.ts +16 -16
  1386. package/src/locale/pl.ts +16 -16
  1387. package/src/locale/pt.ts +16 -16
  1388. package/src/locale/ro.ts +16 -16
  1389. package/src/locale/ru.ts +16 -16
  1390. package/src/locale/sk.ts +16 -16
  1391. package/src/locale/sl.ts +16 -16
  1392. package/src/locale/sr-Cyrl.ts +16 -16
  1393. package/src/locale/sr-Latn.ts +16 -16
  1394. package/src/locale/sv.ts +16 -16
  1395. package/src/locale/th.ts +16 -16
  1396. package/src/locale/tr.ts +16 -16
  1397. package/src/locale/uk.ts +16 -16
  1398. package/src/locale/vi.ts +16 -16
  1399. package/src/locale/zh-Hans.ts +16 -16
  1400. package/src/locale/zh-Hant.ts +16 -16
  1401. package/src/mixins/activatable/__tests__/activatable.spec.ts +66 -66
  1402. package/src/mixins/activatable/index.ts +25 -27
  1403. package/src/mixins/applicationable/__tests__/applicationable.spec.ts +47 -43
  1404. package/src/mixins/applicationable/index.ts +9 -9
  1405. package/src/mixins/binds-attrs/index.ts +4 -4
  1406. package/src/mixins/bootable/__tests__/bootable.spec.ts +27 -21
  1407. package/src/mixins/bootable/index.ts +10 -9
  1408. package/src/mixins/button-group/index.ts +4 -4
  1409. package/src/mixins/colorable/__tests__/colorable.spec.ts +29 -26
  1410. package/src/mixins/colorable/index.ts +15 -14
  1411. package/src/mixins/comparable/index.ts +4 -5
  1412. package/src/mixins/delayable/index.ts +7 -7
  1413. package/src/mixins/dependent/__tests__/dependent.spec.ts +77 -38
  1414. package/src/mixins/dependent/index.ts +9 -11
  1415. package/src/mixins/detachable/__tests__/detachable.spec.ts +53 -39
  1416. package/src/mixins/detachable/index.ts +27 -25
  1417. package/src/mixins/elevatable/__tests__/elevatable.spec.ts +18 -17
  1418. package/src/mixins/elevatable/index.ts +4 -4
  1419. package/src/mixins/filterable/index.ts +4 -4
  1420. package/src/mixins/groupable/index.ts +19 -17
  1421. package/src/mixins/intersectable/__tests__/intersectable.spec.ts +21 -15
  1422. package/src/mixins/intersectable/index.ts +11 -11
  1423. package/src/mixins/loadable/index.ts +9 -7
  1424. package/src/mixins/localable/index.ts +4 -4
  1425. package/src/mixins/measurable/index.ts +3 -3
  1426. package/src/mixins/menuable/__tests__/menuable.spec.ts +84 -41
  1427. package/src/mixins/menuable/index.ts +27 -27
  1428. package/src/mixins/mobile/__tests__/mobile.spec.ts +12 -9
  1429. package/src/mixins/mobile/index.ts +8 -8
  1430. package/src/mixins/mouse/__tests__/mouse.spec.ts +59 -45
  1431. package/src/mixins/mouse/index.ts +14 -10
  1432. package/src/mixins/overlayable/__tests__/overlayable.spec.ts +35 -27
  1433. package/src/mixins/overlayable/index.ts +19 -18
  1434. package/src/mixins/picker/index.ts +14 -12
  1435. package/src/mixins/picker-button/index.ts +6 -5
  1436. package/src/mixins/positionable/index.ts +6 -6
  1437. package/src/mixins/proxyable/__tests__/proxyable.spec.ts +20 -19
  1438. package/src/mixins/proxyable/index.ts +13 -10
  1439. package/src/mixins/registrable/__tests__/registrable.spec.ts +31 -0
  1440. package/src/mixins/registrable/index.ts +20 -21
  1441. package/src/mixins/returnable/index.ts +6 -6
  1442. package/src/mixins/rippleable/__tests__/rippleable.spec.ts +11 -10
  1443. package/src/mixins/rippleable/index.ts +6 -5
  1444. package/src/mixins/roundable/__tests__/roundable.spec.ts +10 -8
  1445. package/src/mixins/roundable/index.ts +9 -7
  1446. package/src/mixins/routable/__tests__/routable.spec.ts +66 -58
  1447. package/src/mixins/routable/index.ts +18 -14
  1448. package/src/mixins/scrollable/__tests__/scrollable.spec.ts +68 -39
  1449. package/src/mixins/scrollable/index.ts +7 -7
  1450. package/src/mixins/selectable/__tests__/selectable.spec.ts +23 -10
  1451. package/src/mixins/selectable/index.ts +24 -21
  1452. package/src/mixins/sizeable/index.ts +5 -5
  1453. package/src/mixins/ssr-bootable/index.ts +3 -3
  1454. package/src/mixins/stackable/index.ts +6 -6
  1455. package/src/mixins/themeable/index.ts +17 -17
  1456. package/src/mixins/toggleable/index.ts +6 -6
  1457. package/src/mixins/transitionable/index.ts +3 -3
  1458. package/src/mixins/translatable/index.ts +7 -7
  1459. package/src/mixins/validatable/__tests__/validatable.spec.ts +209 -173
  1460. package/src/mixins/validatable/index.ts +44 -36
  1461. package/src/presets/default/index.ts +10 -10
  1462. package/src/services/application/index.ts +1 -1
  1463. package/src/services/breakpoint/__tests__/breakpoint.spec.ts +34 -34
  1464. package/src/services/breakpoint/index.ts +3 -4
  1465. package/src/services/goto/__tests__/goto.spec.ts +147 -2
  1466. package/src/services/goto/index.ts +2 -2
  1467. package/src/services/goto/util.ts +44 -5
  1468. package/src/services/icons/index.ts +1 -1
  1469. package/src/services/icons/presets/fa-svg.ts +3 -3
  1470. package/src/services/icons/presets/fa.ts +1 -1
  1471. package/src/services/icons/presets/fa4.ts +1 -1
  1472. package/src/services/icons/presets/index.ts +1 -1
  1473. package/src/services/icons/presets/md.ts +1 -1
  1474. package/src/services/icons/presets/mdi-svg.ts +1 -1
  1475. package/src/services/icons/presets/mdi.ts +1 -1
  1476. package/src/services/lang/__tests__/lang.spec.ts +5 -5
  1477. package/src/services/lang/index.ts +2 -2
  1478. package/src/services/presets/__tests__/presets.spec.ts +9 -9
  1479. package/src/services/presets/index.ts +2 -2
  1480. package/src/services/service/index.ts +2 -2
  1481. package/src/services/theme/__tests__/__snapshots__/theme.spec.ts.snap +0 -1128
  1482. package/src/services/theme/__tests__/theme-utils.spec.ts +4 -4
  1483. package/src/services/theme/__tests__/theme.spec.ts +96 -98
  1484. package/src/services/theme/index.ts +29 -67
  1485. package/src/services/theme/utils.ts +3 -3
  1486. package/src/types/vue-augment.ts +15 -0
  1487. package/src/types/vue-internal.ts +34 -0
  1488. package/src/util/__tests__/colorUtils.spec.ts +4 -4
  1489. package/src/util/__tests__/console.spec.ts +124 -11
  1490. package/src/util/__tests__/dateTimeUtils.spec.ts +1 -1
  1491. package/src/util/__tests__/dom.spec.ts +10 -7
  1492. package/src/util/__tests__/helpers.spec.ts +251 -49
  1493. package/src/util/__tests__/mergeData.spec.ts +10 -10
  1494. package/src/util/color/transformCIELAB.ts +2 -2
  1495. package/src/util/color/transformSRGB.ts +2 -2
  1496. package/src/util/colorUtils.ts +4 -4
  1497. package/src/util/colors.ts +21 -21
  1498. package/src/util/console.ts +44 -25
  1499. package/src/util/dedupeModelListeners.ts +1 -1
  1500. package/src/util/helpers.ts +88 -32
  1501. package/src/util/legacyEventsMixin.ts +34 -0
  1502. package/src/util/make-directive-activatable.ts +12 -12
  1503. package/src/util/mergeData.ts +12 -21
  1504. package/src/util/mixins.ts +25 -6
  1505. package/src/util/rebuildFunctionalSlots.ts +1 -1
  1506. package/types/alacarte.d.ts +15 -14
  1507. package/types/index.d.ts +7 -15
  1508. package/types/lib.d.ts +173 -173
  1509. package/types/services/goto.d.ts +3 -3
  1510. package/types/services/index.d.ts +2 -2
@@ -7,7 +7,9 @@ import PickerButton from '../../mixins/picker-button'; // Utils
7
7
 
8
8
  import { createRange } from '../../util/helpers';
9
9
  import pad from '../VDatePicker/util/pad';
10
- import mixins from '../../util/mixins';
10
+ import mixins from '../../util/mixins'; // Types
11
+
12
+ import { h } from 'vue';
11
13
  import { SelectingTimes } from './SelectingTimes';
12
14
  const rangeHours24 = createRange(24);
13
15
  const rangeHours12am = createRange(12);
@@ -43,9 +45,10 @@ export default mixins(Picker, PickerButton
43
45
  readonly: Boolean,
44
46
  scrollable: Boolean,
45
47
  useSeconds: Boolean,
46
- value: null,
48
+ modelValue: null,
47
49
  ampmInTitle: Boolean
48
50
  },
51
+ emits: ['update:modelValue', 'change', 'update:active-picker', 'update:period', 'click:hour', 'click:minute', 'click:second'],
49
52
 
50
53
  data() {
51
54
  return {
@@ -166,14 +169,21 @@ export default mixins(Picker, PickerButton
166
169
  watch: {
167
170
  activePicker: 'setPicker',
168
171
  selecting: 'emitPicker',
169
- value: 'setInputData'
172
+ modelValue: {
173
+ handler: 'setInputData',
174
+ immediate: false
175
+ }
170
176
  },
171
177
 
172
178
  mounted() {
173
- this.setInputData(this.value);
179
+ this.setInputData(this.modelValue);
174
180
  this.$on('update:period', this.setPeriod);
175
181
  },
176
182
 
183
+ beforeUnmount() {
184
+ this.$off('update:period', this.setPeriod);
185
+ },
186
+
177
187
  methods: {
178
188
  genValue() {
179
189
  if (this.inputHour != null && this.inputMinute != null && (!this.useSeconds || this.inputSecond != null)) {
@@ -185,7 +195,7 @@ export default mixins(Picker, PickerButton
185
195
 
186
196
  emitValue() {
187
197
  const value = this.genValue();
188
- if (value !== null) this.$emit('input', value);
198
+ if (value !== null) this.$emit('update:modelValue', value);
189
199
  },
190
200
 
191
201
  emitPicker(value) {
@@ -201,7 +211,9 @@ export default mixins(Picker, PickerButton
201
211
  },
202
212
 
203
213
  setPicker(picker) {
204
- if (picker === 'HOUR') this.selecting = SelectingTimes.Hour;else if (picker === 'MINUTE') this.selecting = SelectingTimes.Minute;else if (picker === 'SECOND' && this.useSeconds) this.selecting = SelectingTimes.Second;
214
+ if (picker === 'HOUR') this.selecting = SelectingTimes.Hour;else if (picker === 'MINUTE') this.selecting = SelectingTimes.Minute;else if (picker === 'SECOND' && this.useSeconds) {
215
+ this.selecting = SelectingTimes.Second;
216
+ }
205
217
  },
206
218
 
207
219
  setPeriod(period) {
@@ -224,13 +236,31 @@ export default mixins(Picker, PickerButton
224
236
  this.inputMinute = value.getMinutes();
225
237
  this.inputSecond = value.getSeconds();
226
238
  } else {
227
- const [, hour, minute,, second, period] = value.trim().toLowerCase().match(/^(\d+):(\d+)(:(\d+))?([ap]m)?$/) || new Array(6);
228
- this.inputHour = period ? this.convert12to24(parseInt(hour, 10), period) : parseInt(hour, 10);
229
- this.inputMinute = parseInt(minute, 10);
230
- this.inputSecond = parseInt(second || 0, 10);
239
+ const match = value.trim().match(/^(\d+):(\d+)(:(\d+))?\s*([ap]m)?$/i);
240
+
241
+ if (match) {
242
+ const [, hour, minute,, second, period] = match;
243
+ const normalizedPeriod = period ? period.toLowerCase() : null;
244
+ this.inputHour = normalizedPeriod ? this.convert12to24(parseInt(hour, 10), normalizedPeriod) : parseInt(hour, 10);
245
+ this.inputMinute = parseInt(minute, 10);
246
+ this.inputSecond = parseInt(second || 0, 10); // Устанавливаем период только если он был указан в строке
247
+
248
+ if (normalizedPeriod) {
249
+ this.period = normalizedPeriod;
250
+ } else if (this.inputHour != null) {
251
+ this.period = this.inputHour < 12 ? 'am' : 'pm';
252
+ }
253
+ } else {
254
+ this.inputHour = null;
255
+ this.inputMinute = null;
256
+ this.inputSecond = null;
257
+ }
258
+ } // Для Date объектов устанавливаем период на основе 24-часового формата
259
+
260
+
261
+ if (value instanceof Date && this.inputHour != null) {
262
+ this.period = this.inputHour < 12 ? 'am' : 'pm';
231
263
  }
232
-
233
- this.period = this.inputHour == null || this.inputHour < 12 ? 'am' : 'pm';
234
264
  },
235
265
 
236
266
  convert24to12(hour) {
@@ -254,6 +284,8 @@ export default mixins(Picker, PickerButton
254
284
  },
255
285
 
256
286
  onChange(value) {
287
+ // Сначала обновляем значение через onInput - это ключевой момент!
288
+ this.onInput(value);
257
289
  this.$emit(`click:${selectingNames[this.selecting]}`, value);
258
290
  const emitChange = this.selecting === (this.useSeconds ? SelectingTimes.Second : SelectingTimes.Minute);
259
291
 
@@ -263,7 +295,10 @@ export default mixins(Picker, PickerButton
263
295
  this.selecting = SelectingTimes.Second;
264
296
  }
265
297
 
266
- if (this.inputHour === this.lazyInputHour && this.inputMinute === this.lazyInputMinute && (!this.useSeconds || this.inputSecond === this.lazyInputSecond)) return;
298
+ if (this.inputHour === this.lazyInputHour && this.inputMinute === this.lazyInputMinute && (!this.useSeconds || this.inputSecond === this.lazyInputSecond)) {
299
+ return;
300
+ }
301
+
267
302
  const time = this.genValue();
268
303
  if (time === null) return;
269
304
  this.lazyInputHour = this.inputHour;
@@ -296,8 +331,8 @@ export default mixins(Picker, PickerButton
296
331
  scrollable: this.scrollable,
297
332
  size: Number(this.width) - (!this.fullWidth && this.landscape ? 80 : 20),
298
333
  step: this.selecting === SelectingTimes.Hour ? 1 : 5,
299
- value: this.selecting === SelectingTimes.Hour ? this.inputHour : this.selecting === SelectingTimes.Minute ? this.inputMinute : this.inputSecond,
300
- onInput: this.onInput,
334
+ modelValue: this.selecting === SelectingTimes.Hour ? this.inputHour : this.selecting === SelectingTimes.Minute ? this.inputMinute : this.inputSecond,
335
+ onUpdateModelValue: this.onInput,
301
336
  onChange: this.onChange,
302
337
  ref: 'clock'
303
338
  });
@@ -318,24 +353,23 @@ export default mixins(Picker, PickerButton
318
353
 
319
354
  genPickerTitle() {
320
355
  return h(VTimePickerTitle, {
321
- props: {
322
- ampm: this.isAmPm,
323
- ampmReadonly: this.isAmPm && !this.ampmInTitle,
324
- disabled: this.disabled,
325
- hour: this.inputHour,
326
- minute: this.inputMinute,
327
- second: this.inputSecond,
328
- period: this.period,
329
- readonly: this.readonly,
330
- useSeconds: this.useSeconds,
331
- selecting: this.selecting
356
+ ampm: this.isAmPm,
357
+ ampmReadonly: this.isAmPm && !this.ampmInTitle,
358
+ disabled: this.disabled,
359
+ hour: this.inputHour,
360
+ minute: this.inputMinute,
361
+ second: this.inputSecond,
362
+ period: this.period,
363
+ readonly: this.readonly,
364
+ useSeconds: this.useSeconds,
365
+ selecting: this.selecting,
366
+ 'onUpdate:selecting': value => {
367
+ this.selecting = value;
332
368
  },
333
- on: {
334
- 'update:selecting': value => this.selecting = value,
335
- 'update:period': period => this.$emit('update:period', period)
369
+ 'onUpdate:period': period => {
370
+ this.$emit('update:period', period);
336
371
  },
337
- ref: 'title',
338
- slot: 'title'
372
+ ref: 'title'
339
373
  });
340
374
  }
341
375
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTimePicker/VTimePicker.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport VTimePickerTitle from './VTimePickerTitle'\nimport VTimePickerClock from './VTimePickerClock'\n\n// Mixins\nimport Picker from '../../mixins/picker'\nimport PickerButton from '../../mixins/picker-button'\n\n// Utils\nimport { createRange } from '../../util/helpers'\nimport pad from '../VDatePicker/util/pad'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, PropType } from 'vue'\nimport { SelectingTimes } from './SelectingTimes'\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\nconst selectingNames = { 1: 'hour', 2: 'minute', 3: 'second' }\nexport { SelectingTimes }\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\ntype ActivePicker = 'HOUR' | 'MINUTE' | 'SECOND'\n\nexport default mixins(\n Picker,\n PickerButton\n/* @vue/component */\n).extend({\n name: 'v-time-picker',\n\n props: {\n activePicker: String as PropType<ActivePicker>,\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 disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n validator (val: any) {\n return ['ampm', '24hr'].includes(val)\n },\n },\n min: String,\n max: String,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n value: null as any as PropType<any>,\n ampmInTitle: Boolean,\n },\n\n data () {\n return {\n inputHour: null as number | null,\n inputMinute: null as number | null,\n inputSecond: null as number | null,\n lazyInputHour: null as number | null,\n lazyInputMinute: null as number | null,\n lazyInputSecond: null as number | null,\n period: 'am' as Period,\n selecting: SelectingTimes.Hour,\n }\n },\n\n computed: {\n selectingHour: {\n get (): boolean {\n return this.selecting === SelectingTimes.Hour\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Hour\n },\n },\n selectingMinute: {\n get (): boolean {\n return this.selecting === SelectingTimes.Minute\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Minute\n },\n },\n selectingSecond: {\n get (): boolean {\n return this.selecting === SelectingTimes.Second\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Second\n },\n },\n isAllowedHourCb (): AllowFunction {\n let cb: AllowFunction\n\n if (this.allowedHours instanceof Array) {\n cb = (val: number) => (this.allowedHours as number[]).includes(val)\n } else {\n cb = this.allowedHours\n }\n\n if (!this.min && !this.max) return cb\n\n const minHour = this.min ? Number(this.min.split(':')[0]) : 0\n const maxHour = this.max ? Number(this.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= minHour * 1 &&\n val <= maxHour * 1 &&\n (!cb || cb(val))\n }\n },\n isAllowedMinuteCb (): AllowFunction {\n let cb: AllowFunction\n\n const isHourAllowed = !this.isAllowedHourCb || this.inputHour === null || this.isAllowedHourCb(this.inputHour)\n if (this.allowedMinutes instanceof Array) {\n cb = (val: number) => (this.allowedMinutes as number[]).includes(val)\n } else {\n cb = this.allowedMinutes\n }\n\n if (!this.min && !this.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = this.min ? this.min.split(':').map(Number) : [0, 0]\n const [maxHour, maxMinute] = this.max ? this.max.split(':').map(Number) : [23, 59]\n const minTime = minHour * 60 + minMinute * 1\n const maxTime = maxHour * 60 + maxMinute * 1\n\n return (val: number) => {\n const time = 60 * this.inputHour! + val\n return time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n }\n },\n isAllowedSecondCb (): AllowFunction {\n let cb: AllowFunction\n\n const isHourAllowed = !this.isAllowedHourCb || this.inputHour === null || this.isAllowedHourCb(this.inputHour)\n const isMinuteAllowed = isHourAllowed &&\n (!this.isAllowedMinuteCb ||\n this.inputMinute === null ||\n this.isAllowedMinuteCb(this.inputMinute)\n )\n\n if (this.allowedSeconds instanceof Array) {\n cb = (val: number) => (this.allowedSeconds as number[]).includes(val)\n } else {\n cb = this.allowedSeconds\n }\n\n if (!this.min && !this.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = this.min ? this.min.split(':').map(Number) : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = this.max ? this.max.split(':').map(Number) : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + (minSecond || 0) * 1\n const maxTime = maxHour * 3600 + maxMinute * 60 + (maxSecond || 0) * 1\n\n return (val: number) => {\n const time = 3600 * this.inputHour! + 60 * this.inputMinute! + val\n return time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n }\n },\n isAmPm (): boolean {\n return this.format === 'ampm'\n },\n },\n\n watch: {\n activePicker: 'setPicker',\n selecting: 'emitPicker',\n value: 'setInputData',\n },\n\n mounted () {\n this.setInputData(this.value)\n this.$on('update:period', this.setPeriod)\n },\n\n methods: {\n genValue () {\n if (this.inputHour != null && this.inputMinute != null && (!this.useSeconds || this.inputSecond != null)) {\n return `${pad(this.inputHour)}:${pad(this.inputMinute)}` + (this.useSeconds ? `:${pad(this.inputSecond!)}` : '')\n }\n\n return null\n },\n emitValue () {\n const value = this.genValue()\n if (value !== null) this.$emit('input', value)\n },\n emitPicker (value: SelectingTimes) {\n let activePicker = 'HOUR'\n if (value === SelectingTimes.Minute) {\n activePicker = 'MINUTE'\n } else if (value === SelectingTimes.Second) {\n activePicker = 'SECOND'\n }\n this.$emit('update:active-picker', activePicker)\n },\n setPicker (picker: ActivePicker) {\n if (picker === 'HOUR') this.selecting = SelectingTimes.Hour\n else if (picker === 'MINUTE') this.selecting = SelectingTimes.Minute\n else if (picker === 'SECOND' && this.useSeconds) this.selecting = SelectingTimes.Second\n },\n setPeriod (period: Period) {\n this.period = period\n if (this.inputHour != null) {\n const newHour = this.inputHour! + (period === 'am' ? -12 : 12)\n this.inputHour = this.firstAllowed('hour', newHour)\n this.emitValue()\n }\n },\n setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n this.inputHour = null\n this.inputMinute = null\n this.inputSecond = null\n } else if (value instanceof Date) {\n this.inputHour = value.getHours()\n this.inputMinute = value.getMinutes()\n this.inputSecond = value.getSeconds()\n } else {\n const [, hour, minute, , second, period] = value.trim().toLowerCase().match(/^(\\d+):(\\d+)(:(\\d+))?([ap]m)?$/) || new Array(6)\n\n this.inputHour = period ? this.convert12to24(parseInt(hour, 10), period as Period) : parseInt(hour, 10)\n this.inputMinute = parseInt(minute, 10)\n this.inputSecond = parseInt(second || 0, 10)\n }\n\n this.period = (this.inputHour == null || this.inputHour < 12) ? 'am' : 'pm'\n },\n convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12 + 1) : 12\n },\n convert12to24 (hour: number, period: Period) {\n return hour % 12 + (period === 'pm' ? 12 : 0)\n },\n onInput (value: number) {\n if (this.selecting === SelectingTimes.Hour) {\n this.inputHour = this.isAmPm ? this.convert12to24(value, this.period) : value\n } else if (this.selecting === SelectingTimes.Minute) {\n this.inputMinute = value\n } else {\n this.inputSecond = value\n }\n this.emitValue()\n },\n onChange (value: number) {\n this.$emit(`click:${selectingNames[this.selecting]}`, value)\n\n const emitChange = this.selecting === (this.useSeconds ? SelectingTimes.Second : SelectingTimes.Minute)\n\n if (this.selecting === SelectingTimes.Hour) {\n this.selecting = SelectingTimes.Minute\n } else if (this.useSeconds && this.selecting === SelectingTimes.Minute) {\n this.selecting = SelectingTimes.Second\n }\n\n if (this.inputHour === this.lazyInputHour &&\n this.inputMinute === this.lazyInputMinute &&\n (!this.useSeconds || this.inputSecond === this.lazyInputSecond)\n ) return\n\n const time = this.genValue()\n if (time === null) return\n\n this.lazyInputHour = this.inputHour\n this.lazyInputMinute = this.inputMinute\n this.useSeconds && (this.lazyInputSecond = this.inputSecond)\n\n emitChange && this.$emit('change', time)\n },\n firstAllowed (type: 'hour' | 'minute' | 'second', value: number) {\n const allowedFn = type === 'hour' ? this.isAllowedHourCb : (type === 'minute' ? this.isAllowedMinuteCb : this.isAllowedSecondCb)\n if (!allowedFn) return value\n\n // TODO: clean up\n const range = type === 'minute'\n ? range60\n : (type === 'second'\n ? range60\n : (this.isAmPm\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 genClock () {\n return h(VTimePickerClock, {\n allowedValues:\n this.selecting === SelectingTimes.Hour\n ? this.isAllowedHourCb\n : (this.selecting === SelectingTimes.Minute\n ? this.isAllowedMinuteCb\n : this.isAllowedSecondCb),\n color: this.color,\n dark: this.dark,\n disabled: this.disabled,\n double: this.selecting === SelectingTimes.Hour && !this.isAmPm,\n format: this.selecting === SelectingTimes.Hour\n ? (this.isAmPm ? this.convert24to12 : (val: number) => val)\n : (val: number) => pad(val, 2),\n light: this.light,\n max: this.selecting === SelectingTimes.Hour ? (this.isAmPm && this.period === 'am' ? 11 : 23) : 59,\n min: this.selecting === SelectingTimes.Hour && this.isAmPm && this.period === 'pm' ? 12 : 0,\n readonly: this.readonly,\n scrollable: this.scrollable,\n size: Number(this.width) - ((!this.fullWidth && this.landscape) ? 80 : 20),\n step: this.selecting === SelectingTimes.Hour ? 1 : 5,\n value: this.selecting === SelectingTimes.Hour\n ? this.inputHour\n : (this.selecting === SelectingTimes.Minute\n ? this.inputMinute\n : this.inputSecond),\n onInput: this.onInput,\n onChange: this.onChange,\n ref: 'clock',\n })\n },\n genClockAmPm () {\n return h('div', this.setTextColor(this.color || 'primary', {\n class: 'v-time-picker-clock__ampm',\n }), [\n this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly),\n this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly),\n ])\n },\n genPickerBody () {\n return h('div', {\n class: 'v-time-picker-clock__container',\n key: this.selecting,\n }, [\n !this.ampmInTitle && this.isAmPm && this.genClockAmPm(),\n this.genClock(),\n ])\n },\n genPickerTitle () {\n return h(VTimePickerTitle, {\n props: {\n ampm: this.isAmPm,\n ampmReadonly: this.isAmPm && !this.ampmInTitle,\n disabled: this.disabled,\n hour: this.inputHour,\n minute: this.inputMinute,\n second: this.inputSecond,\n period: this.period,\n readonly: this.readonly,\n useSeconds: this.useSeconds,\n selecting: this.selecting,\n },\n on: {\n 'update:selecting': (value: 1 | 2 | 3) => (this.selecting = value),\n 'update:period': (period: string) => this.$emit('update:period', period),\n },\n ref: 'title',\n slot: 'title',\n })\n },\n },\n\n render (): VNode {\n return this.genPicker('v-picker--time')\n },\n})\n"],"sourceRoot":"","file":"VTimePicker.js"}
1
+ {"version":3,"sources":["../../../src/components/VTimePicker/VTimePicker.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,gBAAP,MAA6B,oBAA7B;AACA,OAAO,gBAAP,MAA6B,oBAA7B,C,CAEA;;AACA,OAAO,MAAP,MAAmB,qBAAnB;AACA,OAAO,YAAP,MAAyB,4BAAzB,C,CAEA;;AACA,SAAS,WAAT,QAA4B,oBAA5B;AACA,OAAO,GAAP,MAAgB,yBAAhB;AACA,OAAO,MAAP,MAAmB,mBAAnB,C,CAEA;;AACA,SAA0B,CAA1B,QAAoD,KAApD;AACA,SAAS,cAAT,QAA+B,kBAA/B;AAEA,MAAM,YAAY,GAAG,WAAW,CAAC,EAAD,CAAhC;AACA,MAAM,cAAc,GAAG,WAAW,CAAC,EAAD,CAAlC;AACA,MAAM,cAAc,GAAG,cAAc,CAAC,GAAf,CAAmB,CAAC,IAAI,CAAC,GAAG,EAA5B,CAAvB;AACA,MAAM,OAAO,GAAG,WAAW,CAAC,EAAD,CAA3B;AACA,MAAM,cAAc,GAAG;AAAE,KAAG,MAAL;AAAa,KAAG,QAAhB;AAA0B,KAAG;AAA7B,CAAvB;AACA,SAAS,cAAT;AAMA,eAAe,MAAM,CACnB,MADmB,EAEnB;AACA;AAHmB,CAAN,CAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,eADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,YAAY,EAAE,MADT;AAEL,IAAA,YAAY,EAAE,CAAC,QAAD,EAAW,KAAX,CAFT;AAGL,IAAA,cAAc,EAAE,CAAC,QAAD,EAAW,KAAX,CAHX;AAIL,IAAA,cAAc,EAAE,CAAC,QAAD,EAAW,KAAX,CAJX;AAKL,IAAA,QAAQ,EAAE,OALL;AAML,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,MADA;AAEN,MAAA,OAAO,EAAE,MAFH;;AAGN,MAAA,SAAS,CAAE,GAAF,EAAU;AACjB,eAAO,CAAC,MAAD,EAAS,MAAT,EAAiB,QAAjB,CAA0B,GAA1B,CAAP;AACD;;AALK,KANH;AAaL,IAAA,GAAG,EAAE,MAbA;AAcL,IAAA,GAAG,EAAE,MAdA;AAeL,IAAA,QAAQ,EAAE,OAfL;AAgBL,IAAA,UAAU,EAAE,OAhBP;AAiBL,IAAA,UAAU,EAAE,OAjBP;AAkBL,IAAA,UAAU,EAAG,IAlBR;AAmBL,IAAA,WAAW,EAAE;AAnBR,GAHA;AAwBP,EAAA,KAAK,EAAE,CACL,mBADK,EAEL,QAFK,EAGL,sBAHK,EAIL,eAJK,EAKL,YALK,EAML,cANK,EAOL,cAPK,CAxBA;;AAiCP,EAAA,IAAI,GAAA;AACF,WAAO;AACL,MAAA,SAAS,EAAE,IADN;AAEL,MAAA,WAAW,EAAE,IAFR;AAGL,MAAA,WAAW,EAAE,IAHR;AAIL,MAAA,aAAa,EAAE,IAJV;AAKL,MAAA,eAAe,EAAE,IALZ;AAML,MAAA,eAAe,EAAE,IANZ;AAOL,MAAA,MAAM,EAAE,IAPH;AAQL,MAAA,SAAS,EAAE,cAAc,CAAC;AARrB,KAAP;AAUD,GA5CM;;AA8CP,EAAA,QAAQ,EAAE;AACR,IAAA,aAAa,EAAE;AACb,MAAA,GAAG,GAAA;AACD,eAAO,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAzC;AACD,OAHY;;AAIb,MAAA,GAAG,CAAE,CAAF,EAAY;AACb,aAAK,SAAL,GAAiB,cAAc,CAAC,IAAhC;AACD;;AANY,KADP;AASR,IAAA,eAAe,EAAE;AACf,MAAA,GAAG,GAAA;AACD,eAAO,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAzC;AACD,OAHc;;AAIf,MAAA,GAAG,CAAE,CAAF,EAAY;AACb,aAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC;AACD;;AANc,KATT;AAiBR,IAAA,eAAe,EAAE;AACf,MAAA,GAAG,GAAA;AACD,eAAO,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAzC;AACD,OAHc;;AAIf,MAAA,GAAG,CAAE,CAAF,EAAY;AACb,aAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC;AACD;;AANc,KAjBT;;AAyBR,IAAA,eAAe,GAAA;AACb,UAAI,EAAJ;;AAEA,UAAI,KAAK,YAAL,YAA6B,KAAjC,EAAwC;AACtC,QAAA,EAAE,GAAI,GAAD,IAAkB,KAAK,YAAL,CAA+B,QAA/B,CAAwC,GAAxC,CAAvB;AACD,OAFD,MAEO;AACL,QAAA,EAAE,GAAG,KAAK,YAAV;AACD;;AAED,UAAI,CAAC,KAAK,GAAN,IAAa,CAAC,KAAK,GAAvB,EAA4B,OAAO,EAAP;AAE5B,YAAM,OAAO,GAAG,KAAK,GAAL,GAAW,MAAM,CAAC,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,CAApB,CAAD,CAAjB,GAA4C,CAA5D;AACA,YAAM,OAAO,GAAG,KAAK,GAAL,GAAW,MAAM,CAAC,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,CAApB,CAAD,CAAjB,GAA4C,EAA5D;AAEA,aAAQ,GAAD,IAAgB;AACrB,eAAO,GAAG,IAAI,OAAO,GAAG,CAAjB,IAAsB,GAAG,IAAI,OAAO,GAAG,CAAvC,KAA6C,CAAC,EAAD,IAAO,EAAE,CAAC,GAAD,CAAtD,CAAP;AACD,OAFD;AAGD,KA1CO;;AA2CR,IAAA,iBAAiB,GAAA;AACf,UAAI,EAAJ;AAEA,YAAM,aAAa,GACjB,CAAC,KAAK,eAAN,IACA,KAAK,SAAL,KAAmB,IADnB,IAEA,KAAK,eAAL,CAAqB,KAAK,SAA1B,CAHF;;AAIA,UAAI,KAAK,cAAL,YAA+B,KAAnC,EAA0C;AACxC,QAAA,EAAE,GAAI,GAAD,IAAkB,KAAK,cAAL,CAAiC,QAAjC,CAA0C,GAA1C,CAAvB;AACD,OAFD,MAEO;AACL,QAAA,EAAE,GAAG,KAAK,cAAV;AACD;;AAED,UAAI,CAAC,KAAK,GAAN,IAAa,CAAC,KAAK,GAAvB,EAA4B;AAC1B,eAAO,aAAa,GAAG,EAAH,GAAQ,MAAM,KAAlC;AACD;;AAED,YAAM,CAAC,OAAD,EAAU,SAAV,IAAuB,KAAK,GAAL,GACzB,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,GAApB,CAAwB,MAAxB,CADyB,GAEzB,CAAC,CAAD,EAAI,CAAJ,CAFJ;AAGA,YAAM,CAAC,OAAD,EAAU,SAAV,IAAuB,KAAK,GAAL,GACzB,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,GAApB,CAAwB,MAAxB,CADyB,GAEzB,CAAC,EAAD,EAAK,EAAL,CAFJ;AAGA,YAAM,OAAO,GAAG,OAAO,GAAG,EAAV,GAAe,SAAS,GAAG,CAA3C;AACA,YAAM,OAAO,GAAG,OAAO,GAAG,EAAV,GAAe,SAAS,GAAG,CAA3C;AAEA,aAAQ,GAAD,IAAgB;AACrB,cAAM,IAAI,GAAG,KAAK,KAAK,SAAV,GAAuB,GAApC;AACA,eACE,IAAI,IAAI,OAAR,IACA,IAAI,IAAI,OADR,IAEA,aAFA,KAGC,CAAC,EAAD,IAAO,EAAE,CAAC,GAAD,CAHV,CADF;AAMD,OARD;AASD,KA9EO;;AA+ER,IAAA,iBAAiB,GAAA;AACf,UAAI,EAAJ;AAEA,YAAM,aAAa,GACjB,CAAC,KAAK,eAAN,IACA,KAAK,SAAL,KAAmB,IADnB,IAEA,KAAK,eAAL,CAAqB,KAAK,SAA1B,CAHF;AAIA,YAAM,eAAe,GACnB,aAAa,KACZ,CAAC,KAAK,iBAAN,IACC,KAAK,WAAL,KAAqB,IADtB,IAEC,KAAK,iBAAL,CAAuB,KAAK,WAA5B,CAHW,CADf;;AAMA,UAAI,KAAK,cAAL,YAA+B,KAAnC,EAA0C;AACxC,QAAA,EAAE,GAAI,GAAD,IAAkB,KAAK,cAAL,CAAiC,QAAjC,CAA0C,GAA1C,CAAvB;AACD,OAFD,MAEO;AACL,QAAA,EAAE,GAAG,KAAK,cAAV;AACD;;AAED,UAAI,CAAC,KAAK,GAAN,IAAa,CAAC,KAAK,GAAvB,EAA4B;AAC1B,eAAO,eAAe,GAAG,EAAH,GAAQ,MAAM,KAApC;AACD;;AAED,YAAM,CAAC,OAAD,EAAU,SAAV,EAAqB,SAArB,IAAkC,KAAK,GAAL,GACpC,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,GAApB,CAAwB,MAAxB,CADoC,GAEpC,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,CAFJ;AAGA,YAAM,CAAC,OAAD,EAAU,SAAV,EAAqB,SAArB,IAAkC,KAAK,GAAL,GACpC,KAAK,GAAL,CAAS,KAAT,CAAe,GAAf,EAAoB,GAApB,CAAwB,MAAxB,CADoC,GAEpC,CAAC,EAAD,EAAK,EAAL,EAAS,EAAT,CAFJ;AAGA,YAAM,OAAO,GAAG,OAAO,GAAG,IAAV,GAAiB,SAAS,GAAG,EAA7B,GAAkC,CAAC,SAAS,IAAI,CAAd,IAAmB,CAArE;AACA,YAAM,OAAO,GAAG,OAAO,GAAG,IAAV,GAAiB,SAAS,GAAG,EAA7B,GAAkC,CAAC,SAAS,IAAI,CAAd,IAAmB,CAArE;AAEA,aAAQ,GAAD,IAAgB;AACrB,cAAM,IAAI,GAAG,OAAO,KAAK,SAAZ,GAAyB,KAAK,KAAK,WAAnC,GAAkD,GAA/D;AACA,eACE,IAAI,IAAI,OAAR,IACA,IAAI,IAAI,OADR,IAEA,eAFA,KAGC,CAAC,EAAD,IAAO,EAAE,CAAC,GAAD,CAHV,CADF;AAMD,OARD;AASD,KAxHO;;AAyHR,IAAA,MAAM,GAAA;AACJ,aAAO,KAAK,MAAL,KAAgB,MAAvB;AACD;;AA3HO,GA9CH;AA4KP,EAAA,KAAK,EAAE;AACL,IAAA,YAAY,EAAE,WADT;AAEL,IAAA,SAAS,EAAE,YAFN;AAGL,IAAA,UAAU,EAAE;AACV,MAAA,OAAO,EAAE,cADC;AAEV,MAAA,SAAS,EAAE;AAFD;AAHP,GA5KA;;AAqLP,EAAA,OAAO,GAAA;AACL,SAAK,YAAL,CAAkB,KAAK,UAAvB;AACA,SAAK,GAAL,CAAS,eAAT,EAA0B,KAAK,SAA/B;AACD,GAxLM;;AA0LP,EAAA,aAAa,GAAA;AACX,SAAK,IAAL,CAAU,eAAV,EAA2B,KAAK,SAAhC;AACD,GA5LM;;AA8LP,EAAA,OAAO,EAAE;AACP,IAAA,QAAQ,GAAA;AACN,UACE,KAAK,SAAL,IAAkB,IAAlB,IACA,KAAK,WAAL,IAAoB,IADpB,KAEC,CAAC,KAAK,UAAN,IAAoB,KAAK,WAAL,IAAoB,IAFzC,CADF,EAIE;AACA,eACE,GAAG,GAAG,CAAC,KAAK,SAAN,CAAgB,IAAI,GAAG,CAAC,KAAK,WAAN,CAAkB,EAA/C,IACC,KAAK,UAAL,GAAkB,IAAI,GAAG,CAAC,KAAK,WAAN,CAAmB,EAA5C,GAAiD,EADlD,CADF;AAID;;AAED,aAAO,IAAP;AACD,KAdM;;AAeP,IAAA,SAAS,GAAA;AACP,YAAM,KAAK,GAAG,KAAK,QAAL,EAAd;AACA,UAAI,KAAK,KAAK,IAAd,EAAoB,KAAK,KAAL,CAAW,mBAAX,EAAgC,KAAhC;AACrB,KAlBM;;AAmBP,IAAA,UAAU,CAAE,KAAF,EAAuB;AAC/B,UAAI,YAAY,GAAG,MAAnB;;AACA,UAAI,KAAK,KAAK,cAAc,CAAC,MAA7B,EAAqC;AACnC,QAAA,YAAY,GAAG,QAAf;AACD,OAFD,MAEO,IAAI,KAAK,KAAK,cAAc,CAAC,MAA7B,EAAqC;AAC1C,QAAA,YAAY,GAAG,QAAf;AACD;;AACD,WAAK,KAAL,CAAW,sBAAX,EAAmC,YAAnC;AACD,KA3BM;;AA4BP,IAAA,SAAS,CAAE,MAAF,EAAsB;AAC7B,UAAI,MAAM,KAAK,MAAf,EAAuB,KAAK,SAAL,GAAiB,cAAc,CAAC,IAAhC,CAAvB,KACK,IAAI,MAAM,KAAK,QAAf,EAAyB,KAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC,CAAzB,KACA,IAAI,MAAM,KAAK,QAAX,IAAuB,KAAK,UAAhC,EAA4C;AAAE,aAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC;AAAwC;AAC5F,KAhCM;;AAiCP,IAAA,SAAS,CAAE,MAAF,EAAgB;AACvB,WAAK,MAAL,GAAc,MAAd;;AACA,UAAI,KAAK,SAAL,IAAkB,IAAtB,EAA4B;AAC1B,cAAM,OAAO,GAAG,KAAK,SAAL,IAAmB,MAAM,KAAK,IAAX,GAAkB,CAAC,EAAnB,GAAwB,EAA3C,CAAhB;AACA,aAAK,SAAL,GAAiB,KAAK,YAAL,CAAkB,MAAlB,EAA0B,OAA1B,CAAjB;AACA,aAAK,SAAL;AACD;AACF,KAxCM;;AAyCP,IAAA,YAAY,CAAE,KAAF,EAA6B;AACvC,UAAI,KAAK,IAAI,IAAT,IAAiB,KAAK,KAAK,EAA/B,EAAmC;AACjC,aAAK,SAAL,GAAiB,IAAjB;AACA,aAAK,WAAL,GAAmB,IAAnB;AACA,aAAK,WAAL,GAAmB,IAAnB;AACD,OAJD,MAIO,IAAI,KAAK,YAAY,IAArB,EAA2B;AAChC,aAAK,SAAL,GAAiB,KAAK,CAAC,QAAN,EAAjB;AACA,aAAK,WAAL,GAAmB,KAAK,CAAC,UAAN,EAAnB;AACA,aAAK,WAAL,GAAmB,KAAK,CAAC,UAAN,EAAnB;AACD,OAJM,MAIA;AACL,cAAM,KAAK,GAAG,KAAK,CAChB,IADW,GAEX,KAFW,CAEL,oCAFK,CAAd;;AAIA,YAAI,KAAJ,EAAW;AACT,gBAAM,GAAG,IAAH,EAAS,MAAT,GAAmB,MAAnB,EAA2B,MAA3B,IAAqC,KAA3C;AACA,gBAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,CAAC,WAAP,EAAH,GAAoC,IAAnE;AACA,eAAK,SAAL,GAAiB,gBAAgB,GAC7B,KAAK,aAAL,CAAmB,QAAQ,CAAC,IAAD,EAAO,EAAP,CAA3B,EAAuC,gBAAvC,CAD6B,GAE7B,QAAQ,CAAC,IAAD,EAAO,EAAP,CAFZ;AAGA,eAAK,WAAL,GAAmB,QAAQ,CAAC,MAAD,EAAS,EAAT,CAA3B;AACA,eAAK,WAAL,GAAmB,QAAQ,CAAC,MAAM,IAAI,CAAX,EAAc,EAAd,CAA3B,CAPS,CAST;;AACA,cAAI,gBAAJ,EAAsB;AACpB,iBAAK,MAAL,GAAc,gBAAd;AACD,WAFD,MAEO,IAAI,KAAK,SAAL,IAAkB,IAAtB,EAA4B;AACjC,iBAAK,MAAL,GAAc,KAAK,SAAL,GAAiB,EAAjB,GAAsB,IAAtB,GAA6B,IAA3C;AACD;AACF,SAfD,MAeO;AACL,eAAK,SAAL,GAAiB,IAAjB;AACA,eAAK,WAAL,GAAmB,IAAnB;AACA,eAAK,WAAL,GAAmB,IAAnB;AACD;AACF,OAlCsC,CAoCvC;;;AACA,UAAI,KAAK,YAAY,IAAjB,IAAyB,KAAK,SAAL,IAAkB,IAA/C,EAAqD;AACnD,aAAK,MAAL,GAAc,KAAK,SAAL,GAAiB,EAAjB,GAAsB,IAAtB,GAA6B,IAA3C;AACD;AACF,KAjFM;;AAkFP,IAAA,aAAa,CAAE,IAAF,EAAc;AACzB,aAAO,IAAI,GAAI,CAAC,IAAI,GAAG,CAAR,IAAa,EAAd,GAAoB,CAAvB,GAA2B,EAAtC;AACD,KApFM;;AAqFP,IAAA,aAAa,CAAE,IAAF,EAAgB,MAAhB,EAA8B;AACzC,aAAQ,IAAI,GAAG,EAAR,IAAe,MAAM,KAAK,IAAX,GAAkB,EAAlB,GAAuB,CAAtC,CAAP;AACD,KAvFM;;AAwFP,IAAA,OAAO,CAAE,KAAF,EAAe;AACpB,UAAI,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAtC,EAA4C;AAC1C,aAAK,SAAL,GAAiB,KAAK,MAAL,GACb,KAAK,aAAL,CAAmB,KAAnB,EAA0B,KAAK,MAA/B,CADa,GAEb,KAFJ;AAGD,OAJD,MAIO,IAAI,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAtC,EAA8C;AACnD,aAAK,WAAL,GAAmB,KAAnB;AACD,OAFM,MAEA;AACL,aAAK,WAAL,GAAmB,KAAnB;AACD;;AACD,WAAK,SAAL;AACD,KAnGM;;AAoGP,IAAA,QAAQ,CAAE,KAAF,EAAe;AACrB;AACA,WAAK,OAAL,CAAa,KAAb;AAEA,WAAK,KAAL,CAAW,SAAS,cAAc,CAAC,KAAK,SAAN,CAAgB,EAAlD,EAAsD,KAAtD;AAEA,YAAM,UAAU,GACd,KAAK,SAAL,MACC,KAAK,UAAL,GAAkB,cAAc,CAAC,MAAjC,GAA0C,cAAc,CAAC,MAD1D,CADF;;AAIA,UAAI,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAtC,EAA4C;AAC1C,aAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC;AACD,OAFD,MAEO,IAAI,KAAK,UAAL,IAAmB,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAzD,EAAiE;AACtE,aAAK,SAAL,GAAiB,cAAc,CAAC,MAAhC;AACD;;AAED,UACE,KAAK,SAAL,KAAmB,KAAK,aAAxB,IACA,KAAK,WAAL,KAAqB,KAAK,eAD1B,KAEC,CAAC,KAAK,UAAN,IAAoB,KAAK,WAAL,KAAqB,KAAK,eAF/C,CADF,EAIE;AACA;AACD;;AAED,YAAM,IAAI,GAAG,KAAK,QAAL,EAAb;AACA,UAAI,IAAI,KAAK,IAAb,EAAmB;AAEnB,WAAK,aAAL,GAAqB,KAAK,SAA1B;AACA,WAAK,eAAL,GAAuB,KAAK,WAA5B;AACA,WAAK,UAAL,KAAoB,KAAK,eAAL,GAAuB,KAAK,WAAhD;AAEA,MAAA,UAAU,IAAI,KAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,CAAd;AACD,KApIM;;AAqIP,IAAA,YAAY,CAAE,IAAF,EAAsC,KAAtC,EAAmD;AAC7D,YAAM,SAAS,GACb,IAAI,KAAK,MAAT,GACI,KAAK,eADT,GAEI,IAAI,KAAK,QAAT,GACE,KAAK,iBADP,GAEE,KAAK,iBALb;AAMA,UAAI,CAAC,SAAL,EAAgB,OAAO,KAAP,CAP6C,CAS7D;;AACA,YAAM,KAAK,GACT,IAAI,KAAK,QAAT,GACI,OADJ,GAEI,IAAI,KAAK,QAAT,GACE,OADF,GAEE,KAAK,MAAL,GACE,KAAK,GAAG,EAAR,GACE,cADF,GAEE,cAHJ,GAIE,YATV;AAUA,YAAM,KAAK,GAAG,KAAK,CAAC,IAAN,CAAW,CAAC,IACxB,SAAS,CAAE,CAAC,CAAC,GAAG,KAAL,IAAc,KAAK,CAAC,MAArB,GAA+B,KAAK,CAAC,CAAD,CAArC,CADG,CAAd;AAGA,aAAQ,CAAC,CAAC,KAAK,IAAI,CAAV,IAAe,KAAhB,IAAyB,KAAK,CAAC,MAAhC,GAA0C,KAAK,CAAC,CAAD,CAAtD;AACD,KA7JM;;AA8JP,IAAA,QAAQ,GAAA;AACN,aAAO,CAAC,CAAC,gBAAD,EAAmB;AACzB,QAAA,aAAa,EACX,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,GACI,KAAK,eADT,GAEI,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAlC,GACE,KAAK,iBADP,GAEE,KAAK,iBANY;AAOzB,QAAA,KAAK,EAAE,KAAK,KAPa;AAQzB,QAAA,IAAI,EAAE,KAAK,IARc;AASzB,QAAA,QAAQ,EAAE,KAAK,QATU;AAUzB,QAAA,MAAM,EAAE,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,IAA0C,CAAC,KAAK,MAV/B;AAWzB,QAAA,MAAM,EACJ,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,GACI,KAAK,MAAL,GACE,KAAK,aADP,GAEG,GAAD,IAAiB,GAHvB,GAIK,GAAD,IAAiB,GAAG,CAAC,GAAD,EAAM,CAAN,CAhBD;AAiBzB,QAAA,KAAK,EAAE,KAAK,KAjBa;AAkBzB,QAAA,GAAG,EACD,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,GACI,KAAK,MAAL,IAAe,KAAK,MAAL,KAAgB,IAA/B,GACE,EADF,GAEE,EAHN,GAII,EAvBmB;AAwBzB,QAAA,GAAG,EACD,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,IACA,KAAK,MADL,IAEA,KAAK,MAAL,KAAgB,IAFhB,GAGI,EAHJ,GAII,CA7BmB;AA8BzB,QAAA,QAAQ,EAAE,KAAK,QA9BU;AA+BzB,QAAA,UAAU,EAAE,KAAK,UA/BQ;AAgCzB,QAAA,IAAI,EACF,MAAM,CAAC,KAAK,KAAN,CAAN,IAAsB,CAAC,KAAK,SAAN,IAAmB,KAAK,SAAxB,GAAoC,EAApC,GAAyC,EAA/D,CAjCuB;AAkCzB,QAAA,IAAI,EAAE,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,GAAyC,CAAzC,GAA6C,CAlC1B;AAmCzB,QAAA,UAAU,EACR,KAAK,SAAL,KAAmB,cAAc,CAAC,IAAlC,GACI,KAAK,SADT,GAEI,KAAK,SAAL,KAAmB,cAAc,CAAC,MAAlC,GACE,KAAK,WADP,GAEE,KAAK,WAxCY;AAyCzB,QAAA,kBAAkB,EAAE,KAAK,OAzCA;AA0CzB,QAAA,QAAQ,EAAE,KAAK,QA1CU;AA2CzB,QAAA,GAAG,EAAE;AA3CoB,OAAnB,CAAR;AA6CD,KA5MM;;AA6MP,IAAA,YAAY,GAAA;AACV,aAAO,CAAC,CACN,KADM,EAEN,KAAK,YAAL,CAAkB,KAAK,KAAL,IAAc,SAAhC,EAA2C;AACzC,QAAA,KAAK,EAAE;AADkC,OAA3C,CAFM,EAKN,CACE,KAAK,eAAL,CACE,QADF,EAEE,IAFF,EAGE,KAAK,QAAL,CAAc,IAAd,CAAmB,CAAnB,CAAqB,wBAArB,CAHF,EAIE,KAAK,QAAL,IAAiB,KAAK,QAJxB,CADF,EAOE,KAAK,eAAL,CACE,QADF,EAEE,IAFF,EAGE,KAAK,QAAL,CAAc,IAAd,CAAmB,CAAnB,CAAqB,wBAArB,CAHF,EAIE,KAAK,QAAL,IAAiB,KAAK,QAJxB,CAPF,CALM,CAAR;AAoBD,KAlOM;;AAmOP,IAAA,aAAa,GAAA;AACX,aAAO,CAAC,CACN,KADM,EAEN;AACE,QAAA,KAAK,EAAE,gCADT;AAEE,QAAA,GAAG,EAAE,KAAK;AAFZ,OAFM,EAMN,CACE,CAAC,KAAK,WAAN,IAAqB,KAAK,MAA1B,IAAoC,KAAK,YAAL,EADtC,EAEE,KAAK,QAAL,EAFF,CANM,CAAR;AAWD,KA/OM;;AAgPP,IAAA,cAAc,GAAA;AACZ,aAAO,CAAC,CAAC,gBAAD,EAAmB;AACzB,QAAA,IAAI,EAAE,KAAK,MADc;AAEzB,QAAA,YAAY,EAAE,KAAK,MAAL,IAAe,CAAC,KAAK,WAFV;AAGzB,QAAA,QAAQ,EAAE,KAAK,QAHU;AAIzB,QAAA,IAAI,EAAE,KAAK,SAJc;AAKzB,QAAA,MAAM,EAAE,KAAK,WALY;AAMzB,QAAA,MAAM,EAAE,KAAK,WANY;AAOzB,QAAA,MAAM,EAAE,KAAK,MAPY;AAQzB,QAAA,QAAQ,EAAE,KAAK,QARU;AASzB,QAAA,UAAU,EAAE,KAAK,UATQ;AAUzB,QAAA,SAAS,EAAE,KAAK,SAVS;AAWzB,8BAAuB,KAAD,IAAqB;AACzC,eAAK,SAAL,GAAiB,KAAjB;AACD,SAbwB;AAczB,2BAAoB,MAAD,IAAmB;AACpC,eAAK,KAAL,CAAW,eAAX,EAA4B,MAA5B;AACD,SAhBwB;AAiBzB,QAAA,GAAG,EAAE;AAjBoB,OAAnB,CAAR;AAmBD;;AApQM,GA9LF;;AAqcP,EAAA,MAAM,GAAA;AACJ,WAAO,KAAK,SAAL,CAAe,gBAAf,CAAP;AACD;;AAvcM,CAJM,CAAf","sourcesContent":["// Components\nimport VTimePickerTitle from './VTimePickerTitle'\nimport VTimePickerClock from './VTimePickerClock'\n\n// Mixins\nimport Picker from '../../mixins/picker'\nimport PickerButton from '../../mixins/picker-button'\n\n// Utils\nimport { createRange } from '../../util/helpers'\nimport pad from '../VDatePicker/util/pad'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode, PropType, h, defineComponent } from 'vue'\nimport { SelectingTimes } from './SelectingTimes'\n\nconst rangeHours24 = createRange(24)\nconst rangeHours12am = createRange(12)\nconst rangeHours12pm = rangeHours12am.map(v => v + 12)\nconst range60 = createRange(60)\nconst selectingNames = { 1: 'hour', 2: 'minute', 3: 'second' }\nexport { SelectingTimes }\n\ntype Period = 'am' | 'pm'\ntype AllowFunction = (val: number) => boolean\ntype ActivePicker = 'HOUR' | 'MINUTE' | 'SECOND'\n\nexport default mixins(\n Picker,\n PickerButton\n /* @vue/component */\n).extend({\n name: 'v-time-picker',\n\n props: {\n activePicker: String as PropType<ActivePicker>,\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 disabled: Boolean,\n format: {\n type: String as PropType<'ampm' | '24hr'>,\n default: 'ampm',\n validator (val: any) {\n return ['ampm', '24hr'].includes(val)\n }\n },\n min: String,\n max: String,\n readonly: Boolean,\n scrollable: Boolean,\n useSeconds: Boolean,\n modelValue: (null as any) as PropType<any>,\n ampmInTitle: Boolean\n },\n emits: [\n 'update:modelValue',\n 'change',\n 'update:active-picker',\n 'update:period',\n 'click:hour',\n 'click:minute',\n 'click:second'\n ],\n data () {\n return {\n inputHour: null as number | null,\n inputMinute: null as number | null,\n inputSecond: null as number | null,\n lazyInputHour: null as number | null,\n lazyInputMinute: null as number | null,\n lazyInputSecond: null as number | null,\n period: 'am' as Period,\n selecting: SelectingTimes.Hour\n }\n },\n\n computed: {\n selectingHour: {\n get (): boolean {\n return this.selecting === SelectingTimes.Hour\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Hour\n }\n },\n selectingMinute: {\n get (): boolean {\n return this.selecting === SelectingTimes.Minute\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Minute\n }\n },\n selectingSecond: {\n get (): boolean {\n return this.selecting === SelectingTimes.Second\n },\n set (v: boolean) {\n this.selecting = SelectingTimes.Second\n }\n },\n isAllowedHourCb (): AllowFunction {\n let cb: AllowFunction\n\n if (this.allowedHours instanceof Array) {\n cb = (val: number) => (this.allowedHours as number[]).includes(val)\n } else {\n cb = this.allowedHours\n }\n\n if (!this.min && !this.max) return cb\n\n const minHour = this.min ? Number(this.min.split(':')[0]) : 0\n const maxHour = this.max ? Number(this.max.split(':')[0]) : 23\n\n return (val: number) => {\n return val >= minHour * 1 && val <= maxHour * 1 && (!cb || cb(val))\n }\n },\n isAllowedMinuteCb (): AllowFunction {\n let cb: AllowFunction\n\n const isHourAllowed =\n !this.isAllowedHourCb ||\n this.inputHour === null ||\n this.isAllowedHourCb(this.inputHour)\n if (this.allowedMinutes instanceof Array) {\n cb = (val: number) => (this.allowedMinutes as number[]).includes(val)\n } else {\n cb = this.allowedMinutes\n }\n\n if (!this.min && !this.max) {\n return isHourAllowed ? cb : () => false\n }\n\n const [minHour, minMinute] = this.min\n ? this.min.split(':').map(Number)\n : [0, 0]\n const [maxHour, maxMinute] = this.max\n ? this.max.split(':').map(Number)\n : [23, 59]\n const minTime = minHour * 60 + minMinute * 1\n const maxTime = maxHour * 60 + maxMinute * 1\n\n return (val: number) => {\n const time = 60 * this.inputHour! + val\n return (\n time >= minTime &&\n time <= maxTime &&\n isHourAllowed &&\n (!cb || cb(val))\n )\n }\n },\n isAllowedSecondCb (): AllowFunction {\n let cb: AllowFunction\n\n const isHourAllowed =\n !this.isAllowedHourCb ||\n this.inputHour === null ||\n this.isAllowedHourCb(this.inputHour)\n const isMinuteAllowed =\n isHourAllowed &&\n (!this.isAllowedMinuteCb ||\n this.inputMinute === null ||\n this.isAllowedMinuteCb(this.inputMinute))\n\n if (this.allowedSeconds instanceof Array) {\n cb = (val: number) => (this.allowedSeconds as number[]).includes(val)\n } else {\n cb = this.allowedSeconds\n }\n\n if (!this.min && !this.max) {\n return isMinuteAllowed ? cb : () => false\n }\n\n const [minHour, minMinute, minSecond] = this.min\n ? this.min.split(':').map(Number)\n : [0, 0, 0]\n const [maxHour, maxMinute, maxSecond] = this.max\n ? this.max.split(':').map(Number)\n : [23, 59, 59]\n const minTime = minHour * 3600 + minMinute * 60 + (minSecond || 0) * 1\n const maxTime = maxHour * 3600 + maxMinute * 60 + (maxSecond || 0) * 1\n\n return (val: number) => {\n const time = 3600 * this.inputHour! + 60 * this.inputMinute! + val\n return (\n time >= minTime &&\n time <= maxTime &&\n isMinuteAllowed &&\n (!cb || cb(val))\n )\n }\n },\n isAmPm (): boolean {\n return this.format === 'ampm'\n }\n },\n\n watch: {\n activePicker: 'setPicker',\n selecting: 'emitPicker',\n modelValue: {\n handler: 'setInputData',\n immediate: false\n }\n },\n\n mounted () {\n this.setInputData(this.modelValue)\n this.$on('update:period', this.setPeriod)\n },\n\n beforeUnmount () {\n this.$off('update:period', this.setPeriod)\n },\n\n methods: {\n genValue () {\n if (\n this.inputHour != null &&\n this.inputMinute != null &&\n (!this.useSeconds || this.inputSecond != null)\n ) {\n return (\n `${pad(this.inputHour)}:${pad(this.inputMinute)}` +\n (this.useSeconds ? `:${pad(this.inputSecond!)}` : '')\n )\n }\n\n return null\n },\n emitValue () {\n const value = this.genValue()\n if (value !== null) this.$emit('update:modelValue', value)\n },\n emitPicker (value: SelectingTimes) {\n let activePicker = 'HOUR'\n if (value === SelectingTimes.Minute) {\n activePicker = 'MINUTE'\n } else if (value === SelectingTimes.Second) {\n activePicker = 'SECOND'\n }\n this.$emit('update:active-picker', activePicker)\n },\n setPicker (picker: ActivePicker) {\n if (picker === 'HOUR') this.selecting = SelectingTimes.Hour\n else if (picker === 'MINUTE') this.selecting = SelectingTimes.Minute\n else if (picker === 'SECOND' && this.useSeconds) { this.selecting = SelectingTimes.Second }\n },\n setPeriod (period: Period) {\n this.period = period\n if (this.inputHour != null) {\n const newHour = this.inputHour! + (period === 'am' ? -12 : 12)\n this.inputHour = this.firstAllowed('hour', newHour)\n this.emitValue()\n }\n },\n setInputData (value: string | null | Date) {\n if (value == null || value === '') {\n this.inputHour = null\n this.inputMinute = null\n this.inputSecond = null\n } else if (value instanceof Date) {\n this.inputHour = value.getHours()\n this.inputMinute = value.getMinutes()\n this.inputSecond = value.getSeconds()\n } else {\n const match = value\n .trim()\n .match(/^(\\d+):(\\d+)(:(\\d+))?\\s*([ap]m)?$/i)\n\n if (match) {\n const [, hour, minute, , second, period] = match\n const normalizedPeriod = period ? period.toLowerCase() as Period : null\n this.inputHour = normalizedPeriod\n ? this.convert12to24(parseInt(hour, 10), normalizedPeriod)\n : parseInt(hour, 10)\n this.inputMinute = parseInt(minute, 10)\n this.inputSecond = parseInt(second || 0, 10)\n\n // Устанавливаем период только если он был указан в строке\n if (normalizedPeriod) {\n this.period = normalizedPeriod\n } else if (this.inputHour != null) {\n this.period = this.inputHour < 12 ? 'am' : 'pm'\n }\n } else {\n this.inputHour = null\n this.inputMinute = null\n this.inputSecond = null\n }\n }\n\n // Для Date объектов устанавливаем период на основе 24-часового формата\n if (value instanceof Date && this.inputHour != null) {\n this.period = this.inputHour < 12 ? 'am' : 'pm'\n }\n },\n convert24to12 (hour: number) {\n return hour ? ((hour - 1) % 12) + 1 : 12\n },\n convert12to24 (hour: number, period: Period) {\n return (hour % 12) + (period === 'pm' ? 12 : 0)\n },\n onInput (value: number) {\n if (this.selecting === SelectingTimes.Hour) {\n this.inputHour = this.isAmPm\n ? this.convert12to24(value, this.period)\n : value\n } else if (this.selecting === SelectingTimes.Minute) {\n this.inputMinute = value\n } else {\n this.inputSecond = value\n }\n this.emitValue()\n },\n onChange (value: number) {\n // Сначала обновляем значение через onInput - это ключевой момент!\n this.onInput(value)\n\n this.$emit(`click:${selectingNames[this.selecting]}`, value)\n\n const emitChange =\n this.selecting ===\n (this.useSeconds ? SelectingTimes.Second : SelectingTimes.Minute)\n\n if (this.selecting === SelectingTimes.Hour) {\n this.selecting = SelectingTimes.Minute\n } else if (this.useSeconds && this.selecting === SelectingTimes.Minute) {\n this.selecting = SelectingTimes.Second\n }\n\n if (\n this.inputHour === this.lazyInputHour &&\n this.inputMinute === this.lazyInputMinute &&\n (!this.useSeconds || this.inputSecond === this.lazyInputSecond)\n ) {\n return\n }\n\n const time = this.genValue()\n if (time === null) return\n\n this.lazyInputHour = this.inputHour\n this.lazyInputMinute = this.inputMinute\n this.useSeconds && (this.lazyInputSecond = this.inputSecond)\n\n emitChange && this.$emit('change', time)\n },\n firstAllowed (type: 'hour' | 'minute' | 'second', value: number) {\n const allowedFn =\n type === 'hour'\n ? this.isAllowedHourCb\n : type === 'minute'\n ? this.isAllowedMinuteCb\n : this.isAllowedSecondCb\n if (!allowedFn) return value\n\n // TODO: clean up\n const range =\n type === 'minute'\n ? range60\n : type === 'second'\n ? range60\n : this.isAmPm\n ? value < 12\n ? rangeHours12am\n : rangeHours12pm\n : rangeHours24\n const first = range.find(v =>\n allowedFn(((v + value) % range.length) + range[0])\n )\n return (((first || 0) + value) % range.length) + range[0]\n },\n genClock () {\n return h(VTimePickerClock, {\n allowedValues:\n this.selecting === SelectingTimes.Hour\n ? this.isAllowedHourCb\n : this.selecting === SelectingTimes.Minute\n ? this.isAllowedMinuteCb\n : this.isAllowedSecondCb,\n color: this.color,\n dark: this.dark,\n disabled: this.disabled,\n double: this.selecting === SelectingTimes.Hour && !this.isAmPm,\n format:\n this.selecting === SelectingTimes.Hour\n ? this.isAmPm\n ? this.convert24to12\n : (val: number) => val\n : (val: number) => pad(val, 2),\n light: this.light,\n max:\n this.selecting === SelectingTimes.Hour\n ? this.isAmPm && this.period === 'am'\n ? 11\n : 23\n : 59,\n min:\n this.selecting === SelectingTimes.Hour &&\n this.isAmPm &&\n this.period === 'pm'\n ? 12\n : 0,\n readonly: this.readonly,\n scrollable: this.scrollable,\n size:\n Number(this.width) - (!this.fullWidth && this.landscape ? 80 : 20),\n step: this.selecting === SelectingTimes.Hour ? 1 : 5,\n modelValue:\n this.selecting === SelectingTimes.Hour\n ? this.inputHour\n : this.selecting === SelectingTimes.Minute\n ? this.inputMinute\n : this.inputSecond,\n onUpdateModelValue: this.onInput,\n onChange: this.onChange,\n ref: 'clock'\n })\n },\n genClockAmPm () {\n return h(\n 'div',\n this.setTextColor(this.color || 'primary', {\n class: 'v-time-picker-clock__ampm'\n }),\n [\n this.genPickerButton(\n 'period',\n 'am',\n this.$vuetify.lang.t('$vuetify.timePicker.am'),\n this.disabled || this.readonly\n ),\n this.genPickerButton(\n 'period',\n 'pm',\n this.$vuetify.lang.t('$vuetify.timePicker.pm'),\n this.disabled || this.readonly\n )\n ]\n )\n },\n genPickerBody () {\n return h(\n 'div',\n {\n class: 'v-time-picker-clock__container',\n key: this.selecting\n },\n [\n !this.ampmInTitle && this.isAmPm && this.genClockAmPm(),\n this.genClock()\n ]\n )\n },\n genPickerTitle () {\n return h(VTimePickerTitle, {\n ampm: this.isAmPm,\n ampmReadonly: this.isAmPm && !this.ampmInTitle,\n disabled: this.disabled,\n hour: this.inputHour,\n minute: this.inputMinute,\n second: this.inputSecond,\n period: this.period,\n readonly: this.readonly,\n useSeconds: this.useSeconds,\n selecting: this.selecting,\n 'onUpdate:selecting': (value: 1 | 2 | 3) => {\n this.selecting = value\n },\n 'onUpdate:period': (period: string) => {\n this.$emit('update:period', period)\n },\n ref: 'title'\n })\n }\n },\n\n render (): VNode {\n return this.genPicker('v-picker--time')\n }\n})\n"],"sourceRoot":"","file":"VTimePicker.js"}
@@ -36,12 +36,11 @@ export default mixins(Colorable, Themeable
36
36
  type: Number,
37
37
  default: 1
38
38
  },
39
- value: Number
39
+ modelValue: Number
40
40
  },
41
41
 
42
42
  data() {
43
43
  return {
44
- inputValue: this.value,
45
44
  isDragging: false,
46
45
  valueOnMouseDown: null,
47
46
  valueOnMouseUp: null
@@ -62,7 +61,7 @@ export default mixins(Colorable, Themeable
62
61
  },
63
62
 
64
63
  displayedValue() {
65
- return this.value == null ? this.min : this.value;
64
+ return this.modelValue == null ? this.min : this.modelValue;
66
65
  },
67
66
 
68
67
  innerRadiusScale() {
@@ -73,12 +72,6 @@ export default mixins(Colorable, Themeable
73
72
  return this.double ? this.count / 2 : this.count;
74
73
  }
75
74
 
76
- },
77
- watch: {
78
- value(value) {
79
- this.inputValue = value;
80
- }
81
-
82
75
  },
83
76
  methods: {
84
77
  wheel(e) {
@@ -112,17 +105,14 @@ export default mixins(Colorable, Themeable
112
105
  const children = [];
113
106
 
114
107
  for (let value = this.min; value <= this.max; value = value + this.step) {
115
- const color = value === this.value && (this.color || 'accent');
108
+ const color = value === this.modelValue && (this.color || 'accent');
116
109
  children.push(h('span', this.setBackgroundColor(color, {
117
- class: 'v-time-picker-clock__item',
118
- class: {
110
+ class: ['v-time-picker-clock__item', {
119
111
  'v-time-picker-clock__item--active': value === this.displayedValue,
120
112
  'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value)
121
- },
113
+ }],
122
114
  style: this.getTransform(value),
123
- domProps: {
124
- innerHTML: `<span>${this.format(value)}</span>`
125
- }
115
+ innerHTML: `<span>${this.format(value)}</span>`
126
116
  })));
127
117
  }
128
118
 
@@ -132,12 +122,11 @@ export default mixins(Colorable, Themeable
132
122
  genHand() {
133
123
  const scale = `scaleY(${this.handScale(this.displayedValue)})`;
134
124
  const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min);
135
- const color = this.value != null && (this.color || 'accent');
125
+ const color = this.modelValue != null && (this.color || 'accent');
136
126
  return h('div', this.setBackgroundColor(color, {
137
- class: 'v-time-picker-clock__hand',
138
- class: {
139
- 'v-time-picker-clock__hand--inner': this.isInner(this.value)
140
- },
127
+ class: ['v-time-picker-clock__hand', {
128
+ 'v-time-picker-clock__hand--inner': this.isInner(this.modelValue)
129
+ }],
141
130
  style: {
142
131
  transform: `rotate(${angle}deg) ${scale}`
143
132
  }
@@ -233,9 +222,8 @@ export default mixins(Colorable, Themeable
233
222
  },
234
223
 
235
224
  update(value) {
236
- if (this.inputValue !== value) {
237
- this.inputValue = value;
238
- this.$emit('input', value);
225
+ if (this.modelValue !== value) {
226
+ this.$emit('update:modelValue', value);
239
227
  }
240
228
  },
241
229
 
@@ -254,25 +242,22 @@ export default mixins(Colorable, Themeable
254
242
 
255
243
  render() {
256
244
  const data = {
257
- class: 'v-time-picker-clock',
258
- class: {
259
- 'v-time-picker-clock--indeterminate': this.value == null,
245
+ class: ['v-time-picker-clock', {
246
+ 'v-time-picker-clock--indeterminate': this.modelValue == null,
260
247
  ...this.themeClasses
261
- },
262
- on: this.readonly || this.disabled ? undefined : {
263
- mousedown: this.onMouseDown,
264
- mouseup: this.onMouseUp,
265
- mouseleave: e => this.isDragging && this.onMouseUp(e),
266
- touchstart: this.onMouseDown,
267
- touchend: this.onMouseUp,
268
- mousemove: this.onDragMove,
269
- touchmove: this.onDragMove
270
- },
248
+ }],
249
+ onMousedown: this.readonly || this.disabled ? undefined : this.onMouseDown,
250
+ onMouseup: this.readonly || this.disabled ? undefined : this.onMouseUp,
251
+ onMouseleave: this.readonly || this.disabled ? undefined : e => this.isDragging && this.onMouseUp(e),
252
+ onTouchstart: this.readonly || this.disabled ? undefined : this.onMouseDown,
253
+ onTouchend: this.readonly || this.disabled ? undefined : this.onMouseUp,
254
+ onMousemove: this.readonly || this.disabled ? undefined : this.onDragMove,
255
+ onTouchmove: this.readonly || this.disabled ? undefined : this.onDragMove,
271
256
  ref: 'clock'
272
257
  };
273
258
 
274
- if (this.scrollable && data.on) {
275
- data.on.wheel = this.wheel;
259
+ if (this.scrollable && !this.readonly && !this.disabled) {
260
+ data.onWheel = this.wheel;
276
261
  }
277
262
 
278
263
  return h('div', data, [h('div', {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\nimport './VTimePickerClock.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport Vue, { VNode, PropType, VNodeData } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\ninterface Point {\n x: number\n y: number\n}\n\ninterface options extends Vue {\n $refs: {\n clock: HTMLElement\n innerClock: HTMLElement\n }\n}\n\nexport default mixins<options &\n/* eslint-disable indent */\n ExtractVue<[\n typeof Colorable,\n typeof Themeable\n ]>\n/* eslint-enable indent */\n>(\n Colorable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-time-picker-clock',\n\n props: {\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n disabled: Boolean,\n double: Boolean,\n format: {\n type: Function,\n default: (val: string | number) => val,\n } as PropValidator<(val: string | number) => string | number>,\n max: {\n type: Number,\n required: true,\n },\n min: {\n type: Number,\n required: true,\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0,\n },\n step: {\n type: Number,\n default: 1,\n },\n value: Number,\n },\n\n data () {\n return {\n inputValue: this.value,\n isDragging: false,\n valueOnMouseDown: null as number | null,\n valueOnMouseUp: null as number | null,\n }\n },\n\n computed: {\n count (): number {\n return this.max - this.min + 1\n },\n degreesPerUnit (): number {\n return 360 / this.roundCount\n },\n degrees (): number {\n return this.degreesPerUnit * Math.PI / 180\n },\n displayedValue (): number {\n return this.value == null ? this.min : this.value\n },\n innerRadiusScale (): number {\n return 0.62\n },\n roundCount (): number {\n return this.double ? (this.count / 2) : this.count\n },\n },\n\n watch: {\n value (value) {\n this.inputValue = value\n },\n },\n\n methods: {\n wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = this.displayedValue\n do {\n value = value + delta\n value = (value - this.min + this.count) % this.count + this.min\n } while (!this.isAllowed(value) && value !== this.displayedValue)\n\n if (value !== this.displayedValue) {\n this.update(value)\n }\n },\n isInner (value: number) {\n return this.double && (value - this.min >= this.roundCount)\n },\n handScale (value: number) {\n return this.isInner(value) ? this.innerRadiusScale : 1\n },\n isAllowed (value: number) {\n return !this.allowedValues || this.allowedValues(value)\n },\n genValues () {\n const children: VNode[] = []\n\n for (let value = this.min; value <= this.max; value = value + this.step) {\n const color = value === this.value && (this.color || 'accent')\n children.push(h('span', this.setBackgroundColor(color, {\n class: 'v-time-picker-clock__item',\n class: {\n 'v-time-picker-clock__item--active': value === this.displayedValue,\n 'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value),\n },\n style: this.getTransform(value),\n domProps: { innerHTML: `<span>${this.format(value)}</span>` },\n })))\n }\n\n return children\n },\n genHand () {\n const scale = `scaleY(${this.handScale(this.displayedValue)})`\n const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min)\n const color = (this.value != null) && (this.color || 'accent')\n return h('div', this.setBackgroundColor(color, {\n class: 'v-time-picker-clock__hand',\n class: {\n 'v-time-picker-clock__hand--inner': this.isInner(this.value),\n },\n style: {\n transform: `rotate(${angle}deg) ${scale}`,\n },\n }))\n },\n getTransform (i: number) {\n const { x, y } = this.getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`,\n }\n },\n getPosition (value: number) {\n const rotateRadians = this.rotate * Math.PI / 180\n return {\n x: Math.sin((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n y: -Math.cos((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n }\n },\n onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n this.valueOnMouseDown = null\n this.valueOnMouseUp = null\n this.isDragging = true\n this.onDragMove(e)\n },\n onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n\n this.isDragging = false\n if (this.valueOnMouseUp !== null && this.isAllowed(this.valueOnMouseUp)) {\n this.$emit('change', this.valueOnMouseUp)\n }\n },\n onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!this.isDragging && e.type !== 'click') || !this.$refs.clock) return\n\n const { width, top, left } = this.$refs.clock.getBoundingClientRect()\n const { width: innerWidth } = this.$refs.innerClock.getBoundingClientRect()\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(this.angle(center, coords) - this.rotate + 360) % 360\n const insideClick = this.double && this.euclidean(center, coords) < (innerWidth + innerWidth * this.innerRadiusScale) / 4\n const checksCount = Math.ceil(15 / this.degreesPerUnit)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = this.angleToValue(handAngle + i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n\n value = this.angleToValue(handAngle - i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n }\n },\n angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / this.degreesPerUnit) +\n (insideClick ? this.roundCount : 0)\n ) % this.count + this.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - this.degreesPerUnit / 2)) return value\n\n return insideClick ? this.max - this.roundCount + 1 : this.min\n },\n setMouseDownValue (value: number) {\n if (this.valueOnMouseDown === null) {\n this.valueOnMouseDown = value\n }\n\n this.valueOnMouseUp = value\n this.update(value)\n },\n update (value: number) {\n if (this.inputValue !== value) {\n this.inputValue = value\n this.$emit('input', value)\n }\n },\n euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n },\n angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n },\n },\n\n render (): VNode {\n const data: VNodeData = {\n class: 'v-time-picker-clock',\n class: {\n 'v-time-picker-clock--indeterminate': this.value == null,\n ...this.themeClasses,\n },\n on: (this.readonly || this.disabled) ? undefined : {\n mousedown: this.onMouseDown,\n mouseup: this.onMouseUp,\n mouseleave: (e: MouseEvent) => (this.isDragging && this.onMouseUp(e)),\n touchstart: this.onMouseDown,\n touchend: this.onMouseUp,\n mousemove: this.onDragMove,\n touchmove: this.onDragMove,\n },\n ref: 'clock',\n }\n\n if (this.scrollable && data.on) {\n data.on.wheel = this.wheel\n }\n\n return h('div', data, [\n h('div', {\n class: 'v-time-picker-clock__inner',\n ref: 'innerClock',\n }, [\n this.genHand(),\n this.genValues(),\n ]),\n ])\n },\n})\n"],"sourceRoot":"","file":"VTimePickerClock.js"}
1
+ {"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerClock.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, VNode, PropType } from 'vue'\nimport type { VNodeData } from '../../types/vue-internal'\nimport './VTimePickerClock.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport mixins, { ExtractVue } from '../../util/mixins'\n\ninterface Point {\n x: number\n y: number\n}\n\ninterface options {\n $refs: {\n clock: HTMLElement\n innerClock: HTMLElement\n }\n}\n\nexport default mixins(\n Colorable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-time-picker-clock',\n\n props: {\n allowedValues: Function as PropType<(value: number) => boolean>,\n ampm: Boolean,\n disabled: Boolean,\n double: Boolean,\n format: {\n type: Function as PropType<(val: string | number) => string | number>,\n default: (val: string | number) => val\n },\n max: {\n type: Number,\n required: true\n },\n min: {\n type: Number,\n required: true\n },\n scrollable: Boolean,\n readonly: Boolean,\n rotate: {\n type: Number,\n default: 0\n },\n step: {\n type: Number,\n default: 1\n },\n modelValue: Number\n },\n\n data () {\n return {\n isDragging: false,\n valueOnMouseDown: null as number | null,\n valueOnMouseUp: null as number | null\n }\n },\n\n computed: {\n count (): number {\n return this.max - this.min + 1\n },\n degreesPerUnit (): number {\n return 360 / this.roundCount\n },\n degrees (): number {\n return this.degreesPerUnit * Math.PI / 180\n },\n displayedValue (): number {\n return this.modelValue == null ? this.min : this.modelValue\n },\n innerRadiusScale (): number {\n return 0.62\n },\n roundCount (): number {\n return this.double ? (this.count / 2) : this.count\n }\n },\n\n methods: {\n wheel (e: WheelEvent) {\n e.preventDefault()\n\n const delta = Math.sign(-e.deltaY || 1)\n let value = this.displayedValue\n do {\n value = value + delta\n value = (value - this.min + this.count) % this.count + this.min\n } while (!this.isAllowed(value) && value !== this.displayedValue)\n\n if (value !== this.displayedValue) {\n this.update(value)\n }\n },\n isInner (value: number) {\n return this.double && (value - this.min >= this.roundCount)\n },\n handScale (value: number) {\n return this.isInner(value) ? this.innerRadiusScale : 1\n },\n isAllowed (value: number) {\n return !this.allowedValues || this.allowedValues(value)\n },\n genValues () {\n const children: VNode[] = []\n\n for (let value = this.min; value <= this.max; value = value + this.step) {\n const color = value === this.modelValue && (this.color || 'accent')\n children.push(h('span', this.setBackgroundColor(color, {\n class: [\n 'v-time-picker-clock__item',\n {\n 'v-time-picker-clock__item--active': value === this.displayedValue,\n 'v-time-picker-clock__item--disabled': this.disabled || !this.isAllowed(value)\n }\n ],\n style: this.getTransform(value),\n innerHTML: `<span>${this.format(value)}</span>`\n })))\n }\n\n return children\n },\n genHand () {\n const scale = `scaleY(${this.handScale(this.displayedValue)})`\n const angle = this.rotate + this.degreesPerUnit * (this.displayedValue - this.min)\n const color = (this.modelValue != null) && (this.color || 'accent')\n return h('div', this.setBackgroundColor(color, {\n class: [\n 'v-time-picker-clock__hand',\n {\n 'v-time-picker-clock__hand--inner': this.isInner(this.modelValue)\n }\n ],\n style: {\n transform: `rotate(${angle}deg) ${scale}`\n }\n }))\n },\n getTransform (i: number) {\n const { x, y } = this.getPosition(i)\n return {\n left: `${50 + x * 50}%`,\n top: `${50 + y * 50}%`\n }\n },\n getPosition (value: number) {\n const rotateRadians = this.rotate * Math.PI / 180\n return {\n x: Math.sin((value - this.min) * this.degrees + rotateRadians) * this.handScale(value),\n y: -Math.cos((value - this.min) * this.degrees + rotateRadians) * this.handScale(value)\n }\n },\n onMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n this.valueOnMouseDown = null\n this.valueOnMouseUp = null\n this.isDragging = true\n this.onDragMove(e)\n },\n onMouseUp (e: MouseEvent | TouchEvent) {\n e.stopPropagation()\n\n this.isDragging = false\n if (this.valueOnMouseUp !== null && this.isAllowed(this.valueOnMouseUp)) {\n this.$emit('change', this.valueOnMouseUp)\n }\n },\n onDragMove (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n if ((!this.isDragging && e.type !== 'click') || !this.$refs.clock) return\n\n const { width, top, left } = this.$refs.clock.getBoundingClientRect()\n const { width: innerWidth } = this.$refs.innerClock.getBoundingClientRect()\n const { clientX, clientY } = 'touches' in e ? e.touches[0] : e\n const center = { x: width / 2, y: -width / 2 }\n const coords = { x: clientX - left, y: top - clientY }\n const handAngle = Math.round(this.angle(center, coords) - this.rotate + 360) % 360\n const insideClick = this.double && this.euclidean(center, coords) < (innerWidth + innerWidth * this.innerRadiusScale) / 4\n const checksCount = Math.ceil(15 / this.degreesPerUnit)\n let value\n\n for (let i = 0; i < checksCount; i++) {\n value = this.angleToValue(handAngle + i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n\n value = this.angleToValue(handAngle - i * this.degreesPerUnit, insideClick)\n if (this.isAllowed(value)) return this.setMouseDownValue(value)\n }\n },\n angleToValue (angle: number, insideClick: boolean): number {\n const value = (\n Math.round(angle / this.degreesPerUnit) +\n (insideClick ? this.roundCount : 0)\n ) % this.count + this.min\n\n // Necessary to fix edge case when selecting left part of the value(s) at 12 o'clock\n if (angle < (360 - this.degreesPerUnit / 2)) return value\n\n return insideClick ? this.max - this.roundCount + 1 : this.min\n },\n setMouseDownValue (value: number) {\n if (this.valueOnMouseDown === null) {\n this.valueOnMouseDown = value\n }\n\n this.valueOnMouseUp = value\n this.update(value)\n },\n update (value: number) {\n if (this.modelValue !== value) {\n this.$emit('update:modelValue', value)\n }\n },\n euclidean (p0: Point, p1: Point) {\n const dx = p1.x - p0.x\n const dy = p1.y - p0.y\n\n return Math.sqrt(dx * dx + dy * dy)\n },\n angle (center: Point, p1: Point) {\n const value = 2 * Math.atan2(p1.y - center.y - this.euclidean(center, p1), p1.x - center.x)\n return Math.abs(value * 180 / Math.PI)\n }\n },\n\n render (): VNode {\n const data: VNodeData = {\n class: [\n 'v-time-picker-clock',\n {\n 'v-time-picker-clock--indeterminate': this.modelValue == null,\n ...this.themeClasses\n }\n ],\n onMousedown: (this.readonly || this.disabled) ? undefined : this.onMouseDown,\n onMouseup: (this.readonly || this.disabled) ? undefined : this.onMouseUp,\n onMouseleave: (this.readonly || this.disabled) ? undefined : (e: MouseEvent) => (this.isDragging && this.onMouseUp(e)),\n onTouchstart: (this.readonly || this.disabled) ? undefined : this.onMouseDown,\n onTouchend: (this.readonly || this.disabled) ? undefined : this.onMouseUp,\n onMousemove: (this.readonly || this.disabled) ? undefined : this.onDragMove,\n onTouchmove: (this.readonly || this.disabled) ? undefined : this.onDragMove,\n ref: 'clock'\n }\n\n if (this.scrollable && !this.readonly && !this.disabled) {\n data.onWheel = this.wheel\n }\n\n return h('div', data, [\n h('div', {\n class: 'v-time-picker-clock__inner',\n ref: 'innerClock'\n }, [\n this.genHand(),\n this.genValues()\n ])\n ])\n }\n})\n"],"sourceRoot":"","file":"VTimePickerClock.js"}
@@ -3,7 +3,7 @@ import "../../../src/components/VTimePicker/VTimePickerTitle.sass"; // Mixins
3
3
 
4
4
  import PickerButton from '../../mixins/picker-button'; // Utils
5
5
 
6
- import { pad } from '../VDatePicker/util';
6
+ import pad from '../VDatePicker/util/pad';
7
7
  import mixins from '../../util/mixins';
8
8
  import { SelectingTimes } from './SelectingTimes';
9
9
  export default mixins(PickerButton
@@ -25,6 +25,7 @@ export default mixins(PickerButton
25
25
  useSeconds: Boolean,
26
26
  selecting: Number
27
27
  },
28
+ emits: ['update:selecting', 'update:period'],
28
29
  methods: {
29
30
  genTime() {
30
31
  let hour = this.hour;
@@ -50,8 +51,8 @@ export default mixins(PickerButton
50
51
 
51
52
  genAmPm() {
52
53
  return h('div', {
53
- class: 'v-time-picker-title__ampm',
54
54
  class: {
55
+ 'v-time-picker-title__ampm': true,
55
56
  'v-time-picker-title__ampm--readonly': this.ampmReadonly
56
57
  }
57
58
  }, [!this.ampmReadonly || this.period === 'am' ? this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly) : null, !this.ampmReadonly || this.period === 'pm' ? this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly) : null]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerTitle.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\nimport './VTimePickerTitle.sass'\n\n// Mixins\nimport PickerButton from '../../mixins/picker-button'\n\n// Utils\nimport { pad } from '../VDatePicker/util'\nimport mixins from '../../util/mixins'\n\nimport { SelectingTimes } from './SelectingTimes'\nimport { VNode, PropType } from 'vue'\n\nexport default mixins(\n PickerButton\n/* @vue/component */\n).extend({\n name: 'v-time-picker-title',\n\n props: {\n ampm: Boolean,\n ampmReadonly: Boolean,\n disabled: Boolean,\n hour: Number,\n minute: Number,\n second: Number,\n period: {\n type: String as PropType<'am' | 'pm'>,\n validator: period => period === 'am' || period === 'pm',\n },\n readonly: Boolean,\n useSeconds: Boolean,\n selecting: Number,\n },\n\n methods: {\n genTime () {\n let hour = this.hour\n if (this.ampm) {\n hour = hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n const displayedHour = this.hour == null ? '--' : this.ampm ? String(hour) : pad(hour)\n const displayedMinute = this.minute == null ? '--' : pad(this.minute)\n const titleContent = [\n this.genPickerButton('selecting', SelectingTimes.Hour, displayedHour, this.disabled),\n h('span', ':'),\n this.genPickerButton('selecting', SelectingTimes.Minute, displayedMinute, this.disabled),\n ]\n\n if (this.useSeconds) {\n const displayedSecond = this.second == null ? '--' : pad(this.second)\n titleContent.push(h('span', ':'))\n titleContent.push(this.genPickerButton('selecting', SelectingTimes.Second, displayedSecond, this.disabled))\n }\n return h('div', {\n class: 'v-time-picker-title__time',\n }, titleContent)\n },\n genAmPm () {\n return h('div', {\n class: 'v-time-picker-title__ampm',\n class: {\n 'v-time-picker-title__ampm--readonly': this.ampmReadonly,\n },\n }, [\n (!this.ampmReadonly || this.period === 'am') ? this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly) : null,\n (!this.ampmReadonly || this.period === 'pm') ? this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly) : null,\n ])\n },\n },\n\n render (): VNode {\n const children = [this.genTime()]\n\n this.ampm && children.push(this.genAmPm())\n\n return h('div', {\n class: 'v-time-picker-title',\n }, children)\n },\n})\n"],"sourceRoot":"","file":"VTimePickerTitle.js"}
1
+ {"version":3,"sources":["../../../src/components/VTimePicker/VTimePickerTitle.ts"],"names":[],"mappings":"AAAA,SAAS,CAAT,QAAoD,KAApD;AACA,OAAO,2DAAP,C,CAEA;;AACA,OAAO,YAAP,MAAyB,4BAAzB,C,CAEA;;AACA,OAAO,GAAP,MAAgB,yBAAhB;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAEA,SAAS,cAAT,QAA+B,kBAA/B;AAEA,eAAe,MAAM,CACnB;AACF;AAFqB,CAAN,CAGb,MAHa,CAGN;AACP,EAAA,IAAI,EAAE,qBADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,OADD;AAEL,IAAA,YAAY,EAAE,OAFT;AAGL,IAAA,QAAQ,EAAE,OAHL;AAIL,IAAA,IAAI,EAAE,MAJD;AAKL,IAAA,MAAM,EAAE,MALH;AAML,IAAA,MAAM,EAAE,MANH;AAOL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,MADA;AAEN,MAAA,SAAS,EAAE,MAAM,IAAI,MAAM,KAAK,IAAX,IAAmB,MAAM,KAAK;AAF7C,KAPH;AAWL,IAAA,QAAQ,EAAE,OAXL;AAYL,IAAA,UAAU,EAAE,OAZP;AAaL,IAAA,SAAS,EAAE;AAbN,GAHA;AAmBP,EAAA,KAAK,EAAE,CAAC,kBAAD,EAAqB,eAArB,CAnBA;AAqBP,EAAA,OAAO,EAAE;AACP,IAAA,OAAO,GAAA;AACL,UAAI,IAAI,GAAG,KAAK,IAAhB;;AACA,UAAI,KAAK,IAAT,EAAe;AACb,QAAA,IAAI,GAAG,IAAI,GAAI,CAAC,IAAI,GAAG,CAAR,IAAa,EAAb,GAAkB,CAAtB,GAA2B,EAAtC;AACD;;AAED,YAAM,aAAa,GAAG,KAAK,IAAL,IAAa,IAAb,GAAoB,IAApB,GAA2B,KAAK,IAAL,GAAY,MAAM,CAAC,IAAD,CAAlB,GAA2B,GAAG,CAAC,IAAD,CAA/E;AACA,YAAM,eAAe,GAAG,KAAK,MAAL,IAAe,IAAf,GAAsB,IAAtB,GAA6B,GAAG,CAAC,KAAK,MAAN,CAAxD;AACA,YAAM,YAAY,GAAG,CACnB,KAAK,eAAL,CAAqB,WAArB,EAAkC,cAAc,CAAC,IAAjD,EAAuD,aAAvD,EAAsE,KAAK,QAA3E,CADmB,EAEnB,CAAC,CAAC,MAAD,EAAS,GAAT,CAFkB,EAGnB,KAAK,eAAL,CAAqB,WAArB,EAAkC,cAAc,CAAC,MAAjD,EAAyD,eAAzD,EAA0E,KAAK,QAA/E,CAHmB,CAArB;;AAMA,UAAI,KAAK,UAAT,EAAqB;AACnB,cAAM,eAAe,GAAG,KAAK,MAAL,IAAe,IAAf,GAAsB,IAAtB,GAA6B,GAAG,CAAC,KAAK,MAAN,CAAxD;AACA,QAAA,YAAY,CAAC,IAAb,CAAkB,CAAC,CAAC,MAAD,EAAS,GAAT,CAAnB;AACA,QAAA,YAAY,CAAC,IAAb,CAAkB,KAAK,eAAL,CAAqB,WAArB,EAAkC,cAAc,CAAC,MAAjD,EAAyD,eAAzD,EAA0E,KAAK,QAA/E,CAAlB;AACD;;AACD,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,YAFK,CAAR;AAGD,KAvBM;;AAwBP,IAAA,OAAO,GAAA;AACL,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AACL,uCAA6B,IADxB;AAEL,iDAAuC,KAAK;AAFvC;AADO,OAAR,EAKL,CACA,CAAC,KAAK,YAAN,IAAsB,KAAK,MAAL,KAAgB,IAAvC,GAA+C,KAAK,eAAL,CAAqB,QAArB,EAA+B,IAA/B,EAAqC,KAAK,QAAL,CAAc,IAAd,CAAmB,CAAnB,CAAqB,wBAArB,CAArC,EAAqF,KAAK,QAAL,IAAiB,KAAK,QAA3G,CAA/C,GAAsK,IADrK,EAEA,CAAC,KAAK,YAAN,IAAsB,KAAK,MAAL,KAAgB,IAAvC,GAA+C,KAAK,eAAL,CAAqB,QAArB,EAA+B,IAA/B,EAAqC,KAAK,QAAL,CAAc,IAAd,CAAmB,CAAnB,CAAqB,wBAArB,CAArC,EAAqF,KAAK,QAAL,IAAiB,KAAK,QAA3G,CAA/C,GAAsK,IAFrK,CALK,CAAR;AASD;;AAlCM,GArBF;;AA0DP,EAAA,MAAM,GAAA;AACJ,UAAM,QAAQ,GAAG,CAAC,KAAK,OAAL,EAAD,CAAjB;AAEA,SAAK,IAAL,IAAa,QAAQ,CAAC,IAAT,CAAc,KAAK,OAAL,EAAd,CAAb;AAEA,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE;AADO,KAAR,EAEL,QAFK,CAAR;AAGD;;AAlEM,CAHM,CAAf","sourcesContent":["import { h, VNode, PropType, defineComponent } from 'vue'\nimport './VTimePickerTitle.sass'\n\n// Mixins\nimport PickerButton from '../../mixins/picker-button'\n\n// Utils\nimport pad from '../VDatePicker/util/pad'\nimport mixins from '../../util/mixins'\n\nimport { SelectingTimes } from './SelectingTimes'\n\nexport default mixins(\n PickerButton\n/* @vue/component */\n).extend({\n name: 'v-time-picker-title',\n\n props: {\n ampm: Boolean,\n ampmReadonly: Boolean,\n disabled: Boolean,\n hour: Number,\n minute: Number,\n second: Number,\n period: {\n type: String as PropType<'am' | 'pm'>,\n validator: period => period === 'am' || period === 'pm'\n },\n readonly: Boolean,\n useSeconds: Boolean,\n selecting: Number\n },\n\n emits: ['update:selecting', 'update:period'],\n\n methods: {\n genTime () {\n let hour = this.hour\n if (this.ampm) {\n hour = hour ? ((hour - 1) % 12 + 1) : 12\n }\n\n const displayedHour = this.hour == null ? '--' : this.ampm ? String(hour) : pad(hour)\n const displayedMinute = this.minute == null ? '--' : pad(this.minute)\n const titleContent = [\n this.genPickerButton('selecting', SelectingTimes.Hour, displayedHour, this.disabled),\n h('span', ':'),\n this.genPickerButton('selecting', SelectingTimes.Minute, displayedMinute, this.disabled)\n ]\n\n if (this.useSeconds) {\n const displayedSecond = this.second == null ? '--' : pad(this.second)\n titleContent.push(h('span', ':'))\n titleContent.push(this.genPickerButton('selecting', SelectingTimes.Second, displayedSecond, this.disabled))\n }\n return h('div', {\n class: 'v-time-picker-title__time'\n }, titleContent)\n },\n genAmPm () {\n return h('div', {\n class: {\n 'v-time-picker-title__ampm': true,\n 'v-time-picker-title__ampm--readonly': this.ampmReadonly\n }\n }, [\n (!this.ampmReadonly || this.period === 'am') ? this.genPickerButton('period', 'am', this.$vuetify.lang.t('$vuetify.timePicker.am'), this.disabled || this.readonly) : null,\n (!this.ampmReadonly || this.period === 'pm') ? this.genPickerButton('period', 'pm', this.$vuetify.lang.t('$vuetify.timePicker.pm'), this.disabled || this.readonly) : null\n ])\n }\n },\n\n render (): VNode {\n const children = [this.genTime()]\n\n this.ampm && children.push(this.genAmPm())\n\n return h('div', {\n class: 'v-time-picker-title'\n }, children)\n }\n})\n"],"sourceRoot":"","file":"VTimePickerTitle.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTimePicker/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAP,MAAwB,eAAxB;AACA,OAAO,gBAAP,MAA6B,oBAA7B;AACA,OAAO,gBAAP,MAA6B,oBAA7B;AAEA,SAAS,WAAT,EAAsB,gBAAtB,EAAwC,gBAAxC;AAEA,eAAe;AACb,EAAA,uBAAuB,EAAE;AACvB,IAAA,WADuB;AAEvB,IAAA,gBAFuB;AAGvB,IAAA;AAHuB;AADZ,CAAf","sourcesContent":["import VTimePicker from './VTimePicker'\nimport VTimePickerClock from './VTimePickerClock'\nimport VTimePickerTitle from './VTimePickerTitle'\n\nexport { VTimePicker, VTimePickerClock, VTimePickerTitle }\n\nexport default {\n $_vuetify_subcomponents: {\n VTimePicker,\n VTimePickerClock,\n VTimePickerTitle,\n },\n}\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/components/VTimePicker/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAP,MAAwB,eAAxB;AACA,OAAO,gBAAP,MAA6B,oBAA7B;AACA,OAAO,gBAAP,MAA6B,oBAA7B;AAEA,SAAS,WAAT,EAAsB,gBAAtB,EAAwC,gBAAxC;AAEA,eAAe;AACb,EAAA,uBAAuB,EAAE;AACvB,IAAA,WADuB;AAEvB,IAAA,gBAFuB;AAGvB,IAAA;AAHuB;AADZ,CAAf","sourcesContent":["import VTimePicker from './VTimePicker'\nimport VTimePickerClock from './VTimePickerClock'\nimport VTimePickerTitle from './VTimePickerTitle'\n\nexport { VTimePicker, VTimePickerClock, VTimePickerTitle }\n\nexport default {\n $_vuetify_subcomponents: {\n VTimePicker,\n VTimePickerClock,\n VTimePickerTitle\n }\n}\n"],"sourceRoot":"","file":"index.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VTimeline/VTimeline.ts"],"names":[],"mappings":"AAAA,SAAQ,CAAR,QAAgB,KAAhB,C,CACA;;AACA,OAAO,kDAAP;AAIA,OAAO,MAAP,MAAmB,mBAAnB,C,CAEA;;AACA,OAAO,SAAP,MAAsB,wBAAtB;AACA,SAAS,OAAT,QAAwB,oBAAxB;AAEA,eAAe,MAAM,CACnB;AACF;AAFqB,CAAN,CAGb,MAHa,CAGN;AACP,EAAA,IAAI,EAAE,YADC;;AAGP,EAAA,OAAO,GAAA;AACL,WAAO;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAP;AACD,GALM;;AAOP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE,OADL;AAEL,IAAA,KAAK,EAAE,OAFF;AAGL,IAAA,OAAO,EAAE;AAHJ,GAPA;AAaP,EAAA,QAAQ,EAAE;AACR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,iCAAyB,KAAK,QADzB;AAEL,6BAAqB,KAAK,KAFrB;AAGL,+BAAuB,KAAK,OAHvB;AAIL,WAAG,KAAK;AAJH,OAAP;AAMD;;AARO,GAbH;;AAwBP,EAAA,MAAM,GAAA;AACJ,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE,CAAC,YAAD,EAAe,KAAK,OAApB;AADO,KAAR,EAEL,OAAO,CAAC,IAAD,CAFF,CAAR;AAGD;;AA5BM,CAHM,CAAf","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VTimeline.sass'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\nimport { getSlot } from '../../util/helpers'\n\nexport default mixins(\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-timeline',\n\n provide (): object {\n return { timeline: this }\n },\n\n props: {\n alignTop: Boolean,\n dense: Boolean,\n reverse: Boolean,\n },\n\n computed: {\n classes (): {} {\n return {\n 'v-timeline--align-top': this.alignTop,\n 'v-timeline--dense': this.dense,\n 'v-timeline--reverse': this.reverse,\n ...this.themeClasses,\n }\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-timeline', this.classes],\n }, getSlot(this))\n },\n})\n"],"sourceRoot":"","file":"VTimeline.js"}
1
+ {"version":3,"sources":["../../../src/components/VTimeline/VTimeline.ts"],"names":[],"mappings":"AAAA,SAAS,CAAT,QAAkB,KAAlB,C,CACA;;AACA,OAAO,kDAAP;AAIA,OAAO,MAAP,MAAmB,mBAAnB,C,CAEA;;AACA,OAAO,SAAP,MAAsB,wBAAtB;AACA,SAAS,OAAT,QAAwB,oBAAxB;AAEA,eAAe,MAAM,CACnB;AACF;AAFqB,CAAN,CAGb,MAHa,CAGN;AACP,EAAA,IAAI,EAAE,YADC;;AAGP,EAAA,OAAO,GAAA;AACL,WAAO;AAAE,MAAA,QAAQ,EAAE;AAAZ,KAAP;AACD,GALM;;AAOP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE,OADL;AAEL,IAAA,KAAK,EAAE,OAFF;AAGL,IAAA,OAAO,EAAE;AAHJ,GAPA;AAaP,EAAA,QAAQ,EAAE;AACR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,iCAAyB,KAAK,QADzB;AAEL,6BAAqB,KAAK,KAFrB;AAGL,+BAAuB,KAAK,OAHvB;AAIL,WAAG,KAAK;AAJH,OAAP;AAMD;;AARO,GAbH;;AAwBP,EAAA,MAAM,GAAA;AACJ,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE,CAAC,YAAD,EAAe,KAAK,OAApB;AADO,KAAR,EAEL,OAAO,CAAC,IAAD,CAFF,CAAR;AAGD;;AA5BM,CAHM,CAAf","sourcesContent":["import { h } from 'vue'\n// Styles\nimport './VTimeline.sass'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\nimport { getSlot } from '../../util/helpers'\n\nexport default mixins(\n Themeable\n/* @vue/component */\n).extend({\n name: 'v-timeline',\n\n provide (): object {\n return { timeline: this }\n },\n\n props: {\n alignTop: Boolean,\n dense: Boolean,\n reverse: Boolean\n },\n\n computed: {\n classes (): {} {\n return {\n 'v-timeline--align-top': this.alignTop,\n 'v-timeline--dense': this.dense,\n 'v-timeline--reverse': this.reverse,\n ...this.themeClasses\n }\n }\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-timeline', this.classes]\n }, getSlot(this))\n }\n})\n"],"sourceRoot":"","file":"VTimeline.js"}
@@ -41,11 +41,13 @@ export default baseMixins.extend({
41
41
  },
42
42
 
43
43
  genIcon() {
44
- return getSlot(this, 'icon') || h(VIcon, {
44
+ const slot = getSlot(this, 'icon');
45
+ if (slot != null) return slot;
46
+ return h(VIcon, {
45
47
  color: this.iconColor,
46
48
  dark: !this.theme.isDark,
47
49
  small: this.small
48
- }, this.icon);
50
+ }, () => [this.icon]);
49
51
  },
50
52
 
51
53
  genInnerDot() {