@dimailn/vuetify 2.7.2-alpha0 → 2.7.2-superbundle

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 (1011) hide show
  1. package/dist/vuetify.css +4806 -4806
  2. package/dist/vuetify.css.map +1 -1
  3. package/dist/vuetify.js +5556 -5330
  4. package/dist/vuetify.js.map +1 -1
  5. package/dist/vuetify.min.css +3 -3
  6. package/dist/vuetify.min.js +2 -2
  7. package/dist/vuetify.sass +109 -0
  8. package/es5/components/VAlert/VAlert.js +54 -38
  9. package/es5/components/VAlert/VAlert.js.map +1 -1
  10. package/es5/components/VApp/VApp.js +16 -12
  11. package/es5/components/VApp/VApp.js.map +1 -1
  12. package/es5/components/VAppBar/VAppBar.js +10 -12
  13. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  14. package/es5/components/VAppBar/VAppBarNavIcon.js +20 -13
  15. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  16. package/es5/components/VAppBar/VAppBarTitle.js +8 -9
  17. package/es5/components/VAppBar/VAppBarTitle.js.map +1 -1
  18. package/es5/components/VAutocomplete/VAutocomplete.js +23 -22
  19. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  20. package/es5/components/VAvatar/VAvatar.js +8 -9
  21. package/es5/components/VAvatar/VAvatar.js.map +1 -1
  22. package/es5/components/VBadge/VBadge.js +24 -20
  23. package/es5/components/VBadge/VBadge.js.map +1 -1
  24. package/es5/components/VBanner/VBanner.js +37 -32
  25. package/es5/components/VBanner/VBanner.js.map +1 -1
  26. package/es5/components/VBottomNavigation/VBottomNavigation.js +14 -11
  27. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  28. package/es5/components/VBottomSheet/VBottomSheet.js +2 -5
  29. package/es5/components/VBottomSheet/VBottomSheet.js.map +1 -1
  30. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +11 -11
  31. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  32. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -8
  33. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  34. package/es5/components/VBtn/VBtn.js +24 -30
  35. package/es5/components/VBtn/VBtn.js.map +1 -1
  36. package/es5/components/VBtnToggle/VBtnToggle.js +2 -2
  37. package/es5/components/VBtnToggle/VBtnToggle.js.map +1 -1
  38. package/es5/components/VCalendar/VCalendar.js +27 -25
  39. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  40. package/es5/components/VCalendar/VCalendarCategory.js +21 -23
  41. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  42. package/es5/components/VCalendar/VCalendarDaily.js +69 -67
  43. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  44. package/es5/components/VCalendar/VCalendarMonthly.js +1 -4
  45. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  46. package/es5/components/VCalendar/VCalendarWeekly.js +65 -64
  47. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  48. package/es5/components/VCalendar/mixins/calendar-with-events.js +64 -58
  49. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  50. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +1 -4
  51. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  52. package/es5/components/VCalendar/mixins/times.js +4 -2
  53. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  54. package/es5/components/VCard/VCard.js +11 -13
  55. package/es5/components/VCard/VCard.js.map +1 -1
  56. package/es5/components/VCarousel/VCarousel.js +37 -28
  57. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  58. package/es5/components/VCarousel/VCarouselItem.js +18 -16
  59. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  60. package/es5/components/VCheckbox/VCheckbox.js +10 -11
  61. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  62. package/es5/components/VCheckbox/VSimpleCheckbox.js +29 -20
  63. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  64. package/es5/components/VChip/VChip.js +44 -37
  65. package/es5/components/VChip/VChip.js.map +1 -1
  66. package/es5/components/VChipGroup/VChipGroup.js +2 -2
  67. package/es5/components/VChipGroup/VChipGroup.js.map +1 -1
  68. package/es5/components/VColorPicker/VColorPicker.js +38 -32
  69. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  70. package/es5/components/VColorPicker/VColorPickerCanvas.js +22 -19
  71. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  72. package/es5/components/VColorPicker/VColorPickerEdit.js +28 -25
  73. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  74. package/es5/components/VColorPicker/VColorPickerPreview.js +48 -37
  75. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  76. package/es5/components/VColorPicker/VColorPickerSwatches.js +15 -15
  77. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  78. package/es5/components/VCombobox/VCombobox.js +27 -22
  79. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  80. package/es5/components/VContent/VContent.js +4 -8
  81. package/es5/components/VContent/VContent.js.map +1 -1
  82. package/es5/components/VCounter/VCounter.js +5 -7
  83. package/es5/components/VCounter/VCounter.js.map +1 -1
  84. package/es5/components/VData/VData.js +5 -3
  85. package/es5/components/VData/VData.js.map +1 -1
  86. package/es5/components/VDataIterator/VDataFooter.js +46 -34
  87. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  88. package/es5/components/VDataIterator/VDataIterator.js +22 -20
  89. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  90. package/es5/components/VDataTable/MobileRow.js +21 -15
  91. package/es5/components/VDataTable/MobileRow.js.map +1 -1
  92. package/es5/components/VDataTable/Row.js +15 -11
  93. package/es5/components/VDataTable/Row.js.map +1 -1
  94. package/es5/components/VDataTable/RowGroup.js +12 -9
  95. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  96. package/es5/components/VDataTable/VDataTable.js +206 -176
  97. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  98. package/es5/components/VDataTable/VDataTableHeader.js +20 -12
  99. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  100. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
  101. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  102. package/es5/components/VDataTable/VDataTableHeaderMobile.js +19 -22
  103. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  104. package/es5/components/VDataTable/VEditDialog.js +43 -34
  105. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  106. package/es5/components/VDataTable/VSimpleTable.js +7 -8
  107. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  108. package/es5/components/VDataTable/VVirtualTable.js +16 -17
  109. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  110. package/es5/components/VDataTable/mixins/header.js +18 -14
  111. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  112. package/es5/components/VDatePicker/VDatePicker.js +113 -99
  113. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  114. package/es5/components/VDatePicker/VDatePickerDateTable.js +12 -13
  115. package/es5/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  116. package/es5/components/VDatePicker/VDatePickerHeader.js +38 -26
  117. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  118. package/es5/components/VDatePicker/VDatePickerMonthTable.js +3 -3
  119. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  120. package/es5/components/VDatePicker/VDatePickerTitle.js +17 -12
  121. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  122. package/es5/components/VDatePicker/VDatePickerYears.js +3 -3
  123. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  124. package/es5/components/VDatePicker/mixins/date-picker-table.js +47 -34
  125. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  126. package/es5/components/VDatePicker/util/eventHelpers.js.map +1 -1
  127. package/es5/components/VDialog/VDialog.js +46 -29
  128. package/es5/components/VDialog/VDialog.js.map +1 -1
  129. package/es5/components/VDivider/VDivider.js +9 -11
  130. package/es5/components/VDivider/VDivider.js.map +1 -1
  131. package/es5/components/VExpansionPanel/VExpansionPanel.js +8 -9
  132. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  133. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +11 -9
  134. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  135. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +34 -31
  136. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  137. package/es5/components/VExpansionPanel/VExpansionPanels.js +2 -5
  138. package/es5/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  139. package/es5/components/VFileInput/VFileInput.js +35 -32
  140. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  141. package/es5/components/VFooter/VFooter.js +9 -11
  142. package/es5/components/VFooter/VFooter.js.map +1 -1
  143. package/es5/components/VForm/VForm.js +12 -11
  144. package/es5/components/VForm/VForm.js.map +1 -1
  145. package/es5/components/VGrid/VCol.js +8 -8
  146. package/es5/components/VGrid/VCol.js.map +1 -1
  147. package/es5/components/VGrid/VContainer.js +19 -17
  148. package/es5/components/VGrid/VContainer.js.map +1 -1
  149. package/es5/components/VGrid/VRow.js +10 -7
  150. package/es5/components/VGrid/VRow.js.map +1 -1
  151. package/es5/components/VGrid/grid.js +9 -7
  152. package/es5/components/VGrid/grid.js.map +1 -1
  153. package/es5/components/VHover/VHover.js +3 -3
  154. package/es5/components/VHover/VHover.js.map +1 -1
  155. package/es5/components/VIcon/VIcon.js +36 -69
  156. package/es5/components/VIcon/VIcon.js.map +1 -1
  157. package/es5/components/VImg/VImg.js +41 -38
  158. package/es5/components/VImg/VImg.js.map +1 -1
  159. package/es5/components/VInput/VInput.js +77 -70
  160. package/es5/components/VInput/VInput.js.map +1 -1
  161. package/es5/components/VItemGroup/VItem.js +6 -5
  162. package/es5/components/VItemGroup/VItem.js.map +1 -1
  163. package/es5/components/VItemGroup/VItemGroup.js +4 -8
  164. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  165. package/es5/components/VLabel/VLabel.js +15 -12
  166. package/es5/components/VLabel/VLabel.js.map +1 -1
  167. package/es5/components/VLazy/VLazy.js +7 -7
  168. package/es5/components/VLazy/VLazy.js.map +1 -1
  169. package/es5/components/VList/VList.js +12 -12
  170. package/es5/components/VList/VList.js.map +1 -1
  171. package/es5/components/VList/VListGroup.js +32 -31
  172. package/es5/components/VList/VListGroup.js.map +1 -1
  173. package/es5/components/VList/VListItem.js +22 -26
  174. package/es5/components/VList/VListItem.js.map +1 -1
  175. package/es5/components/VList/VListItemAction.js +11 -8
  176. package/es5/components/VList/VListItemAction.js.map +1 -1
  177. package/es5/components/VList/VListItemAvatar.js +9 -9
  178. package/es5/components/VList/VListItemAvatar.js.map +1 -1
  179. package/es5/components/VList/VListItemGroup.js +2 -2
  180. package/es5/components/VList/VListItemGroup.js.map +1 -1
  181. package/es5/components/VList/VListItemIcon.js +9 -11
  182. package/es5/components/VList/VListItemIcon.js.map +1 -1
  183. package/es5/components/VMain/VMain.js +5 -9
  184. package/es5/components/VMain/VMain.js.map +1 -1
  185. package/es5/components/VMenu/VMenu.js +66 -42
  186. package/es5/components/VMenu/VMenu.js.map +1 -1
  187. package/es5/components/VMessages/VMessages.js +12 -12
  188. package/es5/components/VMessages/VMessages.js.map +1 -1
  189. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +59 -51
  190. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  191. package/es5/components/VOtpInput/VOtpInput.js +57 -52
  192. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  193. package/es5/components/VOverflowBtn/VOverflowBtn.js +8 -11
  194. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  195. package/es5/components/VOverlay/VOverlay.js +8 -11
  196. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  197. package/es5/components/VPagination/VPagination.js +48 -35
  198. package/es5/components/VPagination/VPagination.js.map +1 -1
  199. package/es5/components/VParallax/VParallax.js +20 -23
  200. package/es5/components/VParallax/VParallax.js.map +1 -1
  201. package/es5/components/VPicker/VPicker.js +21 -17
  202. package/es5/components/VPicker/VPicker.js.map +1 -1
  203. package/es5/components/VProgressCircular/VProgressCircular.js +40 -38
  204. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  205. package/es5/components/VProgressLinear/VProgressLinear.js +32 -33
  206. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  207. package/es5/components/VRadioGroup/VRadio.js +37 -29
  208. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  209. package/es5/components/VRadioGroup/VRadioGroup.js +17 -16
  210. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  211. package/es5/components/VRangeSlider/VRangeSlider.js +7 -10
  212. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  213. package/es5/components/VRating/VRating.js +48 -52
  214. package/es5/components/VRating/VRating.js.map +1 -1
  215. package/es5/components/VResponsive/VResponsive.js +11 -11
  216. package/es5/components/VResponsive/VResponsive.js.map +1 -1
  217. package/es5/components/VSelect/VSelect.js +125 -102
  218. package/es5/components/VSelect/VSelect.js.map +1 -1
  219. package/es5/components/VSelect/VSelectList.js +63 -44
  220. package/es5/components/VSelect/VSelectList.js.map +1 -1
  221. package/es5/components/VSheet/VSheet.js +5 -8
  222. package/es5/components/VSheet/VSheet.js.map +1 -1
  223. package/es5/components/VSkeletonLoader/VSkeletonLoader.js +22 -18
  224. package/es5/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  225. package/es5/components/VSlideGroup/VSlideGroup.js +56 -39
  226. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  227. package/es5/components/VSlider/VSlider.js +75 -62
  228. package/es5/components/VSlider/VSlider.js.map +1 -1
  229. package/es5/components/VSnackbar/VSnackbar.js +32 -22
  230. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  231. package/es5/components/VSparkline/VSparkline.js +24 -24
  232. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  233. package/es5/components/VSpeedDial/VSpeedDial.js +11 -11
  234. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  235. package/es5/components/VStepper/VStepper.js +6 -7
  236. package/es5/components/VStepper/VStepper.js.map +1 -1
  237. package/es5/components/VStepper/VStepperContent.js +13 -15
  238. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  239. package/es5/components/VStepper/VStepperStep.js +23 -22
  240. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  241. package/es5/components/VSubheader/VSubheader.js +8 -7
  242. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  243. package/es5/components/VSwitch/VSwitch.js +22 -22
  244. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  245. package/es5/components/VSystemBar/VSystemBar.js +8 -9
  246. package/es5/components/VSystemBar/VSystemBar.js.map +1 -1
  247. package/es5/components/VTabs/VTab.js +10 -12
  248. package/es5/components/VTabs/VTab.js.map +1 -1
  249. package/es5/components/VTabs/VTabItem.js +4 -6
  250. package/es5/components/VTabs/VTabItem.js.map +1 -1
  251. package/es5/components/VTabs/VTabs.js +47 -34
  252. package/es5/components/VTabs/VTabs.js.map +1 -1
  253. package/es5/components/VTabs/VTabsBar.js +9 -8
  254. package/es5/components/VTabs/VTabsBar.js.map +1 -1
  255. package/es5/components/VTabs/VTabsItems.js +3 -6
  256. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  257. package/es5/components/VTabs/VTabsSlider.js +3 -5
  258. package/es5/components/VTabs/VTabsSlider.js.map +1 -1
  259. package/es5/components/VTextField/VTextField.js +74 -59
  260. package/es5/components/VTextField/VTextField.js.map +1 -1
  261. package/es5/components/VTextarea/VTextarea.js +5 -6
  262. package/es5/components/VTextarea/VTextarea.js.map +1 -1
  263. package/es5/components/VThemeProvider/VThemeProvider.js +5 -5
  264. package/es5/components/VThemeProvider/VThemeProvider.js.map +1 -1
  265. package/es5/components/VTimePicker/VTimePicker.js +29 -25
  266. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  267. package/es5/components/VTimePicker/VTimePickerClock.js +41 -40
  268. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  269. package/es5/components/VTimePicker/VTimePickerTitle.js +14 -15
  270. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  271. package/es5/components/VTimeline/VTimeline.js +4 -5
  272. package/es5/components/VTimeline/VTimeline.js.map +1 -1
  273. package/es5/components/VTimeline/VTimelineItem.js +24 -24
  274. package/es5/components/VTimeline/VTimelineItem.js.map +1 -1
  275. package/es5/components/VToolbar/VToolbar.js +14 -17
  276. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  277. package/es5/components/VTooltip/VTooltip.js +13 -11
  278. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  279. package/es5/components/VTreeview/VTreeview.js +6 -7
  280. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  281. package/es5/components/VTreeview/VTreeviewNode.js +109 -93
  282. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  283. package/es5/components/VVirtualScroll/VVirtualScroll.js +8 -12
  284. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  285. package/es5/components/VWindow/VWindow.js +38 -26
  286. package/es5/components/VWindow/VWindow.js.map +1 -1
  287. package/es5/components/VWindow/VWindowItem.js +30 -25
  288. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  289. package/es5/components/index.js +112 -0
  290. package/es5/components/index.js.map +1 -1
  291. package/es5/components/transitions/createTransition.js +24 -22
  292. package/es5/components/transitions/createTransition.js.map +1 -1
  293. package/es5/directives/click-outside/index.js +6 -6
  294. package/es5/directives/click-outside/index.js.map +1 -1
  295. package/es5/directives/intersect/index.js +6 -6
  296. package/es5/directives/intersect/index.js.map +1 -1
  297. package/es5/directives/ripple/index.js +5 -11
  298. package/es5/directives/ripple/index.js.map +1 -1
  299. package/es5/directives/touch/index.js +6 -12
  300. package/es5/directives/touch/index.js.map +1 -1
  301. package/es5/framework.js +1 -1
  302. package/es5/framework.js.map +1 -1
  303. package/es5/helpers.js +64 -0
  304. package/es5/helpers.js.map +1 -0
  305. package/es5/index.js +36 -31
  306. package/es5/index.js.map +1 -1
  307. package/es5/install.js +15 -42
  308. package/es5/install.js.map +1 -1
  309. package/es5/mixins/activatable/index.js +8 -13
  310. package/es5/mixins/activatable/index.js.map +1 -1
  311. package/es5/mixins/binds-attrs/index.js +5 -3
  312. package/es5/mixins/binds-attrs/index.js.map +1 -1
  313. package/es5/mixins/bootable/index.js +5 -3
  314. package/es5/mixins/bootable/index.js.map +1 -1
  315. package/es5/mixins/button-group/index.js +3 -6
  316. package/es5/mixins/button-group/index.js.map +1 -1
  317. package/es5/mixins/colorable/index.js +8 -36
  318. package/es5/mixins/colorable/index.js.map +1 -1
  319. package/es5/mixins/comparable/index.js +4 -2
  320. package/es5/mixins/comparable/index.js.map +1 -1
  321. package/es5/mixins/delayable/index.js +4 -2
  322. package/es5/mixins/delayable/index.js.map +1 -1
  323. package/es5/mixins/dependent/index.js +2 -8
  324. package/es5/mixins/dependent/index.js.map +1 -1
  325. package/es5/mixins/detachable/index.js +2 -2
  326. package/es5/mixins/detachable/index.js.map +1 -1
  327. package/es5/mixins/elevatable/index.js +4 -2
  328. package/es5/mixins/elevatable/index.js.map +1 -1
  329. package/es5/mixins/filterable/index.js +4 -2
  330. package/es5/mixins/filterable/index.js.map +1 -1
  331. package/es5/mixins/groupable/index.js +11 -14
  332. package/es5/mixins/groupable/index.js.map +1 -1
  333. package/es5/mixins/intersectable/index.js +5 -11
  334. package/es5/mixins/intersectable/index.js.map +1 -1
  335. package/es5/mixins/loadable/index.js +9 -7
  336. package/es5/mixins/loadable/index.js.map +1 -1
  337. package/es5/mixins/localable/index.js +4 -2
  338. package/es5/mixins/localable/index.js.map +1 -1
  339. package/es5/mixins/measurable/index.js +4 -2
  340. package/es5/mixins/measurable/index.js.map +1 -1
  341. package/es5/mixins/menuable/index.js +5 -5
  342. package/es5/mixins/menuable/index.js.map +1 -1
  343. package/es5/mixins/mobile/index.js +13 -9
  344. package/es5/mixins/mobile/index.js.map +1 -1
  345. package/es5/mixins/mouse/index.js +6 -10
  346. package/es5/mixins/mouse/index.js.map +1 -1
  347. package/es5/mixins/overlayable/index.js +16 -46
  348. package/es5/mixins/overlayable/index.js.map +1 -1
  349. package/es5/mixins/picker/index.js +20 -19
  350. package/es5/mixins/picker/index.js.map +1 -1
  351. package/es5/mixins/picker-button/index.js +11 -14
  352. package/es5/mixins/picker-button/index.js.map +1 -1
  353. package/es5/mixins/positionable/index.js +4 -2
  354. package/es5/mixins/positionable/index.js.map +1 -1
  355. package/es5/mixins/proxyable/index.js +6 -4
  356. package/es5/mixins/proxyable/index.js.map +1 -1
  357. package/es5/mixins/registrable/index.js +5 -3
  358. package/es5/mixins/registrable/index.js.map +1 -1
  359. package/es5/mixins/returnable/index.js +4 -2
  360. package/es5/mixins/returnable/index.js.map +1 -1
  361. package/es5/mixins/rippleable/index.js +13 -21
  362. package/es5/mixins/rippleable/index.js.map +1 -1
  363. package/es5/mixins/roundable/index.js +4 -2
  364. package/es5/mixins/roundable/index.js.map +1 -1
  365. package/es5/mixins/routable/index.js +25 -24
  366. package/es5/mixins/routable/index.js.map +1 -1
  367. package/es5/mixins/scrollable/index.js +4 -2
  368. package/es5/mixins/scrollable/index.js.map +1 -1
  369. package/es5/mixins/selectable/index.js +33 -31
  370. package/es5/mixins/selectable/index.js.map +1 -1
  371. package/es5/mixins/sizeable/index.js +4 -2
  372. package/es5/mixins/sizeable/index.js.map +1 -1
  373. package/es5/mixins/ssr-bootable/index.js +4 -2
  374. package/es5/mixins/ssr-bootable/index.js.map +1 -1
  375. package/es5/mixins/stackable/index.js +4 -2
  376. package/es5/mixins/stackable/index.js.map +1 -1
  377. package/es5/mixins/themeable/index.js +16 -5
  378. package/es5/mixins/themeable/index.js.map +1 -1
  379. package/es5/mixins/toggleable/index.js +10 -4
  380. package/es5/mixins/toggleable/index.js.map +1 -1
  381. package/es5/mixins/transitionable/index.js +4 -2
  382. package/es5/mixins/transitionable/index.js.map +1 -1
  383. package/es5/mixins/translatable/index.js +4 -2
  384. package/es5/mixins/translatable/index.js.map +1 -1
  385. package/es5/mixins/validatable/index.js +1 -1
  386. package/es5/mixins/validatable/index.js.map +1 -1
  387. package/es5/services/goto/util.js.map +1 -1
  388. package/es5/services/theme/index.js +19 -6
  389. package/es5/services/theme/index.js.map +1 -1
  390. package/es5/util/helpers.js +20 -33
  391. package/es5/util/helpers.js.map +1 -1
  392. package/es5/util/mergeData.js +1 -1
  393. package/es5/util/mergeData.js.map +1 -1
  394. package/es5/util/mixins.js +5 -11
  395. package/es5/util/mixins.js.map +1 -1
  396. package/es5/vuetify.js +45 -0
  397. package/es5/vuetify.js.map +1 -0
  398. package/lib/components/VAlert/VAlert.js +54 -38
  399. package/lib/components/VAlert/VAlert.js.map +1 -1
  400. package/lib/components/VApp/VApp.js +14 -10
  401. package/lib/components/VApp/VApp.js.map +1 -1
  402. package/lib/components/VAppBar/VAppBar.js +11 -12
  403. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  404. package/lib/components/VAppBar/VAppBarNavIcon.js +15 -10
  405. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  406. package/lib/components/VAppBar/VAppBarTitle.js +4 -6
  407. package/lib/components/VAppBar/VAppBarTitle.js.map +1 -1
  408. package/lib/components/VAutocomplete/VAutocomplete.js +23 -22
  409. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  410. package/lib/components/VAvatar/VAvatar.js +4 -4
  411. package/lib/components/VAvatar/VAvatar.js.map +1 -1
  412. package/lib/components/VBadge/VBadge.js +23 -19
  413. package/lib/components/VBadge/VBadge.js.map +1 -1
  414. package/lib/components/VBanner/VBanner.js +28 -23
  415. package/lib/components/VBanner/VBanner.js.map +1 -1
  416. package/lib/components/VBottomNavigation/VBottomNavigation.js +14 -10
  417. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  418. package/lib/components/VBottomSheet/VBottomSheet.js +2 -4
  419. package/lib/components/VBottomSheet/VBottomSheet.js.map +1 -1
  420. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +9 -9
  421. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  422. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +7 -7
  423. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  424. package/lib/components/VBtn/VBtn.js +25 -31
  425. package/lib/components/VBtn/VBtn.js.map +1 -1
  426. package/lib/components/VBtnToggle/VBtnToggle.js +2 -2
  427. package/lib/components/VBtnToggle/VBtnToggle.js.map +1 -1
  428. package/lib/components/VCalendar/VCalendar.js +25 -24
  429. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  430. package/lib/components/VCalendar/VCalendarCategory.js +16 -19
  431. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  432. package/lib/components/VCalendar/VCalendarDaily.js +39 -41
  433. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  434. package/lib/components/VCalendar/VCalendarMonthly.js +1 -3
  435. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  436. package/lib/components/VCalendar/VCalendarWeekly.js +30 -32
  437. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  438. package/lib/components/VCalendar/mixins/calendar-with-events.js +24 -27
  439. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  440. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +1 -3
  441. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  442. package/lib/components/VCalendar/mixins/times.js +2 -2
  443. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  444. package/lib/components/VCard/VCard.js +12 -14
  445. package/lib/components/VCard/VCard.js.map +1 -1
  446. package/lib/components/VCarousel/VCarousel.js +39 -31
  447. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  448. package/lib/components/VCarousel/VCarouselItem.js +19 -17
  449. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  450. package/lib/components/VCheckbox/VCheckbox.js +10 -10
  451. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  452. package/lib/components/VCheckbox/VSimpleCheckbox.js +25 -19
  453. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  454. package/lib/components/VChip/VChip.js +43 -34
  455. package/lib/components/VChip/VChip.js.map +1 -1
  456. package/lib/components/VChipGroup/VChipGroup.js +2 -2
  457. package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
  458. package/lib/components/VColorPicker/VColorPicker.js +30 -23
  459. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  460. package/lib/components/VColorPicker/VColorPickerCanvas.js +8 -9
  461. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  462. package/lib/components/VColorPicker/VColorPickerEdit.js +24 -19
  463. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  464. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -35
  465. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  466. package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -14
  467. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  468. package/lib/components/VCombobox/VCombobox.js +20 -20
  469. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  470. package/lib/components/VContent/VContent.js +4 -8
  471. package/lib/components/VContent/VContent.js.map +1 -1
  472. package/lib/components/VCounter/VCounter.js +7 -7
  473. package/lib/components/VCounter/VCounter.js.map +1 -1
  474. package/lib/components/VData/VData.js +3 -3
  475. package/lib/components/VData/VData.js.map +1 -1
  476. package/lib/components/VDataIterator/VDataFooter.js +46 -34
  477. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  478. package/lib/components/VDataIterator/VDataIterator.js +20 -16
  479. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  480. package/lib/components/VDataTable/MobileRow.js +16 -11
  481. package/lib/components/VDataTable/MobileRow.js.map +1 -1
  482. package/lib/components/VDataTable/Row.js +12 -6
  483. package/lib/components/VDataTable/Row.js.map +1 -1
  484. package/lib/components/VDataTable/RowGroup.js +9 -7
  485. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  486. package/lib/components/VDataTable/VDataTable.js +169 -135
  487. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  488. package/lib/components/VDataTable/VDataTableHeader.js +19 -11
  489. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  490. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +24 -21
  491. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  492. package/lib/components/VDataTable/VDataTableHeaderMobile.js +9 -10
  493. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  494. package/lib/components/VDataTable/VEditDialog.js +41 -31
  495. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  496. package/lib/components/VDataTable/VSimpleTable.js +6 -6
  497. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  498. package/lib/components/VDataTable/VVirtualTable.js +11 -12
  499. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  500. package/lib/components/VDataTable/mixins/header.js +17 -12
  501. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  502. package/lib/components/VDatePicker/VDatePicker.js +107 -92
  503. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  504. package/lib/components/VDatePicker/VDatePickerDateTable.js +11 -13
  505. package/lib/components/VDatePicker/VDatePickerDateTable.js.map +1 -1
  506. package/lib/components/VDatePicker/VDatePickerHeader.js +37 -25
  507. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  508. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -3
  509. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  510. package/lib/components/VDatePicker/VDatePickerTitle.js +16 -10
  511. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  512. package/lib/components/VDatePicker/VDatePickerYears.js +3 -3
  513. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  514. package/lib/components/VDatePicker/mixins/date-picker-table.js +36 -27
  515. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  516. package/lib/components/VDatePicker/util/eventHelpers.js.map +1 -1
  517. package/lib/components/VDialog/VDialog.js +46 -27
  518. package/lib/components/VDialog/VDialog.js.map +1 -1
  519. package/lib/components/VDivider/VDivider.js +12 -14
  520. package/lib/components/VDivider/VDivider.js.map +1 -1
  521. package/lib/components/VExpansionPanel/VExpansionPanel.js +8 -9
  522. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  523. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +9 -6
  524. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  525. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +31 -21
  526. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  527. package/lib/components/VExpansionPanel/VExpansionPanels.js +2 -4
  528. package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
  529. package/lib/components/VFileInput/VFileInput.js +34 -31
  530. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  531. package/lib/components/VFooter/VFooter.js +5 -6
  532. package/lib/components/VFooter/VFooter.js.map +1 -1
  533. package/lib/components/VForm/VForm.js +11 -8
  534. package/lib/components/VForm/VForm.js.map +1 -1
  535. package/lib/components/VGrid/VCol.js +9 -9
  536. package/lib/components/VGrid/VCol.js.map +1 -1
  537. package/lib/components/VGrid/VContainer.js +22 -16
  538. package/lib/components/VGrid/VContainer.js.map +1 -1
  539. package/lib/components/VGrid/VRow.js +12 -9
  540. package/lib/components/VGrid/VRow.js.map +1 -1
  541. package/lib/components/VGrid/grid.js +7 -6
  542. package/lib/components/VGrid/grid.js.map +1 -1
  543. package/lib/components/VHover/VHover.js +3 -3
  544. package/lib/components/VHover/VHover.js.map +1 -1
  545. package/lib/components/VIcon/VIcon.js +36 -65
  546. package/lib/components/VIcon/VIcon.js.map +1 -1
  547. package/lib/components/VImg/VImg.js +41 -32
  548. package/lib/components/VImg/VImg.js.map +1 -1
  549. package/lib/components/VInput/VInput.js +61 -59
  550. package/lib/components/VInput/VInput.js.map +1 -1
  551. package/lib/components/VItemGroup/VItem.js +5 -5
  552. package/lib/components/VItemGroup/VItem.js.map +1 -1
  553. package/lib/components/VItemGroup/VItemGroup.js +4 -8
  554. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  555. package/lib/components/VLabel/VLabel.js +18 -13
  556. package/lib/components/VLabel/VLabel.js.map +1 -1
  557. package/lib/components/VLazy/VLazy.js +7 -6
  558. package/lib/components/VLazy/VLazy.js.map +1 -1
  559. package/lib/components/VList/VList.js +12 -13
  560. package/lib/components/VList/VList.js.map +1 -1
  561. package/lib/components/VList/VListGroup.js +29 -21
  562. package/lib/components/VList/VListGroup.js.map +1 -1
  563. package/lib/components/VList/VListItem.js +26 -25
  564. package/lib/components/VList/VListItem.js.map +1 -1
  565. package/lib/components/VList/VListItemAction.js +8 -7
  566. package/lib/components/VList/VListItemAction.js.map +1 -1
  567. package/lib/components/VList/VListItemAvatar.js +9 -10
  568. package/lib/components/VList/VListItemAvatar.js.map +1 -1
  569. package/lib/components/VList/VListItemGroup.js +2 -2
  570. package/lib/components/VList/VListItemGroup.js.map +1 -1
  571. package/lib/components/VList/VListItemIcon.js +8 -7
  572. package/lib/components/VList/VListItemIcon.js.map +1 -1
  573. package/lib/components/VMain/VMain.js +5 -8
  574. package/lib/components/VMain/VMain.js.map +1 -1
  575. package/lib/components/VMenu/VMenu.js +65 -40
  576. package/lib/components/VMenu/VMenu.js.map +1 -1
  577. package/lib/components/VMessages/VMessages.js +12 -11
  578. package/lib/components/VMessages/VMessages.js.map +1 -1
  579. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +60 -49
  580. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  581. package/lib/components/VOtpInput/VOtpInput.js +46 -40
  582. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  583. package/lib/components/VOverflowBtn/VOverflowBtn.js +8 -10
  584. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  585. package/lib/components/VOverlay/VOverlay.js +8 -10
  586. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  587. package/lib/components/VPagination/VPagination.js +42 -30
  588. package/lib/components/VPagination/VPagination.js.map +1 -1
  589. package/lib/components/VParallax/VParallax.js +13 -12
  590. package/lib/components/VParallax/VParallax.js.map +1 -1
  591. package/lib/components/VPicker/VPicker.js +20 -15
  592. package/lib/components/VPicker/VPicker.js.map +1 -1
  593. package/lib/components/VProgressCircular/VProgressCircular.js +37 -30
  594. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  595. package/lib/components/VProgressLinear/VProgressLinear.js +30 -24
  596. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  597. package/lib/components/VRadioGroup/VRadio.js +34 -24
  598. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  599. package/lib/components/VRadioGroup/VRadioGroup.js +18 -17
  600. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  601. package/lib/components/VRangeSlider/VRangeSlider.js +7 -9
  602. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  603. package/lib/components/VRating/VRating.js +34 -34
  604. package/lib/components/VRating/VRating.js.map +1 -1
  605. package/lib/components/VResponsive/VResponsive.js +11 -10
  606. package/lib/components/VResponsive/VResponsive.js.map +1 -1
  607. package/lib/components/VSelect/VSelect.js +122 -94
  608. package/lib/components/VSelect/VSelect.js.map +1 -1
  609. package/lib/components/VSelect/VSelectList.js +59 -39
  610. package/lib/components/VSelect/VSelectList.js.map +1 -1
  611. package/lib/components/VSheet/VSheet.js +6 -10
  612. package/lib/components/VSheet/VSheet.js.map +1 -1
  613. package/lib/components/VSkeletonLoader/VSkeletonLoader.js +21 -16
  614. package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
  615. package/lib/components/VSlideGroup/VSlideGroup.js +51 -35
  616. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  617. package/lib/components/VSlider/VSlider.js +75 -63
  618. package/lib/components/VSlider/VSlider.js.map +1 -1
  619. package/lib/components/VSnackbar/VSnackbar.js +31 -20
  620. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  621. package/lib/components/VSparkline/VSparkline.js +16 -17
  622. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  623. package/lib/components/VSpeedDial/VSpeedDial.js +10 -9
  624. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  625. package/lib/components/VStepper/VStepper.js +6 -6
  626. package/lib/components/VStepper/VStepper.js.map +1 -1
  627. package/lib/components/VStepper/VStepperContent.js +8 -8
  628. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  629. package/lib/components/VStepper/VStepperStep.js +9 -10
  630. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  631. package/lib/components/VSubheader/VSubheader.js +7 -7
  632. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  633. package/lib/components/VSwitch/VSwitch.js +26 -23
  634. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  635. package/lib/components/VSystemBar/VSystemBar.js +3 -4
  636. package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
  637. package/lib/components/VTabs/VTab.js +12 -13
  638. package/lib/components/VTabs/VTab.js.map +1 -1
  639. package/lib/components/VTabs/VTabItem.js +4 -5
  640. package/lib/components/VTabs/VTabItem.js.map +1 -1
  641. package/lib/components/VTabs/VTabs.js +48 -34
  642. package/lib/components/VTabs/VTabs.js.map +1 -1
  643. package/lib/components/VTabs/VTabsBar.js +10 -8
  644. package/lib/components/VTabs/VTabsBar.js.map +1 -1
  645. package/lib/components/VTabs/VTabsItems.js +3 -5
  646. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  647. package/lib/components/VTabs/VTabsSlider.js +3 -4
  648. package/lib/components/VTabs/VTabsSlider.js.map +1 -1
  649. package/lib/components/VTextField/VTextField.js +73 -57
  650. package/lib/components/VTextField/VTextField.js.map +1 -1
  651. package/lib/components/VTextarea/VTextarea.js +5 -6
  652. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  653. package/lib/components/VThemeProvider/VThemeProvider.js +4 -5
  654. package/lib/components/VThemeProvider/VThemeProvider.js.map +1 -1
  655. package/lib/components/VTimePicker/VTimePicker.js +26 -22
  656. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  657. package/lib/components/VTimePicker/VTimePickerClock.js +7 -8
  658. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  659. package/lib/components/VTimePicker/VTimePickerTitle.js +7 -8
  660. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  661. package/lib/components/VTimeline/VTimeline.js +4 -4
  662. package/lib/components/VTimeline/VTimeline.js.map +1 -1
  663. package/lib/components/VTimeline/VTimelineItem.js +26 -23
  664. package/lib/components/VTimeline/VTimelineItem.js.map +1 -1
  665. package/lib/components/VToolbar/VToolbar.js +15 -19
  666. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  667. package/lib/components/VTooltip/VTooltip.js +12 -9
  668. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  669. package/lib/components/VTreeview/VTreeview.js +6 -6
  670. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  671. package/lib/components/VTreeview/VTreeviewNode.js +98 -83
  672. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  673. package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -12
  674. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  675. package/lib/components/VWindow/VWindow.js +37 -27
  676. package/lib/components/VWindow/VWindow.js.map +1 -1
  677. package/lib/components/VWindow/VWindowItem.js +29 -23
  678. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  679. package/lib/components/index.js +4 -0
  680. package/lib/components/index.js.map +1 -1
  681. package/lib/components/transitions/createTransition.js +25 -20
  682. package/lib/components/transitions/createTransition.js.map +1 -1
  683. package/lib/directives/click-outside/index.js +6 -6
  684. package/lib/directives/click-outside/index.js.map +1 -1
  685. package/lib/directives/intersect/index.js +6 -6
  686. package/lib/directives/intersect/index.js.map +1 -1
  687. package/lib/directives/ripple/index.js +5 -6
  688. package/lib/directives/ripple/index.js.map +1 -1
  689. package/lib/directives/touch/index.js +6 -7
  690. package/lib/directives/touch/index.js.map +1 -1
  691. package/lib/framework.js +1 -1
  692. package/lib/framework.js.map +1 -1
  693. package/lib/helpers.js +9 -0
  694. package/lib/helpers.js.map +1 -0
  695. package/lib/install.js +16 -39
  696. package/lib/install.js.map +1 -1
  697. package/lib/mixins/activatable/index.js +8 -9
  698. package/lib/mixins/activatable/index.js.map +1 -1
  699. package/lib/mixins/binds-attrs/index.js +3 -3
  700. package/lib/mixins/binds-attrs/index.js.map +1 -1
  701. package/lib/mixins/bootable/index.js +4 -5
  702. package/lib/mixins/bootable/index.js.map +1 -1
  703. package/lib/mixins/button-group/index.js +3 -5
  704. package/lib/mixins/button-group/index.js.map +1 -1
  705. package/lib/mixins/colorable/index.js +6 -42
  706. package/lib/mixins/colorable/index.js.map +1 -1
  707. package/lib/mixins/comparable/index.js +2 -2
  708. package/lib/mixins/comparable/index.js.map +1 -1
  709. package/lib/mixins/delayable/index.js +2 -2
  710. package/lib/mixins/delayable/index.js.map +1 -1
  711. package/lib/mixins/dependent/index.js +2 -8
  712. package/lib/mixins/dependent/index.js.map +1 -1
  713. package/lib/mixins/detachable/index.js +2 -2
  714. package/lib/mixins/detachable/index.js.map +1 -1
  715. package/lib/mixins/elevatable/index.js +2 -2
  716. package/lib/mixins/elevatable/index.js.map +1 -1
  717. package/lib/mixins/filterable/index.js +2 -2
  718. package/lib/mixins/filterable/index.js.map +1 -1
  719. package/lib/mixins/groupable/index.js +11 -13
  720. package/lib/mixins/groupable/index.js.map +1 -1
  721. package/lib/mixins/intersectable/index.js +5 -11
  722. package/lib/mixins/intersectable/index.js.map +1 -1
  723. package/lib/mixins/loadable/index.js +9 -7
  724. package/lib/mixins/loadable/index.js.map +1 -1
  725. package/lib/mixins/localable/index.js +2 -2
  726. package/lib/mixins/localable/index.js.map +1 -1
  727. package/lib/mixins/measurable/index.js +2 -2
  728. package/lib/mixins/measurable/index.js.map +1 -1
  729. package/lib/mixins/menuable/index.js +5 -5
  730. package/lib/mixins/menuable/index.js.map +1 -1
  731. package/lib/mixins/mobile/index.js +12 -9
  732. package/lib/mixins/mobile/index.js.map +1 -1
  733. package/lib/mixins/mouse/index.js +4 -11
  734. package/lib/mixins/mouse/index.js.map +1 -1
  735. package/lib/mixins/overlayable/index.js +13 -44
  736. package/lib/mixins/overlayable/index.js.map +1 -1
  737. package/lib/mixins/picker/index.js +21 -19
  738. package/lib/mixins/picker/index.js.map +1 -1
  739. package/lib/mixins/picker-button/index.js +9 -10
  740. package/lib/mixins/picker-button/index.js.map +1 -1
  741. package/lib/mixins/positionable/index.js +2 -2
  742. package/lib/mixins/positionable/index.js.map +1 -1
  743. package/lib/mixins/proxyable/index.js +3 -3
  744. package/lib/mixins/proxyable/index.js.map +1 -1
  745. package/lib/mixins/registrable/index.js +3 -3
  746. package/lib/mixins/registrable/index.js.map +1 -1
  747. package/lib/mixins/returnable/index.js +2 -2
  748. package/lib/mixins/returnable/index.js.map +1 -1
  749. package/lib/mixins/rippleable/index.js +11 -9
  750. package/lib/mixins/rippleable/index.js.map +1 -1
  751. package/lib/mixins/roundable/index.js +2 -2
  752. package/lib/mixins/roundable/index.js.map +1 -1
  753. package/lib/mixins/routable/index.js +24 -20
  754. package/lib/mixins/routable/index.js.map +1 -1
  755. package/lib/mixins/scrollable/index.js +2 -2
  756. package/lib/mixins/scrollable/index.js.map +1 -1
  757. package/lib/mixins/selectable/index.js +23 -17
  758. package/lib/mixins/selectable/index.js.map +1 -1
  759. package/lib/mixins/sizeable/index.js +2 -2
  760. package/lib/mixins/sizeable/index.js.map +1 -1
  761. package/lib/mixins/ssr-bootable/index.js +2 -2
  762. package/lib/mixins/ssr-bootable/index.js.map +1 -1
  763. package/lib/mixins/stackable/index.js +2 -2
  764. package/lib/mixins/stackable/index.js.map +1 -1
  765. package/lib/mixins/themeable/index.js +8 -5
  766. package/lib/mixins/themeable/index.js.map +1 -1
  767. package/lib/mixins/toggleable/index.js +7 -3
  768. package/lib/mixins/toggleable/index.js.map +1 -1
  769. package/lib/mixins/transitionable/index.js +2 -2
  770. package/lib/mixins/transitionable/index.js.map +1 -1
  771. package/lib/mixins/translatable/index.js +2 -2
  772. package/lib/mixins/translatable/index.js.map +1 -1
  773. package/lib/mixins/validatable/index.js +1 -1
  774. package/lib/mixins/validatable/index.js.map +1 -1
  775. package/lib/services/goto/util.js.map +1 -1
  776. package/lib/services/theme/index.js +11 -7
  777. package/lib/services/theme/index.js.map +1 -1
  778. package/lib/util/helpers.js +16 -28
  779. package/lib/util/helpers.js.map +1 -1
  780. package/lib/util/mergeData.js +1 -1
  781. package/lib/util/mergeData.js.map +1 -1
  782. package/lib/util/mixins.js +4 -9
  783. package/lib/util/mixins.js.map +1 -1
  784. package/lib/vuetify.js +19 -0
  785. package/lib/vuetify.js.map +1 -0
  786. package/package.json +9 -8
  787. package/src/components/VAlert/VAlert.ts +50 -42
  788. package/src/components/VApp/VApp.ts +9 -11
  789. package/src/components/VAppBar/VAppBar.ts +10 -11
  790. package/src/components/VAppBar/VAppBarNavIcon.ts +11 -9
  791. package/src/components/VAppBar/VAppBarTitle.ts +3 -5
  792. package/src/components/VAutocomplete/VAutocomplete.ts +22 -21
  793. package/src/components/VAvatar/VAvatar.ts +4 -4
  794. package/src/components/VBadge/VBadge.ts +22 -18
  795. package/src/components/VBanner/VBanner.ts +27 -22
  796. package/src/components/VBanner/__tests__/VBanner.spec.ts +2 -2
  797. package/src/components/VBottomNavigation/VBottomNavigation.ts +14 -12
  798. package/src/components/VBottomSheet/VBottomSheet.ts +2 -4
  799. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +7 -7
  800. package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +8 -6
  801. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +1 -1
  802. package/src/components/VBtn/VBtn.ts +25 -34
  803. package/src/components/VBtn/__tests__/VBtn.spec.ts +219 -219
  804. package/src/components/VBtnToggle/VBtnToggle.ts +2 -2
  805. package/src/components/VCalendar/VCalendar.ts +28 -22
  806. package/src/components/VCalendar/VCalendarCategory.ts +16 -17
  807. package/src/components/VCalendar/VCalendarDaily.ts +38 -38
  808. package/src/components/VCalendar/VCalendarMonthly.ts +1 -3
  809. package/src/components/VCalendar/VCalendarWeekly.ts +29 -29
  810. package/src/components/VCalendar/mixins/calendar-with-events.ts +21 -23
  811. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -3
  812. package/src/components/VCalendar/mixins/times.ts +2 -2
  813. package/src/components/VCard/VCard.ts +13 -12
  814. package/src/components/VCarousel/VCarousel.ts +37 -29
  815. package/src/components/VCarousel/VCarouselItem.ts +19 -19
  816. package/src/components/VCheckbox/VCheckbox.ts +10 -10
  817. package/src/components/VCheckbox/VSimpleCheckbox.ts +22 -23
  818. package/src/components/VChip/VChip.ts +41 -43
  819. package/src/components/VChipGroup/VChipGroup.ts +2 -2
  820. package/src/components/VColorPicker/VColorPicker.ts +29 -22
  821. package/src/components/VColorPicker/VColorPickerCanvas.ts +7 -8
  822. package/src/components/VColorPicker/VColorPickerEdit.ts +23 -18
  823. package/src/components/VColorPicker/VColorPickerPreview.ts +40 -30
  824. package/src/components/VColorPicker/VColorPickerSwatches.ts +14 -13
  825. package/src/components/VCombobox/VCombobox.ts +21 -21
  826. package/src/components/VContent/VContent.ts +4 -7
  827. package/src/components/VCounter/VCounter.ts +5 -5
  828. package/src/components/VData/VData.ts +3 -3
  829. package/src/components/VData/__tests__/VData.spec.ts +9 -9
  830. package/src/components/VDataIterator/VDataFooter.ts +48 -36
  831. package/src/components/VDataIterator/VDataIterator.ts +20 -16
  832. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +4 -4
  833. package/src/components/VDataTable/MobileRow.ts +12 -12
  834. package/src/components/VDataTable/Row.ts +9 -8
  835. package/src/components/VDataTable/RowGroup.ts +6 -8
  836. package/src/components/VDataTable/VDataTable.ts +180 -148
  837. package/src/components/VDataTable/VDataTableHeader.ts +8 -9
  838. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +25 -20
  839. package/src/components/VDataTable/VDataTableHeaderMobile.ts +9 -10
  840. package/src/components/VDataTable/VEditDialog.ts +39 -31
  841. package/src/components/VDataTable/VSimpleTable.ts +6 -6
  842. package/src/components/VDataTable/VVirtualTable.ts +12 -13
  843. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +2 -2
  844. package/src/components/VDataTable/__tests__/Row.spec.ts +2 -2
  845. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +992 -997
  846. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +2 -2
  847. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +2 -2
  848. package/src/components/VDataTable/mixins/header.ts +18 -12
  849. package/src/components/VDatePicker/VDatePicker.ts +108 -92
  850. package/src/components/VDatePicker/VDatePickerDateTable.ts +12 -12
  851. package/src/components/VDatePicker/VDatePickerHeader.ts +36 -24
  852. package/src/components/VDatePicker/VDatePickerMonthTable.ts +3 -3
  853. package/src/components/VDatePicker/VDatePickerTitle.ts +15 -11
  854. package/src/components/VDatePicker/VDatePickerYears.ts +3 -3
  855. package/src/components/VDatePicker/mixins/date-picker-table.ts +32 -29
  856. package/src/components/VDatePicker/util/eventHelpers.ts +3 -3
  857. package/src/components/VDialog/VDialog.ts +42 -38
  858. package/src/components/VDialog/__tests__/VDialog.spec.ts +10 -10
  859. package/src/components/VDivider/VDivider.ts +11 -12
  860. package/src/components/VExpansionPanel/VExpansionPanel.ts +7 -8
  861. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +8 -10
  862. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +33 -33
  863. package/src/components/VExpansionPanel/VExpansionPanels.ts +2 -4
  864. package/src/components/VFileInput/VFileInput.ts +35 -31
  865. package/src/components/VFooter/VFooter.ts +4 -5
  866. package/src/components/VForm/VForm.ts +10 -7
  867. package/src/components/VGrid/VCol.ts +4 -9
  868. package/src/components/VGrid/VContainer.ts +15 -18
  869. package/src/components/VGrid/VRow.ts +8 -8
  870. package/src/components/VGrid/grid.ts +3 -7
  871. package/src/components/VHover/VHover.ts +3 -3
  872. package/src/components/VHover/__tests__/VHover.spec.ts +1 -1
  873. package/src/components/VIcon/VIcon.ts +39 -64
  874. package/src/components/VImg/VImg.ts +40 -44
  875. package/src/components/VInput/VInput.ts +61 -51
  876. package/src/components/VItemGroup/VItem.ts +5 -5
  877. package/src/components/VItemGroup/VItemGroup.ts +2 -6
  878. package/src/components/VLabel/VLabel.ts +13 -12
  879. package/src/components/VLazy/VLazy.ts +4 -5
  880. package/src/components/VList/VList.ts +11 -10
  881. package/src/components/VList/VListGroup.ts +28 -22
  882. package/src/components/VList/VListItem.ts +24 -31
  883. package/src/components/VList/VListItemAction.ts +5 -8
  884. package/src/components/VList/VListItemAvatar.ts +10 -8
  885. package/src/components/VList/VListItemGroup.ts +2 -2
  886. package/src/components/VList/VListItemIcon.ts +5 -7
  887. package/src/components/VList/__tests__/VListItemAction.spec.ts +1 -1
  888. package/src/components/VMain/VMain.ts +5 -7
  889. package/src/components/VMenu/VMenu.ts +60 -47
  890. package/src/components/VMenu/__tests__/VMenu.spec.ts +20 -20
  891. package/src/components/VMessages/VMessages.ts +12 -9
  892. package/src/components/VMessages/__tests__/VMessages.spec.ts +1 -1
  893. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +49 -51
  894. package/src/components/VOtpInput/VOtpInput.ts +46 -39
  895. package/src/components/VOverflowBtn/VOverflowBtn.ts +9 -12
  896. package/src/components/VOverlay/VOverlay.ts +8 -8
  897. package/src/components/VPagination/VPagination.ts +37 -33
  898. package/src/components/VParallax/VParallax.ts +12 -11
  899. package/src/components/VPicker/VPicker.ts +20 -15
  900. package/src/components/VProgressCircular/VProgressCircular.ts +35 -32
  901. package/src/components/VProgressLinear/VProgressLinear.ts +32 -35
  902. package/src/components/VRadioGroup/VRadio.ts +31 -23
  903. package/src/components/VRadioGroup/VRadioGroup.ts +16 -18
  904. package/src/components/VRangeSlider/VRangeSlider.ts +7 -9
  905. package/src/components/VRating/VRating.ts +33 -35
  906. package/src/components/VRating/__tests__/VRating.spec.ts +64 -70
  907. package/src/components/VResponsive/VResponsive.ts +10 -10
  908. package/src/components/VSelect/VSelect.ts +116 -104
  909. package/src/components/VSelect/VSelectList.ts +59 -40
  910. package/src/components/VSheet/VSheet.ts +11 -13
  911. package/src/components/VSkeletonLoader/VSkeletonLoader.ts +20 -15
  912. package/src/components/VSlideGroup/VSlideGroup.ts +50 -44
  913. package/src/components/VSlideGroup/__tests__/VSlideGroup.spec.ts +4 -4
  914. package/src/components/VSlider/VSlider.ts +75 -62
  915. package/src/components/VSnackbar/VSnackbar.ts +29 -26
  916. package/src/components/VSparkline/VSparkline.ts +17 -18
  917. package/src/components/VSpeedDial/VSpeedDial.ts +9 -8
  918. package/src/components/VStepper/VStepper.ts +5 -5
  919. package/src/components/VStepper/VStepperContent.ts +6 -14
  920. package/src/components/VStepper/VStepperStep.ts +8 -9
  921. package/src/components/VSubheader/VSubheader.ts +6 -6
  922. package/src/components/VSubheader/__tests__/VSubheader.spec.ts +1 -1
  923. package/src/components/VSwitch/VSwitch.ts +27 -29
  924. package/src/components/VSystemBar/VSystemBar.ts +2 -3
  925. package/src/components/VTabs/VTab.ts +14 -14
  926. package/src/components/VTabs/VTabItem.ts +4 -6
  927. package/src/components/VTabs/VTabs.ts +43 -38
  928. package/src/components/VTabs/VTabsBar.ts +9 -7
  929. package/src/components/VTabs/VTabsItems.ts +3 -5
  930. package/src/components/VTabs/VTabsSlider.ts +2 -3
  931. package/src/components/VTabs/__tests__/VTabs.spec.ts +1 -1
  932. package/src/components/VTextField/VTextField.ts +68 -62
  933. package/src/components/VTextarea/VTextarea.ts +5 -6
  934. package/src/components/VThemeProvider/VThemeProvider.ts +4 -5
  935. package/src/components/VTimePicker/VTimePicker.ts +36 -32
  936. package/src/components/VTimePicker/VTimePickerClock.ts +7 -8
  937. package/src/components/VTimePicker/VTimePickerTitle.ts +7 -8
  938. package/src/components/VTimeline/VTimeline.ts +3 -3
  939. package/src/components/VTimeline/VTimelineItem.ts +25 -22
  940. package/src/components/VToolbar/VToolbar.ts +15 -17
  941. package/src/components/VTooltip/VTooltip.ts +12 -9
  942. package/src/components/VTreeview/VTreeview.ts +5 -6
  943. package/src/components/VTreeview/VTreeviewNode.ts +103 -88
  944. package/src/components/VVirtualScroll/VVirtualScroll.ts +7 -10
  945. package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +1 -1
  946. package/src/components/VWindow/VWindow.sass +5 -5
  947. package/src/components/VWindow/VWindow.ts +33 -31
  948. package/src/components/VWindow/VWindowItem.ts +32 -27
  949. package/src/components/index.ts +10 -0
  950. package/src/components/transitions/createTransition.ts +25 -23
  951. package/src/directives/click-outside/index.ts +6 -6
  952. package/src/directives/intersect/index.ts +6 -6
  953. package/src/directives/ripple/index.ts +6 -9
  954. package/src/directives/touch/index.ts +6 -9
  955. package/src/framework.ts +0 -2
  956. package/src/helpers.ts +18 -0
  957. package/src/index.ts +3 -19
  958. package/src/install.ts +12 -39
  959. package/src/mixins/activatable/__tests__/activatable.spec.ts +1 -1
  960. package/src/mixins/activatable/index.ts +8 -12
  961. package/src/mixins/binds-attrs/index.ts +3 -3
  962. package/src/mixins/bootable/index.ts +4 -5
  963. package/src/mixins/button-group/index.ts +3 -5
  964. package/src/mixins/colorable/index.ts +6 -49
  965. package/src/mixins/comparable/index.ts +2 -2
  966. package/src/mixins/delayable/index.ts +2 -2
  967. package/src/mixins/dependent/index.ts +3 -11
  968. package/src/mixins/detachable/__tests__/detachable.spec.ts +3 -3
  969. package/src/mixins/detachable/index.ts +2 -2
  970. package/src/mixins/elevatable/index.ts +2 -2
  971. package/src/mixins/filterable/index.ts +2 -2
  972. package/src/mixins/groupable/index.ts +9 -13
  973. package/src/mixins/intersectable/index.ts +5 -8
  974. package/src/mixins/loadable/index.ts +12 -10
  975. package/src/mixins/localable/index.ts +2 -2
  976. package/src/mixins/measurable/index.ts +2 -2
  977. package/src/mixins/menuable/index.ts +5 -5
  978. package/src/mixins/mobile/index.ts +12 -10
  979. package/src/mixins/mouse/index.ts +4 -10
  980. package/src/mixins/overlayable/index.ts +16 -44
  981. package/src/mixins/picker/index.ts +19 -17
  982. package/src/mixins/picker-button/index.ts +7 -6
  983. package/src/mixins/positionable/index.ts +2 -2
  984. package/src/mixins/proxyable/index.ts +5 -5
  985. package/src/mixins/registrable/index.ts +3 -3
  986. package/src/mixins/returnable/index.ts +2 -2
  987. package/src/mixins/rippleable/index.ts +9 -16
  988. package/src/mixins/roundable/index.ts +2 -2
  989. package/src/mixins/routable/__tests__/routable.spec.ts +3 -6
  990. package/src/mixins/routable/index.ts +23 -24
  991. package/src/mixins/scrollable/index.ts +2 -2
  992. package/src/mixins/selectable/index.ts +23 -18
  993. package/src/mixins/sizeable/index.ts +2 -2
  994. package/src/mixins/ssr-bootable/index.ts +2 -2
  995. package/src/mixins/stackable/index.ts +2 -2
  996. package/src/mixins/themeable/index.ts +10 -6
  997. package/src/mixins/toggleable/index.ts +6 -3
  998. package/src/mixins/transitionable/index.ts +2 -2
  999. package/src/mixins/translatable/index.ts +2 -2
  1000. package/src/mixins/validatable/index.ts +1 -1
  1001. package/src/services/goto/util.ts +0 -1
  1002. package/src/services/theme/index.ts +7 -12
  1003. package/src/util/helpers.ts +12 -30
  1004. package/src/util/mergeData.ts +1 -1
  1005. package/src/util/mixins.ts +20 -10
  1006. package/src/vuetify.ts +19 -0
  1007. package/es5/util/make-directive-activatable.js +0 -74
  1008. package/es5/util/make-directive-activatable.js.map +0 -1
  1009. package/lib/util/make-directive-activatable.js +0 -49
  1010. package/lib/util/make-directive-activatable.js.map +0 -1
  1011. package/src/util/make-directive-activatable.ts +0 -55
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VSkeletonLoader/VSkeletonLoader.ts"],"names":[],"mappings":"AAAA,SAAQ,UAAR,EAAoB,CAApB,QAA4B,KAA5B,C,CACA;;AACA,OAAO,8DAAP,C,CAEA;;AACA,OAAO,UAAP,MAAuB,yBAAvB;AACA,OAAO,UAAP,MAAuB,yBAAvB;AACA,OAAO,SAAP,MAAsB,wBAAtB,C,CAEA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAIA,SAAS,OAAT,QAAwB,oBAAxB;AAUA;;AACA,eAAe,MAAM,CACnB,UADmB,EAEnB,UAFmB,EAGnB,SAHmB,CAAN,CAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,iBADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,WAAW,EAAE,OADR;AAEL,IAAA,OAAO,EAAE,OAFJ;AAGL,IAAA,WAAW,EAAE;AACX,MAAA,IAAI,EAAE,MADK;AAEX,MAAA,OAAO,EAAE;AAFE,KAHR;AAOL,IAAA,IAAI,EAAE,OAPD;AAQL,IAAA,UAAU,EAAE,MARP;AASL,IAAA,IAAI,EAAE,MATD;AAUL,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,MADD;AAEL,MAAA,OAAO,EAAE,OAAO,EAAP;AAFJ;AAVF,GAHA;AAmBP,EAAA,QAAQ,EAAE;AACR,IAAA,KAAK,GAAA;AACH,UAAI,CAAC,KAAK,SAAV,EAAqB,OAAO,KAAK,MAAZ;AAErB,aAAO;AACL,qBAAa,CAAC,KAAK,WAAN,GAAoB,IAApB,GAA2B,SADnC;AAEL,qBAAa,CAAC,KAAK,WAAN,GAAoB,QAApB,GAA+B,SAFvC;AAGL,sBAAc,CAAC,KAAK,WAAN,GAAoB,KAAK,QAAL,CAAc,IAAd,CAAmB,CAAnB,CAAqB,KAAK,WAA1B,CAApB,GAA6D,SAHtE;AAIL,QAAA,IAAI,EAAE,CAAC,KAAK,WAAN,GAAoB,OAApB,GAA8B;AAJ/B,OAAP;AAMD,KAVO;;AAWR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,0CAAkC,KAAK,WADlC;AAEL,yCAAiC,KAAK,SAFjC;AAGL,mCAA2B,KAAK,IAH3B;AAIL,WAAG,KAAK,YAJH;AAKL,WAAG,KAAK;AALH,OAAP;AAOD,KAnBO;;AAoBR,IAAA,SAAS,GAAA;AACP,aAAO,EAAE,aAAa,KAAK,MAApB,KAA+B,KAAK,OAA3C;AACD,KAtBO;;AAuBR,IAAA,SAAS,GAAA;AACP,aAAO;AACL,QAAA,OAAO,EAAE,UADJ;AAEL,QAAA,OAAO,EAAE,oBAFJ;AAGL,QAAA,MAAM,EAAE,QAHH;AAIL,QAAA,MAAM,EAAE,QAJH;AAKL,QAAA,IAAI,EAAE,qBALD;AAML,uBAAe,yBANV;AAOL,wBAAgB,SAPX;AAQL,QAAA,IAAI,EAAE,MARD;AASL,uBAAe,kFATV;AAUL,+BAAuB,gBAVlB;AAWL,4BAAoB,WAXf;AAYL,QAAA,OAAO,EAAE,SAZJ;AAaL,QAAA,KAAK,EAAE,OAbF;AAcL,qBAAa,MAdR;AAeL,4BAAoB,cAff;AAgBL,8BAAsB,WAhBjB;AAiBL,qCAA6B,mBAjBxB;AAkBL,gCAAwB,WAlBnB;AAmBL,uCAA+B,mBAnB1B;AAoBL,QAAA,SAAS,EAAE,QApBN;AAqBL,QAAA,SAAS,EAAE,QArBN;AAsBL,QAAA,KAAK,EAAE,sDAtBF;AAuBL,yBAAiB,eAvBZ;AAwBL,uBAAe,WAxBV;AAyBL,uBAAe,qBAzBV;AA0BL,6BAAqB,oBA1BhB;AA2BL,qBAAa,cA3BR;AA4BL,sBAAc,MA5BT;AA6BL,uBAAe,kBA7BV;AA8BL,QAAA,IAAI,EAAE,MA9BD;AA+BL,WAAG,KAAK;AA/BH,OAAP;AAiCD;;AAzDO,GAnBH;AA+EP,EAAA,OAAO,EAAE;AACP,IAAA,OAAO,CAAE,IAAF,EAAgB,QAAhB,EAAiC;AACtC,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,sBAAsB,IAAI;AADnB,OAAR,EAEL,QAFK,CAAR;AAGD,KALM;;AAMP,IAAA,QAAQ,CAAE,IAAF,EAAc;AACpB;AACA,YAAM,CAAC,IAAD,EAAO,MAAP,IAAiB,IAAI,CAAC,KAAL,CAAW,GAAX,CAAvB;;AACA,YAAM,SAAS,GAAG,MAAM,KAAK,YAAL,CAAkB,IAAlB,CAAxB,CAHoB,CAKpB;AACA;;;AACA,aAAO,KAAK,CAAC,IAAN,CAAW;AAAE,QAAA;AAAF,OAAX,EAAuB,GAAvB,CAA2B,SAA3B,CAAP;AACD,KAdM;;AAeP;AACA;AACA,IAAA,YAAY,CAAE,IAAF,EAAe;AACzB,UAAI,QAAQ,GAAG,EAAf;AACA,MAAA,IAAI,GAAG,IAAI,IAAI,KAAK,IAAb,IAAqB,EAA5B;AACA,YAAM,IAAI,GAAG,KAAK,SAAL,CAAe,IAAf,KAAwB,EAArC,CAHyB,CAKzB;;AACA;;AACA,UAAI,IAAI,KAAK,IAAb,EAAmB,CAAE,CAArB,CACA;AADA,WAEK,IAAI,IAAI,CAAC,OAAL,CAAa,GAAb,IAAoB,CAAC,CAAzB,EAA4B,OAAO,KAAK,QAAL,CAAc,IAAd,CAAP,CAA5B,CACL;AADK,WAEA,IAAI,IAAI,CAAC,OAAL,CAAa,GAAb,IAAoB,CAAC,CAAzB,EAA4B,OAAO,KAAK,QAAL,CAAc,IAAd,CAAP,CAA5B,CACL;AADK,WAEA,IAAI,IAAI,CAAC,OAAL,CAAa,GAAb,IAAoB,CAAC,CAAzB,EAA4B,QAAQ,GAAG,KAAK,QAAL,CAAc,IAAd,CAAX,CAA5B,CACL;AADK,WAEA,IAAI,IAAI,CAAC,OAAL,CAAa,GAAb,IAAoB,CAAC,CAAzB,EAA4B,QAAQ,GAAG,KAAK,QAAL,CAAc,IAAd,CAAX,CAA5B,CACL;AADK,WAEA,IAAI,IAAJ,EAAU,QAAQ,CAAC,IAAT,CAAc,KAAK,YAAL,CAAkB,IAAlB,CAAd;;AAEf,aAAO,CAAC,KAAK,OAAL,CAAa,IAAb,EAAmB,QAAnB,CAAD,CAAP;AACD,KArCM;;AAsCP,IAAA,WAAW,GAAA;AACT,YAAM,QAAQ,GAAG,EAAjB;AAEA,UAAI,CAAC,KAAK,SAAV,EAAqB,QAAQ,CAAC,IAAT,CAAc,OAAO,CAAC,IAAD,CAArB,EAArB,KACK,QAAQ,CAAC,IAAT,CAAc,KAAK,YAAL,EAAd;AAEL;;AACA,UAAI,CAAC,KAAK,UAAV,EAAsB,OAAO,QAAP;AAEtB;;AACA,aAAO,CAAC,CAAC,UAAD,EAAa;AACnB,QAAA,IAAI,EAAE,KAAK,UADQ;AAEnB;AACA;AACA,QAAA,YAAY,EAAE,KAAK,WAJA;AAKnB,QAAA,aAAa,EAAE,KAAK,aALD;AAMnB,QAAA,aAAa,EAAE,KAAK,aAND;AAOnB,QAAA,gBAAgB,EAAE,KAAK;AAPJ,OAAb,EAQL,QARK,CAAR;AASD,KAzDM;;AA0DP,IAAA,QAAQ,CAAE,KAAF,EAAe;AACrB;AACA,aAAO,KAAK,CAAC,OAAN,CAAc,KAAd,EAAqB,EAArB,EAAyB,KAAzB,CAA+B,GAA/B,EAAoC,GAApC,CAAwC,KAAK,YAA7C,CAAP;AACD,KA7DM;;AA8DP,IAAA,aAAa,CAAE,EAAF,EAA+B;AAC1C,WAAK,WAAL,CAAiB,EAAjB;AAEA,UAAI,CAAC,KAAK,SAAV,EAAqB;AAErB,MAAA,EAAE,CAAC,aAAH,GAAmB;AACjB,QAAA,OAAO,EAAE,EAAE,CAAC,KAAH,CAAS,OADD;AAEjB,QAAA,UAAU,EAAE,EAAE,CAAC,KAAH,CAAS;AAFJ,OAAnB;AAKA,MAAA,EAAE,CAAC,KAAH,CAAS,WAAT,CAAqB,YAArB,EAAmC,MAAnC,EAA2C,WAA3C;AACD,KAzEM;;AA0EP,IAAA,aAAa,CAAE,EAAF,EAA+B;AAC1C,MAAA,EAAE,CAAC,KAAH,CAAS,WAAT,CAAqB,SAArB,EAAgC,MAAhC,EAAwC,WAAxC;AACD,KA5EM;;AA6EP,IAAA,WAAW,CAAE,EAAF,EAA+B;AACxC,UAAI,CAAC,EAAE,CAAC,aAAR,EAAuB;AAEvB,MAAA,EAAE,CAAC,KAAH,CAAS,OAAT,GAAmB,EAAE,CAAC,aAAH,CAAiB,OAAjB,IAA4B,EAA/C;AACA,MAAA,EAAE,CAAC,KAAH,CAAS,UAAT,GAAsB,EAAE,CAAC,aAAH,CAAiB,UAAvC;AAEA,aAAO,EAAE,CAAC,aAAV;AACD;;AApFM,GA/EF;;AAsKP,EAAA,MAAM,GAAA;AACJ,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE,CAAC,mBAAD,EAAsB,KAAK,OAA3B,CADO;AAEd,SAAG,KAAK,KAFM;AAGd,SAAG,KAAK,UAHM;AAId,MAAA,KAAK,EAAE,KAAK,SAAL,GAAiB,KAAK,gBAAtB,GAAyC;AAJlC,KAAR,EAKL,CAAC,KAAK,WAAL,EAAD,CALK,CAAR;AAMD;;AA7KM,CAJM,CAAf","sourcesContent":["import {Transition, h} from 'vue'\n// Styles\nimport './VSkeletonLoader.sass'\n\n// Mixins\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\nimport { getSlot } from '../../util/helpers'\nimport { PropValidator } from 'vue/types/options'\n\nexport interface HTMLSkeletonLoaderElement extends HTMLElement {\n _initialStyle?: {\n display: string | null\n transition: string\n }\n}\n\n/* @vue/component */\nexport default mixins(\n Elevatable,\n Measurable,\n Themeable,\n).extend({\n name: 'VSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n tile: Boolean,\n transition: String,\n type: String,\n types: {\n type: Object,\n default: () => ({}),\n } as PropValidator<Record<string, string>>,\n },\n\n computed: {\n attrs (): object {\n if (!this.isLoading) return this.$attrs\n\n return {\n 'aria-busy': !this.boilerplate ? true : undefined,\n 'aria-live': !this.boilerplate ? 'polite' : undefined,\n 'aria-label': !this.boilerplate ? this.$vuetify.lang.t(this.loadingText) : undefined,\n role: !this.boilerplate ? 'alert' : undefined\n }\n },\n classes (): object {\n return {\n 'v-skeleton-loader--boilerplate': this.boilerplate,\n 'v-skeleton-loader--is-loading': this.isLoading,\n 'v-skeleton-loader--tile': this.tile,\n ...this.themeClasses,\n ...this.elevationClasses,\n }\n },\n isLoading (): boolean {\n return !('default' in this.$slots) || this.loading\n },\n rootTypes (): Record<string, string> {\n return {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, card-heading',\n 'card-avatar': 'image, list-item-avatar',\n 'card-heading': 'heading',\n chip: 'chip',\n 'date-picker': 'list-item, card-heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'heading, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'table-cell@6',\n 'table-cell': 'text',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n ...this.types,\n }\n },\n },\n\n methods: {\n genBone (text: string, children: VNode[]) {\n return h('div', {\n class: `v-skeleton-loader__${text} v-skeleton-loader__bone`,\n }, children)\n },\n genBones (bone: string): VNode[] {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [string, number]\n const generator = () => this.genStructure(type)\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(generator)\n },\n // Fix type when this is merged\n // https://github.com/microsoft/TypeScript/pull/33050\n genStructure (type?: string): any {\n let children = []\n type = type || this.type || ''\n const bone = this.rootTypes[type] || ''\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.indexOf(',') > -1) return this.mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.indexOf('@') > -1) return this.genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.indexOf(',') > -1) children = this.mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.indexOf('@') > -1) children = this.genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(this.genStructure(bone))\n\n return [this.genBone(type, children)]\n },\n genSkeleton () {\n const children = []\n\n if (!this.isLoading) children.push(getSlot(this))\n else children.push(this.genStructure())\n\n /* istanbul ignore else */\n if (!this.transition) return children\n\n /* istanbul ignore next */\n return h(Transition, {\n name: this.transition,\n // Only show transition when\n // content has been loaded\n onAfterEnter: this.resetStyles,\n onBeforeEnter: this.onBeforeEnter,\n onBeforeLeave: this.onBeforeLeave,\n onLeaveCancelled: this.resetStyles\n }, children)\n },\n mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(this.genStructure)\n },\n onBeforeEnter (el: HTMLSkeletonLoaderElement) {\n this.resetStyles(el)\n\n if (!this.isLoading) return\n\n el._initialStyle = {\n display: el.style.display,\n transition: el.style.transition,\n }\n\n el.style.setProperty('transition', 'none', 'important')\n },\n onBeforeLeave (el: HTMLSkeletonLoaderElement) {\n el.style.setProperty('display', 'none', 'important')\n },\n resetStyles (el: HTMLSkeletonLoaderElement) {\n if (!el._initialStyle) return\n\n el.style.display = el._initialStyle.display || ''\n el.style.transition = el._initialStyle.transition\n\n delete el._initialStyle\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-skeleton-loader', this.classes],\n ...this.attrs,\n ...this.$listeners,\n style: this.isLoading ? this.measurableStyles : undefined,\n }, [this.genSkeleton()])\n },\n})\n"],"sourceRoot":"","file":"VSkeletonLoader.js"}
1
+ {"version":3,"sources":["../../../src/components/VSkeletonLoader/VSkeletonLoader.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VSkeletonLoader.sass'\n\n// Mixins\nimport Elevatable from '../../mixins/elevatable'\nimport Measurable from '../../mixins/measurable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\nimport { getSlot } from '../../util/helpers'\nimport { PropValidator } from 'vue/types/options'\n\nexport interface HTMLSkeletonLoaderElement extends HTMLElement {\n _initialStyle?: {\n display: string | null\n transition: string\n }\n}\n\n/* @vue/component */\nexport default mixins(\n Elevatable,\n Measurable,\n Themeable,\n).extend({\n name: 'VSkeletonLoader',\n\n props: {\n boilerplate: Boolean,\n loading: Boolean,\n loadingText: {\n type: String,\n default: '$vuetify.loading',\n },\n tile: Boolean,\n transition: String,\n type: String,\n types: {\n type: Object,\n default: () => ({}),\n } as PropValidator<Record<string, string>>,\n },\n\n computed: {\n attrs (): object {\n if (!this.isLoading) return this.$attrs\n\n return {\n 'aria-busy': !this.boilerplate ? true : undefined,\n 'aria-live': !this.boilerplate ? 'polite' : undefined,\n 'aria-label': !this.boilerplate ? this.$vuetify.lang.t(this.loadingText) : undefined,\n role: !this.boilerplate ? 'alert' : undefined,\n ...this.$attrs,\n }\n },\n classes (): object {\n return {\n 'v-skeleton-loader--boilerplate': this.boilerplate,\n 'v-skeleton-loader--is-loading': this.isLoading,\n 'v-skeleton-loader--tile': this.tile,\n ...this.themeClasses,\n ...this.elevationClasses,\n }\n },\n isLoading (): boolean {\n return !('default' in this.$scopedSlots) || this.loading\n },\n rootTypes (): Record<string, string> {\n return {\n actions: 'button@2',\n article: 'heading, paragraph',\n avatar: 'avatar',\n button: 'button',\n card: 'image, card-heading',\n 'card-avatar': 'image, list-item-avatar',\n 'card-heading': 'heading',\n chip: 'chip',\n 'date-picker': 'list-item, card-heading, divider, date-picker-options, date-picker-days, actions',\n 'date-picker-options': 'text, avatar@2',\n 'date-picker-days': 'avatar@28',\n heading: 'heading',\n image: 'image',\n 'list-item': 'text',\n 'list-item-avatar': 'avatar, text',\n 'list-item-two-line': 'sentences',\n 'list-item-avatar-two-line': 'avatar, sentences',\n 'list-item-three-line': 'paragraph',\n 'list-item-avatar-three-line': 'avatar, paragraph',\n paragraph: 'text@3',\n sentences: 'text@2',\n table: 'table-heading, table-thead, table-tbody, table-tfoot',\n 'table-heading': 'heading, text',\n 'table-thead': 'heading@6',\n 'table-tbody': 'table-row-divider@6',\n 'table-row-divider': 'table-row, divider',\n 'table-row': 'table-cell@6',\n 'table-cell': 'text',\n 'table-tfoot': 'text@2, avatar@2',\n text: 'text',\n ...this.types,\n }\n },\n },\n\n methods: {\n genBone (text: string, children: VNode[]) {\n return this.$createElement('div', {\n staticClass: `v-skeleton-loader__${text} v-skeleton-loader__bone`,\n }, children)\n },\n genBones (bone: string): VNode[] {\n // e.g. 'text@3'\n const [type, length] = bone.split('@') as [string, number]\n const generator = () => this.genStructure(type)\n\n // Generate a length array based upon\n // value after @ in the bone string\n return Array.from({ length }).map(generator)\n },\n // Fix type when this is merged\n // https://github.com/microsoft/TypeScript/pull/33050\n genStructure (type?: string): any {\n let children = []\n type = type || this.type || ''\n const bone = this.rootTypes[type] || ''\n\n // End of recursion, do nothing\n /* eslint-disable-next-line no-empty, brace-style */\n if (type === bone) {}\n // Array of values - e.g. 'heading, paragraph, text@2'\n else if (type.indexOf(',') > -1) return this.mapBones(type)\n // Array of values - e.g. 'paragraph@4'\n else if (type.indexOf('@') > -1) return this.genBones(type)\n // Array of values - e.g. 'card@2'\n else if (bone.indexOf(',') > -1) children = this.mapBones(bone)\n // Array of values - e.g. 'list-item@2'\n else if (bone.indexOf('@') > -1) children = this.genBones(bone)\n // Single value - e.g. 'card-heading'\n else if (bone) children.push(this.genStructure(bone))\n\n return [this.genBone(type, children)]\n },\n genSkeleton () {\n const children = []\n\n if (!this.isLoading) children.push(getSlot(this))\n else children.push(this.genStructure())\n\n /* istanbul ignore else */\n if (!this.transition) return children\n\n /* istanbul ignore next */\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n // Only show transition when\n // content has been loaded\n on: {\n afterEnter: this.resetStyles,\n beforeEnter: this.onBeforeEnter,\n beforeLeave: this.onBeforeLeave,\n leaveCancelled: this.resetStyles,\n },\n }, children)\n },\n mapBones (bones: string) {\n // Remove spaces and return array of structures\n return bones.replace(/\\s/g, '').split(',').map(this.genStructure)\n },\n onBeforeEnter (el: HTMLSkeletonLoaderElement) {\n this.resetStyles(el)\n\n if (!this.isLoading) return\n\n el._initialStyle = {\n display: el.style.display,\n transition: el.style.transition,\n }\n\n el.style.setProperty('transition', 'none', 'important')\n },\n onBeforeLeave (el: HTMLSkeletonLoaderElement) {\n el.style.setProperty('display', 'none', 'important')\n },\n resetStyles (el: HTMLSkeletonLoaderElement) {\n if (!el._initialStyle) return\n\n el.style.display = el._initialStyle.display || ''\n el.style.transition = el._initialStyle.transition\n\n delete el._initialStyle\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-skeleton-loader',\n attrs: this.attrs,\n on: this.$listeners,\n class: this.classes,\n style: this.isLoading ? this.measurableStyles : undefined,\n }, [this.genSkeleton()])\n },\n})\n"],"sourceRoot":"","file":"VSkeletonLoader.js"}
@@ -1,5 +1,4 @@
1
- import { h, withDirectives } from 'vue'; // Styles
2
-
1
+ // Styles
3
2
  import "../../../src/components/VSlideGroup/VSlideGroup.sass"; // Components
