@dimailn/vuetify 2.7.2-alpha3 → 2.7.2-alpha31

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 (887) hide show
  1. package/dist/vuetify.js +3832 -2079
  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 +39 -9
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAppBar/VAppBar.js +23 -17
  8. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  9. package/es5/components/VAppBar/VAppBarNavIcon.js +5 -1
  10. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  11. package/es5/components/VAutocomplete/VAutocomplete.js +11 -7
  12. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  13. package/es5/components/VBadge/VBadge.js +46 -14
  14. package/es5/components/VBadge/VBadge.js.map +1 -1
  15. package/es5/components/VBanner/VBanner.js +51 -15
  16. package/es5/components/VBanner/VBanner.js.map +1 -1
  17. package/es5/components/VBottomNavigation/VBottomNavigation.js +33 -7
  18. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  19. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +22 -8
  20. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  21. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +4 -0
  22. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  23. package/es5/components/VBtn/VBtn.js +20 -16
  24. package/es5/components/VBtn/VBtn.js.map +1 -1
  25. package/es5/components/VCalendar/VCalendar.js +27 -29
  26. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  27. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  28. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  29. package/es5/components/VCalendar/VCalendarDaily.js +43 -60
  30. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  31. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  32. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  33. package/es5/components/VCalendar/VCalendarWeekly.js +26 -35
  34. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  35. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  36. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  37. package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
  38. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  39. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  40. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  41. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  42. package/es5/components/VCarousel/VCarousel.js +61 -17
  43. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  44. package/es5/components/VCarousel/VCarouselItem.js +7 -3
  45. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  46. package/es5/components/VCheckbox/VCheckbox.js +34 -1
  47. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  48. package/es5/components/VCheckbox/VSimpleCheckbox.js +94 -38
  49. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  50. package/es5/components/VChip/VChip.js +15 -6
  51. package/es5/components/VChip/VChip.js.map +1 -1
  52. package/es5/components/VColorPicker/VColorPicker.js +54 -39
  53. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  54. package/es5/components/VColorPicker/VColorPickerCanvas.js +45 -46
  55. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  56. package/es5/components/VColorPicker/VColorPickerEdit.js +27 -26
  57. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  58. package/es5/components/VColorPicker/VColorPickerPreview.js +41 -30
  59. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  60. package/es5/components/VColorPicker/VColorPickerSwatches.js +13 -10
  61. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  62. package/es5/components/VCombobox/VCombobox.js +1 -0
  63. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  64. package/es5/components/VData/VData.js +15 -2
  65. package/es5/components/VData/VData.js.map +1 -1
  66. package/es5/components/VDataIterator/VDataFooter.js +21 -7
  67. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  68. package/es5/components/VDataIterator/VDataIterator.js +47 -50
  69. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  70. package/es5/components/VDataTable/RowGroup.js +46 -15
  71. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  72. package/es5/components/VDataTable/VDataTable.js +41 -44
  73. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  74. package/es5/components/VDataTable/VDataTableHeader.js +5 -8
  75. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  76. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +8 -2
  77. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  78. package/es5/components/VDataTable/VDataTableHeaderMobile.js +29 -37
  79. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  80. package/es5/components/VDataTable/VEditDialog.js +26 -22
  81. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  82. package/es5/components/VDataTable/VSimpleTable.js +1 -1
  83. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  84. package/es5/components/VDataTable/VVirtualTable.js +6 -6
  85. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  86. package/es5/components/VDataTable/mixins/header.js +7 -9
  87. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  88. package/es5/components/VDatePicker/VDatePicker.js +39 -32
  89. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  90. package/es5/components/VDatePicker/VDatePickerHeader.js +68 -24
  91. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  92. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  93. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  94. package/es5/components/VDatePicker/VDatePickerTitle.js +44 -10
  95. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  96. package/es5/components/VDatePicker/VDatePickerYears.js +47 -23
  97. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  98. package/es5/components/VDatePicker/mixins/date-picker-table.js +51 -30
  99. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  100. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  101. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  102. package/es5/components/VDialog/VDialog.js +58 -32
  103. package/es5/components/VDialog/VDialog.js.map +1 -1
  104. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  105. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  106. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +12 -10
  107. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  108. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +17 -20
  109. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  110. package/es5/components/VFileInput/VFileInput.js +50 -27
  111. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  112. package/es5/components/VForm/VForm.js +45 -30
  113. package/es5/components/VForm/VForm.js.map +1 -1
  114. package/es5/components/VGrid/VCol.js +3 -3
  115. package/es5/components/VGrid/VCol.js.map +1 -1
  116. package/es5/components/VGrid/VContainer.js +3 -1
  117. package/es5/components/VGrid/VContainer.js.map +1 -1
  118. package/es5/components/VHover/VHover.js +1 -0
  119. package/es5/components/VHover/VHover.js.map +1 -1
  120. package/es5/components/VImg/VImg.js +10 -8
  121. package/es5/components/VImg/VImg.js.map +1 -1
  122. package/es5/components/VInput/VInput.js +65 -12
  123. package/es5/components/VInput/VInput.js.map +1 -1
  124. package/es5/components/VItemGroup/VItem.js +19 -19
  125. package/es5/components/VItemGroup/VItem.js.map +1 -1
  126. package/es5/components/VItemGroup/VItemGroup.js +5 -1
  127. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  128. package/es5/components/VLazy/VLazy.js +8 -15
  129. package/es5/components/VLazy/VLazy.js.map +1 -1
  130. package/es5/components/VList/VList.js +1 -1
  131. package/es5/components/VList/VList.js.map +1 -1
  132. package/es5/components/VList/VListGroup.js +73 -40
  133. package/es5/components/VList/VListGroup.js.map +1 -1
  134. package/es5/components/VList/VListItem.js +63 -18
  135. package/es5/components/VList/VListItem.js.map +1 -1
  136. package/es5/components/VList/VListItemAction.js +23 -9
  137. package/es5/components/VList/VListItemAction.js.map +1 -1
  138. package/es5/components/VMenu/VMenu.js +57 -31
  139. package/es5/components/VMenu/VMenu.js.map +1 -1
  140. package/es5/components/VMessages/VMessages.js +33 -6
  141. package/es5/components/VMessages/VMessages.js.map +1 -1
  142. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +37 -16
  143. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  144. package/es5/components/VOtpInput/VOtpInput.js +37 -5
  145. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  146. package/es5/components/VOverflowBtn/VOverflowBtn.js +4 -1
  147. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  148. package/es5/components/VOverlay/VOverlay.js +32 -4
  149. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  150. package/es5/components/VPagination/VPagination.js +48 -27
  151. package/es5/components/VPagination/VPagination.js.map +1 -1
  152. package/es5/components/VPicker/VPicker.js +7 -4
  153. package/es5/components/VPicker/VPicker.js.map +1 -1
  154. package/es5/components/VProgressCircular/VProgressCircular.js +6 -13
  155. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  156. package/es5/components/VProgressLinear/VProgressLinear.js +67 -25
  157. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  158. package/es5/components/VRadioGroup/VRadio.js +11 -2
  159. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  160. package/es5/components/VRadioGroup/VRadioGroup.js +30 -2
  161. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  162. package/es5/components/VRangeSlider/VRangeSlider.js +57 -32
  163. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  164. package/es5/components/VRating/VRating.js +45 -17
  165. package/es5/components/VRating/VRating.js.map +1 -1
  166. package/es5/components/VSelect/VSelect.js +156 -79
  167. package/es5/components/VSelect/VSelect.js.map +1 -1
  168. package/es5/components/VSelect/VSelectList.js +104 -44
  169. package/es5/components/VSelect/VSelectList.js.map +1 -1
  170. package/es5/components/VSlideGroup/VSlideGroup.js +27 -22
  171. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  172. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  173. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  174. package/es5/components/VSlider/VSlider.js +73 -41
  175. package/es5/components/VSlider/VSlider.js.map +1 -1
  176. package/es5/components/VSnackbar/VSnackbar.js +1 -0
  177. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  178. package/es5/components/VSparkline/VSparkline.js +48 -68
  179. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  180. package/es5/components/VSpeedDial/VSpeedDial.js +13 -17
  181. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  182. package/es5/components/VStepper/VStepper.js +1 -0
  183. package/es5/components/VStepper/VStepper.js.map +1 -1
  184. package/es5/components/VStepper/VStepperContent.js +4 -2
  185. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  186. package/es5/components/VStepper/VStepperStep.js +12 -20
  187. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  188. package/es5/components/VSubheader/VSubheader.js +2 -2
  189. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  190. package/es5/components/VSwitch/VSwitch.js +11 -9
  191. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  192. package/es5/components/VTabs/VTab.js +1 -0
  193. package/es5/components/VTabs/VTab.js.map +1 -1
  194. package/es5/components/VTabs/VTabs.js +62 -23
  195. package/es5/components/VTabs/VTabs.js.map +1 -1
  196. package/es5/components/VTabs/VTabsBar.js.map +1 -1
  197. package/es5/components/VTabs/VTabsItems.js +1 -0
  198. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  199. package/es5/components/VTextField/VTextField.js +39 -28
  200. package/es5/components/VTextField/VTextField.js.map +1 -1
  201. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  202. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  203. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  204. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  205. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  206. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  207. package/es5/components/VToolbar/VToolbar.js +3 -6
  208. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  209. package/es5/components/VTooltip/VTooltip.js +13 -12
  210. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  211. package/es5/components/VTreeview/VTreeview.js +24 -18
  212. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  213. package/es5/components/VTreeview/VTreeviewNode.js +12 -6
  214. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  215. package/es5/components/VVirtualScroll/VVirtualScroll.js +15 -19
  216. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  217. package/es5/components/VWindow/VWindow.js +13 -8
  218. package/es5/components/VWindow/VWindow.js.map +1 -1
  219. package/es5/components/VWindow/VWindowItem.js +10 -10
  220. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  221. package/es5/components/transitions/createTransition.js +8 -2
  222. package/es5/components/transitions/createTransition.js.map +1 -1
  223. package/es5/components/transitions/expand-transition.js +1 -0
  224. package/es5/components/transitions/expand-transition.js.map +1 -1
  225. package/es5/directives/intersect/index.js +20 -7
  226. package/es5/directives/intersect/index.js.map +1 -1
  227. package/es5/directives/mutate/index.js +13 -13
  228. package/es5/directives/mutate/index.js.map +1 -1
  229. package/es5/directives/resize/index.js +8 -8
  230. package/es5/directives/resize/index.js.map +1 -1
  231. package/es5/directives/scroll/index.js +10 -9
  232. package/es5/directives/scroll/index.js.map +1 -1
  233. package/es5/directives/touch/index.js +4 -4
  234. package/es5/directives/touch/index.js.map +1 -1
  235. package/es5/framework.js +1 -1
  236. package/es5/install.js +10 -33
  237. package/es5/install.js.map +1 -1
  238. package/es5/mixins/activatable/index.js +11 -5
  239. package/es5/mixins/activatable/index.js.map +1 -1
  240. package/es5/mixins/applicationable/index.js +4 -4
  241. package/es5/mixins/applicationable/index.js.map +1 -1
  242. package/es5/mixins/binds-attrs/index.js +1 -1
  243. package/es5/mixins/binds-attrs/index.js.map +1 -1
  244. package/es5/mixins/bootable/index.js +1 -2
  245. package/es5/mixins/bootable/index.js.map +1 -1
  246. package/es5/mixins/detachable/index.js +12 -9
  247. package/es5/mixins/detachable/index.js.map +1 -1
  248. package/es5/mixins/groupable/index.js +1 -1
  249. package/es5/mixins/groupable/index.js.map +1 -1
  250. package/es5/mixins/intersectable/index.js +2 -2
  251. package/es5/mixins/intersectable/index.js.map +1 -1
  252. package/es5/mixins/menuable/index.js +1 -1
  253. package/es5/mixins/menuable/index.js.map +1 -1
  254. package/es5/mixins/mouse/index.js +10 -5
  255. package/es5/mixins/mouse/index.js.map +1 -1
  256. package/es5/mixins/overlayable/index.js +5 -3
  257. package/es5/mixins/overlayable/index.js.map +1 -1
  258. package/es5/mixins/picker/index.js +13 -3
  259. package/es5/mixins/picker/index.js.map +1 -1
  260. package/es5/mixins/routable/index.js +5 -2
  261. package/es5/mixins/routable/index.js.map +1 -1
  262. package/es5/mixins/selectable/index.js +5 -5
  263. package/es5/mixins/selectable/index.js.map +1 -1
  264. package/es5/mixins/translatable/index.js +1 -1
  265. package/es5/mixins/translatable/index.js.map +1 -1
  266. package/es5/mixins/validatable/index.js +34 -7
  267. package/es5/mixins/validatable/index.js.map +1 -1
  268. package/es5/services/breakpoint/index.js +3 -1
  269. package/es5/services/breakpoint/index.js.map +1 -1
  270. package/es5/util/console.js +49 -18
  271. package/es5/util/console.js.map +1 -1
  272. package/es5/util/helpers.js +49 -1
  273. package/es5/util/helpers.js.map +1 -1
  274. package/es5/util/legacyEventsMixin.js +48 -0
  275. package/es5/util/legacyEventsMixin.js.map +1 -0
  276. package/lib/components/VAlert/VAlert.js +13 -7
  277. package/lib/components/VAlert/VAlert.js.map +1 -1
  278. package/lib/components/VAppBar/VAppBar.js +23 -16
  279. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  280. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  281. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  282. package/lib/components/VAutocomplete/VAutocomplete.js +12 -8
  283. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  284. package/lib/components/VBadge/VBadge.js +26 -13
  285. package/lib/components/VBadge/VBadge.js.map +1 -1
  286. package/lib/components/VBanner/VBanner.js +20 -13
  287. package/lib/components/VBanner/VBanner.js.map +1 -1
  288. package/lib/components/VBottomNavigation/VBottomNavigation.js +15 -7
  289. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  290. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +7 -5
  291. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  292. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +4 -0
  293. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  294. package/lib/components/VBtn/VBtn.js +21 -20
  295. package/lib/components/VBtn/VBtn.js.map +1 -1
  296. package/lib/components/VCalendar/VCalendar.js +26 -31
  297. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  298. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  299. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  300. package/lib/components/VCalendar/VCalendarDaily.js +21 -33
  301. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  302. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  303. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  304. package/lib/components/VCalendar/VCalendarWeekly.js +17 -30
  305. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  306. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  307. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  308. package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
  309. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  310. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  311. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  312. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  313. package/lib/components/VCarousel/VCarousel.js +36 -16
  314. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  315. package/lib/components/VCarousel/VCarouselItem.js +1 -1
  316. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  317. package/lib/components/VCheckbox/VCheckbox.js +15 -2
  318. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  319. package/lib/components/VCheckbox/VSimpleCheckbox.js +83 -39
  320. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  321. package/lib/components/VChip/VChip.js +15 -6
  322. package/lib/components/VChip/VChip.js.map +1 -1
  323. package/lib/components/VColorPicker/VColorPicker.js +47 -44
  324. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  325. package/lib/components/VColorPicker/VColorPickerCanvas.js +41 -43
  326. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  327. package/lib/components/VColorPicker/VColorPickerEdit.js +25 -31
  328. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  329. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -32
  330. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  331. package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -9
  332. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  333. package/lib/components/VCombobox/VCombobox.js +1 -0
  334. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  335. package/lib/components/VData/VData.js +16 -2
  336. package/lib/components/VData/VData.js.map +1 -1
  337. package/lib/components/VDataIterator/VDataFooter.js +15 -7
  338. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  339. package/lib/components/VDataIterator/VDataIterator.js +31 -34
  340. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  341. package/lib/components/VDataTable/RowGroup.js +30 -14
  342. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  343. package/lib/components/VDataTable/VDataTable.js +20 -33
  344. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  345. package/lib/components/VDataTable/VDataTableHeader.js +7 -9
  346. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  347. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +7 -1
  348. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  349. package/lib/components/VDataTable/VDataTableHeaderMobile.js +18 -25
  350. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  351. package/lib/components/VDataTable/VEditDialog.js +18 -18
  352. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  353. package/lib/components/VDataTable/VSimpleTable.js +1 -1
  354. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  355. package/lib/components/VDataTable/VVirtualTable.js +2 -3
  356. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  357. package/lib/components/VDataTable/mixins/header.js +3 -8
  358. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  359. package/lib/components/VDatePicker/VDatePicker.js +24 -23
  360. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  361. package/lib/components/VDatePicker/VDatePickerHeader.js +45 -21
  362. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  363. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  364. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  365. package/lib/components/VDatePicker/VDatePickerTitle.js +17 -5
  366. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  367. package/lib/components/VDatePicker/VDatePickerYears.js +17 -8
  368. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  369. package/lib/components/VDatePicker/mixins/date-picker-table.js +30 -15
  370. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  371. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  372. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  373. package/lib/components/VDialog/VDialog.js +12 -4
  374. package/lib/components/VDialog/VDialog.js.map +1 -1
  375. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  376. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  377. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +2 -2
  378. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  379. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +4 -7
  380. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  381. package/lib/components/VFileInput/VFileInput.js +43 -25
  382. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  383. package/lib/components/VForm/VForm.js +41 -26
  384. package/lib/components/VForm/VForm.js.map +1 -1
  385. package/lib/components/VGrid/VCol.js +3 -3
  386. package/lib/components/VGrid/VCol.js.map +1 -1
  387. package/lib/components/VGrid/VContainer.js +3 -1
  388. package/lib/components/VGrid/VContainer.js.map +1 -1
  389. package/lib/components/VHover/VHover.js +1 -0
  390. package/lib/components/VHover/VHover.js.map +1 -1
  391. package/lib/components/VImg/VImg.js +5 -9
  392. package/lib/components/VImg/VImg.js.map +1 -1
  393. package/lib/components/VInput/VInput.js +32 -9
  394. package/lib/components/VInput/VInput.js.map +1 -1
  395. package/lib/components/VItemGroup/VItem.js +22 -19
  396. package/lib/components/VItemGroup/VItem.js.map +1 -1
  397. package/lib/components/VItemGroup/VItemGroup.js +6 -1
  398. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  399. package/lib/components/VLazy/VLazy.js +8 -15
  400. package/lib/components/VLazy/VLazy.js.map +1 -1
  401. package/lib/components/VList/VList.js +1 -1
  402. package/lib/components/VList/VList.js.map +1 -1
  403. package/lib/components/VList/VListGroup.js +34 -32
  404. package/lib/components/VList/VListGroup.js.map +1 -1
  405. package/lib/components/VList/VListItem.js +40 -18
  406. package/lib/components/VList/VListItem.js.map +1 -1
  407. package/lib/components/VList/VListItemAction.js +15 -9
  408. package/lib/components/VList/VListItemAction.js.map +1 -1
  409. package/lib/components/VMenu/VMenu.js +16 -4
  410. package/lib/components/VMenu/VMenu.js.map +1 -1
  411. package/lib/components/VMessages/VMessages.js +13 -2
  412. package/lib/components/VMessages/VMessages.js.map +1 -1
  413. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +12 -8
  414. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  415. package/lib/components/VOtpInput/VOtpInput.js +50 -6
  416. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  417. package/lib/components/VOverflowBtn/VOverflowBtn.js +2 -1
  418. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  419. package/lib/components/VOverlay/VOverlay.js +14 -3
  420. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  421. package/lib/components/VPagination/VPagination.js +28 -23
  422. package/lib/components/VPagination/VPagination.js.map +1 -1
  423. package/lib/components/VPicker/VPicker.js +4 -4
  424. package/lib/components/VPicker/VPicker.js.map +1 -1
  425. package/lib/components/VProgressCircular/VProgressCircular.js +6 -7
  426. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  427. package/lib/components/VProgressLinear/VProgressLinear.js +46 -19
  428. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  429. package/lib/components/VRadioGroup/VRadio.js +3 -2
  430. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  431. package/lib/components/VRadioGroup/VRadioGroup.js +14 -5
  432. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  433. package/lib/components/VRangeSlider/VRangeSlider.js +17 -5
  434. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  435. package/lib/components/VRating/VRating.js +11 -0
  436. package/lib/components/VRating/VRating.js.map +1 -1
  437. package/lib/components/VSelect/VSelect.js +99 -40
  438. package/lib/components/VSelect/VSelect.js.map +1 -1
  439. package/lib/components/VSelect/VSelectList.js +54 -29
  440. package/lib/components/VSelect/VSelectList.js.map +1 -1
  441. package/lib/components/VSlideGroup/VSlideGroup.js +4 -7
  442. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  443. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  444. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  445. package/lib/components/VSlider/VSlider.js +37 -25
  446. package/lib/components/VSlider/VSlider.js.map +1 -1
  447. package/lib/components/VSnackbar/VSnackbar.js +1 -0
  448. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  449. package/lib/components/VSparkline/VSparkline.js +48 -67
  450. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  451. package/lib/components/VSpeedDial/VSpeedDial.js +9 -15
  452. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  453. package/lib/components/VStepper/VStepper.js +1 -0
  454. package/lib/components/VStepper/VStepper.js.map +1 -1
  455. package/lib/components/VStepper/VStepperContent.js +2 -2
  456. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  457. package/lib/components/VStepper/VStepperStep.js +8 -19
  458. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  459. package/lib/components/VSubheader/VSubheader.js +1 -2
  460. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  461. package/lib/components/VSwitch/VSwitch.js +2 -4
  462. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  463. package/lib/components/VTabs/VTab.js +1 -0
  464. package/lib/components/VTabs/VTab.js.map +1 -1
  465. package/lib/components/VTabs/VTabs.js +28 -7
  466. package/lib/components/VTabs/VTabs.js.map +1 -1
  467. package/lib/components/VTabs/VTabsBar.js.map +1 -1
  468. package/lib/components/VTabs/VTabsItems.js +1 -0
  469. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  470. package/lib/components/VTextField/VTextField.js +12 -18
  471. package/lib/components/VTextField/VTextField.js.map +1 -1
  472. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  473. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  474. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  475. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  476. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  477. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  478. package/lib/components/VToolbar/VToolbar.js +5 -6
  479. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  480. package/lib/components/VTooltip/VTooltip.js +10 -14
  481. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  482. package/lib/components/VTreeview/VTreeview.js +15 -13
  483. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  484. package/lib/components/VTreeview/VTreeviewNode.js +4 -6
  485. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  486. package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -14
  487. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  488. package/lib/components/VWindow/VWindow.js +7 -6
  489. package/lib/components/VWindow/VWindow.js.map +1 -1
  490. package/lib/components/VWindow/VWindowItem.js +5 -7
  491. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  492. package/lib/components/transitions/createTransition.js +2 -2
  493. package/lib/components/transitions/createTransition.js.map +1 -1
  494. package/lib/components/transitions/expand-transition.js +1 -0
  495. package/lib/components/transitions/expand-transition.js.map +1 -1
  496. package/lib/directives/intersect/index.js +20 -7
  497. package/lib/directives/intersect/index.js.map +1 -1
  498. package/lib/directives/mutate/index.js +13 -13
  499. package/lib/directives/mutate/index.js.map +1 -1
  500. package/lib/directives/resize/index.js +8 -8
  501. package/lib/directives/resize/index.js.map +1 -1
  502. package/lib/directives/scroll/index.js +10 -9
  503. package/lib/directives/scroll/index.js.map +1 -1
  504. package/lib/directives/touch/index.js +4 -4
  505. package/lib/directives/touch/index.js.map +1 -1
  506. package/lib/framework.js +1 -1
  507. package/lib/install.js +5 -28
  508. package/lib/install.js.map +1 -1
  509. package/lib/mixins/activatable/index.js +12 -6
  510. package/lib/mixins/activatable/index.js.map +1 -1
  511. package/lib/mixins/applicationable/index.js +4 -4
  512. package/lib/mixins/applicationable/index.js.map +1 -1
  513. package/lib/mixins/binds-attrs/index.js +1 -1
  514. package/lib/mixins/binds-attrs/index.js.map +1 -1
  515. package/lib/mixins/bootable/index.js +2 -4
  516. package/lib/mixins/bootable/index.js.map +1 -1
  517. package/lib/mixins/detachable/index.js +13 -10
  518. package/lib/mixins/detachable/index.js.map +1 -1
  519. package/lib/mixins/groupable/index.js +1 -1
  520. package/lib/mixins/groupable/index.js.map +1 -1
  521. package/lib/mixins/intersectable/index.js +2 -2
  522. package/lib/mixins/intersectable/index.js.map +1 -1
  523. package/lib/mixins/menuable/index.js +1 -1
  524. package/lib/mixins/menuable/index.js.map +1 -1
  525. package/lib/mixins/mouse/index.js +9 -5
  526. package/lib/mixins/mouse/index.js.map +1 -1
  527. package/lib/mixins/overlayable/index.js +5 -3
  528. package/lib/mixins/overlayable/index.js.map +1 -1
  529. package/lib/mixins/picker/index.js +5 -3
  530. package/lib/mixins/picker/index.js.map +1 -1
  531. package/lib/mixins/routable/index.js +5 -2
  532. package/lib/mixins/routable/index.js.map +1 -1
  533. package/lib/mixins/selectable/index.js +6 -5
  534. package/lib/mixins/selectable/index.js.map +1 -1
  535. package/lib/mixins/translatable/index.js +1 -1
  536. package/lib/mixins/translatable/index.js.map +1 -1
  537. package/lib/mixins/validatable/index.js +17 -7
  538. package/lib/mixins/validatable/index.js.map +1 -1
  539. package/lib/services/breakpoint/index.js +3 -1
  540. package/lib/services/breakpoint/index.js.map +1 -1
  541. package/lib/util/console.js +47 -17
  542. package/lib/util/console.js.map +1 -1
  543. package/lib/util/helpers.js +47 -1
  544. package/lib/util/helpers.js.map +1 -1
  545. package/lib/util/legacyEventsMixin.js +37 -0
  546. package/lib/util/legacyEventsMixin.js.map +1 -0
  547. package/package.json +1 -1
  548. package/src/components/VAlert/VAlert.ts +19 -8
  549. package/src/components/VAlert/__tests__/VAlert.spec.ts +78 -50
  550. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +16 -18
  551. package/src/components/VApp/__tests__/VApp.spec.ts +24 -18
  552. package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
  553. package/src/components/VAppBar/VAppBar.ts +21 -14
  554. package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
  555. package/src/components/VAppBar/__tests__/VAppBar.spec.ts +256 -74
  556. package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +2 -6
  557. package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
  558. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +3 -4
  559. package/src/components/VAutocomplete/VAutocomplete.ts +35 -6
  560. package/src/components/VAutocomplete/__tests__/VAutocomplete.spec.ts +51 -53
  561. package/src/components/VAutocomplete/__tests__/VAutocomplete2.spec.ts +77 -48
  562. package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +101 -39
  563. package/src/components/VAvatar/__tests__/VAvatar.spec.ts +72 -10
  564. package/src/components/VBadge/VBadge.ts +38 -26
  565. package/src/components/VBadge/__tests__/VBadge.spec.ts +47 -30
  566. package/src/components/VBadge/__tests__/__snapshots__/VBadge.spec.ts.snap +5 -5
  567. package/src/components/VBanner/VBanner.ts +30 -17
  568. package/src/components/VBanner/__tests__/VBanner.spec.ts +35 -36
  569. package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +1 -1
  570. package/src/components/VBottomNavigation/VBottomNavigation.ts +20 -8
  571. package/src/components/VBottomNavigation/__tests__/VBottomNavigation.spec.ts +43 -37
  572. package/src/components/VBottomNavigation/__tests__/__snapshots__/VBottomNavigation.spec.ts.snap +11 -10
  573. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +8 -4
  574. package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +4 -0
  575. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +125 -10
  576. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbsItem.spec.ts +10 -6
  577. package/src/components/VBtn/VBtn.ts +25 -17
  578. package/src/components/VBtn/__tests__/VBtn.spec.ts +257 -242
  579. package/src/components/VBtn/__tests__/__snapshots__/VBtn.spec.ts.snap +13 -73
  580. package/src/components/VBtnToggle/__tests__/VBtnToggle.spec.ts +10 -6
  581. package/src/components/VCalendar/VCalendar.ts +29 -27
  582. package/src/components/VCalendar/VCalendarCategory.ts +9 -8
  583. package/src/components/VCalendar/VCalendarDaily.ts +18 -28
  584. package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
  585. package/src/components/VCalendar/VCalendarWeekly.ts +18 -30
  586. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +18 -34
  587. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +16 -14
  588. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
  589. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +206 -205
  590. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  591. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  592. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
  593. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
  594. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
  595. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
  596. package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
  597. package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
  598. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
  599. package/src/components/VCalendar/mixins/times.ts +1 -1
  600. package/src/components/VCard/__tests__/VCard.spec.ts +46 -28
  601. package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
  602. package/src/components/VCarousel/VCarousel.ts +42 -15
  603. package/src/components/VCarousel/VCarouselItem.ts +1 -1
  604. package/src/components/VCarousel/__tests__/VCarousel.spec.ts +74 -54
  605. package/src/components/VCarousel/__tests__/VCarouselItem.spec.ts +9 -5
  606. package/src/components/VCarousel/__tests__/__snapshots__/VCarousel.spec.ts.snap +1 -1
  607. package/src/components/VCheckbox/VCheckbox.ts +20 -2
  608. package/src/components/VCheckbox/VSimpleCheckbox.ts +97 -45
  609. package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +157 -152
  610. package/src/components/VCheckbox/__tests__/VSimpleCheckbox.spec.ts +46 -13
  611. package/src/components/VChip/VChip.ts +17 -13
  612. package/src/components/VChip/__tests__/VChip.spec.ts +50 -50
  613. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
  614. package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +14 -21
  615. package/src/components/VColorPicker/VColorPicker.ts +51 -41
  616. package/src/components/VColorPicker/VColorPickerCanvas.ts +44 -37
  617. package/src/components/VColorPicker/VColorPickerEdit.ts +37 -35
  618. package/src/components/VColorPicker/VColorPickerPreview.ts +48 -28
  619. package/src/components/VColorPicker/VColorPickerSwatches.ts +23 -12
  620. package/src/components/VColorPicker/__tests__/VColorPicker.spec.ts +47 -47
  621. package/src/components/VColorPicker/__tests__/VColorPickerCanvas.spec.ts +15 -13
  622. package/src/components/VColorPicker/__tests__/VColorPickerEdit.spec.ts +52 -50
  623. package/src/components/VColorPicker/__tests__/VColorPickerPreview.spec.ts +101 -30
  624. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +218 -175
  625. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +38 -21
  626. package/src/components/VCombobox/VCombobox.ts +23 -0
  627. package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +118 -110
  628. package/src/components/VCombobox/__tests__/VCombobox.spec.ts +119 -93
  629. package/src/components/VData/VData.ts +14 -1
  630. package/src/components/VData/__tests__/VData.spec.ts +69 -90
  631. package/src/components/VDataIterator/VDataFooter.ts +16 -9
  632. package/src/components/VDataIterator/VDataIterator.ts +51 -35
  633. package/src/components/VDataIterator/__tests__/VDataFooter.spec.ts +38 -39
  634. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +90 -122
  635. package/src/components/VDataIterator/__tests__/__snapshots__/VDataFooter.spec.ts.snap +92 -82
  636. package/src/components/VDataIterator/__tests__/__snapshots__/VDataIterator.spec.ts.snap +79 -69
  637. package/src/components/VDataTable/RowGroup.ts +33 -16
  638. package/src/components/VDataTable/VDataTable.ts +20 -29
  639. package/src/components/VDataTable/VDataTableHeader.ts +8 -9
  640. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +10 -1
  641. package/src/components/VDataTable/VDataTableHeaderMobile.ts +18 -25
  642. package/src/components/VDataTable/VEditDialog.ts +23 -21
  643. package/src/components/VDataTable/VSimpleTable.ts +2 -3
  644. package/src/components/VDataTable/VVirtualTable.ts +2 -3
  645. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +55 -66
  646. package/src/components/VDataTable/__tests__/Row.spec.ts +64 -73
  647. package/src/components/VDataTable/__tests__/RowGroup.spec.ts +7 -5
  648. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +916 -998
  649. package/src/components/VDataTable/__tests__/VDataTableHeader.spec.ts +39 -29
  650. package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +33 -24
  651. package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +55 -29
  652. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +13 -15
  653. package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
  654. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +2543 -2086
  655. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +115 -144
  656. package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +6 -6
  657. package/src/components/VDataTable/__tests__/__snapshots__/VSimpleTable.spec.ts.snap +22 -18
  658. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +10 -13
  659. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +15 -15
  660. package/src/components/VDataTable/mixins/header.ts +6 -10
  661. package/src/components/VDatePicker/VDatePicker.ts +30 -25
  662. package/src/components/VDatePicker/VDatePickerHeader.ts +57 -32
  663. package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
  664. package/src/components/VDatePicker/VDatePickerTitle.ts +21 -7
  665. package/src/components/VDatePicker/VDatePickerYears.ts +19 -10
  666. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +302 -246
  667. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +90 -86
  668. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
  669. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +96 -71
  670. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
  671. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +48 -28
  672. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +25 -22
  673. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +601 -586
  674. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +203 -193
  675. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  676. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  677. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  678. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +3 -4
  679. package/src/components/VDatePicker/mixins/date-picker-table.ts +32 -14
  680. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  681. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  682. package/src/components/VDialog/VDialog.ts +23 -11
  683. package/src/components/VDialog/__tests__/VDialog.spec.ts +105 -101
  684. package/src/components/VDialog/__tests__/__snapshots__/VDialog.spec.ts.snap +0 -15
  685. package/src/components/VDivider/__tests__/VDivider.spec.ts +11 -15
  686. package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
  687. package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
  688. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +2 -2
  689. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +3 -4
  690. package/src/components/VExpansionPanel/__tests__/VExpansionPanel.spec.ts +43 -27
  691. package/src/components/VExpansionPanel/__tests__/__snapshots__/VExpansionPanel.spec.ts.snap +18 -16
  692. package/src/components/VFileInput/VFileInput.ts +47 -32
  693. package/src/components/VFileInput/__tests__/VFileInput.spec.ts +84 -54
  694. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +242 -146
  695. package/src/components/VForm/VForm.ts +63 -35
  696. package/src/components/VForm/__tests__/VForm.spec.ts +100 -80
  697. package/src/components/VGrid/VCol.ts +2 -2
  698. package/src/components/VGrid/VContainer.ts +1 -1
  699. package/src/components/VGrid/__tests__/VCol.spec.ts +17 -17
  700. package/src/components/VGrid/__tests__/VContainer.spec.ts +58 -3
  701. package/src/components/VGrid/__tests__/VFlex.spec.ts +3 -3
  702. package/src/components/VGrid/__tests__/VGrid.spec.ts +12 -10
  703. package/src/components/VGrid/__tests__/VLayout.spec.ts +3 -3
  704. package/src/components/VHover/VHover.ts +2 -0
  705. package/src/components/VIcon/__tests__/VIcon.spec.ts +176 -70
  706. package/src/components/VImg/VImg.ts +5 -4
  707. package/src/components/VImg/__tests__/VImg.spec.ts +21 -20
  708. package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +71 -66
  709. package/src/components/VInput/VInput.ts +33 -8
  710. package/src/components/VInput/__tests__/VInput.spec.ts +170 -234
  711. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +50 -101
  712. package/src/components/VItemGroup/VItem.ts +29 -23
  713. package/src/components/VItemGroup/VItemGroup.ts +7 -1
  714. package/src/components/VItemGroup/__tests__/VItem.spec.ts +22 -37
  715. package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +96 -124
  716. package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
  717. package/src/components/VLabel/__tests__/VLabel.spec.ts +240 -14
  718. package/src/components/VLazy/VLazy.ts +11 -13
  719. package/src/components/VLazy/__tests__/VLazy.spec.ts +5 -4
  720. package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +2 -1
  721. package/src/components/VList/VList.ts +1 -1
  722. package/src/components/VList/VListGroup.ts +43 -32
  723. package/src/components/VList/VListItem.ts +55 -23
  724. package/src/components/VList/VListItemAction.ts +11 -10
  725. package/src/components/VList/__tests__/VList.spec.ts +13 -12
  726. package/src/components/VList/__tests__/VListGroup.spec.ts +59 -51
  727. package/src/components/VList/__tests__/VListItem.spec.ts +142 -63
  728. package/src/components/VList/__tests__/VListItemAvatar.spec.ts +5 -2
  729. package/src/components/VList/__tests__/VListItemGroup.spec.ts +5 -2
  730. package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
  731. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +5 -6
  732. package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
  733. package/src/components/VMain/__tests__/VMain.spec.ts +71 -17
  734. package/src/components/VMenu/VMenu.ts +25 -4
  735. package/src/components/VMenu/__tests__/VMenu.spec.ts +90 -69
  736. package/src/components/VMenu/__tests__/__snapshots__/VMenu.spec.ts.snap +3 -5
  737. package/src/components/VMessages/VMessages.ts +15 -4
  738. package/src/components/VMessages/__tests__/VMessages.spec.ts +55 -16
  739. package/src/components/VMessages/__tests__/__snapshots__/VMessages.spec.ts.snap +16 -25
  740. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +23 -16
  741. package/src/components/VNavigationDrawer/__tests__/VNavigationDrawer.spec.ts +84 -71
  742. package/src/components/VOtpInput/VOtpInput.ts +39 -4
  743. package/src/components/VOverflowBtn/VOverflowBtn.ts +3 -1
  744. package/src/components/VOverlay/VOverlay.ts +16 -2
  745. package/src/components/VOverlay/__tests__/VOverlay.spec.ts +6 -6
  746. package/src/components/VPagination/VPagination.ts +41 -29
  747. package/src/components/VPagination/__tests__/VPagination.spec.ts +85 -71
  748. package/src/components/VPagination/__tests__/__snapshots__/VPagination.spec.ts.snap +184 -429
  749. package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
  750. package/src/components/VPicker/VPicker.ts +9 -11
  751. package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
  752. package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
  753. package/src/components/VProgressCircular/VProgressCircular.ts +6 -6
  754. package/src/components/VProgressCircular/__tests__/VProgressCircular.spec.ts +28 -21
  755. package/src/components/VProgressCircular/__tests__/__snapshots__/VProgressCircular.spec.ts.snap +62 -62
  756. package/src/components/VProgressLinear/VProgressLinear.ts +64 -30
  757. package/src/components/VProgressLinear/__tests__/VProgressLinear.spec.ts +378 -71
  758. package/src/components/VProgressLinear/__tests__/__snapshots__/VProgressLinear.spec.ts.snap +53 -79
  759. package/src/components/VRadioGroup/VRadio.ts +4 -2
  760. package/src/components/VRadioGroup/VRadioGroup.ts +20 -7
  761. package/src/components/VRangeSlider/VRangeSlider.ts +20 -5
  762. package/src/components/VRangeSlider/__tests__/VRangeSlider.spec.ts +40 -40
  763. package/src/components/VRangeSlider/__tests__/__snapshots__/VRangeSlider.spec.ts.snap +32 -38
  764. package/src/components/VRating/VRating.ts +13 -0
  765. package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
  766. package/src/components/VSelect/VSelect.ts +105 -47
  767. package/src/components/VSelect/VSelectList.ts +51 -25
  768. package/src/components/VSelect/__tests__/VSelect.spec.ts +166 -125
  769. package/src/components/VSelect/__tests__/VSelect2.spec.ts +127 -111
  770. package/src/components/VSelect/__tests__/VSelect3.spec.ts +109 -91
  771. package/src/components/VSelect/__tests__/VSelect4.spec.ts +79 -68
  772. package/src/components/VSelect/__tests__/VSelectList.spec.ts +23 -31
  773. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
  774. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +50 -62
  775. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +10 -14
  776. package/src/components/VSheet/__tests__/VSheet.spec.ts +5 -5
  777. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +22 -15
  778. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +60 -60
  779. package/src/components/VSlideGroup/VSlideGroup.ts +5 -7
  780. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  781. package/src/components/VSlider/VSlider.ts +58 -32
  782. package/src/components/VSlider/__tests__/VSlider.spec.ts +188 -286
  783. package/src/components/VSlider/__tests__/__snapshots__/VSlider.spec.ts.snap +157 -246
  784. package/src/components/VSnackbar/VSnackbar.ts +1 -1
  785. package/src/components/VSparkline/VSparkline.ts +54 -92
  786. package/src/components/VSparkline/__tests__/VSparkline.spec.ts +33 -35
  787. package/src/components/VSpeedDial/VSpeedDial.ts +12 -15
  788. package/src/components/VSpeedDial/__tests__/VSpeedDial.spec.ts +21 -13
  789. package/src/components/VSpeedDial/__tests__/__snapshots__/VSpeedDial.spec.ts.snap +6 -6
  790. package/src/components/VStepper/VStepper.ts +3 -1
  791. package/src/components/VStepper/VStepperContent.ts +2 -2
  792. package/src/components/VStepper/VStepperStep.ts +9 -16
  793. package/src/components/VStepper/__tests__/VStepper.spec.ts +4 -1
  794. package/src/components/VStepper/__tests__/VStepperContent.spec.ts +104 -110
  795. package/src/components/VStepper/__tests__/VStepperStep.spec.ts +51 -44
  796. package/src/components/VSubheader/VSubheader.ts +1 -1
  797. package/src/components/VSubheader/__tests__/VSubheader.spec.ts +12 -7
  798. package/src/components/VSubheader/__tests__/__snapshots__/VSubheader.spec.ts.snap +1 -1
  799. package/src/components/VSwitch/VSwitch.ts +5 -6
  800. package/src/components/VSwitch/__tests__/VSwitch.spec.ts +30 -37
  801. package/src/components/VSystemBar/__tests__/VSystemBar.spec.ts +89 -17
  802. package/src/components/VTabs/VTab.ts +2 -0
  803. package/src/components/VTabs/VTabs.ts +33 -13
  804. package/src/components/VTabs/VTabsBar.ts +7 -5
  805. package/src/components/VTabs/VTabsItems.ts +2 -0
  806. package/src/components/VTabs/__tests__/VTab.spec.ts +49 -38
  807. package/src/components/VTabs/__tests__/VTabs.spec.ts +127 -79
  808. package/src/components/VTabs/__tests__/VTabsBar.spec.ts +68 -27
  809. package/src/components/VTabs/__tests__/VTabsSlider.spec.ts +7 -6
  810. package/src/components/VTabs/__tests__/__snapshots__/VTabs.spec.ts.snap +1 -3
  811. package/src/components/VTextField/VTextField.ts +14 -16
  812. package/src/components/VTextField/__tests__/VTextField.spec.ts +342 -246
  813. package/src/components/VTextarea/__tests__/VTextarea.spec.ts +112 -35
  814. package/src/components/VTimePicker/VTimePicker.ts +199 -89
  815. package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
  816. package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
  817. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +153 -140
  818. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
  819. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +47 -41
  820. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +120 -40
  821. package/src/components/VTimeline/__tests__/VTimelineItem.spec.ts +25 -35
  822. package/src/components/VTimeline/__tests__/__snapshots__/VTimelineItem.spec.ts.snap +4 -5
  823. package/src/components/VToolbar/VToolbar.ts +5 -6
  824. package/src/components/VToolbar/__tests__/VToolbar.spec.ts +49 -25
  825. package/src/components/VTooltip/VTooltip.ts +24 -24
  826. package/src/components/VTooltip/__tests__/VTooltip.spec.ts +60 -75
  827. package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
  828. package/src/components/VTreeview/VTreeview.ts +20 -17
  829. package/src/components/VTreeview/VTreeviewNode.ts +4 -6
  830. package/src/components/VTreeview/__tests__/VTreeview.spec.ts +168 -174
  831. package/src/components/VTreeview/__tests__/VTreeviewNode.spec.ts +77 -66
  832. package/src/components/VTreeview/__tests__/__snapshots__/VTreeview.spec.ts.snap +141 -141
  833. package/src/components/VTreeview/__tests__/__snapshots__/VTreeviewNode.spec.ts.snap +26 -51
  834. package/src/components/VVirtualScroll/VVirtualScroll.ts +14 -15
  835. package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +24 -20
  836. package/src/components/VWindow/VWindow.ts +9 -6
  837. package/src/components/VWindow/VWindowItem.ts +5 -4
  838. package/src/components/VWindow/__tests__/VWindow.spec.ts +304 -185
  839. package/src/components/VWindow/__tests__/VWindowItem.spec.ts +283 -126
  840. package/src/components/VWindow/__tests__/__snapshots__/VWindow.spec.ts.snap +59 -0
  841. package/src/components/VWindow/__tests__/__snapshots__/VWindowItem.spec.ts.snap +36 -0
  842. package/src/components/transitions/createTransition.ts +2 -2
  843. package/src/components/transitions/expand-transition.ts +2 -0
  844. package/src/directives/intersect/index.ts +81 -42
  845. package/src/directives/mutate/index.ts +58 -49
  846. package/src/directives/resize/index.ts +33 -14
  847. package/src/directives/scroll/index.ts +36 -20
  848. package/src/directives/touch/index.ts +37 -27
  849. package/src/install.ts +10 -32
  850. package/src/mixins/activatable/index.ts +10 -5
  851. package/src/mixins/applicationable/__tests__/applicationable.spec.ts +31 -27
  852. package/src/mixins/applicationable/index.ts +4 -4
  853. package/src/mixins/binds-attrs/index.ts +1 -1
  854. package/src/mixins/bootable/__tests__/bootable.spec.ts +17 -11
  855. package/src/mixins/bootable/index.ts +4 -3
  856. package/src/mixins/colorable/__tests__/colorable.spec.ts +9 -6
  857. package/src/mixins/detachable/index.ts +16 -9
  858. package/src/mixins/elevatable/__tests__/elevatable.spec.ts +14 -13
  859. package/src/mixins/groupable/index.ts +1 -1
  860. package/src/mixins/intersectable/__tests__/intersectable.spec.ts +35 -29
  861. package/src/mixins/intersectable/index.ts +2 -2
  862. package/src/mixins/menuable/__tests__/menuable.spec.ts +76 -33
  863. package/src/mixins/menuable/index.ts +1 -1
  864. package/src/mixins/mobile/__tests__/mobile.spec.ts +9 -6
  865. package/src/mixins/mouse/__tests__/mouse.spec.ts +54 -40
  866. package/src/mixins/mouse/index.ts +10 -6
  867. package/src/mixins/overlayable/__tests__/overlayable.spec.ts +32 -24
  868. package/src/mixins/overlayable/index.ts +5 -4
  869. package/src/mixins/picker/index.ts +4 -4
  870. package/src/mixins/proxyable/__tests__/proxyable.spec.ts +18 -17
  871. package/src/mixins/registrable/__tests__/registrable.spec.ts +31 -0
  872. package/src/mixins/rippleable/__tests__/rippleable.spec.ts +10 -9
  873. package/src/mixins/roundable/__tests__/roundable.spec.ts +7 -5
  874. package/src/mixins/routable/__tests__/routable.spec.ts +60 -52
  875. package/src/mixins/routable/index.ts +6 -4
  876. package/src/mixins/scrollable/__tests__/scrollable.spec.ts +56 -27
  877. package/src/mixins/selectable/__tests__/selectable.spec.ts +22 -9
  878. package/src/mixins/selectable/index.ts +7 -7
  879. package/src/mixins/translatable/index.ts +1 -1
  880. package/src/mixins/validatable/__tests__/validatable.spec.ts +194 -158
  881. package/src/mixins/validatable/index.ts +29 -21
  882. package/src/services/breakpoint/index.ts +5 -0
  883. package/src/util/__tests__/console.spec.ts +124 -11
  884. package/src/util/__tests__/helpers.spec.ts +121 -32
  885. package/src/util/console.ts +43 -24
  886. package/src/util/helpers.ts +49 -4
  887. package/src/util/legacyEventsMixin.ts +34 -0
