@dimailn/vuetify 2.7.2-alpha2 → 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 +5565 -5345
  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 -22
  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 +126 -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 +9 -12
  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 +12 -19
  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 -8
  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 -9
  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 +26 -22
  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 +123 -95
  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 +7 -11
  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 +10 -16
  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 -9
  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 -10
  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 +25 -21
  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 +117 -101
  909. package/src/components/VSelect/VSelectList.ts +59 -40
  910. package/src/components/VSheet/VSheet.ts +12 -14
  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 +11 -19
  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 -8
  978. package/src/mixins/mobile/index.ts +12 -10
  979. package/src/mixins/mouse/index.ts +4 -9
  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/mixins/menuable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Stackable from '../stackable'\nimport { factory as positionableFactory } from '../positionable'\nimport Activatable from '../activatable'\nimport Detachable from '../detachable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n Stackable,\n positionableFactory(['top', 'right', 'bottom', 'left', 'absolute']),\n Activatable,\n Detachable,\n)\n\ninterface dimensions {\n top: number\n left: number\n bottom: number\n right: number\n width: number\n height: number\n offsetTop: number\n scrollHeight: number\n offsetLeft: number\n}\n\ninterface options extends ExtractVue<typeof baseMixins> {\n attach: boolean | string | Element\n offsetY: boolean\n offsetX: boolean\n dimensions: {\n activator: dimensions\n content: dimensions\n }\n $refs: {\n content: HTMLElement\n activator: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'menuable',\n\n props: {\n allowOverflow: Boolean,\n light: Boolean,\n dark: Boolean,\n maxWidth: {\n type: [Number, String],\n default: 'auto',\n },\n minWidth: [Number, String],\n nudgeBottom: {\n type: [Number, String],\n default: 0,\n },\n nudgeLeft: {\n type: [Number, String],\n default: 0,\n },\n nudgeRight: {\n type: [Number, String],\n default: 0,\n },\n nudgeTop: {\n type: [Number, String],\n default: 0,\n },\n nudgeWidth: {\n type: [Number, String],\n default: 0,\n },\n offsetOverflow: Boolean,\n positionX: {\n type: Number,\n default: null,\n },\n positionY: {\n type: Number,\n default: null,\n },\n zIndex: {\n type: [Number, String],\n default: null,\n },\n },\n\n data: () => ({\n activatorNode: [] as VNode[],\n absoluteX: 0,\n absoluteY: 0,\n activatedBy: null as EventTarget | null,\n activatorFixed: false,\n dimensions: {\n activator: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n offsetLeft: 0,\n },\n content: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n },\n },\n relativeYOffset: 0,\n hasJustFocused: false,\n hasWindow: false,\n inputActivator: false,\n isContentActive: false,\n pageWidth: 0,\n pageYOffset: 0,\n stackClass: 'v-menu__content--active',\n stackMinZIndex: 6,\n }),\n\n computed: {\n isMenuable() {\n return true\n },\n computedLeft () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n const activatorLeft = (this.attach !== false ? a.offsetLeft : a.left) || 0\n const minWidth = Math.max(a.width, c.width)\n let left = 0\n left += activatorLeft\n if (this.left || (this.$vuetify.rtl && !this.right)) left -= (minWidth - a.width)\n if (this.offsetX) {\n const maxWidth = isNaN(Number(this.maxWidth))\n ? a.width\n : Math.min(a.width, Number(this.maxWidth))\n\n left += this.left ? -maxWidth : a.width\n }\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return left\n },\n computedTop () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n let top = 0\n\n if (this.top) top += a.height - c.height\n if (this.attach !== false) top += a.offsetTop\n else top += a.top + this.pageYOffset\n if (this.offsetY) top += this.top ? -a.height : a.height\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n\n return top\n },\n hasActivator (): boolean {\n return !!this.$slots.activator || !!this.$slots.activator || !!this.activator || !!this.inputActivator\n },\n absoluteYOffset (): number {\n return this.pageYOffset - this.relativeYOffset\n },\n },\n\n watch: {\n disabled (val) {\n val && this.callDeactivate()\n },\n isActive (val) {\n if (this.disabled) return\n\n val ? this.callActivate() : this.callDeactivate()\n },\n positionX: 'updateDimensions',\n positionY: 'updateDimensions',\n },\n\n beforeMount () {\n this.hasWindow = typeof window !== 'undefined'\n\n if (this.hasWindow) {\n window.addEventListener('resize', this.updateDimensions, false)\n }\n },\n\n beforeDestroy () {\n if (this.hasWindow) {\n window.removeEventListener('resize', this.updateDimensions, false)\n }\n },\n\n methods: {\n absolutePosition () {\n return {\n offsetTop: this.positionY || this.absoluteY,\n offsetLeft: this.positionX || this.absoluteX,\n scrollHeight: 0,\n top: this.positionY || this.absoluteY,\n bottom: this.positionY || this.absoluteY,\n left: this.positionX || this.absoluteX,\n right: this.positionX || this.absoluteX,\n height: 0,\n width: 0,\n }\n },\n activate () {},\n calcLeft (menuWidth: number) {\n return convertToUnit(this.attach !== false\n ? this.computedLeft\n : this.calcXOverflow(this.computedLeft, menuWidth))\n },\n calcTop () {\n return convertToUnit(this.attach !== false\n ? this.computedTop\n : this.calcYOverflow(this.computedTop))\n },\n calcXOverflow (left: number, menuWidth: number) {\n const xOverflow = left + menuWidth - this.pageWidth + 12\n\n if ((!this.left || this.right) && xOverflow > 0) {\n left = Math.max(left - xOverflow, 0)\n } else {\n left = Math.max(left, 12)\n }\n\n return left + this.getOffsetLeft()\n },\n calcYOverflow (top: number) {\n const documentHeight = this.getInnerHeight()\n const toTop = this.absoluteYOffset + documentHeight\n const activator = this.dimensions.activator\n const contentHeight = this.dimensions.content.height\n const totalHeight = top + contentHeight\n const isOverflowing = toTop < totalHeight\n\n // If overflowing bottom and offset\n // TODO: set 'bottom' position instead of 'top'\n if (isOverflowing &&\n this.offsetOverflow &&\n // If we don't have enough room to offset\n // the overflow, don't offset\n activator.top > contentHeight\n ) {\n top = this.pageYOffset + (activator.top - contentHeight)\n // If overflowing bottom\n } else if (isOverflowing && !this.allowOverflow) {\n top = toTop - contentHeight - 12\n // If overflowing top\n } else if (top < this.absoluteYOffset && !this.allowOverflow) {\n top = this.absoluteYOffset + 12\n }\n\n return top < 12 ? 12 : top\n },\n callActivate () {\n if (!this.hasWindow) return\n\n this.activate()\n },\n callDeactivate () {\n this.isContentActive = false\n\n this.deactivate()\n },\n checkForPageYOffset () {\n if (this.hasWindow) {\n this.pageYOffset = this.activatorFixed ? 0 : this.getOffsetTop()\n }\n },\n checkActivatorFixed () {\n if (this.attach !== false) {\n this.activatorFixed = false\n return\n }\n let el = this.getActivator()\n while (el) {\n if (window.getComputedStyle(el).position === 'fixed') {\n this.activatorFixed = true\n return\n }\n el = el.offsetParent as HTMLElement\n }\n this.activatorFixed = false\n },\n deactivate () {},\n genActivatorListeners () {\n const listeners = Activatable.methods.genActivatorListeners.call(this)\n\n const onClick = listeners.onClick\n\n if (onClick) {\n listeners.onClick = (e: MouseEvent & KeyboardEvent & FocusEvent) => {\n if (this.openOnClick) {\n onClick && onClick(e)\n }\n\n this.absoluteX = e.clientX\n this.absoluteY = e.clientY\n }\n }\n\n return listeners\n },\n getInnerHeight () {\n if (!this.hasWindow) return 0\n\n return window.innerHeight ||\n document.documentElement.clientHeight\n },\n getOffsetLeft () {\n if (!this.hasWindow) return 0\n\n return window.pageXOffset ||\n document.documentElement.scrollLeft\n },\n getOffsetTop () {\n if (!this.hasWindow) return 0\n\n return window.pageYOffset ||\n document.documentElement.scrollTop\n },\n getRoundedBoundedClientRect (el: Element) {\n const rect = el.getBoundingClientRect()\n return {\n top: Math.round(rect.top),\n left: Math.round(rect.left),\n bottom: Math.round(rect.bottom),\n right: Math.round(rect.right),\n width: Math.round(rect.width),\n height: Math.round(rect.height),\n }\n },\n measure (el: HTMLElement) {\n if (!el || !this.hasWindow) return null\n\n const rect = this.getRoundedBoundedClientRect(el)\n\n // Account for activator margin\n if (this.attach !== false) {\n const style = window.getComputedStyle(el)\n\n rect.left = parseInt(style.marginLeft!)\n rect.top = parseInt(style.marginTop!)\n }\n\n return rect\n },\n sneakPeek (cb: () => void) {\n requestAnimationFrame(() => {\n const el = this.$refs.content\n\n if (!el || el.style.display !== 'none') {\n cb()\n return\n }\n\n el.style.display = 'inline-block'\n cb()\n el.style.display = 'none'\n })\n },\n startTransition () {\n return new Promise<void>(resolve => requestAnimationFrame(() => {\n this.isContentActive = this.hasJustFocused = this.isActive\n resolve()\n }))\n },\n updateDimensions () {\n this.hasWindow = typeof window !== 'undefined'\n this.checkActivatorFixed()\n this.checkForPageYOffset()\n this.pageWidth = document.documentElement.clientWidth\n\n const dimensions: any = {\n activator: { ...this.dimensions.activator },\n content: { ...this.dimensions.content },\n }\n\n // Activator should already be shown\n if (!this.hasActivator || this.absolute) {\n dimensions.activator = this.absolutePosition()\n } else {\n const activator = this.getActivator()\n if (!activator) return\n\n dimensions.activator = this.measure(activator)\n dimensions.activator.offsetLeft = activator.offsetLeft\n if (this.attach !== false) {\n // account for css padding causing things to not line up\n // this is mostly for v-autocomplete, hopefully it won't break anything\n dimensions.activator.offsetTop = activator.offsetTop\n } else {\n dimensions.activator.offsetTop = 0\n }\n }\n\n // Display and hide to get dimensions\n this.sneakPeek(() => {\n if (this.$refs.content) {\n if (this.$refs.content.offsetParent) {\n const offsetRect = this.getRoundedBoundedClientRect(this.$refs.content.offsetParent)\n\n this.relativeYOffset = window.pageYOffset + offsetRect.top\n dimensions.activator.top -= this.relativeYOffset\n dimensions.activator.left -= window.pageXOffset + offsetRect.left\n }\n\n dimensions.content = this.measure(this.$refs.content)\n }\n\n this.dimensions = dimensions\n })\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/menuable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Stackable from '../stackable'\nimport { factory as positionableFactory } from '../positionable'\nimport Activatable from '../activatable'\nimport Detachable from '../detachable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n Stackable,\n positionableFactory(['top', 'right', 'bottom', 'left', 'absolute']),\n Activatable,\n Detachable,\n)\n\ninterface dimensions {\n top: number\n left: number\n bottom: number\n right: number\n width: number\n height: number\n offsetTop: number\n scrollHeight: number\n offsetLeft: number\n}\n\ninterface options extends ExtractVue<typeof baseMixins> {\n attach: boolean | string | Element\n offsetY: boolean\n offsetX: boolean\n dimensions: {\n activator: dimensions\n content: dimensions\n }\n $refs: {\n content: HTMLElement\n activator: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend<options>().extend({\n name: 'menuable',\n\n props: {\n allowOverflow: Boolean,\n light: Boolean,\n dark: Boolean,\n maxWidth: {\n type: [Number, String],\n default: 'auto',\n },\n minWidth: [Number, String],\n nudgeBottom: {\n type: [Number, String],\n default: 0,\n },\n nudgeLeft: {\n type: [Number, String],\n default: 0,\n },\n nudgeRight: {\n type: [Number, String],\n default: 0,\n },\n nudgeTop: {\n type: [Number, String],\n default: 0,\n },\n nudgeWidth: {\n type: [Number, String],\n default: 0,\n },\n offsetOverflow: Boolean,\n positionX: {\n type: Number,\n default: null,\n },\n positionY: {\n type: Number,\n default: null,\n },\n zIndex: {\n type: [Number, String],\n default: null,\n },\n },\n\n data: () => ({\n activatorNode: [] as VNode[],\n absoluteX: 0,\n absoluteY: 0,\n activatedBy: null as EventTarget | null,\n activatorFixed: false,\n dimensions: {\n activator: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n offsetLeft: 0,\n },\n content: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n },\n },\n relativeYOffset: 0,\n hasJustFocused: false,\n hasWindow: false,\n inputActivator: false,\n isContentActive: false,\n pageWidth: 0,\n pageYOffset: 0,\n stackClass: 'v-menu__content--active',\n stackMinZIndex: 6,\n }),\n\n computed: {\n computedLeft () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n const activatorLeft = (this.attach !== false ? a.offsetLeft : a.left) || 0\n const minWidth = Math.max(a.width, c.width)\n let left = 0\n left += activatorLeft\n if (this.left || (this.$vuetify.rtl && !this.right)) left -= (minWidth - a.width)\n if (this.offsetX) {\n const maxWidth = isNaN(Number(this.maxWidth))\n ? a.width\n : Math.min(a.width, Number(this.maxWidth))\n\n left += this.left ? -maxWidth : a.width\n }\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return left\n },\n computedTop () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n let top = 0\n\n if (this.top) top += a.height - c.height\n if (this.attach !== false) top += a.offsetTop\n else top += a.top + this.pageYOffset\n if (this.offsetY) top += this.top ? -a.height : a.height\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n\n return top\n },\n hasActivator (): boolean {\n return !!this.$slots.activator || !!this.$scopedSlots.activator || !!this.activator || !!this.inputActivator\n },\n absoluteYOffset (): number {\n return this.pageYOffset - this.relativeYOffset\n },\n },\n\n watch: {\n disabled (val) {\n val && this.callDeactivate()\n },\n isActive (val) {\n if (this.disabled) return\n\n val ? this.callActivate() : this.callDeactivate()\n },\n positionX: 'updateDimensions',\n positionY: 'updateDimensions',\n },\n\n beforeMount () {\n this.hasWindow = typeof window !== 'undefined'\n\n if (this.hasWindow) {\n window.addEventListener('resize', this.updateDimensions, false)\n }\n },\n\n beforeDestroy () {\n if (this.hasWindow) {\n window.removeEventListener('resize', this.updateDimensions, false)\n }\n },\n\n methods: {\n absolutePosition () {\n return {\n offsetTop: this.positionY || this.absoluteY,\n offsetLeft: this.positionX || this.absoluteX,\n scrollHeight: 0,\n top: this.positionY || this.absoluteY,\n bottom: this.positionY || this.absoluteY,\n left: this.positionX || this.absoluteX,\n right: this.positionX || this.absoluteX,\n height: 0,\n width: 0,\n }\n },\n activate () {},\n calcLeft (menuWidth: number) {\n return convertToUnit(this.attach !== false\n ? this.computedLeft\n : this.calcXOverflow(this.computedLeft, menuWidth))\n },\n calcTop () {\n return convertToUnit(this.attach !== false\n ? this.computedTop\n : this.calcYOverflow(this.computedTop))\n },\n calcXOverflow (left: number, menuWidth: number) {\n const xOverflow = left + menuWidth - this.pageWidth + 12\n\n if ((!this.left || this.right) && xOverflow > 0) {\n left = Math.max(left - xOverflow, 0)\n } else {\n left = Math.max(left, 12)\n }\n\n return left + this.getOffsetLeft()\n },\n calcYOverflow (top: number) {\n const documentHeight = this.getInnerHeight()\n const toTop = this.absoluteYOffset + documentHeight\n const activator = this.dimensions.activator\n const contentHeight = this.dimensions.content.height\n const totalHeight = top + contentHeight\n const isOverflowing = toTop < totalHeight\n\n // If overflowing bottom and offset\n // TODO: set 'bottom' position instead of 'top'\n if (isOverflowing &&\n this.offsetOverflow &&\n // If we don't have enough room to offset\n // the overflow, don't offset\n activator.top > contentHeight\n ) {\n top = this.pageYOffset + (activator.top - contentHeight)\n // If overflowing bottom\n } else if (isOverflowing && !this.allowOverflow) {\n top = toTop - contentHeight - 12\n // If overflowing top\n } else if (top < this.absoluteYOffset && !this.allowOverflow) {\n top = this.absoluteYOffset + 12\n }\n\n return top < 12 ? 12 : top\n },\n callActivate () {\n if (!this.hasWindow) return\n\n this.activate()\n },\n callDeactivate () {\n this.isContentActive = false\n\n this.deactivate()\n },\n checkForPageYOffset () {\n if (this.hasWindow) {\n this.pageYOffset = this.activatorFixed ? 0 : this.getOffsetTop()\n }\n },\n checkActivatorFixed () {\n if (this.attach !== false) {\n this.activatorFixed = false\n return\n }\n let el = this.getActivator()\n while (el) {\n if (window.getComputedStyle(el).position === 'fixed') {\n this.activatorFixed = true\n return\n }\n el = el.offsetParent as HTMLElement\n }\n this.activatorFixed = false\n },\n deactivate () {},\n genActivatorListeners () {\n const listeners = Activatable.options.methods.genActivatorListeners.call(this)\n\n const onClick = listeners.click\n\n if (onClick) {\n listeners.click = (e: MouseEvent & KeyboardEvent & FocusEvent) => {\n if (this.openOnClick) {\n onClick && onClick(e)\n }\n\n this.absoluteX = e.clientX\n this.absoluteY = e.clientY\n }\n }\n\n return listeners\n },\n getInnerHeight () {\n if (!this.hasWindow) return 0\n\n return window.innerHeight ||\n document.documentElement.clientHeight\n },\n getOffsetLeft () {\n if (!this.hasWindow) return 0\n\n return window.pageXOffset ||\n document.documentElement.scrollLeft\n },\n getOffsetTop () {\n if (!this.hasWindow) return 0\n\n return window.pageYOffset ||\n document.documentElement.scrollTop\n },\n getRoundedBoundedClientRect (el: Element) {\n const rect = el.getBoundingClientRect()\n return {\n top: Math.round(rect.top),\n left: Math.round(rect.left),\n bottom: Math.round(rect.bottom),\n right: Math.round(rect.right),\n width: Math.round(rect.width),\n height: Math.round(rect.height),\n }\n },\n measure (el: HTMLElement) {\n if (!el || !this.hasWindow) return null\n\n const rect = this.getRoundedBoundedClientRect(el)\n\n // Account for activator margin\n if (this.attach !== false) {\n const style = window.getComputedStyle(el)\n\n rect.left = parseInt(style.marginLeft!)\n rect.top = parseInt(style.marginTop!)\n }\n\n return rect\n },\n sneakPeek (cb: () => void) {\n requestAnimationFrame(() => {\n const el = this.$refs.content\n\n if (!el || el.style.display !== 'none') {\n cb()\n return\n }\n\n el.style.display = 'inline-block'\n cb()\n el.style.display = 'none'\n })\n },\n startTransition () {\n return new Promise<void>(resolve => requestAnimationFrame(() => {\n this.isContentActive = this.hasJustFocused = this.isActive\n resolve()\n }))\n },\n updateDimensions () {\n this.hasWindow = typeof window !== 'undefined'\n this.checkActivatorFixed()\n this.checkForPageYOffset()\n this.pageWidth = document.documentElement.clientWidth\n\n const dimensions: any = {\n activator: { ...this.dimensions.activator },\n content: { ...this.dimensions.content },\n }\n\n // Activator should already be shown\n if (!this.hasActivator || this.absolute) {\n dimensions.activator = this.absolutePosition()\n } else {\n const activator = this.getActivator()\n if (!activator) return\n\n dimensions.activator = this.measure(activator)\n dimensions.activator.offsetLeft = activator.offsetLeft\n if (this.attach !== false) {\n // account for css padding causing things to not line up\n // this is mostly for v-autocomplete, hopefully it won't break anything\n dimensions.activator.offsetTop = activator.offsetTop\n } else {\n dimensions.activator.offsetTop = 0\n }\n }\n\n // Display and hide to get dimensions\n this.sneakPeek(() => {\n if (this.$refs.content) {\n if (this.$refs.content.offsetParent) {\n const offsetRect = this.getRoundedBoundedClientRect(this.$refs.content.offsetParent)\n\n this.relativeYOffset = window.pageYOffset + offsetRect.top\n dimensions.activator.top -= this.relativeYOffset\n dimensions.activator.left -= window.pageXOffset + offsetRect.left\n }\n\n dimensions.content = this.measure(this.$refs.content)\n }\n\n this.dimensions = dimensions\n })\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -7,23 +7,27 @@ exports.default = void 0;
