@dimailn/vuetify 2.7.2-alpha26 → 2.7.2-alpha27

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 (444) hide show
  1. package/dist/vuetify.js +1109 -1021
  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 +1 -0
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAppBar/VAppBar.js +17 -6
  8. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  9. package/es5/components/VBadge/VBadge.js +1 -0
  10. package/es5/components/VBadge/VBadge.js.map +1 -1
  11. package/es5/components/VBanner/VBanner.js +11 -12
  12. package/es5/components/VBanner/VBanner.js.map +1 -1
  13. package/es5/components/VBottomNavigation/VBottomNavigation.js +8 -7
  14. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  15. package/es5/components/VBtn/VBtn.js +2 -2
  16. package/es5/components/VBtn/VBtn.js.map +1 -1
  17. package/es5/components/VCalendar/VCalendar.js +27 -29
  18. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  19. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  20. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  21. package/es5/components/VCalendar/VCalendarDaily.js +43 -60
  22. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  23. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  24. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  25. package/es5/components/VCalendar/VCalendarWeekly.js +26 -35
  26. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  27. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  28. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  29. package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
  30. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  31. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  32. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  33. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  34. package/es5/components/VCarousel/VCarousel.js +10 -9
  35. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  36. package/es5/components/VCheckbox/VCheckbox.js +31 -2
  37. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  38. package/es5/components/VCheckbox/VSimpleCheckbox.js +0 -3
  39. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  40. package/es5/components/VChip/VChip.js +14 -6
  41. package/es5/components/VChip/VChip.js.map +1 -1
  42. package/es5/components/VData/VData.js +1 -0
  43. package/es5/components/VData/VData.js.map +1 -1
  44. package/es5/components/VDataIterator/VDataFooter.js +1 -0
  45. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  46. package/es5/components/VDataIterator/VDataIterator.js +1 -0
  47. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  48. package/es5/components/VDataTable/VDataTable.js +1 -6
  49. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  50. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  51. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  52. package/es5/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  53. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  54. package/es5/components/VDataTable/VEditDialog.js +19 -18
  55. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  56. package/es5/components/VDataTable/mixins/header.js +0 -6
  57. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  58. package/es5/components/VDatePicker/VDatePicker.js +13 -18
  59. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  60. package/es5/components/VDatePicker/VDatePickerHeader.js +48 -26
  61. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  62. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  63. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  64. package/es5/components/VDatePicker/VDatePickerTitle.js +4 -3
  65. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  66. package/es5/components/VDatePicker/VDatePickerYears.js +11 -12
  67. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  68. package/es5/components/VDatePicker/mixins/date-picker-table.js +16 -13
  69. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  70. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  71. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  72. package/es5/components/VDialog/VDialog.js +1 -0
  73. package/es5/components/VDialog/VDialog.js.map +1 -1
  74. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  75. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  76. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -10
  77. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  78. package/es5/components/VFileInput/VFileInput.js +1 -0
  79. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  80. package/es5/components/VForm/VForm.js +1 -0
  81. package/es5/components/VForm/VForm.js.map +1 -1
  82. package/es5/components/VHover/VHover.js +1 -0
  83. package/es5/components/VHover/VHover.js.map +1 -1
  84. package/es5/components/VImg/VImg.js +3 -5
  85. package/es5/components/VImg/VImg.js.map +1 -1
  86. package/es5/components/VInput/VInput.js +1 -0
  87. package/es5/components/VInput/VInput.js.map +1 -1
  88. package/es5/components/VItemGroup/VItem.js +2 -1
  89. package/es5/components/VItemGroup/VItem.js.map +1 -1
  90. package/es5/components/VItemGroup/VItemGroup.js +5 -1
  91. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  92. package/es5/components/VLazy/VLazy.js +8 -15
  93. package/es5/components/VLazy/VLazy.js.map +1 -1
  94. package/es5/components/VList/VListGroup.js +3 -11
  95. package/es5/components/VList/VListGroup.js.map +1 -1
  96. package/es5/components/VList/VListItem.js +26 -12
  97. package/es5/components/VList/VListItem.js.map +1 -1
  98. package/es5/components/VList/VListItemAction.js +23 -9
  99. package/es5/components/VList/VListItemAction.js.map +1 -1
  100. package/es5/components/VMenu/VMenu.js +1 -0
  101. package/es5/components/VMenu/VMenu.js.map +1 -1
  102. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +1 -7
  103. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  104. package/es5/components/VOtpInput/VOtpInput.js +1 -5
  105. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  106. package/es5/components/VOverflowBtn/VOverflowBtn.js +1 -0
  107. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  108. package/es5/components/VOverlay/VOverlay.js +1 -0
  109. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  110. package/es5/components/VPagination/VPagination.js +1 -3
  111. package/es5/components/VPagination/VPagination.js.map +1 -1
  112. package/es5/components/VPicker/VPicker.js +2 -3
  113. package/es5/components/VPicker/VPicker.js.map +1 -1
  114. package/es5/components/VProgressCircular/VProgressCircular.js +1 -10
  115. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  116. package/es5/components/VProgressLinear/VProgressLinear.js +4 -12
  117. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  118. package/es5/components/VRadioGroup/VRadio.js +1 -0
  119. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  120. package/es5/components/VSelect/VSelect.js +111 -64
  121. package/es5/components/VSelect/VSelect.js.map +1 -1
  122. package/es5/components/VSelect/VSelectList.js +13 -17
  123. package/es5/components/VSelect/VSelectList.js.map +1 -1
  124. package/es5/components/VSlideGroup/VSlideGroup.js +1 -4
  125. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  126. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  127. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  128. package/es5/components/VSlider/VSlider.js +0 -3
  129. package/es5/components/VSlider/VSlider.js.map +1 -1
  130. package/es5/components/VSnackbar/VSnackbar.js +1 -0
  131. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  132. package/es5/components/VSparkline/VSparkline.js +48 -68
  133. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  134. package/es5/components/VSpeedDial/VSpeedDial.js +4 -10
  135. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  136. package/es5/components/VStepper/VStepper.js +1 -0
  137. package/es5/components/VStepper/VStepper.js.map +1 -1
  138. package/es5/components/VStepper/VStepperStep.js +11 -19
  139. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  140. package/es5/components/VSwitch/VSwitch.js +1 -3
  141. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  142. package/es5/components/VTabs/VTab.js +1 -0
  143. package/es5/components/VTabs/VTab.js.map +1 -1
  144. package/es5/components/VTabs/VTabs.js +11 -4
  145. package/es5/components/VTabs/VTabs.js.map +1 -1
  146. package/es5/components/VTabs/VTabsItems.js +1 -0
  147. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  148. package/es5/components/VTextField/VTextField.js +31 -27
  149. package/es5/components/VTextField/VTextField.js.map +1 -1
  150. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  151. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  152. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  153. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  154. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  155. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  156. package/es5/components/VToolbar/VToolbar.js +1 -3
  157. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  158. package/es5/components/VTooltip/VTooltip.js +6 -3
  159. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  160. package/es5/components/VVirtualScroll/VVirtualScroll.js +0 -3
  161. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  162. package/es5/components/VWindow/VWindow.js +0 -3
  163. package/es5/components/VWindow/VWindow.js.map +1 -1
  164. package/es5/components/VWindow/VWindowItem.js +1 -5
  165. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  166. package/es5/framework.js +1 -1
  167. package/es5/mixins/detachable/index.js +9 -5
  168. package/es5/mixins/detachable/index.js.map +1 -1
  169. package/lib/components/VAlert/VAlert.js +1 -0
  170. package/lib/components/VAlert/VAlert.js.map +1 -1
  171. package/lib/components/VAppBar/VAppBar.js +17 -6
  172. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  173. package/lib/components/VBadge/VBadge.js +1 -0
  174. package/lib/components/VBadge/VBadge.js.map +1 -1
  175. package/lib/components/VBanner/VBanner.js +7 -11
  176. package/lib/components/VBanner/VBanner.js.map +1 -1
  177. package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -7
  178. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  179. package/lib/components/VBtn/VBtn.js +2 -2
  180. package/lib/components/VBtn/VBtn.js.map +1 -1
  181. package/lib/components/VCalendar/VCalendar.js +26 -31
  182. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  183. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  184. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  185. package/lib/components/VCalendar/VCalendarDaily.js +21 -33
  186. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  187. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  188. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  189. package/lib/components/VCalendar/VCalendarWeekly.js +17 -30
  190. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  191. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  192. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  193. package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
  194. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  195. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  196. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  197. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  198. package/lib/components/VCarousel/VCarousel.js +12 -11
  199. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  200. package/lib/components/VCheckbox/VCheckbox.js +14 -1
  201. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  202. package/lib/components/VCheckbox/VSimpleCheckbox.js +0 -3
  203. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  204. package/lib/components/VChip/VChip.js +14 -6
  205. package/lib/components/VChip/VChip.js.map +1 -1
  206. package/lib/components/VData/VData.js +1 -0
  207. package/lib/components/VData/VData.js.map +1 -1
  208. package/lib/components/VDataIterator/VDataFooter.js +1 -0
  209. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  210. package/lib/components/VDataIterator/VDataIterator.js +1 -0
  211. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  212. package/lib/components/VDataTable/VDataTable.js +2 -7
  213. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  214. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  215. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  216. package/lib/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  217. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  218. package/lib/components/VDataTable/VEditDialog.js +15 -14
  219. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  220. package/lib/components/VDataTable/mixins/header.js +0 -5
  221. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  222. package/lib/components/VDatePicker/VDatePicker.js +11 -16
  223. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  224. package/lib/components/VDatePicker/VDatePickerHeader.js +33 -20
  225. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  226. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  227. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  228. package/lib/components/VDatePicker/VDatePickerTitle.js +4 -3
  229. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  230. package/lib/components/VDatePicker/VDatePickerYears.js +8 -9
  231. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  232. package/lib/components/VDatePicker/mixins/date-picker-table.js +17 -13
  233. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  234. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  235. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  236. package/lib/components/VDialog/VDialog.js +1 -0
  237. package/lib/components/VDialog/VDialog.js.map +1 -1
  238. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  239. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  240. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -4
  241. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  242. package/lib/components/VFileInput/VFileInput.js +1 -0
  243. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  244. package/lib/components/VForm/VForm.js +1 -0
  245. package/lib/components/VForm/VForm.js.map +1 -1
  246. package/lib/components/VHover/VHover.js +1 -0
  247. package/lib/components/VHover/VHover.js.map +1 -1
  248. package/lib/components/VImg/VImg.js +2 -6
  249. package/lib/components/VImg/VImg.js.map +1 -1
  250. package/lib/components/VInput/VInput.js +1 -0
  251. package/lib/components/VInput/VInput.js.map +1 -1
  252. package/lib/components/VItemGroup/VItem.js +2 -1
  253. package/lib/components/VItemGroup/VItem.js.map +1 -1
  254. package/lib/components/VItemGroup/VItemGroup.js +6 -1
  255. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  256. package/lib/components/VLazy/VLazy.js +8 -15
  257. package/lib/components/VLazy/VLazy.js.map +1 -1
  258. package/lib/components/VList/VListGroup.js +3 -5
  259. package/lib/components/VList/VListGroup.js.map +1 -1
  260. package/lib/components/VList/VListItem.js +25 -14
  261. package/lib/components/VList/VListItem.js.map +1 -1
  262. package/lib/components/VList/VListItemAction.js +15 -9
  263. package/lib/components/VList/VListItemAction.js.map +1 -1
  264. package/lib/components/VMenu/VMenu.js +1 -0
  265. package/lib/components/VMenu/VMenu.js.map +1 -1
  266. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +1 -6
  267. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  268. package/lib/components/VOtpInput/VOtpInput.js +2 -6
  269. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  270. package/lib/components/VOverflowBtn/VOverflowBtn.js +1 -0
  271. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  272. package/lib/components/VOverlay/VOverlay.js +1 -0
  273. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  274. package/lib/components/VPagination/VPagination.js +1 -3
  275. package/lib/components/VPagination/VPagination.js.map +1 -1
  276. package/lib/components/VPicker/VPicker.js +3 -3
  277. package/lib/components/VPicker/VPicker.js.map +1 -1
  278. package/lib/components/VProgressCircular/VProgressCircular.js +1 -4
  279. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  280. package/lib/components/VProgressLinear/VProgressLinear.js +4 -6
  281. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  282. package/lib/components/VRadioGroup/VRadio.js +1 -0
  283. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  284. package/lib/components/VSelect/VSelect.js +64 -19
  285. package/lib/components/VSelect/VSelect.js.map +1 -1
  286. package/lib/components/VSelect/VSelectList.js +13 -15
  287. package/lib/components/VSelect/VSelectList.js.map +1 -1
  288. package/lib/components/VSlideGroup/VSlideGroup.js +1 -4
  289. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  290. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  291. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  292. package/lib/components/VSlider/VSlider.js +0 -3
  293. package/lib/components/VSlider/VSlider.js.map +1 -1
  294. package/lib/components/VSnackbar/VSnackbar.js +1 -0
  295. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  296. package/lib/components/VSparkline/VSparkline.js +48 -67
  297. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  298. package/lib/components/VSpeedDial/VSpeedDial.js +3 -9
  299. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  300. package/lib/components/VStepper/VStepper.js +1 -0
  301. package/lib/components/VStepper/VStepper.js.map +1 -1
  302. package/lib/components/VStepper/VStepperStep.js +7 -18
  303. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  304. package/lib/components/VSwitch/VSwitch.js +1 -3
  305. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  306. package/lib/components/VTabs/VTab.js +1 -0
  307. package/lib/components/VTabs/VTab.js.map +1 -1
  308. package/lib/components/VTabs/VTabs.js +14 -4
  309. package/lib/components/VTabs/VTabs.js.map +1 -1
  310. package/lib/components/VTabs/VTabsItems.js +1 -0
  311. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  312. package/lib/components/VTextField/VTextField.js +6 -15
  313. package/lib/components/VTextField/VTextField.js.map +1 -1
  314. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  315. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  316. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  317. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  318. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  319. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  320. package/lib/components/VToolbar/VToolbar.js +1 -3
  321. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  322. package/lib/components/VTooltip/VTooltip.js +1 -2
  323. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  324. package/lib/components/VVirtualScroll/VVirtualScroll.js +0 -3
  325. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  326. package/lib/components/VWindow/VWindow.js +0 -3
  327. package/lib/components/VWindow/VWindow.js.map +1 -1
  328. package/lib/components/VWindow/VWindowItem.js +2 -6
  329. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  330. package/lib/framework.js +1 -1
  331. package/lib/mixins/detachable/index.js +9 -5
  332. package/lib/mixins/detachable/index.js.map +1 -1
  333. package/package.json +1 -1
  334. package/src/components/VAlert/VAlert.ts +2 -0
  335. package/src/components/VAppBar/VAppBar.ts +12 -3
  336. package/src/components/VBadge/VBadge.ts +1 -1
  337. package/src/components/VBanner/VBanner.ts +14 -14
  338. package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -8
  339. package/src/components/VBtn/VBtn.ts +2 -2
  340. package/src/components/VCalendar/VCalendar.ts +29 -27
  341. package/src/components/VCalendar/VCalendarCategory.ts +9 -8
  342. package/src/components/VCalendar/VCalendarDaily.ts +18 -28
  343. package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
  344. package/src/components/VCalendar/VCalendarWeekly.ts +18 -30
  345. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +18 -34
  346. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +16 -14
  347. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
  348. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +206 -205
  349. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  350. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  351. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
  352. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
  353. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
  354. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
  355. package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
  356. package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
  357. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
  358. package/src/components/VCalendar/mixins/times.ts +1 -1
  359. package/src/components/VCarousel/VCarousel.ts +13 -9
  360. package/src/components/VCheckbox/VCheckbox.ts +19 -1
  361. package/src/components/VCheckbox/VSimpleCheckbox.ts +0 -3
  362. package/src/components/VChip/VChip.ts +16 -13
  363. package/src/components/VData/VData.ts +2 -0
  364. package/src/components/VDataIterator/VDataFooter.ts +2 -0
  365. package/src/components/VDataIterator/VDataIterator.ts +2 -0
  366. package/src/components/VDataTable/VDataTable.ts +2 -4
  367. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +5 -0
  368. package/src/components/VDataTable/VDataTableHeaderMobile.ts +2 -0
  369. package/src/components/VDataTable/VEditDialog.ts +19 -17
  370. package/src/components/VDataTable/mixins/header.ts +0 -4
  371. package/src/components/VDatePicker/VDatePicker.ts +13 -18
  372. package/src/components/VDatePicker/VDatePickerHeader.ts +44 -32
  373. package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
  374. package/src/components/VDatePicker/VDatePickerTitle.ts +7 -5
  375. package/src/components/VDatePicker/VDatePickerYears.ts +6 -10
  376. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +302 -246
  377. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +90 -86
  378. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
  379. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +96 -71
  380. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
  381. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +48 -28
  382. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +25 -22
  383. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +601 -586
  384. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +203 -193
  385. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  386. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  387. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  388. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +3 -4
  389. package/src/components/VDatePicker/mixins/date-picker-table.ts +18 -13
  390. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  391. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  392. package/src/components/VDialog/VDialog.ts +7 -5
  393. package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
  394. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +0 -1
  395. package/src/components/VFileInput/VFileInput.ts +2 -0
  396. package/src/components/VForm/VForm.ts +2 -0
  397. package/src/components/VHover/VHover.ts +2 -0
  398. package/src/components/VImg/VImg.ts +2 -1
  399. package/src/components/VInput/VInput.ts +2 -0
  400. package/src/components/VItemGroup/VItem.ts +4 -0
  401. package/src/components/VItemGroup/VItemGroup.ts +7 -1
  402. package/src/components/VLazy/VLazy.ts +11 -13
  403. package/src/components/VList/VListGroup.ts +7 -8
  404. package/src/components/VList/VListItem.ts +29 -15
  405. package/src/components/VList/VListItemAction.ts +11 -10
  406. package/src/components/VMenu/VMenu.ts +3 -1
  407. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +2 -5
  408. package/src/components/VOtpInput/VOtpInput.ts +2 -3
  409. package/src/components/VOverflowBtn/VOverflowBtn.ts +2 -0
  410. package/src/components/VOverlay/VOverlay.ts +2 -0
  411. package/src/components/VPagination/VPagination.ts +2 -1
  412. package/src/components/VPicker/VPicker.ts +8 -10
  413. package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
  414. package/src/components/VProgressCircular/VProgressCircular.ts +0 -1
  415. package/src/components/VProgressLinear/VProgressLinear.ts +14 -13
  416. package/src/components/VRadioGroup/VRadio.ts +2 -0
  417. package/src/components/VSelect/VSelect.ts +59 -19
  418. package/src/components/VSelect/VSelectList.ts +13 -9
  419. package/src/components/VSlideGroup/VSlideGroup.ts +2 -4
  420. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  421. package/src/components/VSlider/VSlider.ts +0 -3
  422. package/src/components/VSnackbar/VSnackbar.ts +1 -1
  423. package/src/components/VSparkline/VSparkline.ts +54 -92
  424. package/src/components/VSpeedDial/VSpeedDial.ts +6 -8
  425. package/src/components/VStepper/VStepper.ts +3 -1
  426. package/src/components/VStepper/VStepperStep.ts +8 -15
  427. package/src/components/VSwitch/VSwitch.ts +4 -5
  428. package/src/components/VTabs/VTab.ts +2 -0
  429. package/src/components/VTabs/VTabs.ts +16 -10
  430. package/src/components/VTabs/VTabsItems.ts +2 -0
  431. package/src/components/VTextField/VTextField.ts +9 -12
  432. package/src/components/VTimePicker/VTimePicker.ts +199 -89
  433. package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
  434. package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
  435. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +153 -140
  436. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
  437. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +47 -41
  438. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +160 -40
  439. package/src/components/VToolbar/VToolbar.ts +1 -1
  440. package/src/components/VTooltip/VTooltip.ts +1 -1
  441. package/src/components/VVirtualScroll/VVirtualScroll.ts +0 -1
  442. package/src/components/VWindow/VWindow.ts +0 -1
  443. package/src/components/VWindow/VWindowItem.ts +2 -3
  444. package/src/mixins/detachable/index.ts +11 -5