4
3
 
5
4
  import VIcon from '../VIcon';
@@ -12,9 +11,7 @@ import Mobile from '../../mixins/mobile'; // Directives
12
11
  import Resize from '../../directives/resize';
13
12
  import Touch from '../../directives/touch'; // Utilities
14
13
 
15
- import mixins from '../../util/mixins'; // Types
16
-
17
- import { defineComponent } from 'vue';
14
+ import mixins from '../../util/mixins';
18
15
  import { composedPath, getSlot } from '../../util/helpers';
19
16
 
20
17
  function bias(val) {
@@ -108,7 +105,7 @@ export const BaseSlideGroup = mixins(BaseItemGroup, Mobile).extend({
108
105
  },
109
106
 
110
107
  classes() {
111
- return { ...BaseItemGroup.computed.classes.call(this),
108
+ return { ...BaseItemGroup.options.computed.classes.call(this),
112
109
  'v-slide-group': true,
113
110
  'v-slide-group--has-affixes': this.hasAffixes,
114
111
  'v-slide-group--is-overflowing': this.isOverflowing
@@ -224,27 +221,36 @@ export const BaseSlideGroup = mixins(BaseItemGroup, Mobile).extend({
224
221
 
225
222
  // Always generate next for scrollable hint
226
223
  genNext() {
227
- const slot = this.$slots.next ? this.$slots.next({}) : getSlot(this, 'next') || this.__cachedNext;
228
- return h('div', {
229
- class: ['v-slide-group__next', {
224
+ const slot = this.$scopedSlots.next ? this.$scopedSlots.next({}) : getSlot(this, 'next') || this.__cachedNext;
225
+ return this.$createElement('div', {
226
+ staticClass: 'v-slide-group__next',
227
+ class: {
230
228
  'v-slide-group__next--disabled': !this.hasNext
231
- }],
232
- onClick: () => this.onAffixClick('next'),
229
+ },
230
+ on: {
231
+ click: () => this.onAffixClick('next')
232
+ },
233
233
  key: 'next'
234
234
  }, [slot]);
235
235
  },
236
236
 
237
237
  genContent() {
238
- return h('div', {
239
- class: 'v-slide-group__content',
238
+ return this.$createElement('div', {
239
+ staticClass: 'v-slide-group__content',
240
240
  ref: 'content',
241
- onFocusin: this.onFocusin
241
+ on: {
242
+ focusin: this.onFocusin
243
+ }
242
244
  }, getSlot(this));
243
245
  },
244
246
 
245
247
  genData() {
246
248
  return {
247
- class: this.classes
249
+ class: this.classes,
250
+ directives: [{
251
+ name: 'resize',
252
+ value: this.onResize
253
+ }]
248
254
  };
249
255
  },
250
256
 
@@ -260,37 +266,48 @@ export const BaseSlideGroup = mixins(BaseItemGroup, Mobile).extend({
260
266
  const upperLocation = `${location[0].toUpperCase()}${location.slice(1)}`;
261
267
  const hasAffix = this[`has${upperLocation}`];
262
268
  if (!this.showArrows && !hasAffix) return null;
263
- return h(VIcon, {
264
- disabled: !hasAffix
269
+ return this.$createElement(VIcon, {
270
+ props: {
271
+ disabled: !hasAffix
272
+ }
265
273
  }, this[`${icon}Icon`]);
266
274
  },
267
275
 
268
276
  // Always generate prev for scrollable hint
269
277
  genPrev() {
270
- const slot = this.$slots.prev ? this.$slots.prev({}) : getSlot(this, 'prev') || this.__cachedPrev;
271
- return h('div', {
272
- class: ['v-slide-group__prev', {
278
+ const slot = this.$scopedSlots.prev ? this.$scopedSlots.prev({}) : getSlot(this, 'prev') || this.__cachedPrev;
279
+ return this.$createElement('div', {
280
+ staticClass: 'v-slide-group__prev',
281
+ class: {
273
282
  'v-slide-group__prev--disabled': !this.hasPrev
274
- }],
275
- onClick: () => this.onAffixClick('prev'),
283
+ },
284
+ on: {
285
+ click: () => this.onAffixClick('prev')
286
+ },
276
287
  key: 'prev'
277
288
  }, [slot]);
278
289
  },
279
290
 
280
291
  genTransition(location) {
281
- return h(VFadeTransition, [this.genIcon(location)]);
292
+ return this.$createElement(VFadeTransition, [this.genIcon(location)]);
282
293
  },
283
294
 
284
295
  genWrapper() {
285
- return withDirectives(h('div', {
286
- class: 'v-slide-group__wrapper',
296
+ return this.$createElement('div', {
297
+ staticClass: 'v-slide-group__wrapper',
298
+ directives: [{
299
+ name: 'touch',
300
+ value: {
301
+ start: e => this.overflowCheck(e, this.onTouchStart),
302
+ move: e => this.overflowCheck(e, this.onTouchMove),
303
+ end: e => this.overflowCheck(e, this.onTouchEnd)
304
+ }
305
+ }],
287
306
  ref: 'wrapper',
288
- onScroll: this.onScroll
289
- }, [this.genContent()]), [[Touch, {
290
- start: e => this.overflowCheck(e, this.onTouchStart),
291
- move: e => this.overflowCheck(e, this.onTouchMove),
292
- end: e => this.overflowCheck(e, this.onTouchEnd)
293
- }]]);
307
+ on: {
308
+ scroll: this.onScroll
309
+ }
310
+ }, [this.genContent()]);
294
311
  },
295
312
 
296
313
  calculateNewOffset(direction, widths, rtl, currentScrollOffset) {
@@ -431,14 +448,13 @@ export const BaseSlideGroup = mixins(BaseItemGroup, Mobile).extend({
431
448
 
432
449
  },
433
450
 
434
- render() {
435
- return withDirectives(h('div', this.genData(), [this.genPrev(), this.genWrapper(), this.genNext()]), [[Resize, this.onResize]]);
451
+ render(h) {
452
+ return h('div', this.genData(), [this.genPrev(), this.genWrapper(), this.genNext()]);
436
453
  }
437
454
 
438
455
  });
439
- export default defineComponent({
456
+ export default BaseSlideGroup.extend({
440
457
  name: 'v-slide-group',
441
- extends: BaseSlideGroup,
442
458
 
443
459
  provide() {
444
460
  return {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VSlideGroup/VSlideGroup.ts"],"names":[],"mappings":"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","sourcesContent":["import {h, withDirectives} from 'vue'\n// Styles\nimport './VSlideGroup.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport { VFadeTransition } from '../transitions'\n\n// Extensions\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Mixins\nimport Mobile from '../../mixins/mobile'\n\n// Directives\nimport Resize from '../../directives/resize'\nimport Touch from '../../directives/touch'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, defineComponent } from 'vue'\nimport { composedPath, getSlot } from '../../util/helpers'\n\ninterface TouchEvent {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n stopPropagation: Function\n}\n\ninterface Widths {\n content: number\n wrapper: number\n}\n\ninterface options extends Vue {\n $refs: {\n content: HTMLElement\n wrapper: HTMLElement\n }\n}\n\nfunction bias (val: number) {\n const c = 0.501\n const x = Math.abs(val)\n return Math.sign(val) * (x / ((1 / c - 2) * (1 - x) + 1))\n}\n\nexport function calculateUpdatedOffset (\n selectedElement: HTMLElement,\n widths: Widths,\n rtl: boolean,\n currentScrollOffset: number\n): number {\n const clientWidth = selectedElement.clientWidth\n const offsetLeft = rtl\n ? (widths.content - selectedElement.offsetLeft - clientWidth)\n : selectedElement.offsetLeft\n\n if (rtl) {\n currentScrollOffset = -currentScrollOffset\n }\n\n const totalWidth = widths.wrapper + currentScrollOffset\n const itemOffset = clientWidth + offsetLeft\n const additionalOffset = clientWidth * 0.4\n\n if (offsetLeft <= currentScrollOffset) {\n currentScrollOffset = Math.max(offsetLeft - additionalOffset, 0)\n } else if (totalWidth <= itemOffset) {\n currentScrollOffset = Math.min(currentScrollOffset - (totalWidth - itemOffset - additionalOffset), widths.content - widths.wrapper)\n }\n\n return rtl ? -currentScrollOffset : currentScrollOffset\n}\n\nexport function calculateCenteredOffset (\n selectedElement: HTMLElement,\n widths: Widths,\n rtl: boolean\n): number {\n const { offsetLeft, clientWidth } = selectedElement\n\n if (rtl) {\n const offsetCentered = widths.content - offsetLeft - clientWidth / 2 - widths.wrapper / 2\n return -Math.min(widths.content - widths.wrapper, Math.max(0, offsetCentered))\n } else {\n const offsetCentered = offsetLeft + clientWidth / 2 - widths.wrapper / 2\n return Math.min(widths.content - widths.wrapper, Math.max(0, offsetCentered))\n }\n}\n\nexport const BaseSlideGroup = mixins<options &\n/* eslint-disable indent */\n ExtractVue<[\n typeof BaseItemGroup,\n typeof Mobile,\n ]>\n/* eslint-enable indent */\n>(\n BaseItemGroup,\n Mobile,\n /* @vue/component */\n).extend({\n name: 'base-slide-group',\n\n directives: {\n Resize,\n Touch,\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'v-slide-item--active',\n },\n centerActive: Boolean,\n nextIcon: {\n type: String,\n default: '$next',\n },\n prevIcon: {\n type: String,\n default: '$prev',\n },\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => (\n typeof v === 'boolean' || [\n 'always',\n 'never',\n 'desktop',\n 'mobile',\n ].includes(v)\n ),\n },\n },\n\n data: () => ({\n isOverflowing: false,\n resizeTimeout: 0,\n startX: 0,\n isSwipingHorizontal: false,\n isSwiping: false,\n scrollOffset: 0,\n widths: {\n content: 0,\n wrapper: 0,\n },\n }),\n\n computed: {\n canTouch (): boolean {\n return typeof window !== 'undefined'\n },\n __cachedNext (): VNode {\n return this.genTransition('next')\n },\n __cachedPrev (): VNode {\n return this.genTransition('prev')\n },\n classes (): object {\n return {\n ...BaseItemGroup.computed.classes.call(this),\n 'v-slide-group': true,\n 'v-slide-group--has-affixes': this.hasAffixes,\n 'v-slide-group--is-overflowing': this.isOverflowing,\n }\n },\n hasAffixes (): Boolean {\n switch (this.showArrows) {\n // Always show arrows on desktop & mobile\n case 'always': return true\n\n // Always show arrows on desktop\n case 'desktop': return !this.isMobile\n\n // Show arrows on mobile when overflowing.\n // This matches the default 2.2 behavior\n case true: return this.isOverflowing || Math.abs(this.scrollOffset) > 0\n\n // Always show on mobile\n case 'mobile': return (\n this.isMobile ||\n (this.isOverflowing || Math.abs(this.scrollOffset) > 0)\n )\n\n // Always hide arrows\n case 'never': return false\n\n // https://material.io/components/tabs#scrollable-tabs\n // Always show arrows when\n // overflowed on desktop\n default: return (\n !this.isMobile &&\n (this.isOverflowing || Math.abs(this.scrollOffset) > 0)\n )\n }\n },\n hasNext (): boolean {\n if (!this.hasAffixes) return false\n\n const { content, wrapper } = this.widths\n\n // Check one scroll ahead to know the width of right-most item\n return content > Math.abs(this.scrollOffset) + wrapper\n },\n hasPrev (): boolean {\n return this.hasAffixes && this.scrollOffset !== 0\n },\n },\n\n watch: {\n internalValue: 'setWidths',\n // When overflow changes, the arrows alter\n // the widths of the content and wrapper\n // and need to be recalculated\n isOverflowing: 'setWidths',\n scrollOffset (val) {\n if (this.$vuetify.rtl) val = -val\n\n let scroll =\n val <= 0\n ? bias(-val)\n : val > this.widths.content - this.widths.wrapper\n ? -(this.widths.content - this.widths.wrapper) + bias(this.widths.content - this.widths.wrapper - val)\n : -val\n\n if (this.$vuetify.rtl) scroll = -scroll\n\n this.$refs.content.style.transform = `translateX(${scroll}px)`\n },\n },\n\n mounted () {\n if (typeof ResizeObserver !== 'undefined') {\n const obs = new ResizeObserver(() => {\n this.onResize()\n })\n obs.observe(this.$el)\n obs.observe(this.$refs.content)\n this.$on('hook:destroyed', () => {\n obs.disconnect()\n })\n } else {\n let itemsLength = 0\n this.$on('hook:beforeUpdate', () => {\n itemsLength = (this.$refs.content?.children || []).length\n })\n this.$on('hook:updated', () => {\n if (itemsLength === (this.$refs.content?.children || []).length) return\n this.setWidths()\n })\n }\n },\n\n methods: {\n onScroll () {\n this.$refs.wrapper.scrollLeft = 0\n },\n onFocusin (e: FocusEvent) {\n if (!this.isOverflowing) return\n\n // Focused element is likely to be the root of an item, so a\n // breadth-first search will probably find it in the first iteration\n for (const el of composedPath(e)) {\n for (const vm of this.items) {\n if (vm.$el === el) {\n this.scrollOffset = calculateUpdatedOffset(\n vm.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl,\n this.scrollOffset\n )\n return\n }\n }\n }\n },\n // Always generate next for scrollable hint\n genNext (): VNode | null {\n const slot = this.$slots.next\n ? this.$slots.next({})\n : getSlot(this, 'next') || this.__cachedNext\n\n return h('div', {\n class: ['v-slide-group__next', {\n 'v-slide-group__next--disabled': !this.hasNext,\n }],\n onClick: () => this.onAffixClick('next'),\n key: 'next',\n }, [slot])\n },\n genContent (): VNode {\n return h('div', {\n class: 'v-slide-group__content',\n ref: 'content',\n onFocusin: this.onFocusin,\n }, getSlot(this))\n },\n genData (): object {\n return {\n class: this.classes\n }\n },\n genIcon (location: 'prev' | 'next'): VNode | null {\n let icon = location\n\n if (this.$vuetify.rtl && location === 'prev') {\n icon = 'next'\n } else if (this.$vuetify.rtl && location === 'next') {\n icon = 'prev'\n }\n\n const upperLocation = `${location[0].toUpperCase()}${location.slice(1)}`\n const hasAffix = (this as any)[`has${upperLocation}`]\n\n if (\n !this.showArrows &&\n !hasAffix\n ) return null\n\n return h(VIcon, {\n disabled: !hasAffix,\n }, (this as any)[`${icon}Icon`])\n },\n // Always generate prev for scrollable hint\n genPrev (): VNode | null {\n const slot = this.$slots.prev\n ? this.$slots.prev({})\n : getSlot(this, 'prev') || this.__cachedPrev\n\n return h('div', {\n class: ['v-slide-group__prev', {\n 'v-slide-group__prev--disabled': !this.hasPrev,\n }],\n onClick: () => this.onAffixClick('prev'),\n key: 'prev',\n }, [slot])\n },\n genTransition (location: 'prev' | 'next') {\n return h(VFadeTransition, [this.genIcon(location)])\n },\n genWrapper (): VNode {\n return withDirectives(h('div', {\n class: 'v-slide-group__wrapper',\n ref: 'wrapper',\n onScroll: this.onScroll,\n }, [this.genContent()]), [\n [\n Touch,\n {\n start: (e: TouchEvent) => this.overflowCheck(e, this.onTouchStart),\n move: (e: TouchEvent) => this.overflowCheck(e, this.onTouchMove),\n end: (e: TouchEvent) => this.overflowCheck(e, this.onTouchEnd),\n }\n ]\n\n ])\n },\n calculateNewOffset (direction: 'prev' | 'next', widths: Widths, rtl: boolean, currentScrollOffset: number) {\n const sign = rtl ? -1 : 1\n const newAbosluteOffset = sign * currentScrollOffset +\n (direction === 'prev' ? -1 : 1) * widths.wrapper\n\n return sign * Math.max(Math.min(newAbosluteOffset, widths.content - widths.wrapper), 0)\n },\n onAffixClick (location: 'prev' | 'next') {\n this.$emit(`click:${location}`)\n this.scrollTo(location)\n },\n onResize () {\n /* istanbul ignore next */\n if (this._isDestroyed) return\n\n this.setWidths()\n },\n onTouchStart (e: TouchEvent) {\n const { content } = this.$refs\n\n this.startX = this.scrollOffset + e.touchstartX as number\n\n content.style.setProperty('transition', 'none')\n content.style.setProperty('willChange', 'transform')\n },\n onTouchMove (e: TouchEvent) {\n if (!this.canTouch) return\n\n if (!this.isSwiping) {\n // only calculate disableSwipeHorizontal during the first onTouchMove invoke\n // in order to ensure disableSwipeHorizontal value is consistent between onTouchStart and onTouchEnd\n const diffX = e.touchmoveX - e.touchstartX\n const diffY = e.touchmoveY - e.touchstartY\n this.isSwipingHorizontal = Math.abs(diffX) > Math.abs(diffY)\n this.isSwiping = true\n }\n\n if (this.isSwipingHorizontal) {\n // sliding horizontally\n this.scrollOffset = this.startX - e.touchmoveX\n // temporarily disable window vertical scrolling\n document.documentElement.style.overflowY = 'hidden'\n }\n },\n onTouchEnd () {\n if (!this.canTouch) return\n\n const { content, wrapper } = this.$refs\n const maxScrollOffset = content.clientWidth - wrapper.clientWidth\n\n content.style.setProperty('transition', null)\n content.style.setProperty('willChange', null)\n\n if (this.$vuetify.rtl) {\n /* istanbul ignore else */\n if (this.scrollOffset > 0 || !this.isOverflowing) {\n this.scrollOffset = 0\n } else if (this.scrollOffset <= -maxScrollOffset) {\n this.scrollOffset = -maxScrollOffset\n }\n } else {\n /* istanbul ignore else */\n if (this.scrollOffset < 0 || !this.isOverflowing) {\n this.scrollOffset = 0\n } else if (this.scrollOffset >= maxScrollOffset) {\n this.scrollOffset = maxScrollOffset\n }\n }\n\n this.isSwiping = false\n // rollback whole page scrolling to default\n document.documentElement.style.removeProperty('overflow-y')\n },\n overflowCheck (e: TouchEvent, fn: (e: TouchEvent) => void) {\n e.stopPropagation()\n this.isOverflowing && fn(e)\n },\n scrollIntoView /* istanbul ignore next */ () {\n if (!this.selectedItem && this.items.length) {\n const lastItemPosition = this.items[this.items.length - 1].$el.getBoundingClientRect()\n const wrapperPosition = this.$refs.wrapper.getBoundingClientRect()\n\n if (\n (this.$vuetify.rtl && wrapperPosition.right < lastItemPosition.right) ||\n (!this.$vuetify.rtl && wrapperPosition.left > lastItemPosition.left)\n ) {\n this.scrollTo('prev')\n }\n }\n\n if (!this.selectedItem) {\n return\n }\n\n if (\n this.selectedIndex === 0 ||\n (!this.centerActive && !this.isOverflowing)\n ) {\n this.scrollOffset = 0\n } else if (this.centerActive) {\n this.scrollOffset = calculateCenteredOffset(\n this.selectedItem.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl\n )\n } else if (this.isOverflowing) {\n this.scrollOffset = calculateUpdatedOffset(\n this.selectedItem.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl,\n this.scrollOffset\n )\n }\n },\n scrollTo /* istanbul ignore next */ (location: 'prev' | 'next') {\n this.scrollOffset = this.calculateNewOffset(location, {\n // Force reflow\n content: this.$refs.content ? this.$refs.content.clientWidth : 0,\n wrapper: this.$refs.wrapper ? this.$refs.wrapper.clientWidth : 0,\n }, this.$vuetify.rtl, this.scrollOffset)\n },\n setWidths () {\n window.requestAnimationFrame(() => {\n if (this._isDestroyed) return\n\n const { content, wrapper } = this.$refs\n\n this.widths = {\n content: content ? content.clientWidth : 0,\n wrapper: wrapper ? wrapper.clientWidth : 0,\n }\n\n // https://github.com/vuetifyjs/vuetify/issues/13212\n // We add +1 to the wrappers width to prevent an issue where the `clientWidth`\n // gets calculated wrongly by the browser if using a different zoom-level.\n this.isOverflowing = this.widths.wrapper + 1 < this.widths.content\n\n this.scrollIntoView()\n })\n },\n },\n\n render (): VNode {\n return withDirectives(h('div', this.genData(), [\n this.genPrev(),\n this.genWrapper(),\n this.genNext(),\n ]), [\n [\n Resize,\n this.onResize\n ]\n ])\n },\n})\n\nexport default defineComponent({\n name: 'v-slide-group',\n\n extends: BaseSlideGroup,\n\n provide (): object {\n return {\n slideGroup: this,\n }\n },\n})\n"],"sourceRoot":"","file":"VSlideGroup.js"}
1
+ {"version":3,"sources":["../../../src/components/VSlideGroup/VSlideGroup.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VSlideGroup.sass'\n\n// Components\nimport VIcon from '../VIcon'\nimport { VFadeTransition } from '../transitions'\n\n// Extensions\nimport { BaseItemGroup } from '../VItemGroup/VItemGroup'\n\n// Mixins\nimport Mobile from '../../mixins/mobile'\n\n// Directives\nimport Resize from '../../directives/resize'\nimport Touch from '../../directives/touch'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode } from 'vue'\nimport { composedPath, getSlot } from '../../util/helpers'\n\ninterface TouchEvent {\n touchstartX: number\n touchstartY: number\n touchmoveX: number\n touchmoveY: number\n stopPropagation: Function\n}\n\ninterface Widths {\n content: number\n wrapper: number\n}\n\ninterface options extends Vue {\n $refs: {\n content: HTMLElement\n wrapper: HTMLElement\n }\n}\n\nfunction bias (val: number) {\n const c = 0.501\n const x = Math.abs(val)\n return Math.sign(val) * (x / ((1 / c - 2) * (1 - x) + 1))\n}\n\nexport function calculateUpdatedOffset (\n selectedElement: HTMLElement,\n widths: Widths,\n rtl: boolean,\n currentScrollOffset: number\n): number {\n const clientWidth = selectedElement.clientWidth\n const offsetLeft = rtl\n ? (widths.content - selectedElement.offsetLeft - clientWidth)\n : selectedElement.offsetLeft\n\n if (rtl) {\n currentScrollOffset = -currentScrollOffset\n }\n\n const totalWidth = widths.wrapper + currentScrollOffset\n const itemOffset = clientWidth + offsetLeft\n const additionalOffset = clientWidth * 0.4\n\n if (offsetLeft <= currentScrollOffset) {\n currentScrollOffset = Math.max(offsetLeft - additionalOffset, 0)\n } else if (totalWidth <= itemOffset) {\n currentScrollOffset = Math.min(currentScrollOffset - (totalWidth - itemOffset - additionalOffset), widths.content - widths.wrapper)\n }\n\n return rtl ? -currentScrollOffset : currentScrollOffset\n}\n\nexport function calculateCenteredOffset (\n selectedElement: HTMLElement,\n widths: Widths,\n rtl: boolean\n): number {\n const { offsetLeft, clientWidth } = selectedElement\n\n if (rtl) {\n const offsetCentered = widths.content - offsetLeft - clientWidth / 2 - widths.wrapper / 2\n return -Math.min(widths.content - widths.wrapper, Math.max(0, offsetCentered))\n } else {\n const offsetCentered = offsetLeft + clientWidth / 2 - widths.wrapper / 2\n return Math.min(widths.content - widths.wrapper, Math.max(0, offsetCentered))\n }\n}\n\nexport const BaseSlideGroup = mixins<options &\n/* eslint-disable indent */\n ExtractVue<[\n typeof BaseItemGroup,\n typeof Mobile,\n ]>\n/* eslint-enable indent */\n>(\n BaseItemGroup,\n Mobile,\n /* @vue/component */\n).extend({\n name: 'base-slide-group',\n\n directives: {\n Resize,\n Touch,\n },\n\n props: {\n activeClass: {\n type: String,\n default: 'v-slide-item--active',\n },\n centerActive: Boolean,\n nextIcon: {\n type: String,\n default: '$next',\n },\n prevIcon: {\n type: String,\n default: '$prev',\n },\n showArrows: {\n type: [Boolean, String],\n validator: (v: any) => (\n typeof v === 'boolean' || [\n 'always',\n 'never',\n 'desktop',\n 'mobile',\n ].includes(v)\n ),\n },\n },\n\n data: () => ({\n isOverflowing: false,\n resizeTimeout: 0,\n startX: 0,\n isSwipingHorizontal: false,\n isSwiping: false,\n scrollOffset: 0,\n widths: {\n content: 0,\n wrapper: 0,\n },\n }),\n\n computed: {\n canTouch (): boolean {\n return typeof window !== 'undefined'\n },\n __cachedNext (): VNode {\n return this.genTransition('next')\n },\n __cachedPrev (): VNode {\n return this.genTransition('prev')\n },\n classes (): object {\n return {\n ...BaseItemGroup.options.computed.classes.call(this),\n 'v-slide-group': true,\n 'v-slide-group--has-affixes': this.hasAffixes,\n 'v-slide-group--is-overflowing': this.isOverflowing,\n }\n },\n hasAffixes (): Boolean {\n switch (this.showArrows) {\n // Always show arrows on desktop & mobile\n case 'always': return true\n\n // Always show arrows on desktop\n case 'desktop': return !this.isMobile\n\n // Show arrows on mobile when overflowing.\n // This matches the default 2.2 behavior\n case true: return this.isOverflowing || Math.abs(this.scrollOffset) > 0\n\n // Always show on mobile\n case 'mobile': return (\n this.isMobile ||\n (this.isOverflowing || Math.abs(this.scrollOffset) > 0)\n )\n\n // Always hide arrows\n case 'never': return false\n\n // https://material.io/components/tabs#scrollable-tabs\n // Always show arrows when\n // overflowed on desktop\n default: return (\n !this.isMobile &&\n (this.isOverflowing || Math.abs(this.scrollOffset) > 0)\n )\n }\n },\n hasNext (): boolean {\n if (!this.hasAffixes) return false\n\n const { content, wrapper } = this.widths\n\n // Check one scroll ahead to know the width of right-most item\n return content > Math.abs(this.scrollOffset) + wrapper\n },\n hasPrev (): boolean {\n return this.hasAffixes && this.scrollOffset !== 0\n },\n },\n\n watch: {\n internalValue: 'setWidths',\n // When overflow changes, the arrows alter\n // the widths of the content and wrapper\n // and need to be recalculated\n isOverflowing: 'setWidths',\n scrollOffset (val) {\n if (this.$vuetify.rtl) val = -val\n\n let scroll =\n val <= 0\n ? bias(-val)\n : val > this.widths.content - this.widths.wrapper\n ? -(this.widths.content - this.widths.wrapper) + bias(this.widths.content - this.widths.wrapper - val)\n : -val\n\n if (this.$vuetify.rtl) scroll = -scroll\n\n this.$refs.content.style.transform = `translateX(${scroll}px)`\n },\n },\n\n mounted () {\n if (typeof ResizeObserver !== 'undefined') {\n const obs = new ResizeObserver(() => {\n this.onResize()\n })\n obs.observe(this.$el)\n obs.observe(this.$refs.content)\n this.$on('hook:destroyed', () => {\n obs.disconnect()\n })\n } else {\n let itemsLength = 0\n this.$on('hook:beforeUpdate', () => {\n itemsLength = (this.$refs.content?.children || []).length\n })\n this.$on('hook:updated', () => {\n if (itemsLength === (this.$refs.content?.children || []).length) return\n this.setWidths()\n })\n }\n },\n\n methods: {\n onScroll () {\n this.$refs.wrapper.scrollLeft = 0\n },\n onFocusin (e: FocusEvent) {\n if (!this.isOverflowing) return\n\n // Focused element is likely to be the root of an item, so a\n // breadth-first search will probably find it in the first iteration\n for (const el of composedPath(e)) {\n for (const vm of this.items) {\n if (vm.$el === el) {\n this.scrollOffset = calculateUpdatedOffset(\n vm.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl,\n this.scrollOffset\n )\n return\n }\n }\n }\n },\n // Always generate next for scrollable hint\n genNext (): VNode | null {\n const slot = this.$scopedSlots.next\n ? this.$scopedSlots.next({})\n : getSlot(this, 'next') || this.__cachedNext\n\n return this.$createElement('div', {\n staticClass: 'v-slide-group__next',\n class: {\n 'v-slide-group__next--disabled': !this.hasNext,\n },\n on: {\n click: () => this.onAffixClick('next'),\n },\n key: 'next',\n }, [slot])\n },\n genContent (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-slide-group__content',\n ref: 'content',\n on: {\n focusin: this.onFocusin,\n },\n }, getSlot(this))\n },\n genData (): object {\n return {\n class: this.classes,\n directives: [{\n name: 'resize',\n value: this.onResize,\n }],\n }\n },\n genIcon (location: 'prev' | 'next'): VNode | null {\n let icon = location\n\n if (this.$vuetify.rtl && location === 'prev') {\n icon = 'next'\n } else if (this.$vuetify.rtl && location === 'next') {\n icon = 'prev'\n }\n\n const upperLocation = `${location[0].toUpperCase()}${location.slice(1)}`\n const hasAffix = (this as any)[`has${upperLocation}`]\n\n if (\n !this.showArrows &&\n !hasAffix\n ) return null\n\n return this.$createElement(VIcon, {\n props: {\n disabled: !hasAffix,\n },\n }, (this as any)[`${icon}Icon`])\n },\n // Always generate prev for scrollable hint\n genPrev (): VNode | null {\n const slot = this.$scopedSlots.prev\n ? this.$scopedSlots.prev({})\n : getSlot(this, 'prev') || this.__cachedPrev\n\n return this.$createElement('div', {\n staticClass: 'v-slide-group__prev',\n class: {\n 'v-slide-group__prev--disabled': !this.hasPrev,\n },\n on: {\n click: () => this.onAffixClick('prev'),\n },\n key: 'prev',\n }, [slot])\n },\n genTransition (location: 'prev' | 'next') {\n return this.$createElement(VFadeTransition, [this.genIcon(location)])\n },\n genWrapper (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-slide-group__wrapper',\n directives: [{\n name: 'touch',\n value: {\n start: (e: TouchEvent) => this.overflowCheck(e, this.onTouchStart),\n move: (e: TouchEvent) => this.overflowCheck(e, this.onTouchMove),\n end: (e: TouchEvent) => this.overflowCheck(e, this.onTouchEnd),\n },\n }],\n ref: 'wrapper',\n on: {\n scroll: this.onScroll,\n },\n }, [this.genContent()])\n },\n calculateNewOffset (direction: 'prev' | 'next', widths: Widths, rtl: boolean, currentScrollOffset: number) {\n const sign = rtl ? -1 : 1\n const newAbosluteOffset = sign * currentScrollOffset +\n (direction === 'prev' ? -1 : 1) * widths.wrapper\n\n return sign * Math.max(Math.min(newAbosluteOffset, widths.content - widths.wrapper), 0)\n },\n onAffixClick (location: 'prev' | 'next') {\n this.$emit(`click:${location}`)\n this.scrollTo(location)\n },\n onResize () {\n /* istanbul ignore next */\n if (this._isDestroyed) return\n\n this.setWidths()\n },\n onTouchStart (e: TouchEvent) {\n const { content } = this.$refs\n\n this.startX = this.scrollOffset + e.touchstartX as number\n\n content.style.setProperty('transition', 'none')\n content.style.setProperty('willChange', 'transform')\n },\n onTouchMove (e: TouchEvent) {\n if (!this.canTouch) return\n\n if (!this.isSwiping) {\n // only calculate disableSwipeHorizontal during the first onTouchMove invoke\n // in order to ensure disableSwipeHorizontal value is consistent between onTouchStart and onTouchEnd\n const diffX = e.touchmoveX - e.touchstartX\n const diffY = e.touchmoveY - e.touchstartY\n this.isSwipingHorizontal = Math.abs(diffX) > Math.abs(diffY)\n this.isSwiping = true\n }\n\n if (this.isSwipingHorizontal) {\n // sliding horizontally\n this.scrollOffset = this.startX - e.touchmoveX\n // temporarily disable window vertical scrolling\n document.documentElement.style.overflowY = 'hidden'\n }\n },\n onTouchEnd () {\n if (!this.canTouch) return\n\n const { content, wrapper } = this.$refs\n const maxScrollOffset = content.clientWidth - wrapper.clientWidth\n\n content.style.setProperty('transition', null)\n content.style.setProperty('willChange', null)\n\n if (this.$vuetify.rtl) {\n /* istanbul ignore else */\n if (this.scrollOffset > 0 || !this.isOverflowing) {\n this.scrollOffset = 0\n } else if (this.scrollOffset <= -maxScrollOffset) {\n this.scrollOffset = -maxScrollOffset\n }\n } else {\n /* istanbul ignore else */\n if (this.scrollOffset < 0 || !this.isOverflowing) {\n this.scrollOffset = 0\n } else if (this.scrollOffset >= maxScrollOffset) {\n this.scrollOffset = maxScrollOffset\n }\n }\n\n this.isSwiping = false\n // rollback whole page scrolling to default\n document.documentElement.style.removeProperty('overflow-y')\n },\n overflowCheck (e: TouchEvent, fn: (e: TouchEvent) => void) {\n e.stopPropagation()\n this.isOverflowing && fn(e)\n },\n scrollIntoView /* istanbul ignore next */ () {\n if (!this.selectedItem && this.items.length) {\n const lastItemPosition = this.items[this.items.length - 1].$el.getBoundingClientRect()\n const wrapperPosition = this.$refs.wrapper.getBoundingClientRect()\n\n if (\n (this.$vuetify.rtl && wrapperPosition.right < lastItemPosition.right) ||\n (!this.$vuetify.rtl && wrapperPosition.left > lastItemPosition.left)\n ) {\n this.scrollTo('prev')\n }\n }\n\n if (!this.selectedItem) {\n return\n }\n\n if (\n this.selectedIndex === 0 ||\n (!this.centerActive && !this.isOverflowing)\n ) {\n this.scrollOffset = 0\n } else if (this.centerActive) {\n this.scrollOffset = calculateCenteredOffset(\n this.selectedItem.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl\n )\n } else if (this.isOverflowing) {\n this.scrollOffset = calculateUpdatedOffset(\n this.selectedItem.$el as HTMLElement,\n this.widths,\n this.$vuetify.rtl,\n this.scrollOffset\n )\n }\n },\n scrollTo /* istanbul ignore next */ (location: 'prev' | 'next') {\n this.scrollOffset = this.calculateNewOffset(location, {\n // Force reflow\n content: this.$refs.content ? this.$refs.content.clientWidth : 0,\n wrapper: this.$refs.wrapper ? this.$refs.wrapper.clientWidth : 0,\n }, this.$vuetify.rtl, this.scrollOffset)\n },\n setWidths () {\n window.requestAnimationFrame(() => {\n if (this._isDestroyed) return\n\n const { content, wrapper } = this.$refs\n\n this.widths = {\n content: content ? content.clientWidth : 0,\n wrapper: wrapper ? wrapper.clientWidth : 0,\n }\n\n // https://github.com/vuetifyjs/vuetify/issues/13212\n // We add +1 to the wrappers width to prevent an issue where the `clientWidth`\n // gets calculated wrongly by the browser if using a different zoom-level.\n this.isOverflowing = this.widths.wrapper + 1 < this.widths.content\n\n this.scrollIntoView()\n })\n },\n },\n\n render (h): VNode {\n return h('div', this.genData(), [\n this.genPrev(),\n this.genWrapper(),\n this.genNext(),\n ])\n },\n})\n\nexport default BaseSlideGroup.extend({\n name: 'v-slide-group',\n\n provide (): object {\n return {\n slideGroup: this,\n }\n },\n})\n"],"sourceRoot":"","file":"VSlideGroup.js"}