7
7
 
8
8
  var _console = require("../../util/console");
9
9
 
10
- var _vue = require("vue");
10
+ var _vue = _interopRequireDefault(require("vue"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
13
 
12
14
  /* @vue/component */
13
- var _default = (0, _vue.defineComponent)({
15
+ var _default2 = _vue.default.extend({
14
16
  name: 'mobile',
15
17
  props: {
16
18
  mobileBreakpoint: {
17
19
  type: [Number, String],
20
+ default: function _default() {
21
+ // Avoid destroying unit
22
+ // tests for users
23
+ return this.$vuetify ? this.$vuetify.breakpoint.mobileBreakpoint : undefined;
24
+ },
18
25
  validator: function validator(v) {
19
26
  return !isNaN(Number(v)) || ['xs', 'sm', 'md', 'lg', 'xl'].includes(String(v));
20
27
  }
21
28
  }
22
29
  },
23
30
  computed: {
24
- $mobileBreakpoint: function $mobileBreakpoint() {
25
- return this.mobileBreakpoint || (this.$vuetify ? this.$vuetify.breakpoint.mobileBreakpoint : undefined);
26
- },
27
31
  isMobile: function isMobile() {
28
32
  var _this$$vuetify$breakp = this.$vuetify.breakpoint,
29
33
  mobile = _this$$vuetify$breakp.mobile,
@@ -32,10 +36,10 @@ var _default = (0, _vue.defineComponent)({
32
36
  mobileBreakpoint = _this$$vuetify$breakp.mobileBreakpoint; // Check if local mobileBreakpoint matches
33
37
  // the application's mobileBreakpoint
34
38
 
35
- if (mobileBreakpoint === this.$mobileBreakpoint) return mobile;
36
- var mobileWidth = parseInt(this.$mobileBreakpoint, 10);
39
+ if (mobileBreakpoint === this.mobileBreakpoint) return mobile;
40
+ var mobileWidth = parseInt(this.mobileBreakpoint, 10);
37
41
  var isNumber = !isNaN(mobileWidth);
38
- return isNumber ? width < mobileWidth : name === this.$mobileBreakpoint;
42
+ return isNumber ? width < mobileWidth : name === this.mobileBreakpoint;
39
43
  }
40
44
  },
41
45
  created: function created() {
@@ -46,5 +50,5 @@ var _default = (0, _vue.defineComponent)({
46
50
  }
47
51
  });
48
52
 
49
- exports.default = _default;
53
+ exports.default = _default2;
50
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/mobile/index.ts"],"names":[],"mappings":";;;;;;;AAEA;;AACA;;AAEA;eACe,0BAAgB;AAC7B,EAAA,IAAI,EAAE,QADuB;AAG7B,EAAA,KAAK,EAAE;AACL,IAAA,gBAAgB,EAAE;AAChB,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADU;AAEhB,MAAA,SAAS,EAAE,mBAAA,CAAC;AAAA,eACV,CAAC,KAAK,CAAC,MAAM,CAAC,CAAD,CAAP,CAAN,IACA,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,QAA/B,CAAwC,MAAM,CAAC,CAAD,CAA9C,CAFU;AAAA;AAFI;AADb,GAHsB;AAa7B,EAAA,QAAQ,EAAE;AACR,IAAA,iBADQ,+BACS;AACf,aAAO,KAAK,gBAAL,KAA0B,KAAK,QAAL,GAC/B,KAAK,QAAL,CAAc,UAAd,CAAyB,gBADM,GAE/B,SAFK,CAAP;AAGD,KALO;AAMR,IAAA,QANQ,sBAMA;AAAA,kCAMF,KAAK,QAAL,CAAc,UANZ;AAAA,UAEJ,MAFI,yBAEJ,MAFI;AAAA,UAGJ,KAHI,yBAGJ,KAHI;AAAA,UAIJ,IAJI,yBAIJ,IAJI;AAAA,UAKJ,gBALI,yBAKJ,gBALI,EAQN;AACA;;AACA,UAAI,gBAAgB,KAAK,KAAK,iBAA9B,EAAiD,OAAO,MAAP;AAEjD,UAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,iBAAN,EAAyB,EAAzB,CAA5B;AACA,UAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,WAAD,CAAvB;AAEA,aAAO,QAAQ,GACX,KAAK,GAAG,WADG,GAEX,IAAI,KAAK,KAAK,iBAFlB;AAGD;AAxBO,GAbmB;AAwC7B,EAAA,OAxC6B,qBAwCtB;AACL;AACA,QAAI,KAAK,MAAL,CAAY,cAAZ,CAA2B,oBAA3B,CAAJ,EAAsD;AACpD,8BAAU,oBAAV,EAAgC,mBAAhC,EAAqD,IAArD;AACD;AACF;AA7C4B,CAAhB,C","sourcesContent":["// Types\nimport { BreakpointName } from 'vuetify/types/services/breakpoint'\nimport { deprecate } from '../../util/console'\nimport { defineComponent, PropType } from 'vue'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'mobile',\n\n props: {\n mobileBreakpoint: {\n type: [Number, String] as PropType<number | BreakpointName>,\n validator: v => (\n !isNaN(Number(v)) ||\n ['xs', 'sm', 'md', 'lg', 'xl'].includes(String(v))\n ),\n },\n },\n\n computed: {\n $mobileBreakpoint() {\n return this.mobileBreakpoint || (this.$vuetify\n ? this.$vuetify.breakpoint.mobileBreakpoint\n : undefined)\n },\n isMobile (): boolean {\n const {\n mobile,\n width,\n name,\n mobileBreakpoint,\n } = this.$vuetify.breakpoint\n\n // Check if local mobileBreakpoint matches\n // the application's mobileBreakpoint\n if (mobileBreakpoint === this.$mobileBreakpoint) return mobile\n\n const mobileWidth = parseInt(this.$mobileBreakpoint, 10)\n const isNumber = !isNaN(mobileWidth)\n\n return isNumber\n ? width < mobileWidth\n : name === this.$mobileBreakpoint\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('mobile-break-point')) {\n deprecate('mobile-break-point', 'mobile-breakpoint', this)\n }\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/mobile/index.ts"],"names":[],"mappings":";;;;;;;AAEA;;AACA;;;;AAEA;gBACe,aAAI,MAAJ,CAAW;AACxB,EAAA,IAAI,EAAE,QADkB;AAGxB,EAAA,KAAK,EAAE;AACL,IAAA,gBAAgB,EAAE;AAChB,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADU;AAEhB,MAAA,OAFgB,sBAET;AACL;AACA;AACA,eAAO,KAAK,QAAL,GACH,KAAK,QAAL,CAAc,UAAd,CAAyB,gBADtB,GAEH,SAFJ;AAGD,OARe;AAShB,MAAA,SAAS,EAAE,mBAAA,CAAC;AAAA,eACV,CAAC,KAAK,CAAC,MAAM,CAAC,CAAD,CAAP,CAAN,IACA,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,QAA/B,CAAwC,MAAM,CAAC,CAAD,CAA9C,CAFU;AAAA;AATI;AADb,GAHiB;AAoBxB,EAAA,QAAQ,EAAE;AACR,IAAA,QADQ,sBACA;AAAA,kCAMF,KAAK,QAAL,CAAc,UANZ;AAAA,UAEJ,MAFI,yBAEJ,MAFI;AAAA,UAGJ,KAHI,yBAGJ,KAHI;AAAA,UAIJ,IAJI,yBAIJ,IAJI;AAAA,UAKJ,gBALI,yBAKJ,gBALI,EAQN;AACA;;AACA,UAAI,gBAAgB,KAAK,KAAK,gBAA9B,EAAgD,OAAO,MAAP;AAEhD,UAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,gBAAN,EAAwB,EAAxB,CAA5B;AACA,UAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,WAAD,CAAvB;AAEA,aAAO,QAAQ,GACX,KAAK,GAAG,WADG,GAEX,IAAI,KAAK,KAAK,gBAFlB;AAGD;AAnBO,GApBc;AA0CxB,EAAA,OA1CwB,qBA0CjB;AACL;AACA,QAAI,KAAK,MAAL,CAAY,cAAZ,CAA2B,oBAA3B,CAAJ,EAAsD;AACpD,8BAAU,oBAAV,EAAgC,mBAAhC,EAAqD,IAArD;AACD;AACF;AA/CuB,CAAX,C","sourcesContent":["// Types\nimport { BreakpointName } from 'vuetify/types/services/breakpoint'\nimport { deprecate } from '../../util/console'\nimport Vue, { PropType } from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'mobile',\n\n props: {\n mobileBreakpoint: {\n type: [Number, String] as PropType<number | BreakpointName>,\n default (): number | BreakpointName | undefined {\n // Avoid destroying unit\n // tests for users\n return this.$vuetify\n ? this.$vuetify.breakpoint.mobileBreakpoint\n : undefined\n },\n validator: v => (\n !isNaN(Number(v)) ||\n ['xs', 'sm', 'md', 'lg', 'xl'].includes(String(v))\n ),\n },\n },\n\n computed: {\n isMobile (): boolean {\n const {\n mobile,\n width,\n name,\n mobileBreakpoint,\n } = this.$vuetify.breakpoint\n\n // Check if local mobileBreakpoint matches\n // the application's mobileBreakpoint\n if (mobileBreakpoint === this.mobileBreakpoint) return mobile\n\n const mobileWidth = parseInt(this.mobileBreakpoint, 10)\n const isNumber = !isNaN(mobileWidth)\n\n return isNumber\n ? width < mobileWidth\n : name === this.mobileBreakpoint\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('mobile-break-point')) {\n deprecate('mobile-break-point', 'mobile-breakpoint', this)\n }\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- var _vue = require("vue");
8
+ var _vue = _interopRequireDefault(require("vue"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
11
 
10
12
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
11
13
 
@@ -13,17 +15,12 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
13
15
 
14
16
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
17
 
16
- function mapEventName(str) {
17
- var newStr = "on" + str;
18
- return newStr.charAt(0).toUpperCase() + newStr.slice(1);
19
- }
20
-
21
- var _default = (0, _vue.defineComponent)({
18
+ var _default = _vue.default.extend({
22
19
  name: 'mouse',
23
20
  methods: {
24
21
  getDefaultMouseEventHandlers: function getDefaultMouseEventHandlers(suffix, getData) {
25
22
  var eventFirst = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
26
- var listeners = Object.keys(this.$attrs).filter(function (key) {
23
+ var listeners = Object.keys(this.$listeners).filter(function (key) {
27
24
  return key.endsWith(suffix);
28
25
  }).reduce(function (acc, key) {
29
26
  acc[key] = {
@@ -45,7 +42,7 @@ var _default = (0, _vue.defineComponent)({
45
42
 
46
43
  var _loop = function _loop(event) {
47
44
  var eventOptions = events[event];
48
- if (!_this.$attrs[mapEventName(event)]) return "continue"; // TODO somehow pull in modifiers
45
+ if (!_this.$listeners[event]) return "continue"; // TODO somehow pull in modifiers
49
46
 
50
47
  var prefix = eventOptions.passive ? '&' : (eventOptions.once ? '~' : '') + (eventOptions.capture ? '!' : '');
51
48
  var key = prefix + eventOptions.event;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/mouse/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {defineComponent} from 'vue'\n\nexport type MouseHandler = (e: MouseEvent | TouchEvent) => any\n\nexport type MouseEvents = {\n [event: string]: {\n event: string\n passive?: boolean\n capture?: boolean\n once?: boolean\n stop?: boolean\n prevent?: boolean\n button?: number\n result?: any\n }\n}\n\nexport type MouseEventsMap = {\n [event: string]: MouseHandler | MouseHandler[]\n}\n\nfunction mapEventName(str) {\n let newStr = \"on\" + str;\n return newStr.charAt(0).toUpperCase() + newStr.slice(1);\n}\n\nexport default defineComponent({\n name: 'mouse',\n\n methods: {\n getDefaultMouseEventHandlers (suffix: string, getData: MouseHandler, eventFirst = false): MouseEventsMap {\n const listeners = Object.keys(this.$attrs)\n .filter(key => key.endsWith(suffix))\n .reduce((acc, key) => {\n acc[key] = { event: key.slice(0, -suffix.length) }\n return acc\n }, {} as MouseEvents)\n\n return this.getMouseEventHandlers({\n ...listeners,\n ['contextmenu' + suffix]: { event: 'contextmenu', prevent: true, result: false },\n }, getData, eventFirst)\n },\n getMouseEventHandlers (events: MouseEvents, getData: MouseHandler, eventFirst = false): MouseEventsMap {\n const on: MouseEventsMap = {}\n\n for (const event in events) {\n const eventOptions = events[event]\n\n if (!this.$attrs[mapEventName(event)]) continue\n\n // TODO somehow pull in modifiers\n\n const prefix = eventOptions.passive ? '&' : ((eventOptions.once ? '~' : '') + (eventOptions.capture ? '!' : ''))\n const key = prefix + eventOptions.event\n\n const handler: MouseHandler = e => {\n const mouseEvent: MouseEvent = e as MouseEvent\n if (eventOptions.button === undefined || (mouseEvent.buttons > 0 && mouseEvent.button === eventOptions.button)) {\n if (eventOptions.prevent) {\n e.preventDefault()\n }\n if (eventOptions.stop) {\n e.stopPropagation()\n }\n\n // Due to TouchEvent target always returns the element that is first placed\n // Even if touch point has since moved outside the interactive area of that element\n // Ref: https://developer.mozilla.org/en-US/docs/Web/API/Touch/target\n // This block of code aims to make sure touchEvent is always dispatched from the element that is being pointed at\n if (e && 'touches' in e) {\n const classSeparator = ' '\n\n const eventTargetClasses = (e.currentTarget as HTMLElement)?.className.split(classSeparator)\n const currentTargets = document.elementsFromPoint(e.changedTouches[0].clientX, e.changedTouches[0].clientY)\n\n // Get \"the same kind\" current hovering target by checking\n // If element has the same class of initial touch start element (which has touch event listener registered)\n const currentTarget = currentTargets.find(t => t.className.split(classSeparator).some(c => eventTargetClasses.includes(c)))\n\n if (currentTarget &&\n !(e.target as HTMLElement)?.isSameNode(currentTarget)\n ) {\n currentTarget.dispatchEvent(new TouchEvent(e.type, {\n changedTouches: e.changedTouches as unknown as Touch[],\n targetTouches: e.targetTouches as unknown as Touch[],\n touches: e.touches as unknown as Touch[],\n }))\n return\n }\n }\n\n // TODO: VCalendar emits the calendar event as the first argument,\n // but it really should be the native event instead so modifiers can be used\n if (eventFirst) {\n this.$emit(event, e, getData(e))\n } else {\n this.$emit(event, getData(e), e)\n }\n }\n\n return eventOptions.result\n }\n\n if (key in on) {\n /* istanbul ignore next */\n if (Array.isArray(on[key])) {\n (on[key] as MouseHandler[]).push(handler)\n } else {\n on[key] = [on[key], handler] as MouseHandler[]\n }\n } else {\n on[key] = handler\n }\n }\n\n return on\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/mouse/index.ts"],"names":[],"mappings":"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","sourcesContent":["import Vue from 'vue'\n\nexport type MouseHandler = (e: MouseEvent | TouchEvent) => any\n\nexport type MouseEvents = {\n [event: string]: {\n event: string\n passive?: boolean\n capture?: boolean\n once?: boolean\n stop?: boolean\n prevent?: boolean\n button?: number\n result?: any\n }\n}\n\nexport type MouseEventsMap = {\n [event: string]: MouseHandler | MouseHandler[]\n}\n\nexport default Vue.extend({\n name: 'mouse',\n\n methods: {\n getDefaultMouseEventHandlers (suffix: string, getData: MouseHandler, eventFirst = false): MouseEventsMap {\n const listeners = Object.keys(this.$listeners)\n .filter(key => key.endsWith(suffix))\n .reduce((acc, key) => {\n acc[key] = { event: key.slice(0, -suffix.length) }\n return acc\n }, {} as MouseEvents)\n\n return this.getMouseEventHandlers({\n ...listeners,\n ['contextmenu' + suffix]: { event: 'contextmenu', prevent: true, result: false },\n }, getData, eventFirst)\n },\n getMouseEventHandlers (events: MouseEvents, getData: MouseHandler, eventFirst = false): MouseEventsMap {\n const on: MouseEventsMap = {}\n\n for (const event in events) {\n const eventOptions = events[event]\n\n if (!this.$listeners[event]) continue\n\n // TODO somehow pull in modifiers\n\n const prefix = eventOptions.passive ? '&' : ((eventOptions.once ? '~' : '') + (eventOptions.capture ? '!' : ''))\n const key = prefix + eventOptions.event\n\n const handler: MouseHandler = e => {\n const mouseEvent: MouseEvent = e as MouseEvent\n if (eventOptions.button === undefined || (mouseEvent.buttons > 0 && mouseEvent.button === eventOptions.button)) {\n if (eventOptions.prevent) {\n e.preventDefault()\n }\n if (eventOptions.stop) {\n e.stopPropagation()\n }\n\n // Due to TouchEvent target always returns the element that is first placed\n // Even if touch point has since moved outside the interactive area of that element\n // Ref: https://developer.mozilla.org/en-US/docs/Web/API/Touch/target\n // This block of code aims to make sure touchEvent is always dispatched from the element that is being pointed at\n if (e && 'touches' in e) {\n const classSeparator = ' '\n\n const eventTargetClasses = (e.currentTarget as HTMLElement)?.className.split(classSeparator)\n const currentTargets = document.elementsFromPoint(e.changedTouches[0].clientX, e.changedTouches[0].clientY)\n\n // Get \"the same kind\" current hovering target by checking\n // If element has the same class of initial touch start element (which has touch event listener registered)\n const currentTarget = currentTargets.find(t => t.className.split(classSeparator).some(c => eventTargetClasses.includes(c)))\n\n if (currentTarget &&\n !(e.target as HTMLElement)?.isSameNode(currentTarget)\n ) {\n currentTarget.dispatchEvent(new TouchEvent(e.type, {\n changedTouches: e.changedTouches as unknown as Touch[],\n targetTouches: e.targetTouches as unknown as Touch[],\n touches: e.touches as unknown as Touch[],\n }))\n return\n }\n }\n\n // TODO: VCalendar emits the calendar event as the first argument,\n // but it really should be the native event instead so modifiers can be used\n if (eventFirst) {\n this.$emit(event, e, getData(e))\n } else {\n this.$emit(event, getData(e), e)\n }\n }\n\n return eventOptions.result\n }\n\n if (key in on) {\n /* istanbul ignore next */\n if (Array.isArray(on[key])) {\n (on[key] as MouseHandler[]).push(handler)\n } else {\n on[key] = [on[key], handler] as MouseHandler[]\n }\n } else {\n on[key] = handler\n }\n }\n\n return on\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -9,18 +9,16 @@ var _VOverlay = _interopRequireDefault(require("../../components/VOverlay"));
9
9
 
10
10
  var _helpers = require("../../util/helpers");
11
11
 
12
- var _vue = require("vue");
12
+ var _vue = _interopRequireDefault(require("vue"));
13
13
 
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
17
-
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
-
20
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
+ // Components
17
+ // Utilities
18
+ // Types
21
19
 
22
20
  /* @vue/component */
23
- var _default = (0, _vue.defineComponent)({
21
+ var _default = _vue.default.extend().extend({
24
22
  name: 'overlayable',
25
23
  props: {
26
24
  hideOverlay: Boolean,
@@ -44,44 +42,18 @@ var _default = (0, _vue.defineComponent)({
44
42
  },
45
43
  methods: {
46
44
  createOverlay: function createOverlay() {
47
- // Create a container element
48
- var container = document.createElement('div');
49
- var props = {
50
- absolute: this.absolute,
51
- color: this.overlayColor,
52
- opacity: this.overlayOpacity
53
- };
54
- var wrapper = {
55
- data: function data() {
56
- return {
57
- value: false
58
- };
59
- },
60
- render: function render() {
61
- return (0, _vue.h)(_VOverlay.default, _objectSpread({
62
- value: this.value
63
- }, props));
45
+ var overlay = new _VOverlay.default({
46
+ propsData: {
47
+ absolute: this.absolute,
48
+ value: false,
49
+ color: this.overlayColor,
50
+ opacity: this.overlayOpacity
64
51
  }
65
- }; // // Create the overlay app
66
- // const overlayApp = createApp(VOverlay, {
67
- // absolute: this.absolute,
68
- // value: false,
69
- // color: this.overlayColor,
70
- // opacity: this.overlayOpacity,
71
- // });
72
-
73
- var overlayApp = (0, _vue.createApp)(wrapper); // Mount the app to the container
74
-
75
- var overlayInstance = overlayApp.mount(container); // Determine the parent element
76
-
52
+ });
53
+ overlay.$mount();
77
54
  var parent = this.absolute ? this.$el.parentNode : document.querySelector('[data-app]');
78
-
79
- if (parent) {
80
- parent.insertBefore(container, parent.firstChild);
81
- }
82
-
83
- this.overlay = overlayInstance;
84
- this.overlayApp = overlayApp;
55
+ parent && parent.insertBefore(overlay.$el, parent.firstChild);
56
+ this.overlay = overlay;
85
57
  },
86
58
  genOverlay: function genOverlay() {
87
59
  var _this = this;
@@ -115,11 +87,9 @@ var _default = (0, _vue.defineComponent)({
115
87
 
116
88
  _this2.overlay.$el.parentNode.removeChild(_this2.overlay.$el);
117
89
 
118
- _this2.overlayApp.unmount();
90
+ _this2.overlay.$destroy();
119
91
 
120
- _this2.overlayApp = null;
121
92
  _this2.overlay = null;
122
- console.log('destroyed');
123
93
  }); // Cancel animation frame in case
124
94
  // overlay is removed before it
125
95
  // has finished its animation
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/overlayable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport VOverlay from '../../components/VOverlay'\n\n// Utilities\nimport {\n keyCodes,\n addOnceEventListener,\n addPassiveEventListener,\n getZIndex,\n composedPath,\n} from '../../util/helpers'\n\n// Types\nimport {defineComponent, App, createApp, h} from 'vue'\n\ninterface Toggleable extends App {\n isActive?: boolean\n}\n\ninterface Stackable extends App {\n activeZIndex: number\n}\n\ninterface options {\n absolute?: boolean\n $refs: {\n dialog?: HTMLElement\n content?: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'overlayable',\n\n props: {\n hideOverlay: Boolean,\n overlayColor: String,\n overlayOpacity: [Number, String],\n },\n\n data () {\n return {\n animationFrame: 0,\n overlay: null as InstanceType<typeof VOverlay> | null,\n }\n },\n\n watch: {\n hideOverlay (value) {\n if (!this.isActive) return\n\n if (value) this.removeOverlay()\n else this.genOverlay()\n },\n },\n\n beforeDestroy () {\n this.removeOverlay()\n },\n\n methods: {\n createOverlay () {\n // Create a container element\n const container = document.createElement('div');\n\n const props = {\n absolute: this.absolute,\n color: this.overlayColor,\n opacity: this.overlayOpacity\n }\n const wrapper = {\n data() {\n return { value: false }\n },\n render() {\n return h(VOverlay, {\n value: this.value,\n ...props\n })\n }\n }\n // // Create the overlay app\n // const overlayApp = createApp(VOverlay, {\n // absolute: this.absolute,\n // value: false,\n // color: this.overlayColor,\n // opacity: this.overlayOpacity,\n // });\n\n const overlayApp = createApp(wrapper)\n\n // Mount the app to the container\n const overlayInstance = overlayApp.mount(container);\n\n // Determine the parent element\n const parent = this.absolute\n ? this.$el.parentNode\n : document.querySelector('[data-app]');\n\n if (parent) {\n parent.insertBefore(container, parent.firstChild);\n }\n\n this.overlay = overlayInstance;\n this.overlayApp = overlayApp\n },\n genOverlay () {\n this.hideScroll()\n\n if (this.hideOverlay) return\n\n if (!this.overlay) this.createOverlay()\n\n this.animationFrame = requestAnimationFrame(() => {\n if (!this.overlay) return\n\n if (this.activeZIndex !== undefined) {\n this.overlay.zIndex = String(this.activeZIndex - 1)\n } else if (this.$el) {\n this.overlay.zIndex = getZIndex(this.$el)\n }\n\n this.overlay.value = true\n })\n\n return true\n },\n /** removeOverlay(false) will not restore the scollbar afterwards */\n removeOverlay (showScroll = true) {\n if (this.overlay) {\n addOnceEventListener(this.overlay.$el, 'transitionend', () => {\n if (\n !this.overlay ||\n !this.overlay.$el ||\n !this.overlay.$el.parentNode ||\n this.overlay.value ||\n this.isActive\n ) return\n\n this.overlay.$el.parentNode.removeChild(this.overlay.$el)\n this.overlayApp.unmount()\n this.overlayApp = null\n this.overlay = null\n console.log('destroyed')\n\n })\n\n // Cancel animation frame in case\n // overlay is removed before it\n // has finished its animation\n cancelAnimationFrame(this.animationFrame)\n\n this.overlay.value = false\n }\n\n showScroll && this.showScroll()\n },\n scrollListener (e: WheelEvent | KeyboardEvent) {\n if ('key' in e) {\n if (\n ['INPUT', 'TEXTAREA', 'SELECT'].includes((e.target as Element).tagName) ||\n // https://github.com/vuetifyjs/vuetify/issues/4715\n (e.target as HTMLElement).isContentEditable\n ) return\n\n const up = [keyCodes.up, keyCodes.pageup]\n const down = [keyCodes.down, keyCodes.pagedown]\n\n if (up.includes(e.keyCode)) {\n (e as any).deltaY = -1\n } else if (down.includes(e.keyCode)) {\n (e as any).deltaY = 1\n } else {\n return\n }\n }\n\n if (e.target === this.overlay ||\n (e.type !== 'keydown' && e.target === document.body) ||\n this.checkPath(e as WheelEvent)) e.preventDefault()\n },\n hasScrollbar (el?: Element) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false\n\n const style = window.getComputedStyle(el)\n return ((['auto', 'scroll'].includes(style.overflowY!) || el.tagName === 'SELECT') && el.scrollHeight > el.clientHeight) ||\n ((['auto', 'scroll'].includes(style.overflowX!)) && el.scrollWidth > el.clientWidth)\n },\n shouldScroll (el: Element, e: WheelEvent): boolean {\n if (el.hasAttribute('data-app')) return false\n\n const dir = e.shiftKey || e.deltaX ? 'x' : 'y'\n const delta = dir === 'y' ? e.deltaY : e.deltaX || e.deltaY\n\n let alreadyAtStart: boolean\n let alreadyAtEnd: boolean\n if (dir === 'y') {\n alreadyAtStart = el.scrollTop === 0\n alreadyAtEnd = el.scrollTop + el.clientHeight === el.scrollHeight\n } else {\n alreadyAtStart = el.scrollLeft === 0\n alreadyAtEnd = el.scrollLeft + el.clientWidth === el.scrollWidth\n }\n\n const scrollingUp = delta < 0\n const scrollingDown = delta > 0\n\n if (!alreadyAtStart && scrollingUp) return true\n if (!alreadyAtEnd && scrollingDown) return true\n if ((alreadyAtStart || alreadyAtEnd) && el.parentNode) {\n return this.shouldScroll(el.parentNode as Element, e)\n }\n\n return false\n },\n isInside (el: Element, parent: Element): boolean {\n if (el === parent) {\n return true\n } else if (el === null || el === document.body) {\n return false\n } else {\n return this.isInside(el.parentNode as Element, parent)\n }\n },\n checkPath (e: WheelEvent) {\n const path = composedPath(e)\n\n if (e.type === 'keydown' && path[0] === document.body) {\n const dialog = this.$refs.dialog\n // getSelection returns null in firefox in some edge cases, can be ignored\n const selected = window.getSelection()!.anchorNode as Element\n if (dialog && this.hasScrollbar(dialog) && this.isInside(selected, dialog)) {\n return !this.shouldScroll(dialog, e)\n }\n return true\n }\n\n for (let index = 0; index < path.length; index++) {\n const el = path[index]\n\n if (el === document) return true\n if (el === document.documentElement) return true\n if (el === this.$refs.content) return true\n\n if (this.hasScrollbar(el as Element)) return !this.shouldScroll(el as Element, e)\n }\n\n return true\n },\n hideScroll () {\n if (this.$vuetify.breakpoint.smAndDown) {\n document.documentElement!.classList.add('overflow-y-hidden')\n } else {\n addPassiveEventListener(window, 'wheel', this.scrollListener, { passive: false })\n window.addEventListener('keydown', this.scrollListener)\n }\n },\n showScroll () {\n document.documentElement!.classList.remove('overflow-y-hidden')\n window.removeEventListener('wheel', this.scrollListener)\n window.removeEventListener('keydown', this.scrollListener)\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/overlayable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Components\nimport VOverlay from '../../components/VOverlay'\n\n// Utilities\nimport {\n keyCodes,\n addOnceEventListener,\n addPassiveEventListener,\n getZIndex,\n composedPath,\n} from '../../util/helpers'\n\n// Types\nimport Vue from 'vue'\n\ninterface Toggleable extends Vue {\n isActive?: boolean\n}\n\ninterface Stackable extends Vue {\n activeZIndex: number\n}\n\ninterface options {\n absolute?: boolean\n $refs: {\n dialog?: HTMLElement\n content?: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default Vue.extend<Vue & Toggleable & Stackable & options>().extend({\n name: 'overlayable',\n\n props: {\n hideOverlay: Boolean,\n overlayColor: String,\n overlayOpacity: [Number, String],\n },\n\n data () {\n return {\n animationFrame: 0,\n overlay: null as InstanceType<typeof VOverlay> | null,\n }\n },\n\n watch: {\n hideOverlay (value) {\n if (!this.isActive) return\n\n if (value) this.removeOverlay()\n else this.genOverlay()\n },\n },\n\n beforeDestroy () {\n this.removeOverlay()\n },\n\n methods: {\n createOverlay () {\n const overlay = new VOverlay({\n propsData: {\n absolute: this.absolute,\n value: false,\n color: this.overlayColor,\n opacity: this.overlayOpacity,\n },\n })\n\n overlay.$mount()\n\n const parent = this.absolute\n ? this.$el.parentNode\n : document.querySelector('[data-app]')\n\n parent && parent.insertBefore(overlay.$el, parent.firstChild)\n\n this.overlay = overlay\n },\n genOverlay () {\n this.hideScroll()\n\n if (this.hideOverlay) return\n\n if (!this.overlay) this.createOverlay()\n\n this.animationFrame = requestAnimationFrame(() => {\n if (!this.overlay) return\n\n if (this.activeZIndex !== undefined) {\n this.overlay.zIndex = String(this.activeZIndex - 1)\n } else if (this.$el) {\n this.overlay.zIndex = getZIndex(this.$el)\n }\n\n this.overlay.value = true\n })\n\n return true\n },\n /** removeOverlay(false) will not restore the scollbar afterwards */\n removeOverlay (showScroll = true) {\n if (this.overlay) {\n addOnceEventListener(this.overlay.$el, 'transitionend', () => {\n if (\n !this.overlay ||\n !this.overlay.$el ||\n !this.overlay.$el.parentNode ||\n this.overlay.value ||\n this.isActive\n ) return\n\n this.overlay.$el.parentNode.removeChild(this.overlay.$el)\n this.overlay.$destroy()\n this.overlay = null\n })\n\n // Cancel animation frame in case\n // overlay is removed before it\n // has finished its animation\n cancelAnimationFrame(this.animationFrame)\n\n this.overlay.value = false\n }\n\n showScroll && this.showScroll()\n },\n scrollListener (e: WheelEvent | KeyboardEvent) {\n if ('key' in e) {\n if (\n ['INPUT', 'TEXTAREA', 'SELECT'].includes((e.target as Element).tagName) ||\n // https://github.com/vuetifyjs/vuetify/issues/4715\n (e.target as HTMLElement).isContentEditable\n ) return\n\n const up = [keyCodes.up, keyCodes.pageup]\n const down = [keyCodes.down, keyCodes.pagedown]\n\n if (up.includes(e.keyCode)) {\n (e as any).deltaY = -1\n } else if (down.includes(e.keyCode)) {\n (e as any).deltaY = 1\n } else {\n return\n }\n }\n\n if (e.target === this.overlay ||\n (e.type !== 'keydown' && e.target === document.body) ||\n this.checkPath(e as WheelEvent)) e.preventDefault()\n },\n hasScrollbar (el?: Element) {\n if (!el || el.nodeType !== Node.ELEMENT_NODE) return false\n\n const style = window.getComputedStyle(el)\n return ((['auto', 'scroll'].includes(style.overflowY!) || el.tagName === 'SELECT') && el.scrollHeight > el.clientHeight) ||\n ((['auto', 'scroll'].includes(style.overflowX!)) && el.scrollWidth > el.clientWidth)\n },\n shouldScroll (el: Element, e: WheelEvent): boolean {\n if (el.hasAttribute('data-app')) return false\n\n const dir = e.shiftKey || e.deltaX ? 'x' : 'y'\n const delta = dir === 'y' ? e.deltaY : e.deltaX || e.deltaY\n\n let alreadyAtStart: boolean\n let alreadyAtEnd: boolean\n if (dir === 'y') {\n alreadyAtStart = el.scrollTop === 0\n alreadyAtEnd = el.scrollTop + el.clientHeight === el.scrollHeight\n } else {\n alreadyAtStart = el.scrollLeft === 0\n alreadyAtEnd = el.scrollLeft + el.clientWidth === el.scrollWidth\n }\n\n const scrollingUp = delta < 0\n const scrollingDown = delta > 0\n\n if (!alreadyAtStart && scrollingUp) return true\n if (!alreadyAtEnd && scrollingDown) return true\n if ((alreadyAtStart || alreadyAtEnd) && el.parentNode) {\n return this.shouldScroll(el.parentNode as Element, e)\n }\n\n return false\n },\n isInside (el: Element, parent: Element): boolean {\n if (el === parent) {\n return true\n } else if (el === null || el === document.body) {\n return false\n } else {\n return this.isInside(el.parentNode as Element, parent)\n }\n },\n checkPath (e: WheelEvent) {\n const path = composedPath(e)\n\n if (e.type === 'keydown' && path[0] === document.body) {\n const dialog = this.$refs.dialog\n // getSelection returns null in firefox in some edge cases, can be ignored\n const selected = window.getSelection()!.anchorNode as Element\n if (dialog && this.hasScrollbar(dialog) && this.isInside(selected, dialog)) {\n return !this.shouldScroll(dialog, e)\n }\n return true\n }\n\n for (let index = 0; index < path.length; index++) {\n const el = path[index]\n\n if (el === document) return true\n if (el === document.documentElement) return true\n if (el === this.$refs.content) return true\n\n if (this.hasScrollbar(el as Element)) return !this.shouldScroll(el as Element, e)\n }\n\n return true\n },\n hideScroll () {\n if (this.$vuetify.breakpoint.smAndDown) {\n document.documentElement!.classList.add('overflow-y-hidden')\n } else {\n addPassiveEventListener(window, 'wheel', this.scrollListener, { passive: false })\n window.addEventListener('keydown', this.scrollListener)\n }\n },\n showScroll () {\n document.documentElement!.classList.remove('overflow-y-hidden')\n window.removeEventListener('wheel', this.scrollListener)\n window.removeEventListener('keydown', this.scrollListener)\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -17,14 +17,11 @@ var _mixins = _interopRequireDefault(require("../../util/mixins"));
17
17
 
18
18
  var _helpers = require("../../util/helpers");
19
19
 
20
- var _vue = require("vue");
21
-
22
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
21
 
24
22
  // Components
25
23
  // Mixins
26
24
  // Utils
27
- // Types
28
25
  var _default = (0, _mixins.default)(_colorable.default, _elevatable.default, _themeable.default
29
26
  /* @vue/component */
30
27
  ).extend({
@@ -48,33 +45,37 @@ var _default = (0, _mixins.default)(_colorable.default, _elevatable.default, _th
48
45
  return null;
49
46
  },
50
47
  genPickerActionsSlot: function genPickerActionsSlot() {
51
- return this.$slots.default ? this.$slots.default({
48
+ return this.$scopedSlots.default ? this.$scopedSlots.default({
52
49
  save: this.save,
53
50
  cancel: this.cancel
54
51
  }) : (0, _helpers.getSlot)(this);
55
52
  },
56
53
  genPicker: function genPicker(staticClass) {
57
- var children = {};
54
+ var children = [];
58
55
 
59
56
  if (!this.noTitle) {
60
57
  var title = this.genPickerTitle();
61
- title && (children.title = title);
58
+ title && children.push(title);
62
59
  }
63
60
 
64
61
  var body = this.genPickerBody();
65
- body && (children.default = body);
66
- children.actions = (0, _vue.h)('template', {}, [this.genPickerActionsSlot()]);
67
- return (0, _vue.h)(_VPicker.default, {
68
- class: staticClass,
69
- color: this.headerColor || this.color,
70
- dark: this.dark,
71
- elevation: this.elevation,
72
- flat: this.flat,
73
- fullWidth: this.fullWidth,
74
- landscape: this.landscape,
75
- light: this.light,
76
- width: this.width,
77
- noTitle: this.noTitle
62
+ body && children.push(body);
63
+ children.push(this.$createElement('template', {
64
+ slot: 'actions'
65
+ }, [this.genPickerActionsSlot()]));
66
+ return this.$createElement(_VPicker.default, {
67
+ staticClass: staticClass,
68
+ props: {
69
+ color: this.headerColor || this.color,
70
+ dark: this.dark,
71
+ elevation: this.elevation,
72
+ flat: this.flat,
73
+ fullWidth: this.fullWidth,
74
+ landscape: this.landscape,
75
+ light: this.light,
76
+ width: this.width,
77
+ noTitle: this.noTitle
78
+ }
78
79
  }, children);
79
80
  }
80
81
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/picker/index.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AACA;;AAGA;;AACA;;AAGA;;;;AAbA;AAGA;AAKA;AAIA;eAGe,qBACb,kBADa,EAEb,mBAFa,EAGb;AACF;AAJe,EAKb,MALa,CAKN;AACP,EAAA,IAAI,EAAE,QADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,OADD;AAEL,IAAA,SAAS,EAAE,OAFN;AAGL,IAAA,WAAW,EAAE,MAHR;AAIL,IAAA,SAAS,EAAE,OAJN;AAKL,IAAA,OAAO,EAAE,OALJ;AAML,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADD;AAEL,MAAA,OAAO,EAAE;AAFJ;AANF,GAHA;AAeP,EAAA,OAAO,EAAE;AACP,IAAA,cADO,4BACO;AACZ,aAAO,IAAP;AACD,KAHM;AAIP,IAAA,aAJO,2BAIM;AACX,aAAO,IAAP;AACD,KANM;AAOP,IAAA,oBAPO,kCAOa;AAClB,aAAO,KAAK,MAAL,CAAY,OAAZ,GAAsB,KAAK,MAAL,CAAY,OAAZ,CAAoB;AAC/C,QAAA,IAAI,EAAG,KAAa,IAD2B;AAE/C,QAAA,MAAM,EAAG,KAAa;AAFyB,OAApB,CAAtB,GAGF,sBAAQ,IAAR,CAHL;AAID,KAZM;AAaP,IAAA,SAbO,qBAaI,WAbJ,EAauB;AAC5B,UAAM,QAAQ,GAAG,EAAjB;;AAEA,UAAI,CAAC,KAAK,OAAV,EAAmB;AACjB,YAAM,KAAK,GAAG,KAAK,cAAL,EAAd;AACA,QAAA,KAAK,KAAK,QAAQ,CAAC,KAAT,GAAiB,KAAtB,CAAL;AACD;;AAED,UAAM,IAAI,GAAG,KAAK,aAAL,EAAb;AACA,MAAA,IAAI,KAAK,QAAQ,CAAC,OAAT,GAAmB,IAAxB,CAAJ;AAEA,MAAA,QAAQ,CAAC,OAAT,GAAoB,YAAE,UAAF,EAAc,EAAd,EAAkB,CAAC,KAAK,oBAAL,EAAD,CAAlB,CAApB;AAEA,aAAO,YAAE,gBAAF,EAAW;AAChB,QAAA,KAAK,EAAE,WADS;AAEhB,QAAA,KAAK,EAAE,KAAK,WAAL,IAAoB,KAAK,KAFhB;AAGhB,QAAA,IAAI,EAAE,KAAK,IAHK;AAIhB,QAAA,SAAS,EAAE,KAAK,SAJA;AAKhB,QAAA,IAAI,EAAE,KAAK,IALK;AAMhB,QAAA,SAAS,EAAE,KAAK,SANA;AAOhB,QAAA,SAAS,EAAE,KAAK,SAPA;AAQhB,QAAA,KAAK,EAAE,KAAK,KARI;AAShB,QAAA,KAAK,EAAE,KAAK,KATI;AAUhB,QAAA,OAAO,EAAE,KAAK;AAVE,OAAX,EAWJ,QAXI,CAAP;AAYD;AAtCM;AAfF,CALM,C","sourcesContent":["// Components\nimport VPicker from '../../components/VPicker'\n\n// Mixins\nimport Colorable from '../colorable'\nimport Elevatable from '../../mixins/elevatable'\nimport Themeable from '../themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode, h } from 'vue'\n\nexport default mixins(\n Colorable,\n Elevatable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'picker',\n\n props: {\n flat: Boolean,\n fullWidth: Boolean,\n headerColor: String,\n landscape: Boolean,\n noTitle: Boolean,\n width: {\n type: [Number, String],\n default: 290,\n },\n },\n\n methods: {\n genPickerTitle (): VNode | null {\n return null\n },\n genPickerBody (): VNode | null {\n return null\n },\n genPickerActionsSlot () {\n return this.$slots.default ? this.$slots.default({\n save: (this as any).save,\n cancel: (this as any).cancel,\n }) : getSlot(this)\n },\n genPicker (staticClass: string) {\n const children = {}\n\n if (!this.noTitle) {\n const title = this.genPickerTitle()\n title && (children.title = title)\n }\n\n const body = this.genPickerBody()\n body && (children.default = body)\n\n children.actions = (h('template', {}, [this.genPickerActionsSlot()]))\n\n return h(VPicker, {\n class: staticClass,\n color: this.headerColor || this.color,\n dark: this.dark,\n elevation: this.elevation,\n flat: this.flat,\n fullWidth: this.fullWidth,\n landscape: this.landscape,\n light: this.light,\n width: this.width,\n noTitle: this.noTitle\n }, children)\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/picker/index.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AACA;;AAGA;;AACA;;;;AAVA;AAGA;AAKA;eAOe,qBACb,kBADa,EAEb,mBAFa,EAGb;AACF;AAJe,EAKb,MALa,CAKN;AACP,EAAA,IAAI,EAAE,QADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,OADD;AAEL,IAAA,SAAS,EAAE,OAFN;AAGL,IAAA,WAAW,EAAE,MAHR;AAIL,IAAA,SAAS,EAAE,OAJN;AAKL,IAAA,OAAO,EAAE,OALJ;AAML,IAAA,KAAK,EAAE;AACL,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CADD;AAEL,MAAA,OAAO,EAAE;AAFJ;AANF,GAHA;AAeP,EAAA,OAAO,EAAE;AACP,IAAA,cADO,4BACO;AACZ,aAAO,IAAP;AACD,KAHM;AAIP,IAAA,aAJO,2BAIM;AACX,aAAO,IAAP;AACD,KANM;AAOP,IAAA,oBAPO,kCAOa;AAClB,aAAO,KAAK,YAAL,CAAkB,OAAlB,GAA4B,KAAK,YAAL,CAAkB,OAAlB,CAA0B;AAC3D,QAAA,IAAI,EAAG,KAAa,IADuC;AAE3D,QAAA,MAAM,EAAG,KAAa;AAFqC,OAA1B,CAA5B,GAGF,sBAAQ,IAAR,CAHL;AAID,KAZM;AAaP,IAAA,SAbO,qBAaI,WAbJ,EAauB;AAC5B,UAAM,QAAQ,GAAY,EAA1B;;AAEA,UAAI,CAAC,KAAK,OAAV,EAAmB;AACjB,YAAM,KAAK,GAAG,KAAK,cAAL,EAAd;AACA,QAAA,KAAK,IAAI,QAAQ,CAAC,IAAT,CAAc,KAAd,CAAT;AACD;;AAED,UAAM,IAAI,GAAG,KAAK,aAAL,EAAb;AACA,MAAA,IAAI,IAAI,QAAQ,CAAC,IAAT,CAAc,IAAd,CAAR;AAEA,MAAA,QAAQ,CAAC,IAAT,CAAc,KAAK,cAAL,CAAoB,UAApB,EAAgC;AAAE,QAAA,IAAI,EAAE;AAAR,OAAhC,EAAqD,CAAC,KAAK,oBAAL,EAAD,CAArD,CAAd;AAEA,aAAO,KAAK,cAAL,CAAoB,gBAApB,EAA6B;AAClC,QAAA,WAAW,EAAX,WADkC;AAElC,QAAA,KAAK,EAAE;AACL,UAAA,KAAK,EAAE,KAAK,WAAL,IAAoB,KAAK,KAD3B;AAEL,UAAA,IAAI,EAAE,KAAK,IAFN;AAGL,UAAA,SAAS,EAAE,KAAK,SAHX;AAIL,UAAA,IAAI,EAAE,KAAK,IAJN;AAKL,UAAA,SAAS,EAAE,KAAK,SALX;AAML,UAAA,SAAS,EAAE,KAAK,SANX;AAOL,UAAA,KAAK,EAAE,KAAK,KAPP;AAQL,UAAA,KAAK,EAAE,KAAK,KARP;AASL,UAAA,OAAO,EAAE,KAAK;AATT;AAF2B,OAA7B,EAaJ,QAbI,CAAP;AAcD;AAxCM;AAfF,CALM,C","sourcesContent":["// Components\nimport VPicker from '../../components/VPicker'\n\n// Mixins\nimport Colorable from '../colorable'\nimport Elevatable from '../../mixins/elevatable'\nimport Themeable from '../themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport { getSlot } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nexport default mixins(\n Colorable,\n Elevatable,\n Themeable\n/* @vue/component */\n).extend({\n name: 'picker',\n\n props: {\n flat: Boolean,\n fullWidth: Boolean,\n headerColor: String,\n landscape: Boolean,\n noTitle: Boolean,\n width: {\n type: [Number, String],\n default: 290,\n },\n },\n\n methods: {\n genPickerTitle (): VNode | null {\n return null\n },\n genPickerBody (): VNode | null {\n return null\n },\n genPickerActionsSlot () {\n return this.$scopedSlots.default ? this.$scopedSlots.default({\n save: (this as any).save,\n cancel: (this as any).cancel,\n }) : getSlot(this)\n },\n genPicker (staticClass: string) {\n const children: VNode[] = []\n\n if (!this.noTitle) {\n const title = this.genPickerTitle()\n title && children.push(title)\n }\n\n const body = this.genPickerBody()\n body && children.push(body)\n\n children.push(this.$createElement('template', { slot: 'actions' }, [this.genPickerActionsSlot()]))\n\n return this.$createElement(VPicker, {\n staticClass,\n props: {\n color: this.headerColor || this.color,\n dark: this.dark,\n elevation: this.elevation,\n flat: this.flat,\n fullWidth: this.fullWidth,\n landscape: this.landscape,\n light: this.light,\n width: this.width,\n noTitle: this.noTitle,\n },\n }, children)\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -11,15 +11,10 @@ var _mixins = _interopRequireDefault(require("../../util/mixins"));
11
11
 
12
12
  var _helpers = require("../../util/helpers");
13
13
 
14
- var _vue = require("vue");
15
-
16
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
15
 
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
19
-
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
21
-
22
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
+ // Mixins
17
+ // Utilities
23
18
 
24
19
  /* @vue/component */
25
20
  var _default = (0, _mixins.default)(_colorable.default).extend({
@@ -31,20 +26,22 @@ var _default = (0, _mixins.default)(_colorable.default).extend({
31
26
  var staticClass = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : '';
32
27
  var active = this[prop] === value;
33
28
 
34
- var onClick = function onClick(event) {
29
+ var click = function click(event) {
35
30
  event.stopPropagation();
36
31
 
37
32
  _this.$emit("update:".concat((0, _helpers.kebabCase)(prop)), value);
38
33
  };
39
34
 
40
- return (0, _vue.h)('div', _objectSpread({
41
- class: ["v-picker__title__btn ".concat(staticClass).trim(), {
35
+ return this.$createElement('div', {
36
+ staticClass: "v-picker__title__btn ".concat(staticClass).trim(),
37
+ class: {
42
38
  'v-picker__title__btn--active': active,
43
39
  'v-picker__title__btn--readonly': readonly
44
- }]
45
- }, active || readonly ? {} : {
46
- onClick: onClick
47
- }), Array.isArray(content) ? content : [content]);
40
+ },
41
+ on: active || readonly ? undefined : {
42
+ click: click
43
+ }
44
+ }, Array.isArray(content) ? content : [content]);
48
45
  }
49
46
  }
50
47
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/picker-button/index.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;AAGA;;;;;;;;;;AAEA;eACe,qBACb,kBADa,EAEb,MAFa,CAEN;AACP,EAAA,OAAO,EAAE;AACP,IAAA,eADO,2BAEL,IAFK,EAGL,KAHK,EAIL,OAJK,EAMW;AAAA;;AAAA,UADhB,QACgB,uEADL,KACK;AAAA,UAAhB,WAAgB,uEAAF,EAAE;AAEhB,UAAM,MAAM,GAAI,KAAa,IAAb,MAAuB,KAAvC;;AACA,UAAM,OAAO,GAAG,SAAV,OAAU,CAAC,KAAD,EAAiB;AAC/B,QAAA,KAAK,CAAC,eAAN;;AACA,QAAA,KAAI,CAAC,KAAL,kBAAqB,wBAAU,IAAV,CAArB,GAAwC,KAAxC;AACD,OAHD;;AAKA,aAAO,YAAE,KAAF;AACL,QAAA,KAAK,EAAE,CAAC,+BAAwB,WAAxB,EAAsC,IAAtC,EAAD,EAA+C;AACpD,0CAAgC,MADoB;AAEpD,4CAAkC;AAFkB,SAA/C;AADF,SAKA,MAAM,IAAI,QAAX,GAAuB,EAAvB,GAA4B;AAAE,QAAA,OAAO,EAAP;AAAF,OAL3B,GAMJ,KAAK,CAAC,OAAN,CAAc,OAAd,IAAyB,OAAzB,GAAmC,CAAC,OAAD,CAN/B,CAAP;AAOD;AArBM;AADF,CAFM,C","sourcesContent":["// Mixins\nimport Colorable from '../colorable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { kebabCase } from '../../util/helpers'\n\n// Types\nimport { VNodeChildren, h } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Colorable\n).extend({\n methods: {\n genPickerButton (\n prop: string,\n value: any,\n content: VNodeChildren,\n readonly = false,\n staticClass = ''\n ) {\n const active = (this as any)[prop] === value\n const onClick = (event: Event) => {\n event.stopPropagation()\n this.$emit(`update:${kebabCase(prop)}`, value)\n }\n\n return h('div', {\n class: [`v-picker__title__btn ${staticClass}`.trim(), {\n 'v-picker__title__btn--active': active,\n 'v-picker__title__btn--readonly': readonly,\n }],\n ...((active || readonly) ? {} : { onClick }),\n }, Array.isArray(content) ? content : [content])\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/picker-button/index.ts"],"names":[],"mappings":";;;;;;;AACA;;AAGA;;AACA;;;;AALA;AAGA;;AAOA;eACe,qBACb,kBADa,EAEb,MAFa,CAEN;AACP,EAAA,OAAO,EAAE;AACP,IAAA,eADO,2BAEL,IAFK,EAGL,KAHK,EAIL,OAJK,EAMW;AAAA;;AAAA,UADhB,QACgB,uEADL,KACK;AAAA,UAAhB,WAAgB,uEAAF,EAAE;AAEhB,UAAM,MAAM,GAAI,KAAa,IAAb,MAAuB,KAAvC;;AACA,UAAM,KAAK,GAAG,SAAR,KAAQ,CAAC,KAAD,EAAiB;AAC7B,QAAA,KAAK,CAAC,eAAN;;AACA,QAAA,KAAI,CAAC,KAAL,kBAAqB,wBAAU,IAAV,CAArB,GAAwC,KAAxC;AACD,OAHD;;AAKA,aAAO,KAAK,cAAL,CAAoB,KAApB,EAA2B;AAChC,QAAA,WAAW,EAAE,+BAAwB,WAAxB,EAAsC,IAAtC,EADmB;AAEhC,QAAA,KAAK,EAAE;AACL,0CAAgC,MAD3B;AAEL,4CAAkC;AAF7B,SAFyB;AAMhC,QAAA,EAAE,EAAG,MAAM,IAAI,QAAX,GAAuB,SAAvB,GAAmC;AAAE,UAAA,KAAK,EAAL;AAAF;AANP,OAA3B,EAOJ,KAAK,CAAC,OAAN,CAAc,OAAd,IAAyB,OAAzB,GAAmC,CAAC,OAAD,CAP/B,CAAP;AAQD;AAtBM;AADF,CAFM,C","sourcesContent":["// Mixins\nimport Colorable from '../colorable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { kebabCase } from '../../util/helpers'\n\n// Types\nimport { VNodeChildren } from 'vue'\n\n/* @vue/component */\nexport default mixins(\n Colorable\n).extend({\n methods: {\n genPickerButton (\n prop: string,\n value: any,\n content: VNodeChildren,\n readonly = false,\n staticClass = ''\n ) {\n const active = (this as any)[prop] === value\n const click = (event: Event) => {\n event.stopPropagation()\n this.$emit(`update:${kebabCase(prop)}`, value)\n }\n\n return this.$createElement('div', {\n staticClass: `v-picker__title__btn ${staticClass}`.trim(),\n class: {\n 'v-picker__title__btn--active': active,\n 'v-picker__title__btn--readonly': readonly,\n },\n on: (active || readonly) ? undefined : { click },\n }, Array.isArray(content) ? content : [content])\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -6,10 +6,12 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.factory = factory;
7
7
  exports.default = void 0;
8
8
 
9
- var _vue = require("vue");
9
+ var _vue = _interopRequireDefault(require("vue"));
10
10
 
11
11
  var _helpers = require("../../util/helpers");
12
12
 
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+
13
15
  var availableProps = {
14
16
  absolute: Boolean,
15
17
  bottom: Boolean,
@@ -21,7 +23,7 @@ var availableProps = {
21
23
 
22
24
  function factory() {
23
25
  var selected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
24
- return (0, _vue.defineComponent)({
26
+ return _vue.default.extend({
25
27
  name: 'positionable',
26
28
  props: selected.length ? (0, _helpers.filterObjectOnKeys)(availableProps, selected) : availableProps
27
29
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/positionable/index.ts"],"names":[],"mappings":";;;;;;;;AAAA;;AACA;;AAGA,IAAM,cAAc,GAAG;AACrB,EAAA,QAAQ,EAAE,OADW;AAErB,EAAA,MAAM,EAAE,OAFa;AAGrB,EAAA,KAAK,EAAE,OAHc;AAIrB,EAAA,IAAI,EAAE,OAJe;AAKrB,EAAA,KAAK,EAAE,OALc;AAMrB,EAAA,GAAG,EAAE;AANgB,CAAvB;;AAcM,SAAU,OAAV,GAAuC;AAAA,MAApB,QAAoB,uEAAF,EAAE;AAC3C,SAAO,0BAAgB;AACrB,IAAA,IAAI,EAAE,cADe;AAErB,IAAA,KAAK,EAAE,QAAQ,CAAC,MAAT,GAAkB,iCAAmB,cAAnB,EAAmC,QAAnC,CAAlB,GAAiE;AAFnD,GAAhB,CAAP;AAID;;eAEc,OAAO,E,EAEtB;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBI","sourcesContent":["import {defineComponent} from 'vue'\nimport { filterObjectOnKeys } from '../../util/helpers'\nimport { OptionsVue, VueConstructor } from 'vue/types/vue'\n\nconst availableProps = {\n absolute: Boolean,\n bottom: Boolean,\n fixed: Boolean,\n left: Boolean,\n right: Boolean,\n top: Boolean,\n}\ntype props = Record<keyof typeof availableProps, boolean>\n\nexport type Positionable<S extends keyof props> = VueConstructor<Vue & { [P in S]: boolean }, { [P in S]: BooleanConstructor }>\n\nexport function factory <S extends keyof props> (selected?: S[]): Positionable<S>\nexport function factory (selected: undefined): OptionsVue<Vue, {}, {}, {}, props, typeof availableProps>\nexport function factory (selected: any[] = []): any {\n return defineComponent({\n name: 'positionable',\n props: selected.length ? filterObjectOnKeys(availableProps, selected) : availableProps,\n })\n}\n\nexport default factory()\n\n// Add a `*` before the second `/`\n/* Tests /\nlet single = factory(['top']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet some = factory(['top', 'bottom']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet all = factory().extend({\n created () {\n this.top\n this.bottom\n this.absolute\n this.foobar\n }\n})\n/**/\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/positionable/index.ts"],"names":[],"mappings":";;;;;;;;AAAA;;AACA;;;;AAGA,IAAM,cAAc,GAAG;AACrB,EAAA,QAAQ,EAAE,OADW;AAErB,EAAA,MAAM,EAAE,OAFa;AAGrB,EAAA,KAAK,EAAE,OAHc;AAIrB,EAAA,IAAI,EAAE,OAJe;AAKrB,EAAA,KAAK,EAAE,OALc;AAMrB,EAAA,GAAG,EAAE;AANgB,CAAvB;;AAcM,SAAU,OAAV,GAAuC;AAAA,MAApB,QAAoB,uEAAF,EAAE;AAC3C,SAAO,aAAI,MAAJ,CAAW;AAChB,IAAA,IAAI,EAAE,cADU;AAEhB,IAAA,KAAK,EAAE,QAAQ,CAAC,MAAT,GAAkB,iCAAmB,cAAnB,EAAmC,QAAnC,CAAlB,GAAiE;AAFxD,GAAX,CAAP;AAID;;eAEc,OAAO,E,EAEtB;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBI","sourcesContent":["import Vue from 'vue'\nimport { filterObjectOnKeys } from '../../util/helpers'\nimport { OptionsVue, VueConstructor } from 'vue/types/vue'\n\nconst availableProps = {\n absolute: Boolean,\n bottom: Boolean,\n fixed: Boolean,\n left: Boolean,\n right: Boolean,\n top: Boolean,\n}\ntype props = Record<keyof typeof availableProps, boolean>\n\nexport type Positionable<S extends keyof props> = VueConstructor<Vue & { [P in S]: boolean }, { [P in S]: BooleanConstructor }>\n\nexport function factory <S extends keyof props> (selected?: S[]): Positionable<S>\nexport function factory (selected: undefined): OptionsVue<Vue, {}, {}, {}, props, typeof availableProps>\nexport function factory (selected: any[] = []): any {\n return Vue.extend({\n name: 'positionable',\n props: selected.length ? filterObjectOnKeys(availableProps, selected) : availableProps,\n })\n}\n\nexport default factory()\n\n// Add a `*` before the second `/`\n/* Tests /\nlet single = factory(['top']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet some = factory(['top', 'bottom']).extend({\n created () {\n this.top\n this.bottom\n this.absolute\n }\n})\n\nlet all = factory().extend({\n created () {\n this.top\n this.bottom\n this.absolute\n this.foobar\n }\n})\n/**/\n"],"sourceRoot":"","file":"index.js"}