@@ -1,16 +1,11 @@
1
- import {h} from 'vue'
1
+ import { h, defineComponent, PropType, VNode, getCurrentInstance } from 'vue'
2
2
  // Mixins
3
3
  import Colorable from '../../mixins/colorable'
4
4
 
5
5
  // Utilities
6
- import mixins, { ExtractVue } from '../../util/mixins'
7
6
  import { genPoints, genBars } from './helpers/core'
8
7
  import { genPath } from './helpers/path'
9
8
 
10
- // Types
11
- import Vue, { VNode } from 'vue'
12
- import { Prop, PropValidator } from 'vue/types/options'
13
-
14
9
  export type SparklineItem = number | { value: number }
15
10
 
16
11
  export type SparklineText = {
@@ -38,22 +33,9 @@ export interface Bar {
38
33
  value: number
39
34
  }
40
35
 
41
- interface options extends Vue {
42
- $refs: {
43
- path: SVGPathElement
44
- }
45
- }
46
-
47
- export default mixins<options &
48
- /* eslint-disable indent */
49
- ExtractVue<[
50
- typeof Colorable
51
- ]>
52
- /* eslint-enable indent */
53
- >(
54
- Colorable
55
- ).extend({
56
- name: 'VSparkline',
36
+ export default defineComponent({
37
+ name: 'v-sparkline',
38
+ mixins: [Colorable],
57
39
 
58
40
  inheritAttrs: false,
59
41
 
@@ -80,11 +62,11 @@ export default mixins<options &
80
62
  default: false,
81
63
  },
82
64
  gradient: {
83
- type: Array,
65
+ type: Array as PropType<string[]>,
84
66
  default: () => ([]),
85
- } as PropValidator<string[]>,
67
+ },
86
68
  gradientDirection: {
87
- type: String as Prop<'top' | 'bottom' | 'left' | 'right'>,
69
+ type: String as PropType<'top' | 'bottom' | 'left' | 'right'>,
88
70
  validator: (val: string) => ['top', 'bottom', 'left', 'right'].includes(val),
89
71
  default: 'top',
90
72
  },
@@ -93,9 +75,9 @@ export default mixins<options &
93
75
  default: 75,
94
76
  },
95
77
  labels: {
96
- type: Array,
78
+ type: Array as PropType<SparklineItem[]>,
97
79
  default: () => ([]),
98
- } as PropValidator<SparklineItem[]>,
80
+ },
99
81
  labelSize: {
100
82
  type: [Number, String],
101
83
  default: 7,
@@ -114,14 +96,14 @@ export default mixins<options &
114
96
  default: false,
115
97
  },
116
98
  type: {
117
- type: String as Prop<'trend' | 'bar'>,
99
+ type: String as PropType<'trend' | 'bar'>,
118
100
  default: 'trend',
119
101
  validator: (val: string) => ['trend', 'bar'].includes(val),
120
102
  },
121
103
  value: {
122
- type: Array,
104
+ type: Array as PropType<SparklineItem[]>,
123
105
  default: () => ([]),
124
- } as PropValidator<SparklineItem[]>,
106
+ },
125
107
  width: {
126
108
  type: [Number, String],
127
109
  default: 300,
@@ -274,23 +256,20 @@ export default mixins<options &
274
256
  const len = Math.max(gradient.length - 1, 1)
275
257
  const stops = gradient.reverse().map((color, index) =>
276
258
  h('stop', {
277
- attrs: {
278
- offset: index / len,
279
- 'stop-color': color || 'currentColor',
280
- },
259
+ offset: index / len,
260
+ 'stop-color': color || 'currentColor',
281
261
  })
282
262
  )
283
263
 
264
+ const instance = getCurrentInstance()
284
265
  return h('defs', [
285
266
  h('linearGradient', {
286
- attrs: {
287
- id: this.$.uid,
288
- gradientUnits: 'userSpaceOnUse',
289
- x1: gradientDirection === 'left' ? '100%' : '0',
290
- y1: gradientDirection === 'top' ? '100%' : '0',
291
- x2: gradientDirection === 'right' ? '100%' : '0',
292
- y2: gradientDirection === 'bottom' ? '100%' : '0',
293
- },
267
+ id: instance?.uid,
268
+ gradientUnits: 'userSpaceOnUse',
269
+ x1: gradientDirection === 'left' ? '100%' : '0',
270
+ y1: gradientDirection === 'top' ? '100%' : '0',
271
+ x2: gradientDirection === 'right' ? '100%' : '0',
272
+ y2: gradientDirection === 'bottom' ? '100%' : '0',
294
273
  }, stops),
295
274
  ])
296
275
  },