@@ -13,8 +13,8 @@ var _helpers = require("../../util/helpers");
13
13
 
14
14
  var _util = require("./util");
15
15
 
16
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
-
16
+ // Styles
17
+ // Helpers
18
18
  var _default2 = (0, _vue.defineComponent)({
19
19
  name: 'v-color-picker-canvas',
20
20
  props: {
@@ -43,6 +43,7 @@ var _default2 = (0, _vue.defineComponent)({
43
43
  default: 300
44
44
  }
45
45
  },
46
+ emits: ['update:color'],
46
47
  data: function data() {
47
48
  return {
48
49
  boundingRect: {
@@ -60,34 +61,24 @@ var _default2 = (0, _vue.defineComponent)({
60
61
  y: 0
61
62
  };
62
63
  return {
63
- x: this.color.hsva.s * parseInt(this.width, 10),
64
- y: (1 - this.color.hsva.v) * parseInt(this.height, 10)
64
+ x: this.color.hsva.s * parseInt(String(this.width), 10),
65
+ y: (1 - this.color.hsva.v) * parseInt(String(this.height), 10)
65
66
  };
66
67
  }
67
68
  },
68
69
  watch: {
69
- 'color.hue': 'updateCanvas'
70
+ 'color.hue': function colorHue() {
71
+ this.updateCanvas();
72
+ }
70
73
  },
71
74
  mounted: function mounted() {
72
75
  this.updateCanvas();
73
76
  },
74
77
  methods: {
75
- emitColor: function emitColor(x, y) {
76
- var _this$boundingRect = this.boundingRect,
77
- left = _this$boundingRect.left,
78
- top = _this$boundingRect.top,
79
- width = _this$boundingRect.width,
80
- height = _this$boundingRect.height;
81
- this.$emit('update:color', (0, _util.fromHSVA)({
82
- h: this.color.hue,
83
- s: (0, _helpers.clamp)(x - left, 0, width) / width,
84
- v: 1 - (0, _helpers.clamp)(y - top, 0, height) / height,
85
- a: this.color.alpha
86
- }));
87
- },
88
78
  updateCanvas: function updateCanvas() {
89
79
  if (!this.color) return;
90
80
  var canvas = this.$refs.canvas;
81
+ if (!canvas) return;
91
82
  var ctx = canvas.getContext('2d');
92
83
  if (!ctx) return;
93
84
  var saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0);
@@ -104,19 +95,24 @@ var _default2 = (0, _vue.defineComponent)({
104
95
  ctx.fillStyle = valueGradient;
105
96
  ctx.fillRect(0, 0, canvas.width, canvas.height);
106
97
  },
98
+ emitColor: function emitColor(x, y) {
99
+ var _this$boundingRect = this.boundingRect,
100
+ left = _this$boundingRect.left,
101
+ top = _this$boundingRect.top,
102
+ width = _this$boundingRect.width,
103
+ height = _this$boundingRect.height;
104
+ this.$emit('update:color', (0, _util.fromHSVA)({
105
+ h: this.color.hue,
106
+ s: (0, _helpers.clamp)(x - left, 0, width) / width,
107
+ v: 1 - (0, _helpers.clamp)(y - top, 0, height) / height,
108
+ a: this.color.alpha
109
+ }));
110
+ },
107
111
  handleClick: function handleClick(e) {
108
112
  if (this.disabled) return;
109
113
  this.boundingRect = this.$el.getBoundingClientRect();
110
114
  this.emitColor(e.clientX, e.clientY);
111
115
  },
112
- handleMouseDown: function handleMouseDown(e) {
113
- // To prevent selection while moving cursor
114
- e.preventDefault();
115
- if (this.disabled) return;
116
- this.boundingRect = this.$el.getBoundingClientRect();
117
- window.addEventListener('mousemove', this.handleMouseMove);
118
- window.addEventListener('mouseup', this.handleMouseUp);
119
- },
120
116
  handleMouseMove: function handleMouseMove(e) {
121
117
  if (this.disabled) return;
122
118
  this.emitColor(e.clientX, e.clientY);
@@ -125,30 +121,35 @@ var _default2 = (0, _vue.defineComponent)({
125
121
  window.removeEventListener('mousemove', this.handleMouseMove);
126
122
  window.removeEventListener('mouseup', this.handleMouseUp);
127
123
  },
124
+ handleMouseDown: function handleMouseDown(e) {
125
+ // To prevent selection while moving cursor
126
+ e.preventDefault();
127
+ if (this.disabled) return;
128
+ this.boundingRect = this.$el.getBoundingClientRect();
129
+ window.addEventListener('mousemove', this.handleMouseMove);
130
+ window.addEventListener('mouseup', this.handleMouseUp);
131
+ },
128
132
  genCanvas: function genCanvas() {
129
133
  return (0, _vue.h)('canvas', {
130
134
  ref: 'canvas',
131
- attrs: {
132
- width: this.width,
133
- height: this.height
134
- }
135
+ width: this.width,
136
+ height: this.height
135
137
  });
136
138
  },
137
139
  genDot: function genDot() {
138
- var _h;
139
-
140
- var radius = parseInt(this.dotSize, 10) / 2;
140
+ var radius = parseInt(String(this.dotSize), 10) / 2;
141
141
  var x = (0, _helpers.convertToUnit)(this.dot.x - radius);
142
142
  var y = (0, _helpers.convertToUnit)(this.dot.y - radius);
143
- return (0, _vue.h)('div', (_h = {
144
- class: 'v-color-picker__canvas-dot'
145
- }, _defineProperty(_h, "class", {
146
- 'v-color-picker__canvas-dot--disabled': this.disabled
147
- }), _defineProperty(_h, "style", {
148
- width: (0, _helpers.convertToUnit)(this.dotSize),
149
- height: (0, _helpers.convertToUnit)(this.dotSize),
150
- transform: "translate(".concat(x, ", ").concat(y, ")")
151
- }), _h));
143
+ return (0, _vue.h)('div', {
144
+ class: ['v-color-picker__canvas-dot', {
145
+ 'v-color-picker__canvas-dot--disabled': this.disabled
146
+ }],
147
+ style: {
148
+ width: (0, _helpers.convertToUnit)(this.dotSize),
149
+ height: (0, _helpers.convertToUnit)(this.dotSize),
150
+ transform: "translate(".concat(x, ", ").concat(y, ")")
151
+ }
152
+ });
152
153
  }
153
154
  },
154
155
  render: function render() {
@@ -158,10 +159,8 @@ var _default2 = (0, _vue.defineComponent)({
158
159
  width: (0, _helpers.convertToUnit)(this.width),
159
160
  height: (0, _helpers.convertToUnit)(this.height)
160
161
  },
161
- on: {
162
- click: this.handleClick,
163
- mousedown: this.handleMouseDown
164
- }
162
+ onClick: this.handleClick,
163
+ onMousedown: this.handleMouseDown
165
164
  }, [this.genCanvas(), this.genDot()]);
166
165
  }
167
166
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerCanvas.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VColorPickerCanvas.sass'\n\n// Helpers\nimport { clamp, convertToUnit } from '../../util/helpers'\nimport { fromHSVA, VColorPickerColor, fromRGBA } from './util'\n\n// Types\nimport { defineComponent, VNode, PropType } from 'vue'\n\nexport default defineComponent({\n name: 'v-color-picker-canvas',\n\n props: {\n color: {\n type: Object as PropType<VColorPickerColor>,\n default: () => fromRGBA({ r: 255, g: 0, b: 0, a: 1 }),\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n height: {\n type: [Number, String],\n default: 150,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n },\n\n data () {\n return {\n boundingRect: {\n width: 0,\n height: 0,\n left: 0,\n top: 0,\n } as ClientRect,\n }\n },\n\n computed: {\n dot (): { x: number, y: number} {\n if (!this.color) return { x: 0, y: 0 }\n\n return {\n x: this.color.hsva.s * parseInt(this.width, 10),\n y: (1 - this.color.hsva.v) * parseInt(this.height, 10),\n }\n },\n },\n\n watch: {\n 'color.hue': 'updateCanvas',\n },\n\n mounted () {\n this.updateCanvas()\n },\n\n methods: {\n emitColor (x: number, y: number) {\n const { left, top, width, height } = this.boundingRect\n\n this.$emit('update:color', fromHSVA({\n h: this.color.hue,\n s: clamp(x - left, 0, width) / width,\n v: 1 - clamp(y - top, 0, height) / height,\n a: this.color.alpha,\n }))\n },\n updateCanvas () {\n if (!this.color) return\n\n const canvas = this.$refs.canvas as HTMLCanvasElement\n const ctx = canvas.getContext('2d')\n\n if (!ctx) return\n\n const saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0)\n saturationGradient.addColorStop(0, 'hsla(0, 0%, 100%, 1)') // white\n saturationGradient.addColorStop(1, `hsla(${this.color.hue}, 100%, 50%, 1)`)\n ctx.fillStyle = saturationGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n\n const valueGradient = ctx.createLinearGradient(0, 0, 0, canvas.height)\n valueGradient.addColorStop(0, 'hsla(0, 0%, 100%, 0)') // transparent\n valueGradient.addColorStop(1, 'hsla(0, 0%, 0%, 1)') // black\n ctx.fillStyle = valueGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n },\n handleClick (e: MouseEvent) {\n if (this.disabled) return\n\n this.boundingRect = this.$el.getBoundingClientRect()\n this.emitColor(e.clientX, e.clientY)\n },\n handleMouseDown (e: MouseEvent) {\n // To prevent selection while moving cursor\n e.preventDefault()\n\n if (this.disabled) return\n\n this.boundingRect = this.$el.getBoundingClientRect()\n\n window.addEventListener('mousemove', this.handleMouseMove)\n window.addEventListener('mouseup', this.handleMouseUp)\n },\n handleMouseMove (e: MouseEvent) {\n if (this.disabled) return\n\n this.emitColor(e.clientX, e.clientY)\n },\n handleMouseUp () {\n window.removeEventListener('mousemove', this.handleMouseMove)\n window.removeEventListener('mouseup', this.handleMouseUp)\n },\n genCanvas (): VNode {\n return h('canvas', {\n ref: 'canvas',\n attrs: {\n width: this.width,\n height: this.height,\n },\n })\n },\n genDot (): VNode {\n const radius = parseInt(this.dotSize, 10) / 2\n const x = convertToUnit(this.dot.x - radius)\n const y = convertToUnit(this.dot.y - radius)\n\n return h('div', {\n class: 'v-color-picker__canvas-dot',\n class: {\n 'v-color-picker__canvas-dot--disabled': this.disabled,\n },\n style: {\n width: convertToUnit(this.dotSize),\n height: convertToUnit(this.dotSize),\n transform: `translate(${x}, ${y})`,\n },\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: 'v-color-picker__canvas',\n style: {\n width: convertToUnit(this.width),\n height: convertToUnit(this.height),\n },\n on: {\n click: this.handleClick,\n mousedown: this.handleMouseDown,\n },\n }, [\n this.genCanvas(),\n this.genDot(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerCanvas.js"}
1
+ {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerCanvas.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VColorPickerCanvas.sass'\n\n// Helpers\nimport { clamp, convertToUnit } from '../../util/helpers'\nimport { fromHSVA, VColorPickerColor, fromRGBA } from './util'\n\n// Types\nimport type { VNode, PropType } from 'vue'\n\nexport default defineComponent({\n name: 'v-color-picker-canvas',\n\n props: {\n color: {\n type: Object as PropType<VColorPickerColor>,\n default: () => fromRGBA({ r: 255, g: 0, b: 0, a: 1 }),\n },\n disabled: Boolean,\n dotSize: {\n type: [Number, String],\n default: 10,\n },\n height: {\n type: [Number, String],\n default: 150,\n },\n width: {\n type: [Number, String],\n default: 300,\n },\n },\n\n emits: ['update:color'],\n\n data () {\n return {\n boundingRect: {\n width: 0,\n height: 0,\n left: 0,\n top: 0,\n } as ClientRect,\n }\n },\n\n computed: {\n dot () {\n if (!this.color) return { x: 0, y: 0 }\n\n return {\n x: this.color.hsva.s * parseInt(String(this.width), 10),\n y: (1 - this.color.hsva.v) * parseInt(String(this.height), 10),\n }\n },\n },\n\n watch: {\n 'color.hue' () {\n this.updateCanvas()\n },\n },\n\n mounted () {\n this.updateCanvas()\n },\n\n methods: {\n updateCanvas () {\n if (!this.color) return\n\n const canvas = this.$refs.canvas as HTMLCanvasElement\n if (!canvas) return\n\n const ctx = canvas.getContext('2d')\n if (!ctx) return\n\n const saturationGradient = ctx.createLinearGradient(0, 0, canvas.width, 0)\n saturationGradient.addColorStop(0, 'hsla(0, 0%, 100%, 1)') // white\n saturationGradient.addColorStop(1, `hsla(${this.color.hue}, 100%, 50%, 1)`)\n ctx.fillStyle = saturationGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n\n const valueGradient = ctx.createLinearGradient(0, 0, 0, canvas.height)\n valueGradient.addColorStop(0, 'hsla(0, 0%, 100%, 0)') // transparent\n valueGradient.addColorStop(1, 'hsla(0, 0%, 0%, 1)') // black\n ctx.fillStyle = valueGradient\n ctx.fillRect(0, 0, canvas.width, canvas.height)\n },\n\n emitColor (x: number, y: number) {\n const { left, top, width, height } = this.boundingRect\n\n this.$emit('update:color', fromHSVA({\n h: this.color!.hue,\n s: clamp(x - left, 0, width) / width,\n v: 1 - clamp(y - top, 0, height) / height,\n a: this.color!.alpha,\n }))\n },\n\n handleClick (e: MouseEvent) {\n if (this.disabled) return\n\n this.boundingRect = this.$el.getBoundingClientRect()\n this.emitColor(e.clientX, e.clientY)\n },\n\n handleMouseMove (e: MouseEvent) {\n if (this.disabled) return\n this.emitColor(e.clientX, e.clientY)\n },\n\n handleMouseUp () {\n window.removeEventListener('mousemove', this.handleMouseMove)\n window.removeEventListener('mouseup', this.handleMouseUp)\n },\n\n handleMouseDown (e: MouseEvent) {\n // To prevent selection while moving cursor\n e.preventDefault()\n\n if (this.disabled) return\n\n this.boundingRect = this.$el.getBoundingClientRect()\n\n window.addEventListener('mousemove', this.handleMouseMove)\n window.addEventListener('mouseup', this.handleMouseUp)\n },\n\n genCanvas (): VNode {\n return h('canvas', {\n ref: 'canvas',\n width: this.width,\n height: this.height,\n })\n },\n\n genDot (): VNode {\n const radius = parseInt(String(this.dotSize), 10) / 2\n const x = convertToUnit(this.dot.x - radius)\n const y = convertToUnit(this.dot.y - radius)\n\n return h('div', {\n class: ['v-color-picker__canvas-dot', {\n 'v-color-picker__canvas-dot--disabled': this.disabled,\n }],\n style: {\n width: convertToUnit(this.dotSize),\n height: convertToUnit(this.dotSize),\n transform: `translate(${x}, ${y})`,\n },\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: 'v-color-picker__canvas',\n style: {\n width: convertToUnit(this.width),\n height: convertToUnit(this.height),\n },\n onClick: this.handleClick,\n onMousedown: this.handleMouseDown,\n }, [\n this.genCanvas(),\n this.genDot(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerCanvas.js"}
@@ -52,10 +52,13 @@ var modes = {
52
52
  };
53
53
  exports.modes = modes;
54
54
 
55
- var _default = (0, _vue.defineComponent)({
55
+ var _default2 = (0, _vue.defineComponent)({
56
56
  name: 'v-color-picker-edit',
57
57
  props: {
58
- color: Object,
58
+ color: {
59
+ type: Object,
60
+ required: true
61
+ },
59
62
  disabled: Boolean,
60
63
  hideAlpha: Boolean,
61
64
  hideModeSwitch: Boolean,
@@ -67,15 +70,15 @@ var _default = (0, _vue.defineComponent)({
67
70
  }
68
71
  }
69
72
  },
73
+ emits: ['update:color', 'update:mode'],
70
74
  data: function data() {
71
75
  return {
72
- modes: modes,
73
76
  internalMode: this.mode
74
77
  };
75
78
  },
76
79
  computed: {
77
80
  currentMode: function currentMode() {
78
- return this.modes[this.internalMode];
81
+ return modes[this.internalMode];
79
82
  }
80
83
  },
81
84
  watch: {
@@ -83,9 +86,6 @@ var _default = (0, _vue.defineComponent)({
83
86
  this.internalMode = _mode;
84
87
  }
85
88
  },
86
- created: function created() {
87
- this.internalMode = this.mode;
88
- },
89
89
  methods: {
90
90
  getValue: function getValue(v, type) {
91
91
  if (type === 'float') return Math.round(v * 100) / 100;else if (type === 'int') return Math.round(v);else return 0;
@@ -94,20 +94,21 @@ var _default = (0, _vue.defineComponent)({
94
94
  if (type === 'float') return parseFloat(v);else if (type === 'int') return parseInt(v, 10) || 0;else return 0;
95
95
  },
96
96
  changeMode: function changeMode() {
97
- var modes = Object.keys(this.modes);
98
- var index = modes.indexOf(this.internalMode);
99
- var newMode = modes[(index + 1) % modes.length];
97
+ var modeKeys = Object.keys(modes);
98
+ var index = modeKeys.indexOf(this.internalMode);
99
+ var newMode = modeKeys[(index + 1) % modeKeys.length];
100
100
  this.internalMode = newMode;
101
101
  this.$emit('update:mode', newMode);
102
102
  },
103
- genInput: function genInput(target, attrs, value, on) {
103
+ genInput: function genInput(target, attrs, value, onChange) {
104
104
  return (0, _vue.h)('div', {
105
105
  class: 'v-color-picker__input'
106
106
  }, [(0, _vue.h)('input', _objectSpread(_objectSpread({
107
107
  key: target
108
108
  }, attrs), {}, {
109
- value: value
110
- }, on)), (0, _vue.h)('span', target.toUpperCase())]);
109
+ value: value,
110
+ onChange: onChange
111
+ })), (0, _vue.h)('span', target.toUpperCase())]);
111
112
  },
112
113
  genInputs: function genInputs() {
113
114
  var _this = this;
@@ -118,12 +119,10 @@ var _default = (0, _vue.defineComponent)({
118
119
  return this.genInput('hex', {
119
120
  maxlength: this.hideAlpha ? 7 : 9,
120
121
  disabled: this.disabled
121
- }, value, {
122
- change: function change(e) {
123
- var el = e.target;
122
+ }, value, function (e) {
123
+ var el = e.target;
124
124
 
125
- _this.$emit('update:color', _this.currentMode.from((0, _colorUtils.parseHex)(el.value)));
126
- }
125
+ _this.$emit('update:color', _this.currentMode.from((0, _colorUtils.parseHex)(el.value)));
127
126
  });
128
127
  } else {
129
128
  var inputs = this.hideAlpha ? this.currentMode.inputs.slice(0, -1) : this.currentMode.inputs;
@@ -140,14 +139,12 @@ var _default = (0, _vue.defineComponent)({
140
139
  max: max,
141
140
  step: type === 'float' ? '0.01' : type === 'int' ? '1' : undefined,
142
141
  disabled: _this.disabled
143
- }, _this.getValue(value[target], type), {
144
- input: function input(e) {
145
- var el = e.target;
142
+ }, _this.getValue(value[target], type), function (e) {
143
+ var el = e.target;
146
144
 
147
- var newVal = _this.parseValue(el.value || '0', type);
145
+ var newVal = _this.parseValue(el.value || '0', type);
148
146
 
149
- _this.$emit('update:color', _this.currentMode.from(Object.assign({}, value, _defineProperty({}, target, newVal)), _this.color.alpha));
150
- }
147
+ _this.$emit('update:color', _this.currentMode.from(Object.assign({}, value, _defineProperty({}, target, newVal)), _this.color.alpha));
151
148
  });
152
149
  });
153
150
  }
@@ -158,7 +155,11 @@ var _default = (0, _vue.defineComponent)({
158
155
  icon: true,
159
156
  disabled: this.disabled,
160
157
  onClick: this.changeMode
161
- }, [(0, _vue.h)(_VIcon.default, '$unfold')]);
158
+ }, {
159
+ default: function _default() {
160
+ return [(0, _vue.h)(_VIcon.default, {}, '$unfold')];
161
+ }
162
+ });
162
163
  }
163
164
  },
164
165
  render: function render() {
@@ -168,5 +169,5 @@ var _default = (0, _vue.defineComponent)({
168
169
  }
169
170
  });
170
171
 
171
- exports.default = _default;
172
+ exports.default = _default2;
172
173
  //# sourceMappingURL=VColorPickerEdit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerEdit.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VColorPickerEdit.sass'\n\n// Components\nimport VBtn from '../VBtn'\nimport VIcon from '../VIcon'\n\n// Helpers\nimport { parseHex } from '../../util/colorUtils'\n\n// Types\nimport { defineComponent, VNode, PropType } from 'vue'\nimport { VColorPickerColor, fromRGBA, fromHexa, fromHSLA } from './util'\n\ntype Input = [string, number, string]\n\nexport type Mode = {\n inputs?: Input[]\n from: Function\n}\n\nexport const modes = {\n rgba: {\n inputs: [\n ['r', 255, 'int'],\n ['g', 255, 'int'],\n ['b', 255, 'int'],\n ['a', 1, 'float'],\n ],\n from: fromRGBA,\n },\n hsla: {\n inputs: [\n ['h', 360, 'int'],\n ['s', 1, 'float'],\n ['l', 1, 'float'],\n ['a', 1, 'float'],\n ],\n from: fromHSLA,\n },\n hexa: {\n from: fromHexa,\n },\n} as { [key: string]: Mode }\n\nexport default defineComponent({\n name: 'v-color-picker-edit',\n\n props: {\n color: Object as PropType<VColorPickerColor>,\n disabled: Boolean,\n hideAlpha: Boolean,\n hideModeSwitch: Boolean,\n mode: {\n type: String,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n },\n\n data () {\n return {\n modes,\n internalMode: this.mode,\n }\n },\n\n computed: {\n currentMode (): Mode {\n return this.modes[this.internalMode]\n },\n },\n\n watch: {\n mode (mode) {\n this.internalMode = mode\n },\n },\n\n created () {\n this.internalMode = this.mode\n },\n\n methods: {\n getValue (v: any, type: string) {\n if (type === 'float') return Math.round(v * 100) / 100\n else if (type === 'int') return Math.round(v)\n else return 0\n },\n parseValue (v: string, type: string) {\n if (type === 'float') return parseFloat(v)\n else if (type === 'int') return parseInt(v, 10) || 0\n else return 0\n },\n changeMode () {\n const modes = Object.keys(this.modes)\n const index = modes.indexOf(this.internalMode)\n const newMode = modes[(index + 1) % modes.length]\n this.internalMode = newMode\n this.$emit('update:mode', newMode)\n },\n genInput (target: string, attrs: any, value: any, on: any): VNode {\n return h('div', {\n class: 'v-color-picker__input',\n }, [\n h('input', {\n key: target,\n ...attrs,\n value,\n ...on,\n }),\n h('span', target.toUpperCase()),\n ])\n },\n genInputs (): VNode[] | VNode {\n if (this.internalMode === 'hexa') {\n const hex = this.color.hexa\n const value = this.hideAlpha && hex.endsWith('FF') ? hex.substr(0, 7) : hex\n return this.genInput(\n 'hex',\n {\n maxlength: this.hideAlpha ? 7 : 9,\n disabled: this.disabled,\n },\n value,\n {\n change: (e: Event) => {\n const el = e.target as HTMLInputElement\n this.$emit('update:color', this.currentMode.from(parseHex(el.value)))\n },\n }\n )\n } else {\n const inputs = this.hideAlpha ? this.currentMode.inputs!.slice(0, -1) : this.currentMode.inputs!\n return inputs.map(([target, max, type]) => {\n const value = this.color[this.internalMode as keyof VColorPickerColor] as any\n return this.genInput(\n target,\n {\n type: 'number',\n min: 0,\n max,\n step: type === 'float' ? '0.01' : type === 'int' ? '1' : undefined,\n disabled: this.disabled,\n },\n this.getValue(value[target], type),\n {\n input: (e: Event) => {\n const el = e.target as HTMLInputElement\n const newVal = this.parseValue(el.value || '0', type)\n\n this.$emit('update:color', this.currentMode.from(\n Object.assign({}, value, { [target]: newVal }),\n this.color.alpha\n ))\n },\n }\n )\n })\n }\n },\n genSwitch (): VNode {\n return h(VBtn, {\n small: true,\n icon: true,\n disabled: this.disabled,\n onClick: this.changeMode,\n }, [\n h(VIcon, '$unfold'),\n ])\n },\n },\n\n render (): VNode {\n return h('div', {\n class: 'v-color-picker__edit',\n }, [\n this.genInputs(),\n !this.hideModeSwitch && this.genSwitch(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerEdit.js"}
1
+ {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerEdit.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VColorPickerEdit.sass'\n\n// Components\nimport VBtn from '../VBtn'\nimport VIcon from '../VIcon'\n\n// Helpers\nimport { parseHex } from '../../util/colorUtils'\n\n// Types\nimport type { VNode, PropType } from 'vue'\nimport { VColorPickerColor, fromRGBA, fromHexa, fromHSLA } from './util'\n\ntype Input = [string, number, string]\n\nexport type Mode = {\n inputs?: Input[]\n from: Function\n}\n\nexport const modes = {\n rgba: {\n inputs: [\n ['r', 255, 'int'],\n ['g', 255, 'int'],\n ['b', 255, 'int'],\n ['a', 1, 'float'],\n ],\n from: fromRGBA,\n },\n hsla: {\n inputs: [\n ['h', 360, 'int'],\n ['s', 1, 'float'],\n ['l', 1, 'float'],\n ['a', 1, 'float'],\n ],\n from: fromHSLA,\n },\n hexa: {\n from: fromHexa,\n },\n} as { [key: string]: Mode }\n\nexport default defineComponent({\n name: 'v-color-picker-edit',\n\n props: {\n color: {\n type: Object as PropType<VColorPickerColor>,\n required: true,\n },\n disabled: Boolean,\n hideAlpha: Boolean,\n hideModeSwitch: Boolean,\n mode: {\n type: String,\n default: 'rgba',\n validator: (v: string) => Object.keys(modes).includes(v),\n },\n },\n\n emits: ['update:color', 'update:mode'],\n\n data () {\n return {\n internalMode: this.mode,\n }\n },\n\n computed: {\n currentMode (): Mode {\n return modes[this.internalMode]\n },\n },\n\n watch: {\n mode (mode: string) {\n this.internalMode = mode\n },\n },\n\n methods: {\n getValue (v: any, type: string) {\n if (type === 'float') return Math.round(v * 100) / 100\n else if (type === 'int') return Math.round(v)\n else return 0\n },\n\n parseValue (v: string, type: string) {\n if (type === 'float') return parseFloat(v)\n else if (type === 'int') return parseInt(v, 10) || 0\n else return 0\n },\n\n changeMode () {\n const modeKeys = Object.keys(modes)\n const index = modeKeys.indexOf(this.internalMode)\n const newMode = modeKeys[(index + 1) % modeKeys.length]\n this.internalMode = newMode\n this.$emit('update:mode', newMode)\n },\n\n genInput (target: string, attrs: any, value: any, onChange: any): VNode {\n return h('div', {\n class: 'v-color-picker__input',\n }, [\n h('input', {\n key: target,\n ...attrs,\n value,\n onChange,\n }),\n h('span', target.toUpperCase()),\n ])\n },\n\n genInputs (): VNode[] | VNode {\n if (this.internalMode === 'hexa') {\n const hex = this.color!.hexa\n const value = this.hideAlpha && hex.endsWith('FF') ? hex.substr(0, 7) : hex\n return this.genInput(\n 'hex',\n {\n maxlength: this.hideAlpha ? 7 : 9,\n disabled: this.disabled,\n },\n value,\n (e: Event) => {\n const el = e.target as HTMLInputElement\n this.$emit('update:color', this.currentMode.from(parseHex(el.value)))\n }\n )\n } else {\n const inputs = this.hideAlpha ? this.currentMode.inputs!.slice(0, -1) : this.currentMode.inputs!\n return inputs.map(([target, max, type]) => {\n const value = this.color![this.internalMode as keyof VColorPickerColor] as any\n return this.genInput(\n target,\n {\n type: 'number',\n min: 0,\n max,\n step: type === 'float' ? '0.01' : type === 'int' ? '1' : undefined,\n disabled: this.disabled,\n },\n this.getValue(value[target], type),\n (e: Event) => {\n const el = e.target as HTMLInputElement\n const newVal = this.parseValue(el.value || '0', type)\n\n this.$emit('update:color', this.currentMode.from(\n Object.assign({}, value, { [target]: newVal }),\n this.color!.alpha\n ))\n }\n )\n })\n }\n },\n\n genSwitch (): VNode {\n return h(VBtn, {\n small: true,\n icon: true,\n disabled: this.disabled,\n onClick: this.changeMode,\n }, {\n default: () => [h(VIcon, {}, '$unfold')]\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: 'v-color-picker__edit',\n }, [\n this.genInputs(),\n !this.hideModeSwitch && this.genSwitch(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerEdit.js"}
@@ -26,70 +26,81 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
26
26
  var _default = (0, _vue.defineComponent)({
27
27
  name: 'v-color-picker-preview',
28
28
  props: {
29
- color: Object,
29
+ color: {
30
+ type: Object,
31
+ required: true
32
+ },
30
33
  disabled: Boolean,
31
34
  hideAlpha: Boolean
32
35
  },
36
+ emits: ['update:color'],
33
37
  methods: {
34
38
  genAlpha: function genAlpha() {
35
39
  var _this = this;
36
40
 
41
+ var _a;
42
+
43
+ if (!this.color) return (0, _vue.h)('div');
37
44
  return this.genTrack({
38
45
  class: 'v-color-picker__alpha',
39
46
  thumbColor: 'grey lighten-2',
40
47
  hideDetails: true,
41
- value: this.color.alpha,
48
+ modelValue: this.color.alpha,
42
49
  step: 0,
43
50
  min: 0,
44
51
  max: 1,
45
52
  style: {
46
- backgroundImage: this.disabled ? undefined : "linear-gradient(to ".concat(this.$vuetify.rtl ? 'left' : 'right', ", transparent, ").concat((0, _colorUtils.RGBtoCSS)(this.color.rgba), ")")
53
+ backgroundImage: this.disabled ? undefined : "linear-gradient(to ".concat(((_a = this.$vuetify) === null || _a === void 0 ? void 0 : _a.rtl) ? 'left' : 'right', ", transparent, ").concat((0, _colorUtils.RGBtoCSS)(this.color.rgba), ")")
47
54
  },
48
- onInput: function onInput(val) {
49
- return _this.color.alpha !== val && _this.$emit('update:color', (0, _util.fromHSVA)(_objectSpread(_objectSpread({}, _this.color.hsva), {}, {
50
- a: val
51
- })));
55
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
56
+ if (_this.color && _this.color.alpha !== val) {
57
+ _this.$emit('update:color', (0, _util.fromHSVA)(_objectSpread(_objectSpread({}, _this.color.hsva), {}, {
58
+ a: val
59
+ })));
60
+ }
52
61
  }
53
62
  });
54
63
  },
55
- genSliders: function genSliders() {
56
- return (0, _vue.h)('div', {
57
- class: 'v-color-picker__sliders'
58
- }, [this.genHue(), !this.hideAlpha && this.genAlpha()]);
59
- },
60
- genDot: function genDot() {
61
- return (0, _vue.h)('div', {
62
- class: 'v-color-picker__dot'
63
- }, [(0, _vue.h)('div', {
64
- style: {
65
- background: (0, _colorUtils.RGBAtoCSS)(this.color.rgba)
66
- }
67
- })]);
68
- },
69
64
  genHue: function genHue() {
70
65
  var _this2 = this;
71
66
 
67
+ if (!this.color) return (0, _vue.h)('div');
72
68
  return this.genTrack({
73
69
  class: 'v-color-picker__hue',
74
70
  thumbColor: 'grey lighten-2',
75
71
  hideDetails: true,
76
- value: this.color.hue,
72
+ modelValue: this.color.hue,
77
73
  step: 0,
78
74
  min: 0,
79
75
  max: 360,
80
- onInput: function onInput(val) {
81
- return _this2.color.hue !== val && _this2.$emit('update:color', (0, _util.fromHSVA)(_objectSpread(_objectSpread({}, _this2.color.hsva), {}, {
82
- h: val
83
- })));
76
+ 'onUpdate:modelValue': function onUpdateModelValue(val) {
77
+ if (_this2.color && _this2.color.hue !== val) {
78
+ _this2.$emit('update:color', (0, _util.fromHSVA)(_objectSpread(_objectSpread({}, _this2.color.hsva), {}, {
79
+ h: val
80
+ })));
81
+ }
84
82
  }
85
83
  });
86
84
  },
87
85
  genTrack: function genTrack(options) {
88
- return (0, _vue.h)(_VSlider.default, _objectSpread(_objectSpread({
89
- class: 'v-color-picker__track'
90
- }, options), {}, {
86
+ return (0, _vue.h)(_VSlider.default, _objectSpread({
87
+ class: 'v-color-picker__track',
91
88
  disabled: this.disabled
92
- }, options.props));
89
+ }, options));
90
+ },
91
+ genSliders: function genSliders() {
92
+ return (0, _vue.h)('div', {
93
+ class: 'v-color-picker__sliders'
94
+ }, [this.genHue(), !this.hideAlpha && this.genAlpha()]);
95
+ },
96
+ genDot: function genDot() {
97
+ return (0, _vue.h)('div', {
98
+ class: 'v-color-picker__dot'
99
+ }, [(0, _vue.h)('div', {
100
+ style: {
101
+ background: this.color ? (0, _colorUtils.RGBAtoCSS)(this.color.rgba) : 'transparent'
102
+ }
103
+ })]);
93
104
  }
94
105
  },
95
106
  render: function render() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerPreview.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VColorPickerPreview.sass'\n\n// Components\nimport VSlider from '../VSlider/VSlider'\n\n// Utilities\nimport { RGBtoCSS, RGBAtoCSS } from '../../util/colorUtils'\n\n// Types\nimport { defineComponent, VNode, VNodeData, PropType } from 'vue'\nimport { VColorPickerColor, fromHSVA } from './util'\n\nexport default defineComponent({\n name: 'v-color-picker-preview',\n\n props: {\n color: Object as PropType<VColorPickerColor>,\n disabled: Boolean,\n hideAlpha: Boolean,\n },\n\n methods: {\n genAlpha (): VNode {\n return this.genTrack({\n class: 'v-color-picker__alpha',\n thumbColor: 'grey lighten-2',\n hideDetails: true,\n value: this.color.alpha,\n step: 0,\n min: 0,\n max: 1,\n style: {\n backgroundImage: this.disabled\n ? undefined\n : `linear-gradient(to ${this.$vuetify.rtl ? 'left' : 'right'}, transparent, ${RGBtoCSS(this.color.rgba)})`,\n },\n onInput: (val: number) => this.color.alpha !== val && this.$emit('update:color', fromHSVA({ ...this.color.hsva, a: val })),\n })\n },\n genSliders (): VNode {\n return h('div', {\n class: 'v-color-picker__sliders',\n }, [\n this.genHue(),\n !this.hideAlpha && this.genAlpha(),\n ])\n },\n genDot (): VNode {\n return h('div', {\n class: 'v-color-picker__dot',\n }, [\n h('div', {\n style: {\n background: RGBAtoCSS(this.color.rgba),\n },\n }),\n ])\n },\n genHue (): VNode {\n return this.genTrack({\n class: 'v-color-picker__hue',\n thumbColor: 'grey lighten-2',\n hideDetails: true,\n value: this.color.hue,\n step: 0,\n min: 0,\n max: 360,\n onInput: (val: number) => this.color.hue !== val && this.$emit('update:color', fromHSVA({ ...this.color.hsva, h: val })),\n })\n },\n genTrack (options: VNodeData): VNode {\n return h(VSlider, {\n class: 'v-color-picker__track',\n ...options,\n disabled: this.disabled,\n ...options.props\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-color-picker__preview', {\n 'v-color-picker__preview--hide-alpha': this.hideAlpha,\n }],\n }, [\n this.genDot(),\n this.genSliders(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerPreview.js"}
1
+ {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerPreview.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VColorPickerPreview.sass'\n\n// Components\nimport VSlider from '../VSlider/VSlider'\n\n// Utilities\nimport { RGBtoCSS, RGBAtoCSS } from '../../util/colorUtils'\n\n// Types\nimport type { VNode, PropType } from 'vue'\nimport type { VColorPickerColor } from './util'\nimport { fromHSVA } from './util'\n\nexport default defineComponent({\n name: 'v-color-picker-preview',\n\n props: {\n color: {\n type: Object as PropType<VColorPickerColor>,\n required: true,\n },\n disabled: Boolean,\n hideAlpha: Boolean,\n },\n\n emits: ['update:color'],\n\n methods: {\n genAlpha (): VNode {\n if (!this.color) return h('div')\n return this.genTrack({\n class: 'v-color-picker__alpha',\n thumbColor: 'grey lighten-2',\n hideDetails: true,\n modelValue: this.color.alpha,\n step: 0,\n min: 0,\n max: 1,\n style: {\n backgroundImage: this.disabled\n ? undefined\n : `linear-gradient(to ${this.$vuetify?.rtl ? 'left' : 'right'}, transparent, ${RGBtoCSS(this.color.rgba)})`,\n },\n 'onUpdate:modelValue': (val: number) => {\n if (this.color && this.color.alpha !== val) {\n this.$emit('update:color', fromHSVA({ ...this.color.hsva, a: val }))\n }\n },\n })\n },\n\n genHue (): VNode {\n if (!this.color) return h('div')\n return this.genTrack({\n class: 'v-color-picker__hue',\n thumbColor: 'grey lighten-2',\n hideDetails: true,\n modelValue: this.color.hue,\n step: 0,\n min: 0,\n max: 360,\n 'onUpdate:modelValue': (val: number) => {\n if (this.color && this.color.hue !== val) {\n this.$emit('update:color', fromHSVA({ ...this.color.hsva, h: val }))\n }\n },\n })\n },\n\n genTrack (options: Record<string, any>): VNode {\n return h(VSlider, {\n class: 'v-color-picker__track',\n disabled: this.disabled,\n ...options,\n })\n },\n\n genSliders (): VNode {\n return h('div', {\n class: 'v-color-picker__sliders',\n }, [\n this.genHue(),\n !this.hideAlpha && this.genAlpha(),\n ])\n },\n\n genDot (): VNode {\n return h('div', {\n class: 'v-color-picker__dot',\n }, [\n h('div', {\n style: {\n background: this.color ? RGBAtoCSS(this.color.rgba) : 'transparent',\n },\n }),\n ])\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-color-picker__preview', {\n 'v-color-picker__preview--hide-alpha': this.hideAlpha,\n }],\n }, [\n this.genDot(),\n this.genSliders(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerPreview.js"}
@@ -17,17 +17,16 @@ var _util = require("./util");
17
17
 
18
18
  var _helpers = require("../../util/helpers");
19
19
 
20
- var _mixins = _interopRequireDefault(require("../../util/mixins"));
20
+ var _colorUtils = require("../../util/colorUtils");
21
21
 
22
22
  var _themeable = _interopRequireDefault(require("../../mixins/themeable"));
23
23
 
24
- var _colorUtils = require("../../util/colorUtils");
25
-
26
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
25
 
28
26
  // Styles
29
27
  // Components
30
28
  // Helpers
29
+ // Mixins
31
30
  function parseDefaultColors(colors) {
32
31
  return Object.keys(colors).map(function (key) {
33
32
  var color = colors[key];
@@ -38,8 +37,9 @@ function parseDefaultColors(colors) {
38
37
  var white = (0, _util.fromHex)('#FFFFFF').rgba;
39
38
  var black = (0, _util.fromHex)('#000000').rgba;
40
39
 
41
- var _default2 = (0, _mixins.default)(_themeable.default).extend({
40
+ var _default2 = (0, _vue.defineComponent)({
42
41
  name: 'v-color-picker-swatches',
42
+ mixins: [_themeable.default],
43
43
  props: {
44
44
  swatches: {
45
45
  type: Array,
@@ -48,10 +48,14 @@ var _default2 = (0, _mixins.default)(_themeable.default).extend({
48
48
  }
49
49
  },
50
50
  disabled: Boolean,
51
- color: Object,
51
+ color: {
52
+ type: Object,
53
+ required: true
54
+ },
52
55
  maxWidth: [Number, String],
53
56
  maxHeight: [Number, String]
54
57
  },
58
+ emits: ['update:color'],
55
59
  methods: {
56
60
  genColor: function genColor(color) {
57
61
  var _this = this;
@@ -67,10 +71,9 @@ var _default2 = (0, _mixins.default)(_themeable.default).extend({
67
71
  }, '$success')]);
68
72
  return (0, _vue.h)('div', {
69
73
  class: 'v-color-picker__color',
70
- on: {
71
- // TODO: Less hacky way of catching transparent
72
- click: function click() {
73
- return _this.disabled || _this.$emit('update:color', (0, _util.fromHex)(color === 'transparent' ? '#00000000' : color));
74
+ onClick: function onClick() {
75
+ if (!_this.disabled) {
76
+ _this.$emit('update:color', (0, _util.fromHex)(color === 'transparent' ? '#00000000' : color));
74
77
  }
75
78
  }
76
79
  }, [content]);
@@ -88,7 +91,7 @@ var _default2 = (0, _mixins.default)(_themeable.default).extend({
88
91
  },
89
92
  render: function render() {
90
93
  return (0, _vue.h)('div', {
91
- class: 'v-color-picker__swatches',
94
+ class: ['v-color-picker__swatches', this.themeClasses],
92
95
  style: {
93
96
  maxWidth: (0, _helpers.convertToUnit)(this.maxWidth),
94
97
  maxHeight: (0, _helpers.convertToUnit)(this.maxHeight)
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerSwatches.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VColorPickerSwatches.sass'\n\n// Components\nimport VIcon from '../VIcon'\n\n// Helpers\nimport colors from '../../util/colors'\nimport { VColorPickerColor, fromHex, parseColor } from './util'\nimport { convertToUnit, deepEqual } from '../../util/helpers'\nimport mixins from '../../util/mixins'\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport { VNode, PropType } from 'vue'\nimport { contrastRatio } from '../../util/colorUtils'\n\nfunction parseDefaultColors (colors: Record<string, Record<string, string>>) {\n return Object.keys(colors).map(key => {\n const color = colors[key]\n return color.base ? [\n color.base,\n color.darken4,\n color.darken3,\n color.darken2,\n color.darken1,\n color.lighten1,\n color.lighten2,\n color.lighten3,\n color.lighten4,\n color.lighten5,\n ] : [\n color.black,\n color.white,\n color.transparent,\n ]\n })\n}\n\nconst white = fromHex('#FFFFFF').rgba\nconst black = fromHex('#000000').rgba\n\nexport default mixins(Themeable).extend({\n name: 'v-color-picker-swatches',\n\n props: {\n swatches: {\n type: Array as PropType<string[][]>,\n default: () => parseDefaultColors(colors),\n },\n disabled: Boolean,\n color: Object as PropType<VColorPickerColor>,\n maxWidth: [Number, String],\n maxHeight: [Number, String],\n },\n\n methods: {\n genColor (color: string) {\n const content = h('div', {\n style: {\n background: color,\n },\n }, [\n deepEqual(this.color, parseColor(color, null)) && h(VIcon, {\n small: true,\n dark: contrastRatio(this.color.rgba, white) > 2 && this.color.alpha > 0.5,\n light: contrastRatio(this.color.rgba, black) > 2 && this.color.alpha > 0.5\n }, '$success'),\n ])\n\n return h('div', {\n class: 'v-color-picker__color',\n on: {\n // TODO: Less hacky way of catching transparent\n click: () => this.disabled || this.$emit('update:color', fromHex(color === 'transparent' ? '#00000000' : color)),\n },\n }, [content])\n },\n genSwatches () {\n return this.swatches.map(swatch => {\n const colors = swatch.map(this.genColor)\n\n return h('div', {\n class: 'v-color-picker__swatch',\n }, colors)\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: 'v-color-picker__swatches',\n style: {\n maxWidth: convertToUnit(this.maxWidth),\n maxHeight: convertToUnit(this.maxHeight),\n },\n }, [\n h('div', this.genSwatches()),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerSwatches.js"}
1
+ {"version":3,"sources":["../../../src/components/VColorPicker/VColorPickerSwatches.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAGA;;AAGA;;AAGA;;AACA;;AACA;;AACA;;AAGA;;;;AAbA;AAGA;AAGA;AAMA;AAMA,SAAS,kBAAT,CAA6B,MAA7B,EAA2E;AACzE,SAAO,MAAM,CAAC,IAAP,CAAY,MAAZ,EAAoB,GAApB,CAAwB,UAAA,GAAG,EAAG;AACnC,QAAM,KAAK,GAAG,MAAM,CAAC,GAAD,CAApB;AACA,WAAO,KAAK,CAAC,IAAN,GAAa,CAClB,KAAK,CAAC,IADY,EAElB,KAAK,CAAC,OAFY,EAGlB,KAAK,CAAC,OAHY,EAIlB,KAAK,CAAC,OAJY,EAKlB,KAAK,CAAC,OALY,EAMlB,KAAK,CAAC,QANY,EAOlB,KAAK,CAAC,QAPY,EAQlB,KAAK,CAAC,QARY,EASlB,KAAK,CAAC,QATY,EAUlB,KAAK,CAAC,QAVY,CAAb,GAWH,CACF,KAAK,CAAC,KADJ,EAEF,KAAK,CAAC,KAFJ,EAGF,KAAK,CAAC,WAHJ,CAXJ;AAgBD,GAlBM,CAAP;AAmBD;;AAED,IAAM,KAAK,GAAG,mBAAQ,SAAR,EAAmB,IAAjC;AACA,IAAM,KAAK,GAAG,mBAAQ,SAAR,EAAmB,IAAjC;;gBAEe,0BAAgB;AAC7B,EAAA,IAAI,EAAE,yBADuB;AAG7B,EAAA,MAAM,EAAE,CAAC,kBAAD,CAHqB;AAK7B,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE;AACR,MAAA,IAAI,EAAE,KADE;AAER,MAAA,OAAO,EAAE;AAAA,eAAM,kBAAkB,CAAC,eAAD,CAAxB;AAAA;AAFD,KADL;AAKL,IAAA,QAAQ,EAAE,OALL;AAML,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,MADD;AAEL,MAAA,QAAQ,EAAE;AAFL,KANF;AAUL,IAAA,QAAQ,EAAE,CAAC,MAAD,EAAS,MAAT,CAVL;AAWL,IAAA,SAAS,EAAE,CAAC,MAAD,EAAS,MAAT;AAXN,GALsB;AAmB7B,EAAA,KAAK,EAAE,CAAC,cAAD,CAnBsB;AAqB7B,EAAA,OAAO,EAAE;AACP,IAAA,QADO,oBACG,KADH,EACgB;AAAA;;AACrB,UAAM,OAAO,GAAG,YAAE,KAAF,EAAS;AACvB,QAAA,KAAK,EAAE;AACL,UAAA,UAAU,EAAE;AADP;AADgB,OAAT,EAIb,CACD,wBAAU,KAAK,KAAf,EAAsB,sBAAW,KAAX,EAAkB,IAAlB,CAAtB,KAAkD,YAAE,cAAF,EAAS;AACzD,QAAA,KAAK,EAAE,IADkD;AAEzD,QAAA,IAAI,EAAE,+BAAc,KAAK,KAAL,CAAW,IAAzB,EAA+B,KAA/B,IAAwC,CAAxC,IAA6C,KAAK,KAAL,CAAW,KAAX,GAAmB,GAFb;AAGzD,QAAA,KAAK,EAAE,+BAAc,KAAK,KAAL,CAAW,IAAzB,EAA+B,KAA/B,IAAwC,CAAxC,IAA6C,KAAK,KAAL,CAAW,KAAX,GAAmB;AAHd,OAAT,EAI/C,UAJ+C,CADjD,CAJa,CAAhB;AAYA,aAAO,YAAE,KAAF,EAAS;AACd,QAAA,KAAK,EAAE,uBADO;AAEd,QAAA,OAAO,EAAE,mBAAK;AACZ,cAAI,CAAC,KAAI,CAAC,QAAV,EAAoB;AAClB,YAAA,KAAI,CAAC,KAAL,CAAW,cAAX,EAA2B,mBAAQ,KAAK,KAAK,aAAV,GAA0B,WAA1B,GAAwC,KAAhD,CAA3B;AACD;AACF;AANa,OAAT,EAOJ,CAAC,OAAD,CAPI,CAAP;AAQD,KAtBM;AAwBP,IAAA,WAxBO,yBAwBI;AAAA;;AACT,aAAO,KAAK,QAAL,CAAc,GAAd,CAAkB,UAAA,MAAM,EAAG;AAChC,YAAM,MAAM,GAAG,MAAM,CAAC,GAAP,CAAW,MAAI,CAAC,QAAhB,CAAf;AAEA,eAAO,YAAE,KAAF,EAAS;AACd,UAAA,KAAK,EAAE;AADO,SAAT,EAEJ,MAFI,CAAP;AAGD,OANM,CAAP;AAOD;AAhCM,GArBoB;AAwD7B,EAAA,MAxD6B,oBAwDvB;AACJ,WAAO,YAAE,KAAF,EAAS;AACd,MAAA,KAAK,EAAE,CAAC,0BAAD,EAA6B,KAAK,YAAlC,CADO;AAEd,MAAA,KAAK,EAAE;AACL,QAAA,QAAQ,EAAE,4BAAc,KAAK,QAAnB,CADL;AAEL,QAAA,SAAS,EAAE,4BAAc,KAAK,SAAnB;AAFN;AAFO,KAAT,EAMJ,CACD,YAAE,KAAF,EAAS,KAAK,WAAL,EAAT,CADC,CANI,CAAP;AASD;AAlE4B,CAAhB,C","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VColorPickerSwatches.sass'\n\n// Components\nimport VIcon from '../VIcon'\n\n// Helpers\nimport colors from '../../util/colors'\nimport { VColorPickerColor, fromHex, parseColor } from './util'\nimport { convertToUnit, deepEqual } from '../../util/helpers'\nimport { contrastRatio } from '../../util/colorUtils'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport type { VNode, PropType } from 'vue'\n\nfunction parseDefaultColors (colors: Record<string, Record<string, string>>) {\n return Object.keys(colors).map(key => {\n const color = colors[key]\n return color.base ? [\n color.base,\n color.darken4,\n color.darken3,\n color.darken2,\n color.darken1,\n color.lighten1,\n color.lighten2,\n color.lighten3,\n color.lighten4,\n color.lighten5,\n ] : [\n color.black,\n color.white,\n color.transparent,\n ]\n })\n}\n\nconst white = fromHex('#FFFFFF').rgba\nconst black = fromHex('#000000').rgba\n\nexport default defineComponent({\n name: 'v-color-picker-swatches',\n\n mixins: [Themeable],\n\n props: {\n swatches: {\n type: Array as PropType<string[][]>,\n default: () => parseDefaultColors(colors),\n },\n disabled: Boolean,\n color: {\n type: Object as PropType<VColorPickerColor>,\n required: true,\n },\n maxWidth: [Number, String],\n maxHeight: [Number, String],\n },\n\n emits: ['update:color'],\n\n methods: {\n genColor (color: string): VNode {\n const content = h('div', {\n style: {\n background: color,\n },\n }, [\n deepEqual(this.color, parseColor(color, null)) && h(VIcon, {\n small: true,\n dark: contrastRatio(this.color.rgba, white) > 2 && this.color.alpha > 0.5,\n light: contrastRatio(this.color.rgba, black) > 2 && this.color.alpha > 0.5\n }, '$success'),\n ])\n\n return h('div', {\n class: 'v-color-picker__color',\n onClick: () => {\n if (!this.disabled) {\n this.$emit('update:color', fromHex(color === 'transparent' ? '#00000000' : color))\n }\n },\n }, [content])\n },\n\n genSwatches (): VNode[] {\n return this.swatches.map(swatch => {\n const colors = swatch.map(this.genColor)\n\n return h('div', {\n class: 'v-color-picker__swatch',\n }, colors)\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-color-picker__swatches', this.themeClasses],\n style: {\n maxWidth: convertToUnit(this.maxWidth),\n maxHeight: convertToUnit(this.maxHeight),\n },\n }, [\n h('div', this.genSwatches()),\n ])\n },\n})\n"],"sourceRoot":"","file":"VColorPickerSwatches.js"}