@@ -301,29 +280,26 @@ export default mixins<options &
301
280
  textAnchor: 'middle',
302
281
  dominantBaseline: 'mathematical',
303
282
  fill: 'currentColor',
304
- } as object, // TODO: TS 3.5 is too eager with the array type here
283
+ },
305
284
  }, children)
306
285
  },
307
286
  genPath () {
308
287
  const points = genPoints(this.normalizedValues, this.boundary)
288
+ const instance = getCurrentInstance()
309
289
 
310
290
  return h('path', {
311
- attrs: {
312
- d: genPath(points, this._radius, this.fill, this.parsedHeight),
313
- fill: this.fill ? `url(#${this.$.uid})` : 'none',
314
- stroke: this.fill ? 'none' : `url(#${this.$.uid})`,
315
- },
291
+ d: genPath(points, this._radius, this.fill, this.parsedHeight),
292
+ fill: this.fill ? `url(#${instance?.uid})` : 'none',
293
+ stroke: this.fill ? 'none' : `url(#${instance?.uid})`,
316
294
  ref: 'path',
317
295
  })
318
296
  },
319
297
  genLabels (offsetX: number) {
320
298
  const children = this.parsedLabels.map((item, i) => (
321
299
  h('text', {
322
- attrs: {
323
- x: item.x + offsetX + this._lineWidth / 2,
324
- y: this.textY + (this.parsedLabelSize * 0.75),
325
- 'font-size': Number(this.labelSize) || 7,
326
- },
300
+ x: item.x + offsetX + this._lineWidth / 2,
301
+ y: this.textY + (this.parsedLabelSize * 0.75),
302
+ 'font-size': Number(this.labelSize) || 7,
327
303
  }, [this.genLabel(item, i)])
328
304
  ))
329
305
 
@@ -341,27 +317,21 @@ export default mixins<options &
341
317
  const offsetX = (Math.abs(bars[0].x - bars[1].x) - this._lineWidth) / 2
342
318
 
343
319
  return h('svg', {
344
- attrs: {
345
- display: 'block',
346
- viewBox: `0 0 ${this.totalWidth} ${this.totalHeight}`,
347
- },
320
+ display: 'block',
321
+ viewBox: `0 0 ${this.totalWidth} ${this.totalHeight}`,
348
322
  }, [
349
323
  this.genGradient(),
350
- this.genClipPath(bars, offsetX, this._lineWidth, 'sparkline-bar-' + this.$.uid),
324
+ this.genClipPath(bars, offsetX, this._lineWidth, 'sparkline-bar-' + getCurrentInstance()?.uid),
351
325
  this.hasLabels ? this.genLabels(offsetX) : undefined as never,
352
326
  h('g', {
353
- attrs: {
354
- 'clip-path': `url(#sparkline-bar-${this.$.uid}-clip)`,
355
- fill: `url(#${this.$.uid})`,
356
- },
327
+ 'clip-path': `url(#sparkline-bar-${getCurrentInstance()?.uid}-clip)`,
328
+ fill: `url(#${getCurrentInstance()?.uid})`,
357
329
  }, [
358
330
  h('rect', {
359
- attrs: {
360
- x: 0,
361
- y: 0,
362
- width: this.totalWidth,
363
- height: this.height,
364
- },
331
+ x: 0,
332
+ y: 0,
333
+ width: this.totalWidth,
334
+ height: this.height,
365
335
  }),
366
336
  ]),
367
337
  ])
@@ -372,40 +342,32 @@ export default mixins<options &
372
342
  : this.smooth ? 2 : 0
373
343
 
374
344
  return h('clipPath', {
375
- attrs: {
376
- id: `${id}-clip`,
377
- },
345
+ id: `${id}-clip`,
378
346
  }, bars.map(item => {
379
347
  return h('rect', {
380
- attrs: {
381
- x: item.x + offsetX,
382
- y: item.y,
383
- width: lineWidth,
384
- height: item.height,
385
- rx: rounding,
386
- ry: rounding,
387
- },
348
+ x: item.x + offsetX,
349
+ y: item.y,
350
+ width: lineWidth,
351
+ height: item.height,
352
+ rx: rounding,
353
+ ry: rounding,
388
354
  }, [
389
355
  this.autoDraw ? h('animate', {
390
- attrs: {
391
- attributeName: 'height',
392
- from: 0,
393
- to: item.height,
394
- dur: `${this.autoDrawDuration}ms`,
395
- fill: 'freeze',
396
- },
356
+ attributeName: 'height',
357
+ from: 0,
358
+ to: item.height,
359
+ dur: `${this.autoDrawDuration}ms`,
360
+ fill: 'freeze',
397
361
  }) : undefined as never,
398
362
  ])
399
363
  }))
400
364
  },
401
365
  genTrend () {
402
366
  return h('svg', this.setTextColor(this.color, {
403
- attrs: {
404
- ...this.$attrs,
405
- display: 'block',
406
- 'stroke-width': this._lineWidth || 1,
407
- viewBox: `0 0 ${this.width} ${this.totalHeight}`,
408
- },
367
+ ...this.$attrs,
368
+ display: 'block',
369
+ 'stroke-width': this._lineWidth || 1,
370
+ viewBox: `0 0 ${this.width} ${this.totalHeight}`,
409
371
  }), [
410
372
  this.genGradient(),
411
373
  this.hasLabels && this.genLabels(-(this._lineWidth / 2)),
@@ -1,4 +1,4 @@
1
- import {TransitionGroup, h} from 'vue'
1
+ import { TransitionGroup, h, VNode, VNodeData, withDirectives } from 'vue'
2
2
  // Styles
3
3
  import './VSpeedDial.sass'
4
4
 
@@ -12,7 +12,7 @@ import ClickOutside from '../../directives/click-outside'
12
12
 
13
13
  // Types
14
14
  import mixins from '../../util/mixins'
15
- import { VNode, VNodeData } from 'vue'
15
+
16
16
  import { Prop } from 'vue/types/options'
17
17
  import { getSlot } from '../../util/helpers'
18
18
 
@@ -20,7 +20,7 @@ import { getSlot } from '../../util/helpers'
20
20
  export default mixins(Positionable, Toggleable, Transitionable).extend({
21
21
  name: 'v-speed-dial',
22
22
 
23
- directives: { ClickOutside },
23
+ emits: ['update:modelValue'],
24
24
 
25
25
  props: {
26
26
  direction: {
@@ -57,10 +57,6 @@ export default mixins(Positionable, Toggleable, Transitionable).extend({
57
57
  let children: VNode[] = []
58
58
  const data: VNodeData = {
59
59
  class: this.classes,
60
- directives: [{
61
- name: 'click-outside',
62
- value: () => (this.isActive = false),
63
- }],
64
60
  on: {
65
61
  click: () => (this.isActive = !this.isActive),
66
62
  },
@@ -97,6 +93,8 @@ export default mixins(Positionable, Toggleable, Transitionable).extend({
97
93
  tag: 'div',
98
94
  }, children)
99
95
 
100
- return h('div', data, [getSlot(this, 'activator'), list])
96
+ return withDirectives(h('div', data, [getSlot(this, 'activator'), list]), [
97
+ [ClickOutside, () => (this.isActive = false)],
98
+ ])
101
99
  },
102
100
  })
@@ -1,4 +1,4 @@
1
- import {h} from 'vue'
1
+ import { h } from 'vue'
2
2
  // Styles
3
3
  import './VStepper.sass'
4
4
 
@@ -48,6 +48,8 @@ export default baseMixins.extend({
48
48
  vertical: Boolean,
49
49
  },
50
50
 
51
+ emits: ['change'],
52
+
51
53
  data () {
52
54
  const data: Dictionary<any> = {
53
55
  isBooted: false,
@@ -1,4 +1,4 @@
1
- import {h} from 'vue'
1
+ import {h, withDirectives} from 'vue'
2
2
  // Components
3
3
  import VIcon from '../VIcon'
4
4
 
@@ -31,7 +31,6 @@ interface options extends InstanceType<typeof baseMixins> {
31
31
  export default baseMixins.extend({
32
32
  name: 'v-stepper-step',
33
33
 
34
- directives: { ripple },
35
34
 
36
35
  inject: ['stepClick'],
37
36
 
@@ -71,6 +70,7 @@ export default baseMixins.extend({
71
70
  computed: {
72
71
  classes (): object {
73
72
  return {
73
+ 'v-stepper__step': true,
74
74
  'v-stepper__step--active': this.isActive,
75
75
  'v-stepper__step--editable': this.editable,
76
76
  'v-stepper__step--inactive': this.isInactive,
@@ -145,23 +145,16 @@ export default baseMixins.extend({
145
145
  },
146
146
 
147
147
  render (): VNode {
148
- return h('div', {
149
- attrs: {
150
- tabindex: this.editable ? 0 : -1,
151
- },
152
- class: 'v-stepper__step',
148
+ return withDirectives(h('div', {
149
+ tabindex: this.editable ? 0 : -1,
153
150
  class: this.classes,
154
- directives: [{
155
- name: 'ripple',
156
- value: this.editable,
157
- }],
158
- on: {
159
- click: this.click,
160
- keydown: this.keyboardClick,
161
- },
151
+ onClick: this.click,
152
+ onKeydown: this.keyboardClick,
162
153
  }, [
163
154
  this.genStep(),
164
155
  this.genLabel(),
156
+ ]), [
157
+ [ripple, this.editable]
165
158
  ])
166
159
  },
167
160
  })
@@ -24,7 +24,6 @@ import mergeData from '../../util/mergeData'
24
24
  export default defineComponent({
25
25
  name: 'v-switch',
26
26
 
27
- directives: { Touch },
28
27
 
29
28
  extends: Selectable,
30
29
 
@@ -40,6 +39,8 @@ export default defineComponent({
40
39
  },
41
40
  },
42
41
 
42
+ emits: ['click', 'focus', 'blur'],
43
+
43
44
  computed: {
44
45
  classes (): object {
45
46
  return {
@@ -99,12 +100,10 @@ export default defineComponent({
99
100
  ]],
100
101
  })),
101
102
 
102
- h('div', mergeData({
103
- class: 'v-input--switch__track' },
103
+ h('div', mergeData({ class: 'v-input--switch__track' },
104
104
  this.switchData,
105
105
  )),
106
- h('div', mergeData({
107
- class: 'v-input--switch__thumb'},
106
+ h('div', mergeData({ class: 'v-input--switch__thumb' },
108
107
  this.switchData,
109
108
  ), [this.genProgress()]),
110
109
  ])
@@ -33,6 +33,8 @@ interface options extends ExtractVue<typeof baseMixins> {
33
33
  export default baseMixins.extend({
34
34
  name: 'v-tab',
35
35
 
36
+ emits: ['change', 'click', 'keydown'],
37
+
36
38
  props: {
37
39
  ripple: {
38
40
  type: [Boolean, Object],
@@ -1,4 +1,4 @@
1
- import {h, withDirectives} from 'vue'
1
+ import { h, withDirectives } from 'vue'
2
2
  // Styles
3
3
  import './VTabs.sass'
4
4
 
@@ -38,10 +38,6 @@ interface options extends ExtractVue<typeof baseMixins> {
38
38
  export default baseMixins.extend({
39
39
  name: 'v-tabs',
40
40
 
41
- directives: {
42
- Resize,
43
- },
44
-
45
41
  props: {
46
42
  activeClass: {
47
43
  type: String,
@@ -139,9 +135,14 @@ export default baseMixins.extend({
139
135
  '$vuetify.application.left': 'onResize',
140
136
  '$vuetify.application.right': 'onResize',
141
137
  '$vuetify.rtl': 'onResize',
138
+ modelValue (val: any) {
139
+ this.validateModelValue(val)
140
+ },
142
141
  },
143
142
 
144
143
  mounted () {
144
+ this.validateModelValue(this.modelValue)
145
+
145
146
  if (typeof ResizeObserver !== 'undefined') {
146
147
  const obs = new ResizeObserver(() => {
147
148
  this.onResize()
@@ -158,6 +159,11 @@ export default baseMixins.extend({
158
159
  },
159
160
 
160
161
  methods: {
162
+ validateModelValue (val: any) {
163
+ if (typeof val === 'number' && val < 0) {
164
+ this.internalValue = 0
165
+ }
166
+ },
161
167
  callSlider () {
162
168
  if (
163
169
  this.hideSlider ||
@@ -233,7 +239,7 @@ export default baseMixins.extend({
233
239
  modelValue: this.internalValue,
234
240
  'onUpdate:modelValue': (val: any) => {
235
241
  this.internalValue = val
236
- }
242
+ },
237
243
  }, () => item)
238
244
  },
239
245
  genSlider (slider: VNode | null) {
@@ -241,7 +247,7 @@ export default baseMixins.extend({
241
247
 
242
248
  if (!slider) {
243
249
  slider = h(VTabsSlider, {
244
- color: this.sliderColor
250
+ color: this.sliderColor,
245
251
  })
246
252
  }
247
253
 
@@ -297,7 +303,7 @@ export default baseMixins.extend({
297
303
  const { tab, slider, items, item } = this.parseNodes()
298
304
 
299
305
  return withDirectives(h('div', {
300
- class: ['v-tabs', this.classes]
306
+ class: ['v-tabs', this.classes],
301
307
  }, [
302
308
  this.genBar(tab, slider),
303
309
  this.genItems(items, item),
@@ -306,8 +312,8 @@ export default baseMixins.extend({
306
312
  Resize,
307
313
  this.onResize,
308
314
  '',
309
- { quiet: true }
310
- ]
315
+ { quiet: true },
316
+ ],
311
317
  ])
312
318
  },
313
319
  })
@@ -17,6 +17,8 @@ export default defineComponent({
17
17
  },
18
18
  },
19
19
 
20
+ emits: ['change'],
21
+
20
22
  computed: {
21
23
  classes (): object {
22
24
  return {
@@ -53,11 +53,6 @@ const dirtyTypes = ['color', 'file', 'time', 'date', 'datetime-local', 'week', '
53
53
  export default baseMixins.extend({
54
54
  name: 'v-text-field',
55
55
 
56
- directives: {
57
- resize,
58
- ripple,
59
- },
60
-
61
56
  props: {
62
57
  appendOuterIcon: String,
63
58
  autofocus: Boolean,
@@ -90,6 +85,8 @@ export default baseMixins.extend({
90
85
  },
91
86
  },
92
87
 
88
+ emits: ['update:modelValue', 'blur', 'focus', 'keydown'],
89
+
93
90
  data: () => ({
94
91
  badInput: false,
95
92
  labelWidth: 0,
@@ -211,15 +208,15 @@ export default baseMixins.extend({
211
208
  },
212
209
 
213
210
  created () {
214
- /* istanbul ignore next */
215
- if (this.$attrs.hasOwnProperty('box')) {
216
- breaking('box', 'filled', this)
217
- }
211
+ const breakingProps = [
212
+ ['value', 'modelValue'],
213
+ ['onInput', 'onUpdate:modelValue'],
214
+ ]
218
215
 
219
216
  /* istanbul ignore next */
220
- if (this.$attrs.hasOwnProperty('browser-autocomplete')) {
221
- breaking('browser-autocomplete', 'autocomplete', this)
222
- }
217
+ breakingProps.forEach(([original, replacement]) => {
218
+ if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)
219
+ })
223
220
 
224
221
  /* istanbul ignore if */
225
222
  if (this.shaped && !(this.filled || this.outlined || this.isSolo)) {