@dimailn/vuetify 2.7.2-alpha4 → 2.7.2-alpha40

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 (1034) hide show
  1. package/dist/vuetify.js +4383 -2392
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VAlert/VAlert.js +39 -9
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAppBar/VAppBar.js +23 -17
  8. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  9. package/es5/components/VAppBar/VAppBarNavIcon.js +5 -1
  10. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  11. package/es5/components/VAutocomplete/VAutocomplete.js +11 -7
  12. package/es5/components/VAutocomplete/VAutocomplete.js.map +1 -1
  13. package/es5/components/VBadge/VBadge.js +46 -14
  14. package/es5/components/VBadge/VBadge.js.map +1 -1
  15. package/es5/components/VBanner/VBanner.js +51 -15
  16. package/es5/components/VBanner/VBanner.js.map +1 -1
  17. package/es5/components/VBottomNavigation/VBottomNavigation.js +36 -14
  18. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  19. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +22 -8
  20. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  21. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js +4 -0
  22. package/es5/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  23. package/es5/components/VBtn/VBtn.js +20 -16
  24. package/es5/components/VBtn/VBtn.js.map +1 -1
  25. package/es5/components/VCalendar/VCalendar.js +27 -29
  26. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  27. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  28. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  29. package/es5/components/VCalendar/VCalendarDaily.js +43 -60
  30. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  31. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  32. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  33. package/es5/components/VCalendar/VCalendarWeekly.js +36 -40
  34. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  35. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  36. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  37. package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
  38. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  39. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  40. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  41. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  42. package/es5/components/VCarousel/VCarousel.js +61 -17
  43. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  44. package/es5/components/VCarousel/VCarouselItem.js +7 -3
  45. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  46. package/es5/components/VCheckbox/VCheckbox.js +40 -9
  47. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  48. package/es5/components/VCheckbox/VSimpleCheckbox.js +94 -38
  49. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  50. package/es5/components/VChip/VChip.js +16 -7
  51. package/es5/components/VChip/VChip.js.map +1 -1
  52. package/es5/components/VColorPicker/VColorPicker.js +54 -39
  53. package/es5/components/VColorPicker/VColorPicker.js.map +1 -1
  54. package/es5/components/VColorPicker/VColorPickerCanvas.js +45 -46
  55. package/es5/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  56. package/es5/components/VColorPicker/VColorPickerEdit.js +27 -26
  57. package/es5/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  58. package/es5/components/VColorPicker/VColorPickerPreview.js +41 -30
  59. package/es5/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  60. package/es5/components/VColorPicker/VColorPickerSwatches.js +13 -10
  61. package/es5/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  62. package/es5/components/VCombobox/VCombobox.js +1 -0
  63. package/es5/components/VCombobox/VCombobox.js.map +1 -1
  64. package/es5/components/VContent/VContent.js +25 -6
  65. package/es5/components/VContent/VContent.js.map +1 -1
  66. package/es5/components/VCounter/VCounter.js.map +1 -1
  67. package/es5/components/VData/VData.js +15 -2
  68. package/es5/components/VData/VData.js.map +1 -1
  69. package/es5/components/VDataIterator/VDataFooter.js +21 -7
  70. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  71. package/es5/components/VDataIterator/VDataIterator.js +47 -50
  72. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  73. package/es5/components/VDataTable/RowGroup.js +46 -15
  74. package/es5/components/VDataTable/RowGroup.js.map +1 -1
  75. package/es5/components/VDataTable/VDataTable.js +41 -44
  76. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  77. package/es5/components/VDataTable/VDataTableHeader.js +5 -8
  78. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  79. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +8 -2
  80. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  81. package/es5/components/VDataTable/VDataTableHeaderMobile.js +29 -37
  82. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  83. package/es5/components/VDataTable/VEditDialog.js +26 -22
  84. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  85. package/es5/components/VDataTable/VSimpleTable.js +1 -1
  86. package/es5/components/VDataTable/VSimpleTable.js.map +1 -1
  87. package/es5/components/VDataTable/VVirtualTable.js +6 -6
  88. package/es5/components/VDataTable/VVirtualTable.js.map +1 -1
  89. package/es5/components/VDataTable/mixins/header.js +7 -9
  90. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  91. package/es5/components/VDatePicker/VDatePicker.js +51 -36
  92. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  93. package/es5/components/VDatePicker/VDatePickerHeader.js +68 -24
  94. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  95. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  96. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  97. package/es5/components/VDatePicker/VDatePickerTitle.js +61 -16
  98. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  99. package/es5/components/VDatePicker/VDatePickerYears.js +47 -23
  100. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  101. package/es5/components/VDatePicker/mixins/date-picker-table.js +52 -31
  102. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  103. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  104. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  105. package/es5/components/VDatePicker/util/eventHelpers.js +27 -17
  106. package/es5/components/VDatePicker/util/eventHelpers.js.map +1 -1
  107. package/es5/components/VDialog/VDialog.js +59 -33
  108. package/es5/components/VDialog/VDialog.js.map +1 -1
  109. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  110. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  111. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +12 -10
  112. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  113. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +17 -20
  114. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  115. package/es5/components/VFileInput/VFileInput.js +50 -27
  116. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  117. package/es5/components/VFooter/VFooter.js +1 -1
  118. package/es5/components/VFooter/VFooter.js.map +1 -1
  119. package/es5/components/VForm/VForm.js +45 -30
  120. package/es5/components/VForm/VForm.js.map +1 -1
  121. package/es5/components/VGrid/VCol.js +6 -4
  122. package/es5/components/VGrid/VCol.js.map +1 -1
  123. package/es5/components/VGrid/VContainer.js +27 -10
  124. package/es5/components/VGrid/VContainer.js.map +1 -1
  125. package/es5/components/VGrid/VRow.js +1 -1
  126. package/es5/components/VGrid/VRow.js.map +1 -1
  127. package/es5/components/VGrid/grid.js +35 -15
  128. package/es5/components/VGrid/grid.js.map +1 -1
  129. package/es5/components/VHover/VHover.js +24 -17
  130. package/es5/components/VHover/VHover.js.map +1 -1
  131. package/es5/components/VIcon/VIcon.js +77 -53
  132. package/es5/components/VIcon/VIcon.js.map +1 -1
  133. package/es5/components/VImg/VImg.js +10 -8
  134. package/es5/components/VImg/VImg.js.map +1 -1
  135. package/es5/components/VInput/VInput.js +65 -12
  136. package/es5/components/VInput/VInput.js.map +1 -1
  137. package/es5/components/VItemGroup/VItem.js +21 -17
  138. package/es5/components/VItemGroup/VItem.js.map +1 -1
  139. package/es5/components/VItemGroup/VItemGroup.js +11 -2
  140. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  141. package/es5/components/VLabel/VLabel.js +3 -1
  142. package/es5/components/VLabel/VLabel.js.map +1 -1
  143. package/es5/components/VLazy/VLazy.js +8 -15
  144. package/es5/components/VLazy/VLazy.js.map +1 -1
  145. package/es5/components/VList/VList.js +2 -2
  146. package/es5/components/VList/VList.js.map +1 -1
  147. package/es5/components/VList/VListGroup.js +73 -40
  148. package/es5/components/VList/VListGroup.js.map +1 -1
  149. package/es5/components/VList/VListItem.js +63 -18
  150. package/es5/components/VList/VListItem.js.map +1 -1
  151. package/es5/components/VList/VListItemAction.js +23 -9
  152. package/es5/components/VList/VListItemAction.js.map +1 -1
  153. package/es5/components/VList/VListItemIcon.js +3 -1
  154. package/es5/components/VList/VListItemIcon.js.map +1 -1
  155. package/es5/components/VMain/VMain.js +1 -1
  156. package/es5/components/VMain/VMain.js.map +1 -1
  157. package/es5/components/VMenu/VMenu.js +62 -32
  158. package/es5/components/VMenu/VMenu.js.map +1 -1
  159. package/es5/components/VMessages/VMessages.js +33 -6
  160. package/es5/components/VMessages/VMessages.js.map +1 -1
  161. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +41 -19
  162. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  163. package/es5/components/VOtpInput/VOtpInput.js +87 -34
  164. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  165. package/es5/components/VOverflowBtn/VOverflowBtn.js +18 -14
  166. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  167. package/es5/components/VOverlay/VOverlay.js +31 -3
  168. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  169. package/es5/components/VPagination/VPagination.js +48 -27
  170. package/es5/components/VPagination/VPagination.js.map +1 -1
  171. package/es5/components/VPicker/VPicker.js +7 -4
  172. package/es5/components/VPicker/VPicker.js.map +1 -1
  173. package/es5/components/VProgressCircular/VProgressCircular.js +6 -13
  174. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  175. package/es5/components/VProgressLinear/VProgressLinear.js +51 -30
  176. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  177. package/es5/components/VRadioGroup/VRadio.js +11 -2
  178. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  179. package/es5/components/VRadioGroup/VRadioGroup.js +30 -2
  180. package/es5/components/VRadioGroup/VRadioGroup.js.map +1 -1
  181. package/es5/components/VRangeSlider/VRangeSlider.js +57 -32
  182. package/es5/components/VRangeSlider/VRangeSlider.js.map +1 -1
  183. package/es5/components/VRating/VRating.js +45 -17
  184. package/es5/components/VRating/VRating.js.map +1 -1
  185. package/es5/components/VSelect/VSelect.js +161 -81
  186. package/es5/components/VSelect/VSelect.js.map +1 -1
  187. package/es5/components/VSelect/VSelectList.js +109 -44
  188. package/es5/components/VSelect/VSelectList.js.map +1 -1
  189. package/es5/components/VSheet/VSheet.js +3 -1
  190. package/es5/components/VSheet/VSheet.js.map +1 -1
  191. package/es5/components/VSlideGroup/VSlideGroup.js +40 -28
  192. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  193. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  194. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  195. package/es5/components/VSlider/VSlider.js +73 -41
  196. package/es5/components/VSlider/VSlider.js.map +1 -1
  197. package/es5/components/VSnackbar/VSnackbar.js +8 -3
  198. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  199. package/es5/components/VSparkline/VSparkline.js +48 -68
  200. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  201. package/es5/components/VSpeedDial/VSpeedDial.js +13 -17
  202. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  203. package/es5/components/VStepper/VStepper.js +3 -2
  204. package/es5/components/VStepper/VStepper.js.map +1 -1
  205. package/es5/components/VStepper/VStepperContent.js +9 -8
  206. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  207. package/es5/components/VStepper/VStepperStep.js +12 -20
  208. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  209. package/es5/components/VSubheader/VSubheader.js +1 -1
  210. package/es5/components/VSubheader/VSubheader.js.map +1 -1
  211. package/es5/components/VSwitch/VSwitch.js +11 -9
  212. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  213. package/es5/components/VTabs/VTab.js +1 -0
  214. package/es5/components/VTabs/VTab.js.map +1 -1
  215. package/es5/components/VTabs/VTabs.js +68 -24
  216. package/es5/components/VTabs/VTabs.js.map +1 -1
  217. package/es5/components/VTabs/VTabsBar.js +3 -0
  218. package/es5/components/VTabs/VTabsBar.js.map +1 -1
  219. package/es5/components/VTabs/VTabsItems.js +1 -0
  220. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  221. package/es5/components/VTextField/VTextField.js +42 -29
  222. package/es5/components/VTextField/VTextField.js.map +1 -1
  223. package/es5/components/VTextarea/VTextarea.js +1 -1
  224. package/es5/components/VTextarea/VTextarea.js.map +1 -1
  225. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  226. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  227. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  228. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  229. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  230. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  231. package/es5/components/VToolbar/VToolbar.js +3 -6
  232. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  233. package/es5/components/VTooltip/VTooltip.js +14 -20
  234. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  235. package/es5/components/VTreeview/VTreeview.js +24 -18
  236. package/es5/components/VTreeview/VTreeview.js.map +1 -1
  237. package/es5/components/VTreeview/VTreeviewNode.js +12 -6
  238. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  239. package/es5/components/VVirtualScroll/VVirtualScroll.js +15 -19
  240. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  241. package/es5/components/VWindow/VWindow.js +13 -8
  242. package/es5/components/VWindow/VWindow.js.map +1 -1
  243. package/es5/components/VWindow/VWindowItem.js +10 -10
  244. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  245. package/es5/components/transitions/createTransition.js +8 -2
  246. package/es5/components/transitions/createTransition.js.map +1 -1
  247. package/es5/components/transitions/expand-transition.js +1 -0
  248. package/es5/components/transitions/expand-transition.js.map +1 -1
  249. package/es5/directives/color/index.js +6 -3
  250. package/es5/directives/color/index.js.map +1 -1
  251. package/es5/directives/intersect/index.js +20 -7
  252. package/es5/directives/intersect/index.js.map +1 -1
  253. package/es5/directives/mutate/index.js +13 -13
  254. package/es5/directives/mutate/index.js.map +1 -1
  255. package/es5/directives/resize/index.js +8 -8
  256. package/es5/directives/resize/index.js.map +1 -1
  257. package/es5/directives/ripple/index.js +5 -2
  258. package/es5/directives/ripple/index.js.map +1 -1
  259. package/es5/directives/scroll/index.js +8 -8
  260. package/es5/directives/scroll/index.js.map +1 -1
  261. package/es5/directives/touch/index.js +11 -8
  262. package/es5/directives/touch/index.js.map +1 -1
  263. package/es5/framework.js +1 -1
  264. package/es5/install.js +10 -33
  265. package/es5/install.js.map +1 -1
  266. package/es5/mixins/activatable/index.js +11 -13
  267. package/es5/mixins/activatable/index.js.map +1 -1
  268. package/es5/mixins/applicationable/index.js +4 -4
  269. package/es5/mixins/applicationable/index.js.map +1 -1
  270. package/es5/mixins/binds-attrs/index.js +1 -1
  271. package/es5/mixins/binds-attrs/index.js.map +1 -1
  272. package/es5/mixins/bootable/index.js +1 -2
  273. package/es5/mixins/bootable/index.js.map +1 -1
  274. package/es5/mixins/detachable/index.js +13 -10
  275. package/es5/mixins/detachable/index.js.map +1 -1
  276. package/es5/mixins/groupable/index.js +6 -2
  277. package/es5/mixins/groupable/index.js.map +1 -1
  278. package/es5/mixins/intersectable/index.js +2 -2
  279. package/es5/mixins/intersectable/index.js.map +1 -1
  280. package/es5/mixins/menuable/index.js +1 -1
  281. package/es5/mixins/menuable/index.js.map +1 -1
  282. package/es5/mixins/mouse/index.js +10 -5
  283. package/es5/mixins/mouse/index.js.map +1 -1
  284. package/es5/mixins/overlayable/index.js +5 -3
  285. package/es5/mixins/overlayable/index.js.map +1 -1
  286. package/es5/mixins/picker/index.js +13 -3
  287. package/es5/mixins/picker/index.js.map +1 -1
  288. package/es5/mixins/positionable/index.js.map +1 -1
  289. package/es5/mixins/proxyable/index.js +5 -2
  290. package/es5/mixins/proxyable/index.js.map +1 -1
  291. package/es5/mixins/registrable/index.js.map +1 -1
  292. package/es5/mixins/routable/index.js +5 -2
  293. package/es5/mixins/routable/index.js.map +1 -1
  294. package/es5/mixins/selectable/index.js +9 -7
  295. package/es5/mixins/selectable/index.js.map +1 -1
  296. package/es5/mixins/toggleable/index.js.map +1 -1
  297. package/es5/mixins/translatable/index.js +1 -1
  298. package/es5/mixins/translatable/index.js.map +1 -1
  299. package/es5/mixins/validatable/index.js +34 -7
  300. package/es5/mixins/validatable/index.js.map +1 -1
  301. package/es5/services/goto/util.js +42 -3
  302. package/es5/services/goto/util.js.map +1 -1
  303. package/es5/services/theme/index.js +20 -71
  304. package/es5/services/theme/index.js.map +1 -1
  305. package/es5/util/console.js +49 -18
  306. package/es5/util/console.js.map +1 -1
  307. package/es5/util/helpers.js +58 -3
  308. package/es5/util/helpers.js.map +1 -1
  309. package/es5/util/legacyEventsMixin.js +48 -0
  310. package/es5/util/legacyEventsMixin.js.map +1 -0
  311. package/es5/util/mergeData.js +6 -5
  312. package/es5/util/mergeData.js.map +1 -1
  313. package/es5/util/mixins.js +4 -3
  314. package/es5/util/mixins.js.map +1 -1
  315. package/lib/components/VAlert/VAlert.js +13 -7
  316. package/lib/components/VAlert/VAlert.js.map +1 -1
  317. package/lib/components/VAppBar/VAppBar.js +23 -16
  318. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  319. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  320. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  321. package/lib/components/VAutocomplete/VAutocomplete.js +12 -8
  322. package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
  323. package/lib/components/VBadge/VBadge.js +26 -13
  324. package/lib/components/VBadge/VBadge.js.map +1 -1
  325. package/lib/components/VBanner/VBanner.js +20 -13
  326. package/lib/components/VBanner/VBanner.js.map +1 -1
  327. package/lib/components/VBottomNavigation/VBottomNavigation.js +19 -15
  328. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  329. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +7 -5
  330. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  331. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +4 -0
  332. package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
  333. package/lib/components/VBtn/VBtn.js +21 -20
  334. package/lib/components/VBtn/VBtn.js.map +1 -1
  335. package/lib/components/VCalendar/VCalendar.js +26 -31
  336. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  337. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  338. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  339. package/lib/components/VCalendar/VCalendarDaily.js +21 -33
  340. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  341. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  342. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  343. package/lib/components/VCalendar/VCalendarWeekly.js +28 -36
  344. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  345. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  346. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  347. package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
  348. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  349. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  350. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  351. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  352. package/lib/components/VCarousel/VCarousel.js +36 -16
  353. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  354. package/lib/components/VCarousel/VCarouselItem.js +1 -1
  355. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  356. package/lib/components/VCheckbox/VCheckbox.js +19 -9
  357. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  358. package/lib/components/VCheckbox/VSimpleCheckbox.js +83 -39
  359. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  360. package/lib/components/VChip/VChip.js +17 -8
  361. package/lib/components/VChip/VChip.js.map +1 -1
  362. package/lib/components/VColorPicker/VColorPicker.js +47 -44
  363. package/lib/components/VColorPicker/VColorPicker.js.map +1 -1
  364. package/lib/components/VColorPicker/VColorPickerCanvas.js +41 -43
  365. package/lib/components/VColorPicker/VColorPickerCanvas.js.map +1 -1
  366. package/lib/components/VColorPicker/VColorPickerEdit.js +25 -31
  367. package/lib/components/VColorPicker/VColorPickerEdit.js.map +1 -1
  368. package/lib/components/VColorPicker/VColorPickerPreview.js +45 -32
  369. package/lib/components/VColorPicker/VColorPickerPreview.js.map +1 -1
  370. package/lib/components/VColorPicker/VColorPickerSwatches.js +15 -9
  371. package/lib/components/VColorPicker/VColorPickerSwatches.js.map +1 -1
  372. package/lib/components/VCombobox/VCombobox.js +1 -0
  373. package/lib/components/VCombobox/VCombobox.js.map +1 -1
  374. package/lib/components/VContent/VContent.js +19 -4
  375. package/lib/components/VContent/VContent.js.map +1 -1
  376. package/lib/components/VCounter/VCounter.js.map +1 -1
  377. package/lib/components/VData/VData.js +16 -2
  378. package/lib/components/VData/VData.js.map +1 -1
  379. package/lib/components/VDataIterator/VDataFooter.js +15 -7
  380. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  381. package/lib/components/VDataIterator/VDataIterator.js +31 -34
  382. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  383. package/lib/components/VDataTable/RowGroup.js +30 -14
  384. package/lib/components/VDataTable/RowGroup.js.map +1 -1
  385. package/lib/components/VDataTable/VDataTable.js +20 -33
  386. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  387. package/lib/components/VDataTable/VDataTableHeader.js +7 -9
  388. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  389. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +7 -1
  390. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  391. package/lib/components/VDataTable/VDataTableHeaderMobile.js +18 -25
  392. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  393. package/lib/components/VDataTable/VEditDialog.js +18 -18
  394. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  395. package/lib/components/VDataTable/VSimpleTable.js +1 -1
  396. package/lib/components/VDataTable/VSimpleTable.js.map +1 -1
  397. package/lib/components/VDataTable/VVirtualTable.js +2 -3
  398. package/lib/components/VDataTable/VVirtualTable.js.map +1 -1
  399. package/lib/components/VDataTable/mixins/header.js +3 -8
  400. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  401. package/lib/components/VDatePicker/VDatePicker.js +38 -27
  402. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  403. package/lib/components/VDatePicker/VDatePickerHeader.js +45 -21
  404. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  405. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  406. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  407. package/lib/components/VDatePicker/VDatePickerTitle.js +34 -11
  408. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  409. package/lib/components/VDatePicker/VDatePickerYears.js +17 -8
  410. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  411. package/lib/components/VDatePicker/mixins/date-picker-table.js +31 -16
  412. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  413. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  414. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  415. package/lib/components/VDatePicker/util/eventHelpers.js +26 -14
  416. package/lib/components/VDatePicker/util/eventHelpers.js.map +1 -1
  417. package/lib/components/VDialog/VDialog.js +13 -5
  418. package/lib/components/VDialog/VDialog.js.map +1 -1
  419. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  420. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  421. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +2 -2
  422. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  423. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +4 -7
  424. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  425. package/lib/components/VFileInput/VFileInput.js +43 -25
  426. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  427. package/lib/components/VFooter/VFooter.js +2 -2
  428. package/lib/components/VFooter/VFooter.js.map +1 -1
  429. package/lib/components/VForm/VForm.js +41 -26
  430. package/lib/components/VForm/VForm.js.map +1 -1
  431. package/lib/components/VGrid/VCol.js +7 -5
  432. package/lib/components/VGrid/VCol.js.map +1 -1
  433. package/lib/components/VGrid/VContainer.js +14 -10
  434. package/lib/components/VGrid/VContainer.js.map +1 -1
  435. package/lib/components/VGrid/VRow.js +2 -2
  436. package/lib/components/VGrid/VRow.js.map +1 -1
  437. package/lib/components/VGrid/grid.js +16 -14
  438. package/lib/components/VGrid/grid.js.map +1 -1
  439. package/lib/components/VHover/VHover.js +24 -18
  440. package/lib/components/VHover/VHover.js.map +1 -1
  441. package/lib/components/VIcon/VIcon.js +79 -57
  442. package/lib/components/VIcon/VIcon.js.map +1 -1
  443. package/lib/components/VImg/VImg.js +5 -9
  444. package/lib/components/VImg/VImg.js.map +1 -1
  445. package/lib/components/VInput/VInput.js +32 -9
  446. package/lib/components/VInput/VInput.js.map +1 -1
  447. package/lib/components/VItemGroup/VItem.js +25 -21
  448. package/lib/components/VItemGroup/VItem.js.map +1 -1
  449. package/lib/components/VItemGroup/VItemGroup.js +13 -3
  450. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  451. package/lib/components/VLabel/VLabel.js +3 -1
  452. package/lib/components/VLabel/VLabel.js.map +1 -1
  453. package/lib/components/VLazy/VLazy.js +9 -16
  454. package/lib/components/VLazy/VLazy.js.map +1 -1
  455. package/lib/components/VList/VList.js +3 -3
  456. package/lib/components/VList/VList.js.map +1 -1
  457. package/lib/components/VList/VListGroup.js +34 -32
  458. package/lib/components/VList/VListGroup.js.map +1 -1
  459. package/lib/components/VList/VListItem.js +41 -19
  460. package/lib/components/VList/VListItem.js.map +1 -1
  461. package/lib/components/VList/VListItemAction.js +15 -9
  462. package/lib/components/VList/VListItemAction.js.map +1 -1
  463. package/lib/components/VList/VListItemIcon.js +3 -1
  464. package/lib/components/VList/VListItemIcon.js.map +1 -1
  465. package/lib/components/VMain/VMain.js +2 -2
  466. package/lib/components/VMain/VMain.js.map +1 -1
  467. package/lib/components/VMenu/VMenu.js +18 -6
  468. package/lib/components/VMenu/VMenu.js.map +1 -1
  469. package/lib/components/VMessages/VMessages.js +13 -2
  470. package/lib/components/VMessages/VMessages.js.map +1 -1
  471. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +17 -12
  472. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  473. package/lib/components/VOtpInput/VOtpInput.js +103 -35
  474. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  475. package/lib/components/VOverflowBtn/VOverflowBtn.js +16 -15
  476. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  477. package/lib/components/VOverlay/VOverlay.js +13 -2
  478. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  479. package/lib/components/VPagination/VPagination.js +28 -23
  480. package/lib/components/VPagination/VPagination.js.map +1 -1
  481. package/lib/components/VPicker/VPicker.js +4 -4
  482. package/lib/components/VPicker/VPicker.js.map +1 -1
  483. package/lib/components/VProgressCircular/VProgressCircular.js +6 -7
  484. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  485. package/lib/components/VProgressLinear/VProgressLinear.js +45 -22
  486. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  487. package/lib/components/VRadioGroup/VRadio.js +3 -2
  488. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  489. package/lib/components/VRadioGroup/VRadioGroup.js +14 -5
  490. package/lib/components/VRadioGroup/VRadioGroup.js.map +1 -1
  491. package/lib/components/VRangeSlider/VRangeSlider.js +17 -5
  492. package/lib/components/VRangeSlider/VRangeSlider.js.map +1 -1
  493. package/lib/components/VRating/VRating.js +11 -0
  494. package/lib/components/VRating/VRating.js.map +1 -1
  495. package/lib/components/VSelect/VSelect.js +104 -42
  496. package/lib/components/VSelect/VSelect.js.map +1 -1
  497. package/lib/components/VSelect/VSelectList.js +64 -29
  498. package/lib/components/VSelect/VSelectList.js.map +1 -1
  499. package/lib/components/VSheet/VSheet.js +3 -2
  500. package/lib/components/VSheet/VSheet.js.map +1 -1
  501. package/lib/components/VSlideGroup/VSlideGroup.js +23 -23
  502. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  503. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  504. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  505. package/lib/components/VSlider/VSlider.js +37 -25
  506. package/lib/components/VSlider/VSlider.js.map +1 -1
  507. package/lib/components/VSnackbar/VSnackbar.js +2 -1
  508. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  509. package/lib/components/VSparkline/VSparkline.js +48 -67
  510. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  511. package/lib/components/VSpeedDial/VSpeedDial.js +9 -15
  512. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  513. package/lib/components/VStepper/VStepper.js +4 -3
  514. package/lib/components/VStepper/VStepper.js.map +1 -1
  515. package/lib/components/VStepper/VStepperContent.js +7 -8
  516. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  517. package/lib/components/VStepper/VStepperStep.js +8 -19
  518. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  519. package/lib/components/VSubheader/VSubheader.js +1 -1
  520. package/lib/components/VSubheader/VSubheader.js.map +1 -1
  521. package/lib/components/VSwitch/VSwitch.js +2 -4
  522. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  523. package/lib/components/VTabs/VTab.js +1 -0
  524. package/lib/components/VTabs/VTab.js.map +1 -1
  525. package/lib/components/VTabs/VTabs.js +34 -8
  526. package/lib/components/VTabs/VTabs.js.map +1 -1
  527. package/lib/components/VTabs/VTabsBar.js +3 -0
  528. package/lib/components/VTabs/VTabsBar.js.map +1 -1
  529. package/lib/components/VTabs/VTabsItems.js +1 -0
  530. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  531. package/lib/components/VTextField/VTextField.js +15 -19
  532. package/lib/components/VTextField/VTextField.js.map +1 -1
  533. package/lib/components/VTextarea/VTextarea.js +1 -1
  534. package/lib/components/VTextarea/VTextarea.js.map +1 -1
  535. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  536. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  537. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  538. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  539. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  540. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  541. package/lib/components/VToolbar/VToolbar.js +6 -7
  542. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  543. package/lib/components/VTooltip/VTooltip.js +11 -22
  544. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  545. package/lib/components/VTreeview/VTreeview.js +15 -13
  546. package/lib/components/VTreeview/VTreeview.js.map +1 -1
  547. package/lib/components/VTreeview/VTreeviewNode.js +4 -6
  548. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  549. package/lib/components/VVirtualScroll/VVirtualScroll.js +8 -14
  550. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  551. package/lib/components/VWindow/VWindow.js +7 -6
  552. package/lib/components/VWindow/VWindow.js.map +1 -1
  553. package/lib/components/VWindow/VWindowItem.js +5 -7
  554. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  555. package/lib/components/transitions/createTransition.js +2 -2
  556. package/lib/components/transitions/createTransition.js.map +1 -1
  557. package/lib/components/transitions/expand-transition.js +1 -0
  558. package/lib/components/transitions/expand-transition.js.map +1 -1
  559. package/lib/directives/color/index.js +6 -3
  560. package/lib/directives/color/index.js.map +1 -1
  561. package/lib/directives/intersect/index.js +20 -7
  562. package/lib/directives/intersect/index.js.map +1 -1
  563. package/lib/directives/mutate/index.js +13 -13
  564. package/lib/directives/mutate/index.js.map +1 -1
  565. package/lib/directives/resize/index.js +8 -8
  566. package/lib/directives/resize/index.js.map +1 -1
  567. package/lib/directives/ripple/index.js +5 -3
  568. package/lib/directives/ripple/index.js.map +1 -1
  569. package/lib/directives/scroll/index.js +8 -8
  570. package/lib/directives/scroll/index.js.map +1 -1
  571. package/lib/directives/touch/index.js +11 -8
  572. package/lib/directives/touch/index.js.map +1 -1
  573. package/lib/framework.js +1 -1
  574. package/lib/install.js +5 -28
  575. package/lib/install.js.map +1 -1
  576. package/lib/mixins/activatable/index.js +13 -14
  577. package/lib/mixins/activatable/index.js.map +1 -1
  578. package/lib/mixins/applicationable/index.js +4 -4
  579. package/lib/mixins/applicationable/index.js.map +1 -1
  580. package/lib/mixins/binds-attrs/index.js +1 -1
  581. package/lib/mixins/binds-attrs/index.js.map +1 -1
  582. package/lib/mixins/bootable/index.js +2 -4
  583. package/lib/mixins/bootable/index.js.map +1 -1
  584. package/lib/mixins/detachable/index.js +14 -11
  585. package/lib/mixins/detachable/index.js.map +1 -1
  586. package/lib/mixins/groupable/index.js +4 -2
  587. package/lib/mixins/groupable/index.js.map +1 -1
  588. package/lib/mixins/intersectable/index.js +2 -2
  589. package/lib/mixins/intersectable/index.js.map +1 -1
  590. package/lib/mixins/menuable/index.js +1 -1
  591. package/lib/mixins/menuable/index.js.map +1 -1
  592. package/lib/mixins/mouse/index.js +9 -5
  593. package/lib/mixins/mouse/index.js.map +1 -1
  594. package/lib/mixins/overlayable/index.js +4 -2
  595. package/lib/mixins/overlayable/index.js.map +1 -1
  596. package/lib/mixins/picker/index.js +5 -3
  597. package/lib/mixins/picker/index.js.map +1 -1
  598. package/lib/mixins/positionable/index.js.map +1 -1
  599. package/lib/mixins/proxyable/index.js +5 -2
  600. package/lib/mixins/proxyable/index.js.map +1 -1
  601. package/lib/mixins/registrable/index.js.map +1 -1
  602. package/lib/mixins/routable/index.js +5 -2
  603. package/lib/mixins/routable/index.js.map +1 -1
  604. package/lib/mixins/selectable/index.js +15 -12
  605. package/lib/mixins/selectable/index.js.map +1 -1
  606. package/lib/mixins/toggleable/index.js.map +1 -1
  607. package/lib/mixins/translatable/index.js +1 -1
  608. package/lib/mixins/translatable/index.js.map +1 -1
  609. package/lib/mixins/validatable/index.js +17 -7
  610. package/lib/mixins/validatable/index.js.map +1 -1
  611. package/lib/services/goto/util.js +42 -3
  612. package/lib/services/goto/util.js.map +1 -1
  613. package/lib/services/theme/index.js +18 -64
  614. package/lib/services/theme/index.js.map +1 -1
  615. package/lib/util/console.js +47 -17
  616. package/lib/util/console.js.map +1 -1
  617. package/lib/util/helpers.js +52 -3
  618. package/lib/util/helpers.js.map +1 -1
  619. package/lib/util/legacyEventsMixin.js +37 -0
  620. package/lib/util/legacyEventsMixin.js.map +1 -0
  621. package/lib/util/mergeData.js +6 -5
  622. package/lib/util/mergeData.js.map +1 -1
  623. package/lib/util/mixins.js +3 -2
  624. package/lib/util/mixins.js.map +1 -1
  625. package/package.json +2 -2
  626. package/src/components/VAlert/VAlert.ts +19 -8
  627. package/src/components/VAlert/__tests__/VAlert.spec.ts +78 -50
  628. package/src/components/VAlert/__tests__/__snapshots__/VAlert.spec.ts.snap +18 -20
  629. package/src/components/VApp/__tests__/VApp.spec.ts +24 -18
  630. package/src/components/VApp/__tests__/__snapshots__/VApp.spec.ts.snap +4 -4
  631. package/src/components/VAppBar/VAppBar.ts +21 -14
  632. package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
  633. package/src/components/VAppBar/__tests__/VAppBar.spec.ts +256 -74
  634. package/src/components/VAppBar/__tests__/VAppBarNavIcon.spec.ts +2 -6
  635. package/src/components/VAppBar/__tests__/__snapshots__/VAppBar.spec.ts.snap +13 -4
  636. package/src/components/VAppBar/__tests__/__snapshots__/VAppBarNavIcon.spec.ts.snap +4 -5
  637. package/src/components/VAutocomplete/VAutocomplete.ts +35 -6
  638. package/src/components/VAutocomplete/__tests__/VAutocomplete.spec.ts +125 -72
  639. package/src/components/VAutocomplete/__tests__/VAutocomplete2.spec.ts +109 -82
  640. package/src/components/VAutocomplete/__tests__/VAutocomplete3.spec.ts +114 -52
  641. package/src/components/VAvatar/__tests__/VAvatar.spec.ts +72 -10
  642. package/src/components/VBadge/VBadge.ts +38 -26
  643. package/src/components/VBadge/__tests__/VBadge.spec.ts +47 -30
  644. package/src/components/VBadge/__tests__/__snapshots__/VBadge.spec.ts.snap +5 -5
  645. package/src/components/VBanner/VBanner.ts +30 -17
  646. package/src/components/VBanner/__tests__/VBanner.spec.ts +35 -36
  647. package/src/components/VBanner/__tests__/__snapshots__/VBanner.spec.ts.snap +3 -3
  648. package/src/components/VBottomNavigation/VBottomNavigation.ts +29 -17
  649. package/src/components/VBottomNavigation/__tests__/VBottomNavigation.spec.ts +43 -37
  650. package/src/components/VBottomNavigation/__tests__/__snapshots__/VBottomNavigation.spec.ts.snap +10 -10
  651. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +8 -4
  652. package/src/components/VBreadcrumbs/VBreadcrumbsItem.ts +4 -0
  653. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbs.spec.ts +125 -10
  654. package/src/components/VBreadcrumbs/__tests__/VBreadcrumbsItem.spec.ts +10 -6
  655. package/src/components/VBtn/VBtn.ts +25 -17
  656. package/src/components/VBtn/__tests__/VBtn.spec.ts +262 -242
  657. package/src/components/VBtn/__tests__/__snapshots__/VBtn.spec.ts.snap +13 -73
  658. package/src/components/VBtnToggle/__tests__/VBtnToggle.spec.ts +10 -6
  659. package/src/components/VCalendar/VCalendar.ts +29 -27
  660. package/src/components/VCalendar/VCalendarCategory.ts +9 -8
  661. package/src/components/VCalendar/VCalendarDaily.ts +18 -28
  662. package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
  663. package/src/components/VCalendar/VCalendarWeekly.ts +30 -35
  664. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +19 -35
  665. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +21 -19
  666. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
  667. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +38 -38
  668. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  669. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  670. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
  671. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
  672. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
  673. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
  674. package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
  675. package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
  676. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
  677. package/src/components/VCalendar/mixins/times.ts +1 -1
  678. package/src/components/VCard/__tests__/VCard.spec.ts +46 -28
  679. package/src/components/VCard/__tests__/__snapshots__/VCard.spec.ts.snap +2 -2
  680. package/src/components/VCarousel/VCarousel.ts +42 -15
  681. package/src/components/VCarousel/VCarouselItem.ts +1 -1
  682. package/src/components/VCarousel/__tests__/VCarousel.spec.ts +74 -54
  683. package/src/components/VCarousel/__tests__/VCarouselItem.spec.ts +9 -5
  684. package/src/components/VCarousel/__tests__/__snapshots__/VCarousel.spec.ts.snap +1 -1
  685. package/src/components/VCheckbox/VCheckbox.ts +23 -10
  686. package/src/components/VCheckbox/VSimpleCheckbox.ts +97 -45
  687. package/src/components/VCheckbox/__tests__/VCheckbox.spec.ts +163 -152
  688. package/src/components/VCheckbox/__tests__/VSimpleCheckbox.spec.ts +46 -13
  689. package/src/components/VCheckbox/__tests__/__snapshots__/VCheckbox.spec.ts.snap +54 -50
  690. package/src/components/VChip/VChip.ts +19 -15
  691. package/src/components/VChip/__tests__/VChip.spec.ts +50 -50
  692. package/src/components/VChip/__tests__/__snapshots__/VChip.spec.ts.snap +4 -4
  693. package/src/components/VChipGroup/__tests__/VChipGroup.spec.ts +14 -21
  694. package/src/components/VColorPicker/VColorPicker.ts +51 -41
  695. package/src/components/VColorPicker/VColorPickerCanvas.ts +44 -37
  696. package/src/components/VColorPicker/VColorPickerEdit.ts +37 -35
  697. package/src/components/VColorPicker/VColorPickerPreview.ts +48 -28
  698. package/src/components/VColorPicker/VColorPickerSwatches.ts +23 -12
  699. package/src/components/VColorPicker/__tests__/VColorPicker.spec.ts +47 -47
  700. package/src/components/VColorPicker/__tests__/VColorPickerCanvas.spec.ts +15 -13
  701. package/src/components/VColorPicker/__tests__/VColorPickerEdit.spec.ts +52 -50
  702. package/src/components/VColorPicker/__tests__/VColorPickerPreview.spec.ts +101 -30
  703. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPicker.spec.ts.snap +236 -193
  704. package/src/components/VColorPicker/__tests__/__snapshots__/VColorPickerEdit.spec.ts.snap +48 -31
  705. package/src/components/VCombobox/VCombobox.ts +23 -0
  706. package/src/components/VCombobox/__tests__/VCombobox-multiple.spec.ts +202 -174
  707. package/src/components/VCombobox/__tests__/VCombobox.spec.ts +126 -95
  708. package/src/components/VContent/VContent.ts +11 -3
  709. package/src/components/VCounter/VCounter.ts +1 -1
  710. package/src/components/VCounter/__tests__/VCounter.spec.ts +10 -25
  711. package/src/components/VData/VData.ts +14 -1
  712. package/src/components/VData/__tests__/VData.spec.ts +69 -90
  713. package/src/components/VDataIterator/VDataFooter.ts +16 -9
  714. package/src/components/VDataIterator/VDataIterator.ts +51 -35
  715. package/src/components/VDataIterator/__tests__/VDataFooter.spec.ts +38 -39
  716. package/src/components/VDataIterator/__tests__/VDataIterator.spec.ts +90 -122
  717. package/src/components/VDataIterator/__tests__/__snapshots__/VDataFooter.spec.ts.snap +113 -103
  718. package/src/components/VDataIterator/__tests__/__snapshots__/VDataIterator.spec.ts.snap +94 -84
  719. package/src/components/VDataTable/RowGroup.ts +33 -16
  720. package/src/components/VDataTable/VDataTable.ts +20 -29
  721. package/src/components/VDataTable/VDataTableHeader.ts +8 -9
  722. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +10 -1
  723. package/src/components/VDataTable/VDataTableHeaderMobile.ts +18 -25
  724. package/src/components/VDataTable/VEditDialog.ts +23 -21
  725. package/src/components/VDataTable/VSimpleTable.ts +2 -3
  726. package/src/components/VDataTable/VVirtualTable.ts +2 -3
  727. package/src/components/VDataTable/__tests__/MobileRow.spec.ts +55 -66
  728. package/src/components/VDataTable/__tests__/Row.spec.ts +64 -73
  729. package/src/components/VDataTable/__tests__/RowGroup.spec.ts +7 -5
  730. package/src/components/VDataTable/__tests__/VDataTable.spec.ts +916 -998
  731. package/src/components/VDataTable/__tests__/VDataTableHeader.spec.ts +41 -35
  732. package/src/components/VDataTable/__tests__/VEditDialog.spec.ts +52 -40
  733. package/src/components/VDataTable/__tests__/VSimpleTable.spec.ts +55 -29
  734. package/src/components/VDataTable/__tests__/VVirtualTable.spec.ts +13 -15
  735. package/src/components/VDataTable/__tests__/__snapshots__/Row.spec.ts.snap +30 -0
  736. package/src/components/VDataTable/__tests__/__snapshots__/VDataTable.spec.ts.snap +3348 -2891
  737. package/src/components/VDataTable/__tests__/__snapshots__/VDataTableHeader.spec.ts.snap +157 -186
  738. package/src/components/VDataTable/__tests__/__snapshots__/VEditDialog.spec.ts.snap +6 -6
  739. package/src/components/VDataTable/__tests__/__snapshots__/VSimpleTable.spec.ts.snap +22 -18
  740. package/src/components/VDataTable/mixins/__tests__/__snapshots__/header.spec.ts.snap +14 -17
  741. package/src/components/VDataTable/mixins/__tests__/header.spec.ts +17 -17
  742. package/src/components/VDataTable/mixins/header.ts +6 -10
  743. package/src/components/VDatePicker/VDatePicker.ts +48 -27
  744. package/src/components/VDatePicker/VDatePickerHeader.ts +57 -32
  745. package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
  746. package/src/components/VDatePicker/VDatePickerTitle.ts +41 -15
  747. package/src/components/VDatePicker/VDatePickerYears.ts +19 -10
  748. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +278 -260
  749. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +157 -131
  750. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
  751. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +85 -75
  752. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
  753. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +56 -32
  754. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +29 -26
  755. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +628 -595
  756. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +248 -228
  757. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  758. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  759. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  760. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +18 -9
  761. package/src/components/VDatePicker/mixins/date-picker-table.ts +33 -15
  762. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  763. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  764. package/src/components/VDatePicker/util/eventHelpers.ts +33 -13
  765. package/src/components/VDialog/VDialog.ts +24 -12
  766. package/src/components/VDialog/__tests__/VDialog.spec.ts +105 -101
  767. package/src/components/VDialog/__tests__/__snapshots__/VDialog.spec.ts.snap +0 -15
  768. package/src/components/VDivider/__tests__/VDivider.spec.ts +11 -15
  769. package/src/components/VDivider/__tests__/__snapshots__/VDivider.spec.ts.snap +2 -2
  770. package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
  771. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +7 -10
  772. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +13 -18
  773. package/src/components/VExpansionPanel/__tests__/VExpansionPanel.spec.ts +45 -29
  774. package/src/components/VExpansionPanel/__tests__/VExpansionPanelHeader.spec.ts +6 -4
  775. package/src/components/VExpansionPanel/__tests__/VExpansionPanels.spec.ts +9 -5
  776. package/src/components/VExpansionPanel/__tests__/__snapshots__/VExpansionPanel.spec.ts.snap +12 -11
  777. package/src/components/VFileInput/VFileInput.ts +47 -32
  778. package/src/components/VFileInput/__tests__/VFileInput.spec.ts +84 -54
  779. package/src/components/VFileInput/__tests__/__snapshots__/VFileInput.spec.ts.snap +242 -146
  780. package/src/components/VFooter/VFooter.ts +2 -2
  781. package/src/components/VFooter/__tests__/VFooter.spec.ts +28 -21
  782. package/src/components/VForm/VForm.ts +63 -35
  783. package/src/components/VForm/__tests__/VForm.spec.ts +100 -80
  784. package/src/components/VGrid/VCol.ts +4 -4
  785. package/src/components/VGrid/VContainer.ts +16 -12
  786. package/src/components/VGrid/VRow.ts +2 -2
  787. package/src/components/VGrid/__tests__/VCol.spec.ts +20 -18
  788. package/src/components/VGrid/__tests__/VContainer.spec.ts +58 -3
  789. package/src/components/VGrid/__tests__/VFlex.spec.ts +3 -3
  790. package/src/components/VGrid/__tests__/VGrid.spec.ts +12 -11
  791. package/src/components/VGrid/__tests__/VLayout.spec.ts +3 -3
  792. package/src/components/VGrid/grid.ts +16 -17
  793. package/src/components/VHover/VHover.ts +23 -17
  794. package/src/components/VHover/__tests__/VHover.spec.ts +44 -28
  795. package/src/components/VIcon/VIcon.ts +72 -53
  796. package/src/components/VIcon/__tests__/VIcon.spec.ts +139 -123
  797. package/src/components/VIcon/__tests__/__snapshots__/VIcon.spec.ts.snap +19 -74
  798. package/src/components/VImg/VImg.ts +5 -4
  799. package/src/components/VImg/__tests__/VImg.spec.ts +21 -20
  800. package/src/components/VImg/__tests__/__snapshots__/VImg.spec.ts.snap +71 -66
  801. package/src/components/VInput/VInput.ts +33 -8
  802. package/src/components/VInput/__tests__/VInput.spec.ts +170 -234
  803. package/src/components/VInput/__tests__/__snapshots__/VInput.spec.ts.snap +50 -101
  804. package/src/components/VItemGroup/VItem.ts +30 -24
  805. package/src/components/VItemGroup/VItemGroup.ts +14 -3
  806. package/src/components/VItemGroup/__tests__/VItem.spec.ts +39 -46
  807. package/src/components/VItemGroup/__tests__/VItemGroup.spec.ts +96 -124
  808. package/src/components/VItemGroup/__tests__/__snapshots__/VItem.spec.ts.snap +2 -0
  809. package/src/components/VLabel/VLabel.ts +1 -1
  810. package/src/components/VLabel/__tests__/VLabel.spec.ts +240 -14
  811. package/src/components/VLazy/VLazy.ts +12 -14
  812. package/src/components/VLazy/__tests__/VLazy.spec.ts +5 -4
  813. package/src/components/VLazy/__tests__/__snapshots__/VLazy.spec.ts.snap +2 -1
  814. package/src/components/VList/VList.ts +3 -3
  815. package/src/components/VList/VListGroup.ts +43 -32
  816. package/src/components/VList/VListItem.ts +56 -24
  817. package/src/components/VList/VListItemAction.ts +11 -10
  818. package/src/components/VList/VListItemIcon.ts +1 -1
  819. package/src/components/VList/__tests__/VList.spec.ts +13 -12
  820. package/src/components/VList/__tests__/VListGroup.spec.ts +58 -50
  821. package/src/components/VList/__tests__/VListItem.spec.ts +142 -63
  822. package/src/components/VList/__tests__/VListItemAction.spec.ts +32 -31
  823. package/src/components/VList/__tests__/VListItemAvatar.spec.ts +5 -2
  824. package/src/components/VList/__tests__/VListItemGroup.spec.ts +5 -2
  825. package/src/components/VList/__tests__/__snapshots__/VList.spec.ts.snap +10 -10
  826. package/src/components/VList/__tests__/__snapshots__/VListGroup.spec.ts.snap +6 -7
  827. package/src/components/VList/__tests__/__snapshots__/VListItem.spec.ts.snap +1 -1
  828. package/src/components/VList/__tests__/__snapshots__/VListItemAction.spec.ts.snap +20 -6
  829. package/src/components/VMain/VMain.ts +2 -2
  830. package/src/components/VMain/__tests__/VMain.spec.ts +71 -17
  831. package/src/components/VMenu/VMenu.ts +28 -7
  832. package/src/components/VMenu/__tests__/VMenu.spec.ts +90 -69
  833. package/src/components/VMenu/__tests__/__snapshots__/VMenu.spec.ts.snap +3 -5
  834. package/src/components/VMessages/VMessages.ts +15 -4
  835. package/src/components/VMessages/__tests__/VMessages.spec.ts +55 -16
  836. package/src/components/VMessages/__tests__/__snapshots__/VMessages.spec.ts.snap +16 -25
  837. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +27 -19
  838. package/src/components/VNavigationDrawer/__tests__/VNavigationDrawer.spec.ts +84 -71
  839. package/src/components/VOtpInput/VOtpInput.ts +92 -32
  840. package/src/components/VOtpInput/__tests__/VOtpInput.spec.ts +75 -78
  841. package/src/components/VOverflowBtn/VOverflowBtn.ts +16 -11
  842. package/src/components/VOverflowBtn/__tests__/VOverflowBtn.spec.ts +6 -6
  843. package/src/components/VOverflowBtn/__tests__/__snapshots__/VOverflowBtn.spec.ts.snap +38 -46
  844. package/src/components/VOverlay/VOverlay.ts +15 -1
  845. package/src/components/VOverlay/__tests__/VOverlay.spec.ts +6 -6
  846. package/src/components/VPagination/VPagination.ts +41 -29
  847. package/src/components/VPagination/__tests__/VPagination.spec.ts +85 -71
  848. package/src/components/VPagination/__tests__/__snapshots__/VPagination.spec.ts.snap +214 -459
  849. package/src/components/VParallax/__tests__/__snapshots__/VParallax.spec.ts.snap +8 -8
  850. package/src/components/VPicker/VPicker.ts +9 -11
  851. package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
  852. package/src/components/VPicker/__tests__/__snapshots__/VPicker.spec.ts.snap +2 -2
  853. package/src/components/VProgressCircular/VProgressCircular.ts +6 -6
  854. package/src/components/VProgressCircular/__tests__/VProgressCircular.spec.ts +28 -21
  855. package/src/components/VProgressCircular/__tests__/__snapshots__/VProgressCircular.spec.ts.snap +62 -62
  856. package/src/components/VProgressLinear/VProgressLinear.ts +62 -33
  857. package/src/components/VProgressLinear/__tests__/VProgressLinear.spec.ts +386 -71
  858. package/src/components/VProgressLinear/__tests__/__snapshots__/VProgressLinear.spec.ts.snap +53 -79
  859. package/src/components/VRadioGroup/VRadio.ts +4 -2
  860. package/src/components/VRadioGroup/VRadioGroup.ts +20 -7
  861. package/src/components/VRadioGroup/__tests__/VRadio.spec.ts +57 -44
  862. package/src/components/VRadioGroup/__tests__/VRadioGroup.spec.ts +4 -4
  863. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadio.spec.ts.snap +29 -33
  864. package/src/components/VRadioGroup/__tests__/__snapshots__/VRadioGroup.spec.ts.snap +10 -18
  865. package/src/components/VRangeSlider/VRangeSlider.ts +20 -5
  866. package/src/components/VRangeSlider/__tests__/VRangeSlider.spec.ts +40 -40
  867. package/src/components/VRangeSlider/__tests__/__snapshots__/VRangeSlider.spec.ts.snap +32 -38
  868. package/src/components/VRating/VRating.ts +13 -0
  869. package/src/components/VRating/__tests__/VRating.spec.ts +24 -29
  870. package/src/components/VResponsive/__tests__/VResponsive.spec.ts +10 -5
  871. package/src/components/VResponsive/__tests__/__snapshots__/VResponsive.spec.ts.snap +2 -2
  872. package/src/components/VSelect/VSelect.ts +110 -48
  873. package/src/components/VSelect/VSelectList.ts +62 -25
  874. package/src/components/VSelect/__tests__/VSelect.spec.ts +166 -125
  875. package/src/components/VSelect/__tests__/VSelect2.spec.ts +129 -113
  876. package/src/components/VSelect/__tests__/VSelect3.spec.ts +109 -91
  877. package/src/components/VSelect/__tests__/VSelect4.spec.ts +79 -68
  878. package/src/components/VSelect/__tests__/VSelectList.spec.ts +23 -31
  879. package/src/components/VSelect/__tests__/__snapshots__/VSelect.spec.ts.snap +58 -62
  880. package/src/components/VSelect/__tests__/__snapshots__/VSelect2.spec.ts.snap +48 -60
  881. package/src/components/VSelect/__tests__/__snapshots__/VSelect3.spec.ts.snap +9 -297
  882. package/src/components/VSelect/__tests__/__snapshots__/VSelectList.spec.ts.snap +30 -27
  883. package/src/components/VSheet/VSheet.ts +2 -1
  884. package/src/components/VSheet/__tests__/VSheet.spec.ts +5 -5
  885. package/src/components/VSkeletonLoader/__tests__/VSkeletonLoader.spec.ts +22 -15
  886. package/src/components/VSkeletonLoader/__tests__/__snapshots__/VSkeletonLoader.spec.ts.snap +60 -60
  887. package/src/components/VSlideGroup/VSlideGroup.ts +36 -24
  888. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  889. package/src/components/VSlideGroup/__tests__/VSlideGroup.spec.ts +70 -62
  890. package/src/components/VSlideGroup/__tests__/__snapshots__/VSlideGroup.spec.ts.snap +13 -34
  891. package/src/components/VSlider/VSlider.ts +58 -32
  892. package/src/components/VSlider/__tests__/VSlider.spec.ts +188 -286
  893. package/src/components/VSlider/__tests__/__snapshots__/VSlider.spec.ts.snap +157 -246
  894. package/src/components/VSnackbar/VSnackbar.ts +2 -2
  895. package/src/components/VSnackbar/__tests__/VSnackbar.spec.ts +46 -37
  896. package/src/components/VSparkline/VSparkline.ts +54 -92
  897. package/src/components/VSparkline/__tests__/VSparkline.spec.ts +33 -35
  898. package/src/components/VSpeedDial/VSpeedDial.ts +12 -15
  899. package/src/components/VSpeedDial/__tests__/VSpeedDial.spec.ts +21 -13
  900. package/src/components/VSpeedDial/__tests__/__snapshots__/VSpeedDial.spec.ts.snap +6 -6
  901. package/src/components/VStepper/VStepper.ts +7 -5
  902. package/src/components/VStepper/VStepperContent.ts +10 -16
  903. package/src/components/VStepper/VStepperStep.ts +9 -16
  904. package/src/components/VStepper/__tests__/VStepper.spec.ts +7 -4
  905. package/src/components/VStepper/__tests__/VStepperContent.spec.ts +120 -107
  906. package/src/components/VStepper/__tests__/VStepperStep.spec.ts +51 -44
  907. package/src/components/VStepper/__tests__/__snapshots__/VStepperStep.spec.ts.snap +10 -12
  908. package/src/components/VSubheader/VSubheader.ts +1 -1
  909. package/src/components/VSubheader/__tests__/VSubheader.spec.ts +12 -7
  910. package/src/components/VSubheader/__tests__/__snapshots__/VSubheader.spec.ts.snap +1 -1
  911. package/src/components/VSwitch/VSwitch.ts +5 -6
  912. package/src/components/VSwitch/__tests__/VSwitch.spec.ts +34 -44
  913. package/src/components/VSwitch/__tests__/__snapshots__/VSwitch.spec.ts.snap +11 -15
  914. package/src/components/VSystemBar/__tests__/VSystemBar.spec.ts +89 -17
  915. package/src/components/VTabs/VTab.ts +2 -0
  916. package/src/components/VTabs/VTabs.ts +39 -14
  917. package/src/components/VTabs/VTabsBar.ts +11 -5
  918. package/src/components/VTabs/VTabsItems.ts +2 -0
  919. package/src/components/VTabs/__tests__/VTab.spec.ts +49 -38
  920. package/src/components/VTabs/__tests__/VTabs.spec.ts +189 -76
  921. package/src/components/VTabs/__tests__/VTabsBar.spec.ts +68 -27
  922. package/src/components/VTabs/__tests__/VTabsSlider.spec.ts +7 -6
  923. package/src/components/VTabs/__tests__/__snapshots__/VTabs.spec.ts.snap +1 -3
  924. package/src/components/VTextField/VTextField.ts +22 -22
  925. package/src/components/VTextField/__tests__/VTextField.spec.ts +350 -257
  926. package/src/components/VTextField/__tests__/__snapshots__/VTextField.spec.ts.snap +49 -73
  927. package/src/components/VTextarea/VTextarea.ts +1 -1
  928. package/src/components/VTextarea/__tests__/VTextarea.spec.ts +163 -35
  929. package/src/components/VTextarea/__tests__/__snapshots__/VTextarea.spec.ts.snap +99 -4
  930. package/src/components/VThemeProvider/__tests__/VThemeProvider.spec.ts +49 -10
  931. package/src/components/VTimePicker/VTimePicker.ts +199 -89
  932. package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
  933. package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
  934. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +155 -142
  935. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
  936. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +49 -43
  937. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +120 -40
  938. package/src/components/VTimeline/__tests__/VTimelineItem.spec.ts +25 -35
  939. package/src/components/VTimeline/__tests__/__snapshots__/VTimelineItem.spec.ts.snap +6 -7
  940. package/src/components/VToolbar/VToolbar.ts +6 -7
  941. package/src/components/VToolbar/__tests__/VToolbar.spec.ts +49 -25
  942. package/src/components/VTooltip/VTooltip.ts +26 -32
  943. package/src/components/VTooltip/__tests__/VTooltip.spec.ts +64 -78
  944. package/src/components/VTooltip/__tests__/__snapshots__/VTooltip.spec.ts.snap +34 -18
  945. package/src/components/VTreeview/VTreeview.ts +20 -17
  946. package/src/components/VTreeview/VTreeviewNode.ts +4 -6
  947. package/src/components/VTreeview/__tests__/VTreeview.spec.ts +168 -174
  948. package/src/components/VTreeview/__tests__/VTreeviewNode.spec.ts +74 -78
  949. package/src/components/VTreeview/__tests__/__snapshots__/VTreeview.spec.ts.snap +141 -141
  950. package/src/components/VTreeview/__tests__/__snapshots__/VTreeviewNode.spec.ts.snap +32 -26
  951. package/src/components/VVirtualScroll/VVirtualScroll.ts +14 -15
  952. package/src/components/VVirtualScroll/__tests__/VVirtualScroll.spec.ts +24 -20
  953. package/src/components/VWindow/VWindow.ts +9 -6
  954. package/src/components/VWindow/VWindowItem.ts +5 -4
  955. package/src/components/VWindow/__tests__/VWindow.spec.ts +304 -185
  956. package/src/components/VWindow/__tests__/VWindowItem.spec.ts +283 -126
  957. package/src/components/VWindow/__tests__/__snapshots__/VWindow.spec.ts.snap +59 -0
  958. package/src/components/VWindow/__tests__/__snapshots__/VWindowItem.spec.ts.snap +36 -0
  959. package/src/components/transitions/createTransition.ts +2 -2
  960. package/src/components/transitions/expand-transition.ts +2 -0
  961. package/src/directives/click-outside/__tests__/click-outside-shadow-dom.spec.ts +4 -4
  962. package/src/directives/click-outside/__tests__/click-outside.spec.ts +3 -3
  963. package/src/directives/color/__tests__/color.spec.ts +54 -34
  964. package/src/directives/color/index.ts +7 -3
  965. package/src/directives/intersect/__tests__/intersect.spec.ts +7 -7
  966. package/src/directives/intersect/index.ts +81 -42
  967. package/src/directives/mutate/__tests__/mutate.spec.ts +32 -26
  968. package/src/directives/mutate/index.ts +58 -49
  969. package/src/directives/resize/__tests__/resize.spec.ts +5 -5
  970. package/src/directives/resize/index.ts +33 -14
  971. package/src/directives/ripple/__tests__/ripple.spec.ts +34 -36
  972. package/src/directives/ripple/index.ts +3 -6
  973. package/src/directives/scroll/__tests__/scroll.spec.ts +13 -13
  974. package/src/directives/scroll/index.ts +35 -20
  975. package/src/directives/touch/__tests__/touch.spec.ts +23 -16
  976. package/src/directives/touch/index.ts +42 -30
  977. package/src/globals.d.ts +6 -6
  978. package/src/install.ts +10 -32
  979. package/src/mixins/activatable/__tests__/activatable.spec.ts +55 -55
  980. package/src/mixins/activatable/index.ts +10 -11
  981. package/src/mixins/applicationable/__tests__/applicationable.spec.ts +31 -27
  982. package/src/mixins/applicationable/index.ts +4 -4
  983. package/src/mixins/binds-attrs/index.ts +1 -1
  984. package/src/mixins/bootable/__tests__/bootable.spec.ts +17 -11
  985. package/src/mixins/bootable/index.ts +4 -3
  986. package/src/mixins/colorable/__tests__/colorable.spec.ts +9 -6
  987. package/src/mixins/dependent/__tests__/dependent.spec.ts +72 -33
  988. package/src/mixins/detachable/__tests__/detachable.spec.ts +45 -31
  989. package/src/mixins/detachable/index.ts +17 -10
  990. package/src/mixins/elevatable/__tests__/elevatable.spec.ts +14 -13
  991. package/src/mixins/groupable/index.ts +10 -8
  992. package/src/mixins/intersectable/__tests__/intersectable.spec.ts +35 -29
  993. package/src/mixins/intersectable/index.ts +2 -2
  994. package/src/mixins/menuable/__tests__/menuable.spec.ts +76 -33
  995. package/src/mixins/menuable/index.ts +1 -1
  996. package/src/mixins/mobile/__tests__/mobile.spec.ts +9 -6
  997. package/src/mixins/mouse/__tests__/mouse.spec.ts +54 -40
  998. package/src/mixins/mouse/index.ts +10 -6
  999. package/src/mixins/overlayable/__tests__/overlayable.spec.ts +32 -24
  1000. package/src/mixins/overlayable/index.ts +4 -3
  1001. package/src/mixins/picker/index.ts +4 -4
  1002. package/src/mixins/positionable/index.ts +2 -2
  1003. package/src/mixins/proxyable/__tests__/proxyable.spec.ts +18 -17
  1004. package/src/mixins/proxyable/index.ts +6 -3
  1005. package/src/mixins/registrable/__tests__/registrable.spec.ts +31 -0
  1006. package/src/mixins/registrable/index.ts +4 -4
  1007. package/src/mixins/rippleable/__tests__/rippleable.spec.ts +10 -9
  1008. package/src/mixins/roundable/__tests__/roundable.spec.ts +7 -5
  1009. package/src/mixins/routable/__tests__/routable.spec.ts +60 -52
  1010. package/src/mixins/routable/index.ts +6 -4
  1011. package/src/mixins/scrollable/__tests__/scrollable.spec.ts +56 -27
  1012. package/src/mixins/selectable/__tests__/selectable.spec.ts +22 -9
  1013. package/src/mixins/selectable/index.ts +17 -14
  1014. package/src/mixins/toggleable/index.ts +2 -2
  1015. package/src/mixins/translatable/index.ts +1 -1
  1016. package/src/mixins/validatable/__tests__/validatable.spec.ts +194 -158
  1017. package/src/mixins/validatable/index.ts +29 -21
  1018. package/src/services/goto/__tests__/goto.spec.ts +146 -1
  1019. package/src/services/goto/util.ts +44 -5
  1020. package/src/services/theme/__tests__/__snapshots__/theme.spec.ts.snap +0 -1128
  1021. package/src/services/theme/__tests__/theme.spec.ts +81 -83
  1022. package/src/services/theme/index.ts +22 -60
  1023. package/src/util/__tests__/console.spec.ts +124 -11
  1024. package/src/util/__tests__/dom.spec.ts +8 -5
  1025. package/src/util/__tests__/helpers.spec.ts +122 -33
  1026. package/src/util/__tests__/mergeData.spec.ts +8 -8
  1027. package/src/util/console.ts +43 -24
  1028. package/src/util/helpers.ts +57 -5
  1029. package/src/util/legacyEventsMixin.ts +34 -0
  1030. package/src/util/mergeData.ts +10 -5
  1031. package/src/util/mixins.ts +24 -7
  1032. package/types/alacarte.d.ts +14 -14
  1033. package/types/index.d.ts +8 -8
  1034. package/types/lib.d.ts +173 -173
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/ripple/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\nimport { keyCodes } from '../../util/helpers'\nimport makeDirectiveActivatable from '../../util/make-directive-activatable'\n// Types\nimport { VNode, VNodeDirective } from 'vue'\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { rippleStop?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nexport interface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple && el._ripple.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el._ripple || !el._ripple.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el || !el._ripple || !el._ripple.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n if (animation.parentNode?.parentNode === el) el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement\n\n if (!element || !element._ripple || element._ripple.touched || e.rippleStop) return\n\n // Don't allow the event to trigger ripples on any other elements\n e.rippleStop = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element && element._ripple && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple === true) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: VNodeDirective, wasEnabled: boolean) {\n const enabled = isRippleEnabled(binding.value)\n if (!enabled) {\n ripples.hide(el)\n }\n el._ripple = el._ripple || {}\n el._ripple.enabled = enabled\n const value = binding.value || {}\n if (value.center) {\n el._ripple.centered = true\n }\n if (value.class) {\n el._ripple.class = binding.value.class\n }\n if (value.circle) {\n el._ripple.circle = value.circle\n }\n if (enabled && !wasEnabled) {\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction directive (el: HTMLElement, binding: VNodeDirective, node: VNode) {\n updateRipple(el, binding, false)\n\n if (process.env.NODE_ENV === 'development') {\n // warn if an inline element is used, waiting for el to be in the DOM first\n node.context && node.context.$nextTick(() => {\n const computed = window.getComputedStyle(el)\n if (computed && computed.display === 'inline') {\n const context = (node as any).fnOptions ? [(node as any).fnOptions, node.context] : [node.componentInstance]\n consoleWarn('v-ripple can only be used on block-level elements', ...context)\n }\n })\n }\n}\n\nfunction unbind (el: HTMLElement, binding) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction update (el: HTMLElement, binding: VNodeDirective) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple = {\n mounted: directive,\n unmounted: unbind,\n updated: update,\n}\n\n\n\n\nexport default makeDirectiveActivatable(Ripple)\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/directives/ripple/index.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,6CAAP,C,CAEA;;AACA,SAAS,WAAT,QAA4B,oBAA5B;AACA,SAAS,QAAT,QAAyB,oBAAzB;AACA,OAAO,wBAAP,MAAqC,uCAArC,C,CACA;;AACA,SAAgC,QAAhC,QAAgD,KAAhD;AAIA,MAAM,YAAY,GAAG,EAArB;;AAEA,SAAS,SAAT,CAAoB,EAApB,EAAqC,KAArC,EAAkD;AAChD,EAAA,EAAE,CAAC,KAAH,CAAS,SAAT,GAAqB,KAArB;AACA,EAAA,EAAE,CAAC,KAAH,CAAS,eAAT,GAA2B,KAA3B;AACD;;AAQD,SAAS,YAAT,CAAuB,CAAvB,EAA4C;AAC1C,SAAO,CAAC,CAAC,WAAF,CAAc,IAAd,KAAuB,YAA9B;AACD;;AAED,SAAS,eAAT,CAA0B,CAA1B,EAA+C;AAC7C,SAAO,CAAC,CAAC,WAAF,CAAc,IAAd,KAAuB,eAA9B;AACD;;AAED,MAAM,SAAS,GAAG,CAChB,CADgB,EAEhB,EAFgB,EAGhB,KAAA,GAAuB,EAHP,KAId;AACF,MAAI,MAAM,GAAG,CAAb;AACA,MAAI,MAAM,GAAG,CAAb;;AAEA,MAAI,CAAC,eAAe,CAAC,CAAD,CAApB,EAAyB;AACvB,UAAM,MAAM,GAAG,EAAE,CAAC,qBAAH,EAAf;AACA,UAAM,MAAM,GAAG,YAAY,CAAC,CAAD,CAAZ,GAAkB,CAAC,CAAC,OAAF,CAAU,CAAC,CAAC,OAAF,CAAU,MAAV,GAAmB,CAA7B,CAAlB,GAAoD,CAAnE;AAEA,IAAA,MAAM,GAAG,MAAM,CAAC,OAAP,GAAiB,MAAM,CAAC,IAAjC;AACA,IAAA,MAAM,GAAG,MAAM,CAAC,OAAP,GAAiB,MAAM,CAAC,GAAjC;AACD;;AAED,MAAI,MAAM,GAAG,CAAb;AACA,MAAI,KAAK,GAAG,GAAZ;;AACA,MAAI,EAAE,CAAC,OAAH,IAAc,EAAE,CAAC,OAAH,CAAW,MAA7B,EAAqC;AACnC,IAAA,KAAK,GAAG,IAAR;AACA,IAAA,MAAM,GAAG,EAAE,CAAC,WAAH,GAAiB,CAA1B;AACA,IAAA,MAAM,GAAG,KAAK,CAAC,MAAN,GAAe,MAAf,GAAwB,MAAM,GAAG,IAAI,CAAC,IAAL,CAAU,CAAC,MAAM,GAAG,MAAV,KAAqB,CAArB,GAAyB,CAAC,MAAM,GAAG,MAAV,KAAqB,CAAxD,IAA6D,CAAvG;AACD,GAJD,MAIO;AACL,IAAA,MAAM,GAAG,IAAI,CAAC,IAAL,CAAU,EAAE,CAAC,WAAH,IAAkB,CAAlB,GAAsB,EAAE,CAAC,YAAH,IAAmB,CAAnD,IAAwD,CAAjE;AACD;;AAED,QAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC,WAAH,GAAkB,MAAM,GAAG,CAA5B,IAAkC,CAAC,IAAtD;AACA,QAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC,YAAH,GAAmB,MAAM,GAAG,CAA7B,IAAmC,CAAC,IAAvD;AAEA,QAAM,CAAC,GAAG,KAAK,CAAC,MAAN,GAAe,OAAf,GAAyB,GAAG,MAAM,GAAG,MAAM,IAArD;AACA,QAAM,CAAC,GAAG,KAAK,CAAC,MAAN,GAAe,OAAf,GAAyB,GAAG,MAAM,GAAG,MAAM,IAArD;AAEA,SAAO;AAAE,IAAA,MAAF;AAAU,IAAA,KAAV;AAAiB,IAAA,CAAjB;AAAoB,IAAA,CAApB;AAAuB,IAAA,OAAvB;AAAgC,IAAA;AAAhC,GAAP;AACD,CAjCD;;AAmCA,MAAM,OAAO,GAAG;AACd;AACA,EAAA,IAAI,CACF,CADE,EAEF,EAFE,EAGF,KAAA,GAAuB,EAHrB,EAGuB;AAEzB,QAAI,CAAC,EAAE,CAAC,OAAJ,IAAe,CAAC,EAAE,CAAC,OAAH,CAAW,OAA/B,EAAwC;AACtC;AACD;;AAED,UAAM,SAAS,GAAG,QAAQ,CAAC,aAAT,CAAuB,MAAvB,CAAlB;AACA,UAAM,SAAS,GAAG,QAAQ,CAAC,aAAT,CAAuB,MAAvB,CAAlB;AAEA,IAAA,SAAS,CAAC,WAAV,CAAsB,SAAtB;AACA,IAAA,SAAS,CAAC,SAAV,GAAsB,qBAAtB;;AAEA,QAAI,KAAK,CAAC,KAAV,EAAiB;AACf,MAAA,SAAS,CAAC,SAAV,IAAuB,IAAI,KAAK,CAAC,KAAK,EAAtC;AACD;;AAED,UAAM;AAAE,MAAA,MAAF;AAAU,MAAA,KAAV;AAAiB,MAAA,CAAjB;AAAoB,MAAA,CAApB;AAAuB,MAAA,OAAvB;AAAgC,MAAA;AAAhC,QAA4C,SAAS,CAAC,CAAD,EAAI,EAAJ,EAAQ,KAAR,CAA3D;AAEA,UAAM,IAAI,GAAG,GAAG,MAAM,GAAG,CAAC,IAA1B;AACA,IAAA,SAAS,CAAC,SAAV,GAAsB,qBAAtB;AACA,IAAA,SAAS,CAAC,KAAV,CAAgB,KAAhB,GAAwB,IAAxB;AACA,IAAA,SAAS,CAAC,KAAV,CAAgB,MAAhB,GAAyB,IAAzB;AAEA,IAAA,EAAE,CAAC,WAAH,CAAe,SAAf;AAEA,UAAM,QAAQ,GAAG,MAAM,CAAC,gBAAP,CAAwB,EAAxB,CAAjB;;AACA,QAAI,QAAQ,IAAI,QAAQ,CAAC,QAAT,KAAsB,QAAtC,EAAgD;AAC9C,MAAA,EAAE,CAAC,KAAH,CAAS,QAAT,GAAoB,UAApB;AACA,MAAA,EAAE,CAAC,OAAH,CAAW,gBAAX,GAA8B,QAA9B;AACD;;AAED,IAAA,SAAS,CAAC,SAAV,CAAoB,GAApB,CAAwB,4BAAxB;AACA,IAAA,SAAS,CAAC,SAAV,CAAoB,GAApB,CAAwB,8BAAxB;AACA,IAAA,SAAS,CAAC,SAAD,EAAY,aAAa,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,KAAK,IAAI,KAAK,GAApE,CAAT;AACA,IAAA,SAAS,CAAC,OAAV,CAAkB,SAAlB,GAA8B,MAAM,CAAC,WAAW,CAAC,GAAZ,EAAD,CAApC;AAEA,IAAA,UAAU,CAAC,MAAK;AACd,MAAA,SAAS,CAAC,SAAV,CAAoB,MAApB,CAA2B,4BAA3B;AACA,MAAA,SAAS,CAAC,SAAV,CAAoB,GAApB,CAAwB,yBAAxB;AACA,MAAA,SAAS,CAAC,SAAD,EAAY,aAAa,OAAO,KAAK,OAAO,kBAA5C,CAAT;AACD,KAJS,EAIP,CAJO,CAAV;AAKD,GA9Ca;;AAgDd,EAAA,IAAI,CAAE,EAAF,EAAwB;AAC1B,QAAI,CAAC,EAAD,IAAO,CAAC,EAAE,CAAC,OAAX,IAAsB,CAAC,EAAE,CAAC,OAAH,CAAW,OAAtC,EAA+C;AAE/C,UAAM,OAAO,GAAG,EAAE,CAAC,sBAAH,CAA0B,qBAA1B,CAAhB;AAEA,QAAI,OAAO,CAAC,MAAR,KAAmB,CAAvB,EAA0B;AAC1B,UAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAR,GAAiB,CAAlB,CAAzB;AAEA,QAAI,SAAS,CAAC,OAAV,CAAkB,QAAtB,EAAgC,OAAhC,KACK,SAAS,CAAC,OAAV,CAAkB,QAAlB,GAA6B,MAA7B;AAEL,UAAM,IAAI,GAAG,WAAW,CAAC,GAAZ,KAAoB,MAAM,CAAC,SAAS,CAAC,OAAV,CAAkB,SAAnB,CAAvC;AACA,UAAM,KAAK,GAAG,IAAI,CAAC,GAAL,CAAS,MAAM,IAAf,EAAqB,CAArB,CAAd;AAEA,IAAA,UAAU,CAAC,MAAK;AACd,MAAA,SAAS,CAAC,SAAV,CAAoB,MAApB,CAA2B,yBAA3B;AACA,MAAA,SAAS,CAAC,SAAV,CAAoB,GAApB,CAAwB,0BAAxB;AAEA,MAAA,UAAU,CAAC,MAAK;;;AACd,cAAM,OAAO,GAAG,EAAE,CAAC,sBAAH,CAA0B,qBAA1B,CAAhB;;AACA,YAAI,OAAO,CAAC,MAAR,KAAmB,CAAnB,IAAwB,EAAE,CAAC,OAAH,CAAW,gBAAvC,EAAyD;AACvD,UAAA,EAAE,CAAC,KAAH,CAAS,QAAT,GAAoB,EAAE,CAAC,OAAH,CAAW,gBAA/B;AACA,iBAAO,EAAE,CAAC,OAAH,CAAW,gBAAlB;AACD;;AAED,YAAI,CAAA,CAAA,EAAA,GAAA,SAAS,CAAC,UAAV,MAAoB,IAApB,IAAoB,EAAA,KAAA,KAAA,CAApB,GAAoB,KAAA,CAApB,GAAoB,EAAA,CAAE,UAAtB,MAAqC,EAAzC,EAA6C,EAAE,CAAC,WAAH,CAAe,SAAS,CAAC,UAAzB;AAC9C,OARS,EAQP,GARO,CAAV;AASD,KAbS,EAaP,KAbO,CAAV;AAcD;;AA5Ea,CAAhB;;AA+EA,SAAS,eAAT,CAA0B,KAA1B,EAAoC;AAClC,SAAO,OAAO,KAAP,KAAiB,WAAjB,IAAgC,CAAC,CAAC,KAAzC;AACD;;AAED,SAAS,UAAT,CAAqB,CAArB,EAA0C;AACxC,QAAM,KAAK,GAAkB,EAA7B;AACA,QAAM,OAAO,GAAG,CAAC,CAAC,aAAlB;AAEA,MAAI,CAAC,OAAD,IAAY,CAAC,OAAO,CAAC,OAArB,IAAgC,OAAO,CAAC,OAAR,CAAgB,OAAhD,IAA2D,CAAC,CAAC,UAAjE,EAA6E,OAJrC,CAMxC;;AACA,EAAA,CAAC,CAAC,UAAF,GAAe,IAAf;;AAEA,MAAI,YAAY,CAAC,CAAD,CAAhB,EAAqB;AACnB,IAAA,OAAO,CAAC,OAAR,CAAgB,OAAhB,GAA0B,IAA1B;AACA,IAAA,OAAO,CAAC,OAAR,CAAgB,OAAhB,GAA0B,IAA1B;AACD,GAHD,MAGO;AACL;AACA;AACA;AACA;AACA,QAAI,OAAO,CAAC,OAAR,CAAgB,OAApB,EAA6B;AAC9B;;AACD,EAAA,KAAK,CAAC,MAAN,GAAe,OAAO,CAAC,OAAR,CAAgB,QAAhB,IAA4B,eAAe,CAAC,CAAD,CAA1D;;AACA,MAAI,OAAO,CAAC,OAAR,CAAgB,KAApB,EAA2B;AACzB,IAAA,KAAK,CAAC,KAAN,GAAc,OAAO,CAAC,OAAR,CAAgB,KAA9B;AACD;;AAED,MAAI,YAAY,CAAC,CAAD,CAAhB,EAAqB;AACnB;AACA,QAAI,OAAO,CAAC,OAAR,CAAgB,eAApB,EAAqC;;AAErC,IAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB,GAAkC,MAAK;AACrC,MAAA,OAAO,CAAC,IAAR,CAAa,CAAb,EAAgB,OAAhB,EAAyB,KAAzB;AACD,KAFD;;AAGA,IAAA,OAAO,CAAC,OAAR,CAAgB,SAAhB,GAA4B,MAAM,CAAC,UAAP,CAAkB,MAAK;AACjD,UAAI,OAAO,IAAI,OAAO,CAAC,OAAnB,IAA8B,OAAO,CAAC,OAAR,CAAgB,eAAlD,EAAmE;AACjE,QAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB;;AACA,QAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB,GAAkC,IAAlC;AACD;AACF,KAL2B,EAKzB,YALyB,CAA5B;AAMD,GAbD,MAaO;AACL,IAAA,OAAO,CAAC,IAAR,CAAa,CAAb,EAAgB,OAAhB,EAAyB,KAAzB;AACD;AACF;;AAED,SAAS,UAAT,CAAqB,CAArB,EAA6B;AAC3B,QAAM,OAAO,GAAG,CAAC,CAAC,aAAlB;AACA,MAAI,CAAC,OAAD,IAAY,CAAC,OAAO,CAAC,OAAzB,EAAkC;AAElC,EAAA,MAAM,CAAC,YAAP,CAAoB,OAAO,CAAC,OAAR,CAAgB,SAApC,EAJ2B,CAM3B;AACA;;AACA,MAAI,CAAC,CAAC,IAAF,KAAW,UAAX,IAAyB,OAAO,CAAC,OAAR,CAAgB,eAA7C,EAA8D;AAC5D,IAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB;;AACA,IAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB,GAAkC,IAAlC,CAF4D,CAI5D;;AACA,IAAA,OAAO,CAAC,OAAR,CAAgB,SAAhB,GAA4B,UAAU,CAAC,MAAK;AAC1C,MAAA,UAAU,CAAC,CAAD,CAAV;AACD,KAFqC,CAAtC;AAGA;AACD;;AAED,EAAA,MAAM,CAAC,UAAP,CAAkB,MAAK;AACrB,QAAI,OAAO,CAAC,OAAZ,EAAqB;AACnB,MAAA,OAAO,CAAC,OAAR,CAAgB,OAAhB,GAA0B,KAA1B;AACD;AACF,GAJD;AAKA,EAAA,OAAO,CAAC,IAAR,CAAa,OAAb;AACD;;AAED,SAAS,gBAAT,CAA2B,CAA3B,EAAqD;AACnD,QAAM,OAAO,GAAG,CAAC,CAAC,aAAlB;AAEA,MAAI,CAAC,OAAD,IAAY,CAAC,OAAO,CAAC,OAAzB,EAAkC;;AAElC,MAAI,OAAO,CAAC,OAAR,CAAgB,eAApB,EAAqC;AACnC,IAAA,OAAO,CAAC,OAAR,CAAgB,eAAhB,GAAkC,IAAlC;AACD;;AAED,EAAA,MAAM,CAAC,YAAP,CAAoB,OAAO,CAAC,OAAR,CAAgB,SAApC;AACD;;AAED,IAAI,cAAc,GAAG,KAArB;;AAEA,SAAS,kBAAT,CAA6B,CAA7B,EAA6C;AAC3C,MAAI,CAAC,cAAD,KAAoB,CAAC,CAAC,OAAF,KAAc,QAAQ,CAAC,KAAvB,IAAgC,CAAC,CAAC,OAAF,KAAc,QAAQ,CAAC,KAA3E,CAAJ,EAAuF;AACrF,IAAA,cAAc,GAAG,IAAjB;AACA,IAAA,UAAU,CAAC,CAAD,CAAV;AACD;AACF;;AAED,SAAS,kBAAT,CAA6B,CAA7B,EAA6C;AAC3C,EAAA,cAAc,GAAG,KAAjB;AACA,EAAA,UAAU,CAAC,CAAD,CAAV;AACD;;AAED,SAAS,eAAT,CAA0B,CAA1B,EAAuC;AACrC,MAAI,cAAc,KAAK,IAAvB,EAA6B;AAC3B,IAAA,cAAc,GAAG,KAAjB;AACA,IAAA,UAAU,CAAC,CAAD,CAAV;AACD;AACF;;AAED,SAAS,YAAT,CAAuB,EAAvB,EAAwC,OAAxC,EAAiE,UAAjE,EAAoF;AAClF,QAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,KAAT,CAA/B;;AACA,MAAI,CAAC,OAAL,EAAc;AACZ,IAAA,OAAO,CAAC,IAAR,CAAa,EAAb;AACD;;AACD,EAAA,EAAE,CAAC,OAAH,GAAa,EAAE,CAAC,OAAH,IAAc,EAA3B;AACA,EAAA,EAAE,CAAC,OAAH,CAAW,OAAX,GAAqB,OAArB;AACA,QAAM,KAAK,GAAG,OAAO,CAAC,KAAR,IAAiB,EAA/B;;AACA,MAAI,KAAK,CAAC,MAAV,EAAkB;AAChB,IAAA,EAAE,CAAC,OAAH,CAAW,QAAX,GAAsB,IAAtB;AACD;;AACD,MAAI,KAAK,CAAC,KAAV,EAAiB;AACf,IAAA,EAAE,CAAC,OAAH,CAAW,KAAX,GAAmB,OAAO,CAAC,KAAR,CAAc,KAAjC;AACD;;AACD,MAAI,KAAK,CAAC,MAAV,EAAkB;AAChB,IAAA,EAAE,CAAC,OAAH,CAAW,MAAX,GAAoB,KAAK,CAAC,MAA1B;AACD;;AACD,MAAI,OAAO,IAAI,CAAC,UAAhB,EAA4B;AAC1B,IAAA,EAAE,CAAC,gBAAH,CAAoB,YAApB,EAAkC,UAAlC,EAA8C;AAAE,MAAA,OAAO,EAAE;AAAX,KAA9C;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,UAApB,EAAgC,UAAhC,EAA4C;AAAE,MAAA,OAAO,EAAE;AAAX,KAA5C;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,WAApB,EAAiC,gBAAjC,EAAmD;AAAE,MAAA,OAAO,EAAE;AAAX,KAAnD;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,aAApB,EAAmC,UAAnC;AAEA,IAAA,EAAE,CAAC,gBAAH,CAAoB,WAApB,EAAiC,UAAjC;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,SAApB,EAA+B,UAA/B;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,YAApB,EAAkC,UAAlC;AAEA,IAAA,EAAE,CAAC,gBAAH,CAAoB,SAApB,EAA+B,kBAA/B;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,OAApB,EAA6B,kBAA7B;AAEA,IAAA,EAAE,CAAC,gBAAH,CAAoB,MAApB,EAA4B,eAA5B,EAb0B,CAe1B;;AACA,IAAA,EAAE,CAAC,gBAAH,CAAoB,WAApB,EAAiC,UAAjC,EAA6C;AAAE,MAAA,OAAO,EAAE;AAAX,KAA7C;AACD,GAjBD,MAiBO,IAAI,CAAC,OAAD,IAAY,UAAhB,EAA4B;AACjC,IAAA,eAAe,CAAC,EAAD,CAAf;AACD;AACF;;AAED,SAAS,eAAT,CAA0B,EAA1B,EAAyC;AACvC,EAAA,EAAE,CAAC,mBAAH,CAAuB,WAAvB,EAAoC,UAApC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,YAAvB,EAAqC,UAArC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,UAAvB,EAAmC,UAAnC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,WAAvB,EAAoC,gBAApC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,aAAvB,EAAsC,UAAtC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,SAAvB,EAAkC,UAAlC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,YAAvB,EAAqC,UAArC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,SAAvB,EAAkC,kBAAlC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,OAAvB,EAAgC,kBAAhC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,WAAvB,EAAoC,UAApC;AACA,EAAA,EAAE,CAAC,mBAAH,CAAuB,MAAvB,EAA+B,eAA/B;AACD;;AAED,SAAS,SAAT,CAAoB,EAApB,EAAqC,OAArC,EAA8D,IAA9D,EAAyE;AACvE,EAAA,YAAY,CAAC,EAAD,EAAK,OAAL,EAAc,KAAd,CAAZ;;AAEA,MAAI,OAAO,CAAC,GAAR,CAAY,QAAZ,KAAyB,aAA7B,EAA4C;AAC1C;AACA,IAAA,QAAQ,CAAC,MAAK;AACZ,YAAM,QAAQ,GAAG,MAAM,CAAC,gBAAP,CAAwB,EAAxB,CAAjB;;AACA,UAAI,QAAQ,IAAI,QAAQ,CAAC,OAAT,KAAqB,QAArC,EAA+C;AAC7C,cAAM,OAAO,GAAI,IAAY,CAAC,SAAb,GAAyB,CAAE,IAAY,CAAC,SAAf,CAAzB,GAAqD,CAAC,IAAI,CAAC,iBAAN,CAAtE;AACA,QAAA,WAAW,CAAC,mDAAD,EAAsD,GAAG,OAAzD,CAAX;AACD;AACF,KANO,CAAR;AAOD;AACF;;AAED,SAAS,MAAT,CAAiB,EAAjB,EAAkC,OAAlC,EAAyC;AACvC,SAAO,EAAE,CAAC,OAAV;AACA,EAAA,eAAe,CAAC,EAAD,CAAf;AACD;;AAED,SAAS,MAAT,CAAiB,EAAjB,EAAkC,OAAlC,EAAyD;AACvD,MAAI,OAAO,CAAC,KAAR,KAAkB,OAAO,CAAC,QAA9B,EAAwC;AACtC;AACD;;AAED,QAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,QAAT,CAAlC;AACA,EAAA,YAAY,CAAC,EAAD,EAAK,OAAL,EAAc,UAAd,CAAZ;AACD;;AAED,OAAO,MAAM,MAAM,GAAG;AACpB,EAAA,OAAO,EAAE,SADW;AAEpB,EAAA,SAAS,EAAE,MAFS;AAGpB,EAAA,OAAO,EAAE;AAHW,CAAf;AAMP,eAAe,wBAAwB,CAAC,MAAD,CAAvC","sourcesContent":["// Styles\nimport './VRipple.sass'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\nimport { keyCodes } from '../../util/helpers'\nimport makeDirectiveActivatable from '../../util/make-directive-activatable'\n// Types\nimport { VNode, VNodeDirective, nextTick } from 'vue'\n\ntype VuetifyRippleEvent = (MouseEvent | TouchEvent | KeyboardEvent) & { rippleStop?: boolean }\n\nconst DELAY_RIPPLE = 80\n\nfunction transform (el: HTMLElement, value: string) {\n el.style.transform = value\n el.style.webkitTransform = value\n}\n\nexport interface RippleOptions {\n class?: string\n center?: boolean\n circle?: boolean\n}\n\nfunction isTouchEvent (e: VuetifyRippleEvent): e is TouchEvent {\n return e.constructor.name === 'TouchEvent'\n}\n\nfunction isKeyboardEvent (e: VuetifyRippleEvent): e is KeyboardEvent {\n return e.constructor.name === 'KeyboardEvent'\n}\n\nconst calculate = (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n) => {\n let localX = 0\n let localY = 0\n\n if (!isKeyboardEvent(e)) {\n const offset = el.getBoundingClientRect()\n const target = isTouchEvent(e) ? e.touches[e.touches.length - 1] : e\n\n localX = target.clientX - offset.left\n localY = target.clientY - offset.top\n }\n\n let radius = 0\n let scale = 0.3\n if (el._ripple && el._ripple.circle) {\n scale = 0.15\n radius = el.clientWidth / 2\n radius = value.center ? radius : radius + Math.sqrt((localX - radius) ** 2 + (localY - radius) ** 2) / 4\n } else {\n radius = Math.sqrt(el.clientWidth ** 2 + el.clientHeight ** 2) / 2\n }\n\n const centerX = `${(el.clientWidth - (radius * 2)) / 2}px`\n const centerY = `${(el.clientHeight - (radius * 2)) / 2}px`\n\n const x = value.center ? centerX : `${localX - radius}px`\n const y = value.center ? centerY : `${localY - radius}px`\n\n return { radius, scale, x, y, centerX, centerY }\n}\n\nconst ripples = {\n /* eslint-disable max-statements */\n show (\n e: VuetifyRippleEvent,\n el: HTMLElement,\n value: RippleOptions = {}\n ) {\n if (!el._ripple || !el._ripple.enabled) {\n return\n }\n\n const container = document.createElement('span')\n const animation = document.createElement('span')\n\n container.appendChild(animation)\n container.className = 'v-ripple__container'\n\n if (value.class) {\n container.className += ` ${value.class}`\n }\n\n const { radius, scale, x, y, centerX, centerY } = calculate(e, el, value)\n\n const size = `${radius * 2}px`\n animation.className = 'v-ripple__animation'\n animation.style.width = size\n animation.style.height = size\n\n el.appendChild(container)\n\n const computed = window.getComputedStyle(el)\n if (computed && computed.position === 'static') {\n el.style.position = 'relative'\n el.dataset.previousPosition = 'static'\n }\n\n animation.classList.add('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--visible')\n transform(animation, `translate(${x}, ${y}) scale3d(${scale},${scale},${scale})`)\n animation.dataset.activated = String(performance.now())\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--enter')\n animation.classList.add('v-ripple__animation--in')\n transform(animation, `translate(${centerX}, ${centerY}) scale3d(1,1,1)`)\n }, 0)\n },\n\n hide (el: HTMLElement | null) {\n if (!el || !el._ripple || !el._ripple.enabled) return\n\n const ripples = el.getElementsByClassName('v-ripple__animation')\n\n if (ripples.length === 0) return\n const animation = ripples[ripples.length - 1]\n\n if (animation.dataset.isHiding) return\n else animation.dataset.isHiding = 'true'\n\n const diff = performance.now() - Number(animation.dataset.activated)\n const delay = Math.max(250 - diff, 0)\n\n setTimeout(() => {\n animation.classList.remove('v-ripple__animation--in')\n animation.classList.add('v-ripple__animation--out')\n\n setTimeout(() => {\n const ripples = el.getElementsByClassName('v-ripple__animation')\n if (ripples.length === 1 && el.dataset.previousPosition) {\n el.style.position = el.dataset.previousPosition\n delete el.dataset.previousPosition\n }\n\n if (animation.parentNode?.parentNode === el) el.removeChild(animation.parentNode)\n }, 300)\n }, delay)\n },\n}\n\nfunction isRippleEnabled (value: any): value is true {\n return typeof value === 'undefined' || !!value\n}\n\nfunction rippleShow (e: VuetifyRippleEvent) {\n const value: RippleOptions = {}\n const element = e.currentTarget as HTMLElement\n\n if (!element || !element._ripple || element._ripple.touched || e.rippleStop) return\n\n // Don't allow the event to trigger ripples on any other elements\n e.rippleStop = true\n\n if (isTouchEvent(e)) {\n element._ripple.touched = true\n element._ripple.isTouch = true\n } else {\n // It's possible for touch events to fire\n // as mouse events on Android/iOS, this\n // will skip the event call if it has\n // already been registered as touch\n if (element._ripple.isTouch) return\n }\n value.center = element._ripple.centered || isKeyboardEvent(e)\n if (element._ripple.class) {\n value.class = element._ripple.class\n }\n\n if (isTouchEvent(e)) {\n // already queued that shows or hides the ripple\n if (element._ripple.showTimerCommit) return\n\n element._ripple.showTimerCommit = () => {\n ripples.show(e, element, value)\n }\n element._ripple.showTimer = window.setTimeout(() => {\n if (element && element._ripple && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n }\n }, DELAY_RIPPLE)\n } else {\n ripples.show(e, element, value)\n }\n}\n\nfunction rippleHide (e: Event) {\n const element = e.currentTarget as HTMLElement | null\n if (!element || !element._ripple) return\n\n window.clearTimeout(element._ripple.showTimer)\n\n // The touch interaction occurs before the show timer is triggered.\n // We still want to show ripple effect.\n if (e.type === 'touchend' && element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit()\n element._ripple.showTimerCommit = null\n\n // re-queue ripple hiding\n element._ripple.showTimer = setTimeout(() => {\n rippleHide(e)\n })\n return\n }\n\n window.setTimeout(() => {\n if (element._ripple) {\n element._ripple.touched = false\n }\n })\n ripples.hide(element)\n}\n\nfunction rippleCancelShow (e: MouseEvent | TouchEvent) {\n const element = e.currentTarget as HTMLElement | undefined\n\n if (!element || !element._ripple) return\n\n if (element._ripple.showTimerCommit) {\n element._ripple.showTimerCommit = null\n }\n\n window.clearTimeout(element._ripple.showTimer)\n}\n\nlet keyboardRipple = false\n\nfunction keyboardRippleShow (e: KeyboardEvent) {\n if (!keyboardRipple && (e.keyCode === keyCodes.enter || e.keyCode === keyCodes.space)) {\n keyboardRipple = true\n rippleShow(e)\n }\n}\n\nfunction keyboardRippleHide (e: KeyboardEvent) {\n keyboardRipple = false\n rippleHide(e)\n}\n\nfunction focusRippleHide (e: FocusEvent) {\n if (keyboardRipple === true) {\n keyboardRipple = false\n rippleHide(e)\n }\n}\n\nfunction updateRipple (el: HTMLElement, binding: VNodeDirective, wasEnabled: boolean) {\n const enabled = isRippleEnabled(binding.value)\n if (!enabled) {\n ripples.hide(el)\n }\n el._ripple = el._ripple || {}\n el._ripple.enabled = enabled\n const value = binding.value || {}\n if (value.center) {\n el._ripple.centered = true\n }\n if (value.class) {\n el._ripple.class = binding.value.class\n }\n if (value.circle) {\n el._ripple.circle = value.circle\n }\n if (enabled && !wasEnabled) {\n el.addEventListener('touchstart', rippleShow, { passive: true })\n el.addEventListener('touchend', rippleHide, { passive: true })\n el.addEventListener('touchmove', rippleCancelShow, { passive: true })\n el.addEventListener('touchcancel', rippleHide)\n\n el.addEventListener('mousedown', rippleShow)\n el.addEventListener('mouseup', rippleHide)\n el.addEventListener('mouseleave', rippleHide)\n\n el.addEventListener('keydown', keyboardRippleShow)\n el.addEventListener('keyup', keyboardRippleHide)\n\n el.addEventListener('blur', focusRippleHide)\n\n // Anchor tags can be dragged, causes other hides to fail - #1537\n el.addEventListener('dragstart', rippleHide, { passive: true })\n } else if (!enabled && wasEnabled) {\n removeListeners(el)\n }\n}\n\nfunction removeListeners (el: HTMLElement) {\n el.removeEventListener('mousedown', rippleShow)\n el.removeEventListener('touchstart', rippleShow)\n el.removeEventListener('touchend', rippleHide)\n el.removeEventListener('touchmove', rippleCancelShow)\n el.removeEventListener('touchcancel', rippleHide)\n el.removeEventListener('mouseup', rippleHide)\n el.removeEventListener('mouseleave', rippleHide)\n el.removeEventListener('keydown', keyboardRippleShow)\n el.removeEventListener('keyup', keyboardRippleHide)\n el.removeEventListener('dragstart', rippleHide)\n el.removeEventListener('blur', focusRippleHide)\n}\n\nfunction directive (el: HTMLElement, binding: VNodeDirective, node: VNode) {\n updateRipple(el, binding, false)\n\n if (process.env.NODE_ENV === 'development') {\n // warn if an inline element is used, waiting for el to be in the DOM first\n nextTick(() => {\n const computed = window.getComputedStyle(el)\n if (computed && computed.display === 'inline') {\n const context = (node as any).fnOptions ? [(node as any).fnOptions] : [node.componentInstance]\n consoleWarn('v-ripple can only be used on block-level elements', ...context)\n }\n })\n }\n}\n\nfunction unbind (el: HTMLElement, binding) {\n delete el._ripple\n removeListeners(el)\n}\n\nfunction update (el: HTMLElement, binding: VNodeDirective) {\n if (binding.value === binding.oldValue) {\n return\n }\n\n const wasEnabled = isRippleEnabled(binding.oldValue)\n updateRipple(el, binding, wasEnabled)\n}\n\nexport const Ripple = {\n mounted: directive,\n unmounted: unbind,\n updated: update,\n}\n\nexport default makeDirectiveActivatable(Ripple)\n"],"sourceRoot":"","file":"index.js"}
@@ -1,4 +1,4 @@
1
- function inserted(el, binding, vnode) {
1
+ function mounted(el, binding, vnode) {
2
2
  const {
3
3
  self = false
4
4
  } = binding.modifiers || {};
@@ -11,7 +11,7 @@ function inserted(el, binding, vnode) {
11
11
  if (!target) return;
12
12
  target.addEventListener('scroll', handler, options);
13
13
  el._onScroll = Object(el._onScroll);
14
- el._onScroll[vnode.context._uid] = {
14
+ el._onScroll[vnode.ctx.uid] = {
15
15
  handler,
16
16
  options,
17
17
  // Don't reference self
@@ -19,22 +19,22 @@ function inserted(el, binding, vnode) {
19
19
  };
20
20
  }
21
21
 
22
- function unbind(el, binding, vnode) {
22
+ function unmounted(el, binding, vnode) {
23
23
  var _a;
24
24
 
25
- if (!((_a = el._onScroll) === null || _a === void 0 ? void 0 : _a[vnode.context._uid])) return;
25
+ if (!((_a = el._onScroll) === null || _a === void 0 ? void 0 : _a[vnode.ctx.uid])) return;
26
26
  const {
27
27
  handler,
28
28
  options,
29
29
  target = el
30
- } = el._onScroll[vnode.context._uid];
30
+ } = el._onScroll[vnode.ctx.uid];
31
31
  target.removeEventListener('scroll', handler, options);
32
- delete el._onScroll[vnode.context._uid];
32
+ delete el._onScroll[vnode.ctx.uid];
33
33
  }
34
34
 
35
35
  export const Scroll = {
36
- inserted,
37
- unbind
36
+ mounted,
37
+ unmounted
38
38
  };
39
39
  export default Scroll;
40
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/scroll/index.ts"],"names":[],"mappings":"AAaA,SAAS,QAAT,CAAmB,EAAnB,EAAoC,OAApC,EAAmE,KAAnE,EAA+E;AAC7E,QAAM;AAAE,IAAA,IAAI,GAAG;AAAT,MAAmB,OAAO,CAAC,SAAR,IAAqB,EAA9C;AACA,QAAM,KAAK,GAAG,OAAO,CAAC,KAAtB;AACA,QAAM,OAAO,GAAI,OAAO,KAAP,KAAiB,QAAjB,IAA6B,KAAK,CAAC,OAApC,IAAgD;AAAE,IAAA,OAAO,EAAE;AAAX,GAAhE;AACA,QAAM,OAAO,GAAG,OAAO,KAAP,KAAiB,UAAjB,IAA+B,iBAAiB,KAAhD,GAAwD,KAAxD,GAAgE,KAAK,CAAC,OAAtF;AAEA,QAAM,MAAM,GAAG,IAAI,GACf,EADe,GAEf,OAAO,CAAC,GAAR,GACE,QAAQ,CAAC,aAAT,CAAuB,OAAO,CAAC,GAA/B,CADF,GAEE,MAJN;AAMA,MAAI,CAAC,MAAL,EAAa;AAEb,EAAA,MAAM,CAAC,gBAAP,CAAwB,QAAxB,EAAkC,OAAlC,EAA2C,OAA3C;AAEA,EAAA,EAAE,CAAC,SAAH,GAAe,MAAM,CAAC,EAAE,CAAC,SAAJ,CAArB;AACA,EAAA,EAAE,CAAC,SAAH,CAAc,KAAK,CAAC,OAAN,CAAe,IAA7B,IAAqC;AACnC,IAAA,OADmC;AAEnC,IAAA,OAFmC;AAGnC;AACA,IAAA,MAAM,EAAE,IAAI,GAAG,SAAH,GAAe;AAJQ,GAArC;AAMD;;AAED,SAAS,MAAT,CAAiB,EAAjB,EAAkC,OAAlC,EAAiE,KAAjE,EAA6E;;;AAC3E,MAAI,EAAC,CAAA,EAAA,GAAA,EAAE,CAAC,SAAH,MAAY,IAAZ,IAAY,EAAA,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAY,EAAA,CAAG,KAAK,CAAC,OAAN,CAAe,IAAlB,CAAb,CAAJ,EAA0C;AAE1C,QAAM;AAAE,IAAA,OAAF;AAAW,IAAA,OAAX;AAAoB,IAAA,MAAM,GAAG;AAA7B,MAAoC,EAAE,CAAC,SAAH,CAAa,KAAK,CAAC,OAAN,CAAe,IAA5B,CAA1C;AAEA,EAAA,MAAM,CAAC,mBAAP,CAA2B,QAA3B,EAAqC,OAArC,EAA8C,OAA9C;AACA,SAAO,EAAE,CAAC,SAAH,CAAa,KAAK,CAAC,OAAN,CAAe,IAA5B,CAAP;AACD;;AAED,OAAO,MAAM,MAAM,GAAG;AACpB,EAAA,QADoB;AAEpB,EAAA;AAFoB,CAAf;AAKP,eAAe,MAAf","sourcesContent":["import { VNodeDirective } from 'vue/types/vnode'\nimport { DirectiveOptions, VNode } from 'vue'\n\ninterface ScrollVNodeDirective extends Omit<VNodeDirective, 'modifiers'> {\n value: EventListener | {\n handler: EventListener\n options?: boolean | AddEventListenerOptions\n } | EventListenerObject & { options?: boolean | AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction inserted (el: HTMLElement, binding: ScrollVNodeDirective, vnode: VNode) {\n const { self = false } = binding.modifiers || {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![vnode.context!._uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unbind (el: HTMLElement, binding: ScrollVNodeDirective, vnode: VNode) {\n if (!el._onScroll?.[vnode.context!._uid]) return\n\n const { handler, options, target = el } = el._onScroll[vnode.context!._uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[vnode.context!._uid]\n}\n\nexport const Scroll = {\n inserted,\n unbind,\n} as DirectiveOptions\n\nexport default Scroll\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/directives/scroll/index.ts"],"names":[],"mappings":"AAeA,SAAS,OAAT,CACE,EADF,EAEE,OAFF,EAGE,KAHF,EAGc;AAEZ,QAAM;AAAE,IAAA,IAAI,GAAG;AAAT,MAAmB,OAAO,CAAC,SAAR,IAAqB,EAA9C;AACA,QAAM,KAAK,GAAG,OAAO,CAAC,KAAtB;AACA,QAAM,OAAO,GAAI,OAAO,KAAP,KAAiB,QAAjB,IAA6B,KAAK,CAAC,OAApC,IAAgD;AAC9D,IAAA,OAAO,EAAE;AADqD,GAAhE;AAGA,QAAM,OAAO,GACX,OAAO,KAAP,KAAiB,UAAjB,IAA+B,iBAAiB,KAAhD,GACI,KADJ,GAEI,KAAK,CAAC,OAHZ;AAKA,QAAM,MAAM,GAAG,IAAI,GACf,EADe,GAEf,OAAO,CAAC,GAAR,GACE,QAAQ,CAAC,aAAT,CAAuB,OAAO,CAAC,GAA/B,CADF,GAEE,MAJN;AAMA,MAAI,CAAC,MAAL,EAAa;AAEb,EAAA,MAAM,CAAC,gBAAP,CAAwB,QAAxB,EAAkC,OAAlC,EAA2C,OAA3C;AAEA,EAAA,EAAE,CAAC,SAAH,GAAe,MAAM,CAAC,EAAE,CAAC,SAAJ,CAArB;AACA,EAAA,EAAE,CAAC,SAAH,CAAc,KAAK,CAAC,GAAN,CAAW,GAAzB,IAAgC;AAC9B,IAAA,OAD8B;AAE9B,IAAA,OAF8B;AAG9B;AACA,IAAA,MAAM,EAAE,IAAI,GAAG,SAAH,GAAe;AAJG,GAAhC;AAMD;;AAED,SAAS,SAAT,CACE,EADF,EAEE,OAFF,EAGE,KAHF,EAGc;;;AAEZ,MAAI,EAAC,CAAA,EAAA,GAAA,EAAE,CAAC,SAAH,MAAY,IAAZ,IAAY,EAAA,KAAA,KAAA,CAAZ,GAAY,KAAA,CAAZ,GAAY,EAAA,CAAG,KAAK,CAAC,GAAN,CAAW,GAAd,CAAb,CAAJ,EAAqC;AAErC,QAAM;AAAE,IAAA,OAAF;AAAW,IAAA,OAAX;AAAoB,IAAA,MAAM,GAAG;AAA7B,MAAoC,EAAE,CAAC,SAAH,CAAa,KAAK,CAAC,GAAN,CAAW,GAAxB,CAA1C;AAEA,EAAA,MAAM,CAAC,mBAAP,CAA2B,QAA3B,EAAqC,OAArC,EAA8C,OAA9C;AACA,SAAO,EAAE,CAAC,SAAH,CAAa,KAAK,CAAC,GAAN,CAAW,GAAxB,CAAP;AACD;;AAED,OAAO,MAAM,MAAM,GAAoB;AACrC,EAAA,OADqC;AAErC,EAAA;AAFqC,CAAhC;AAKP,eAAe,MAAf","sourcesContent":["import { DirectiveBinding, VNode, ObjectDirective } from 'vue'\n\ninterface ScrollDirectiveBinding extends Omit<DirectiveBinding, 'modifiers'> {\n value:\n | EventListener\n | {\n handler: EventListener\n options?: boolean | AddEventListenerOptions\n }\n | (EventListenerObject & { options?: boolean | AddEventListenerOptions })\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction mounted (\n el: HTMLElement,\n binding: ScrollDirectiveBinding,\n vnode: VNode\n) {\n const { self = false } = binding.modifiers || {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || {\n passive: true,\n }\n const handler =\n typeof value === 'function' || 'handleEvent' in value\n ? value\n : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = Object(el._onScroll)\n el._onScroll![vnode.ctx!.uid] = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unmounted (\n el: HTMLElement,\n binding: ScrollDirectiveBinding,\n vnode: VNode\n) {\n if (!el._onScroll?.[vnode.ctx!.uid]) return\n\n const { handler, options, target = el } = el._onScroll[vnode.ctx!.uid]!\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll[vnode.ctx!.uid]\n}\n\nexport const Scroll: ObjectDirective = {\n mounted,\n unmounted,\n}\n\nexport default Scroll\n"],"sourceRoot":"","file":"index.js"}
@@ -71,7 +71,7 @@ function createHandlers(value) {
71
71
  };
72
72
  }
73
73
 
74
- function inserted(el, binding, vnode) {
74
+ function mounted(el, binding, vnode) {
75
75
  const value = binding.value;
76
76
  const target = value.parent ? el.parentElement : el;
77
77
  const options = value.options || {
@@ -87,19 +87,22 @@ function inserted(el, binding, vnode) {
87
87
  });
88
88
  }
89
89
 
90
- function unbind(el, binding, vnode) {
90
+ function unmounted(el, binding, vnode) {
91
91
  const target = binding.value.parent ? el.parentElement : el;
92
92
  if (!target || !target._touchHandlers) return;
93
93
  const handlers = target._touchHandlers[vnode.ctx.uid];
94
- keys(handlers).forEach(eventName => {
95
- target.removeEventListener(eventName, handlers[eventName]);
96
- });
97
- delete target._touchHandlers[vnode.ctx.uid];
94
+
95
+ if (handlers) {
96
+ keys(handlers).forEach(eventName => {
97
+ target.removeEventListener(eventName, handlers[eventName]);
98
+ });
99
+ delete target._touchHandlers[vnode.ctx.uid];
100
+ }
98
101
  }
99
102
 
100
103
  export const Touch = {
101
- mounted: inserted,
102
- unmounted: unbind
104
+ mounted,
105
+ unmounted
103
106
  };
104
107
  export default makeDirectiveActivatable(Touch);
105
108
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/directives/touch/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { VNodeDirective, VNode } from 'vue/types/vnode'\nimport { keys } from '../../util/helpers'\nimport { TouchHandlers, TouchValue, TouchWrapper } from 'vuetify/types'\nimport makeDirectiveActivatable from '../../util/make-directive-activatable'\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\ninterface TouchVNodeDirective extends VNodeDirective {\n value?: TouchValue\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && (touchendX < touchstartX - minDistance) && wrapper.left(wrapper)\n wrapper.right && (touchendX > touchstartX + minDistance) && wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && (touchendY < touchstartY - minDistance) && wrapper.up(wrapper)\n wrapper.down && (touchendY > touchstartY + minDistance) && wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start &&\n wrapper.start(Object.assign(event, wrapper))\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end &&\n wrapper.end(Object.assign(event, wrapper))\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move && wrapper.move(Object.assign(event, wrapper))\n}\n\nfunction createHandlers (value: TouchHandlers): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction inserted (el: HTMLElement, binding: TouchVNodeDirective, vnode: VNode) {\n const value = binding.value!\n const target = value.parent ? el.parentElement : el\n const options = value.options || { passive: true }\n\n // Needed to pass unit tests\n if (!target) return\n\n const handlers = createHandlers(binding.value!)\n target._touchHandlers = Object(target._touchHandlers)\n target._touchHandlers![vnode.ctx.uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(eventName, handlers[eventName] as EventListener, options)\n })\n}\n\nfunction unbind (el: HTMLElement, binding: TouchVNodeDirective, vnode: VNode) {\n const target = binding.value!.parent ? el.parentElement : el\n if (!target || !target._touchHandlers) return\n\n const handlers = target._touchHandlers[vnode.ctx.uid]\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n delete target._touchHandlers[vnode.ctx.uid]\n}\n\nexport const Touch = {\n mounted: inserted,\n unmounted: unbind,\n}\n\n\n\nexport default makeDirectiveActivatable(Touch)\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/directives/touch/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { DirectiveBinding, VNode, ObjectDirective } from 'vue'\nimport { keys } from '../../util/helpers'\nimport { TouchHandlers, TouchValue, TouchWrapper } from 'vuetify/types'\nimport makeDirectiveActivatable from '../../util/make-directive-activatable'\n\nexport interface TouchStoredHandlers {\n touchstart: (e: TouchEvent) => void\n touchend: (e: TouchEvent) => void\n touchmove: (e: TouchEvent) => void\n}\n\nconst handleGesture = (wrapper: TouchWrapper) => {\n const { touchstartX, touchendX, touchstartY, touchendY } = wrapper\n const dirRatio = 0.5\n const minDistance = 16\n wrapper.offsetX = touchendX - touchstartX\n wrapper.offsetY = touchendY - touchstartY\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left &&\n touchendX < touchstartX - minDistance &&\n wrapper.left(wrapper)\n wrapper.right &&\n touchendX > touchstartX + minDistance &&\n wrapper.right(wrapper)\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper)\n wrapper.down &&\n touchendY > touchstartY + minDistance &&\n wrapper.down(wrapper)\n }\n}\n\nfunction touchstart (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchstartX = touch.clientX\n wrapper.touchstartY = touch.clientY\n\n wrapper.start && wrapper.start(Object.assign(event, wrapper))\n}\n\nfunction touchend (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchendX = touch.clientX\n wrapper.touchendY = touch.clientY\n\n wrapper.end && wrapper.end(Object.assign(event, wrapper))\n\n handleGesture(wrapper)\n}\n\nfunction touchmove (event: TouchEvent, wrapper: TouchWrapper) {\n const touch = event.changedTouches[0]\n wrapper.touchmoveX = touch.clientX\n wrapper.touchmoveY = touch.clientY\n\n wrapper.move && wrapper.move(Object.assign(event, wrapper))\n}\n\nfunction createHandlers (value: TouchHandlers): TouchStoredHandlers {\n const wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end,\n }\n\n return {\n touchstart: (e: TouchEvent) => touchstart(e, wrapper),\n touchend: (e: TouchEvent) => touchend(e, wrapper),\n touchmove: (e: TouchEvent) => touchmove(e, wrapper),\n }\n}\n\nfunction mounted (\n el: HTMLElement,\n binding: DirectiveBinding<TouchValue>,\n vnode: VNode\n) {\n const value = binding.value\n const target = value.parent ? el.parentElement : el\n const options = value.options || { passive: true }\n\n // Needed to pass unit tests\n if (!target) return\n\n const handlers = createHandlers(binding.value)\n target._touchHandlers = Object(target._touchHandlers)\n target._touchHandlers![vnode.ctx!.uid] = handlers\n\n keys(handlers).forEach(eventName => {\n target.addEventListener(\n eventName,\n handlers[eventName] as EventListener,\n options\n )\n })\n}\n\nfunction unmounted (\n el: HTMLElement,\n binding: DirectiveBinding<TouchValue>,\n vnode: VNode\n) {\n const target = binding.value.parent ? el.parentElement : el\n if (!target || !target._touchHandlers) return\n\n const handlers = target._touchHandlers[vnode.ctx!.uid]\n if (handlers) {\n keys(handlers).forEach(eventName => {\n target.removeEventListener(eventName, handlers[eventName])\n })\n delete target._touchHandlers[vnode.ctx!.uid]\n }\n}\n\nexport const Touch: ObjectDirective<HTMLElement, TouchValue> = {\n mounted,\n unmounted,\n}\n\nexport default makeDirectiveActivatable(Touch)\n"],"sourceRoot":"","file":"index.js"}
package/lib/framework.js CHANGED
@@ -46,7 +46,7 @@ export default class Vuetify {
46
46
  }
47
47
  Vuetify.install = install;
48
48
  Vuetify.installed = false;
49
- Vuetify.version = "2.7.2-alpha4";
49
+ Vuetify.version = "2.7.2-alpha40";
50
50
  Vuetify.config = {
51
51
  silent: false
52
52
  };
package/lib/install.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { reactive } from 'vue';
2
+ import { legacyEventsMixin } from './util/legacyEventsMixin';
2
3
  export function install(Vue, args = {}) {
3
4
  // if ((install as any).installed) return
4
5
  // (install as any).installed = true
@@ -37,6 +38,9 @@ export function install(Vue, args = {}) {
37
38
  if (Vue.$_vuetify_installed) return;
38
39
  Vue.$_vuetify_installed = true;
39
40
  Vue.mixin({
41
+ computed: { ...legacyEventsMixin.computed
42
+ },
43
+
40
44
  beforeCreate() {
41
45
  const options = this.$options;
42
46
 
@@ -66,34 +70,7 @@ export function install(Vue, args = {}) {
66
70
  }
67
71
  },
68
72
 
69
- methods: {
70
- $emitLegacy(eventName, args) {
71
- if (!this.eventsLegacy || !this.eventsLegacy[eventName]) return;
72
- this.eventsLegacy[eventName].forEach(listener => listener(args));
73
- },
74
-
75
- $on(eventName, listener) {
76
- var _a;
77
-
78
- this.eventsLegacy || (this.eventsLegacy = {});
79
- (_a = this.eventsLegacy)[eventName] || (_a[eventName] = []);
80
- this.eventsLegacy[eventName].push(listener); // console.warn("$on is not available")
81
- },
82
-
83
- $off(eventName, listener) {
84
- this.eventsLegacy[eventName] = this.eventsLegacy[eventName].filter(_listener => _listener !== listener); // console.warn('$off is not available')
85
- }
86
-
87
- },
88
- computed: {
89
- $listeners() {
90
- const names = Object.keys(this.$attrs).filter(name => name.startsWith('on'));
91
- return names.reduce((listeners, name) => {
92
- listeners[name] = this.$attrs[name];
93
- return listeners;
94
- }, {});
95
- }
96
-
73
+ methods: { ...legacyEventsMixin.methods
97
74
  }
98
75
  });
99
76
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/install.ts"],"names":[],"mappings":"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","sourcesContent":["import { createApp, reactive } from 'vue'\nimport { VuetifyUseOptions } from 'vuetify/types'\nimport { consoleError } from './util/console'\n\nexport function install (Vue: ReturnType<typeof createApp>, args: VuetifyUseOptions = {}) {\n // if ((install as any).installed) return\n // (install as any).installed = true\n\n// if (OurVue !== Vue) {\n// consoleError(`Multiple instances of Vue detected\n// See https://github.com/vuetifyjs/vuetify/issues/4068\n\n// If you're seeing \"$attrs is readonly\", it's caused by this`)\n// }\n\n const components = args.components || {}\n const directives = args.directives || {}\n\n for (const name in directives) {\n const directive = directives[name]\n\n Vue.directive(name, directive)\n }\n\n\n (function registerComponents (components: any) {\n if (components) {\n for (const key in components) {\n const component = components[key]\n if (component && !registerComponents(component.$_vuetify_subcomponents)) {\n Vue.component(key, component as typeof Vue)\n }\n }\n return true\n }\n return false\n })(components)\n\n // Used to avoid multiple mixins being setup\n // when in dev mode and hot module reload\n // https://github.com/vuejs/vue/issues/5089#issuecomment-284260111\n if (Vue.$_vuetify_installed) return\n Vue.$_vuetify_installed = true\n\n Vue.mixin({\n beforeCreate () {\n const options = this.$options as any\n\n if (options.vuetify) {\n options.vuetify.init(this, this.$ssrContext)\n Vue.config.globalProperties.$vuetify = reactive(options.vuetify.framework)\n }\n },\n beforeMount () {\n // @ts-ignore\n if (this.$options.vuetify && this.$el && this.$el.hasAttribute('data-server-rendered')) {\n // @ts-ignore\n this.$vuetify.isHydrating = true\n // @ts-ignore\n this.$vuetify.breakpoint.update(true)\n }\n },\n mounted () {\n // @ts-ignore\n if (this.$options.vuetify && this.$vuetify.isHydrating) {\n // @ts-ignore\n this.$vuetify.isHydrating = false\n // @ts-ignore\n this.$vuetify.breakpoint.update()\n }\n },\n methods: {\n $emitLegacy(eventName, args) {\n if(!this.eventsLegacy || !this.eventsLegacy[eventName]) return\n\n\n this.eventsLegacy[eventName].forEach(listener => listener(args))\n },\n $on(eventName, listener) {\n this.eventsLegacy ||= {}\n this.eventsLegacy[eventName] ||= []\n this.eventsLegacy[eventName].push(listener)\n // console.warn(\"$on is not available\")\n },\n $off(eventName, listener) {\n this.eventsLegacy[eventName] = this.eventsLegacy[eventName].filter(_listener => _listener !== listener)\n // console.warn('$off is not available')\n }\n },\n computed: {\n $listeners() {\n const names = Object.keys(this.$attrs).filter(name => name.startsWith('on'))\n\n return names.reduce((listeners, name) => {\n listeners[name] = this.$attrs[name]\n return listeners\n }, {})\n }\n }\n })\n}\n"],"sourceRoot":"","file":"install.js"}
1
+ {"version":3,"sources":["../src/install.ts"],"names":[],"mappings":"AAAA,SAAoB,QAApB,QAAoC,KAApC;AAGA,SAAS,iBAAT,QAAkC,0BAAlC;AAEA,OAAM,SAAU,OAAV,CAAmB,GAAnB,EAAsD,IAAA,GAA0B,EAAhF,EAAkF;AACtF;AACA;AAEA;AACA;AACA;AAEA;AACA;AAEA,QAAM,UAAU,GAAG,IAAI,CAAC,UAAL,IAAmB,EAAtC;AACA,QAAM,UAAU,GAAG,IAAI,CAAC,UAAL,IAAmB,EAAtC;;AAEA,OAAK,MAAM,IAAX,IAAmB,UAAnB,EAA+B;AAC7B,UAAM,SAAS,GAAG,UAAU,CAAC,IAAD,CAA5B;AAEA,IAAA,GAAG,CAAC,SAAJ,CAAc,IAAd,EAAoB,SAApB;AACD;;AAED,GAAC,SAAS,kBAAT,CAA6B,UAA7B,EAA4C;AAC3C,QAAI,UAAJ,EAAgB;AACd,WAAK,MAAM,GAAX,IAAkB,UAAlB,EAA8B;AAC5B,cAAM,SAAS,GAAG,UAAU,CAAC,GAAD,CAA5B;;AACA,YAAI,SAAS,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,uBAAX,CAApC,EAAyE;AACvE,UAAA,GAAG,CAAC,SAAJ,CAAc,GAAd,EAAmB,SAAnB;AACD;AACF;;AACD,aAAO,IAAP;AACD;;AACD,WAAO,KAAP;AACD,GAXD,EAWG,UAXH,EApBsF,CAiCtF;AACA;AACA;;;AACA,MAAI,GAAG,CAAC,mBAAR,EAA6B;AAC7B,EAAA,GAAG,CAAC,mBAAJ,GAA0B,IAA1B;AAEA,EAAA,GAAG,CAAC,KAAJ,CAAU;AACR,IAAA,QAAQ,EAAE,EACR,GAAG,iBAAiB,CAAC;AADb,KADF;;AAIR,IAAA,YAAY,GAAA;AACV,YAAM,OAAO,GAAG,KAAK,QAArB;;AAEA,UAAI,OAAO,CAAC,OAAZ,EAAqB;AACnB,QAAA,OAAO,CAAC,OAAR,CAAgB,IAAhB,CAAqB,IAArB,EAA2B,KAAK,WAAhC;AACA,QAAA,GAAG,CAAC,MAAJ,CAAW,gBAAX,CAA4B,QAA5B,GAAuC,QAAQ,CAAC,OAAO,CAAC,OAAR,CAAgB,SAAjB,CAA/C;AACD;AACF,KAXO;;AAYR,IAAA,WAAW,GAAA;AACT;AACA,UAAI,KAAK,QAAL,CAAc,OAAd,IAAyB,KAAK,GAA9B,IAAqC,KAAK,GAAL,CAAS,YAAT,CAAsB,sBAAtB,CAAzC,EAAwF;AACtF;AACA,aAAK,QAAL,CAAc,WAAd,GAA4B,IAA5B,CAFsF,CAGtF;;AACA,aAAK,QAAL,CAAc,UAAd,CAAyB,MAAzB,CAAgC,IAAhC;AACD;AACF,KApBO;;AAqBR,IAAA,OAAO,GAAA;AACL;AACA,UAAI,KAAK,QAAL,CAAc,OAAd,IAAyB,KAAK,QAAL,CAAc,WAA3C,EAAwD;AACtD;AACA,aAAK,QAAL,CAAc,WAAd,GAA4B,KAA5B,CAFsD,CAGtD;;AACA,aAAK,QAAL,CAAc,UAAd,CAAyB,MAAzB;AACD;AACF,KA7BO;;AA8BR,IAAA,OAAO,EAAE,EACP,GAAG,iBAAiB,CAAC;AADd;AA9BD,GAAV;AAkCD","sourcesContent":["import { createApp, reactive } from 'vue'\nimport { VuetifyUseOptions } from 'vuetify/types'\nimport { consoleError } from './util/console'\nimport { legacyEventsMixin } from './util/legacyEventsMixin'\n\nexport function install (Vue: ReturnType<typeof createApp>, args: VuetifyUseOptions = {}) {\n // if ((install as any).installed) return\n // (install as any).installed = true\n\n // if (OurVue !== Vue) {\n // consoleError(`Multiple instances of Vue detected\n // See https://github.com/vuetifyjs/vuetify/issues/4068\n\n // If you're seeing \"$attrs is readonly\", it's caused by this`)\n // }\n\n const components = args.components || {}\n const directives = args.directives || {}\n\n for (const name in directives) {\n const directive = directives[name]\n\n Vue.directive(name, directive)\n }\n\n (function registerComponents (components: any) {\n if (components) {\n for (const key in components) {\n const component = components[key]\n if (component && !registerComponents(component.$_vuetify_subcomponents)) {\n Vue.component(key, component as typeof Vue)\n }\n }\n return true\n }\n return false\n })(components)\n\n // Used to avoid multiple mixins being setup\n // when in dev mode and hot module reload\n // https://github.com/vuejs/vue/issues/5089#issuecomment-284260111\n if (Vue.$_vuetify_installed) return\n Vue.$_vuetify_installed = true\n\n Vue.mixin({\n computed: {\n ...legacyEventsMixin.computed,\n },\n beforeCreate () {\n const options = this.$options as any\n\n if (options.vuetify) {\n options.vuetify.init(this, this.$ssrContext)\n Vue.config.globalProperties.$vuetify = reactive(options.vuetify.framework)\n }\n },\n beforeMount () {\n // @ts-ignore\n if (this.$options.vuetify && this.$el && this.$el.hasAttribute('data-server-rendered')) {\n // @ts-ignore\n this.$vuetify.isHydrating = true\n // @ts-ignore\n this.$vuetify.breakpoint.update(true)\n }\n },\n mounted () {\n // @ts-ignore\n if (this.$options.vuetify && this.$vuetify.isHydrating) {\n // @ts-ignore\n this.$vuetify.isHydrating = false\n // @ts-ignore\n this.$vuetify.breakpoint.update()\n }\n },\n methods: {\n ...legacyEventsMixin.methods,\n },\n })\n}\n"],"sourceRoot":"","file":"install.js"}
@@ -3,8 +3,7 @@ import Delayable from '../delayable';
3
3
  import Toggleable from '../toggleable'; // Utilities
4
4
 
5
5
  import mixins from '../../util/mixins';
6
- import { getSlot, getSlotType } from '../../util/helpers';
7
- import { consoleError } from '../../util/console';
6
+ import { getSlot } from '../../util/helpers';
8
7
  const baseMixins = mixins(Delayable, Toggleable);
9
8
  /* @vue/component */
10
9
 
@@ -40,16 +39,10 @@ export default baseMixins.extend({
40
39
  },
41
40
 
42
41
  mounted() {
43
- const slotType = getSlotType(this, 'activator', true);
44
-
45
- if (slotType && ['v-slot', 'normal'].includes(slotType)) {
46
- consoleError(`The activator slot must be bound, try '<template v-slot:activator="{ on }"><v-btn v-on="on">'`, this);
47
- }
48
-
49
42
  this.addActivatorEvents();
50
43
  },
51
44
 
52
- beforeDestroy() {
45
+ beforeUnmount() {
53
46
  this.removeActivatorEvents();
54
47
  },
55
48
 
@@ -71,12 +64,16 @@ export default baseMixins.extend({
71
64
  },
72
65
 
73
66
  genActivator() {
74
- const node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {
67
+ let node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {
75
68
  attrs: { ...this.genActivatorListeners(),
76
69
  ...this.genActivatorAttributes()
77
- }
70
+ },
71
+ on: this.genActivatorListeners()
78
72
  })) || [];
79
- this.activatorNode = node;
73
+ node = Array.isArray(node) ? node : [node];
74
+ this.activatorNode = node.flatMap(node => {
75
+ return node.type === Symbol.for('v-fgt') ? node.children : node;
76
+ });
80
77
  return node;
81
78
  },
82
79
 
@@ -123,7 +120,9 @@ export default baseMixins.extend({
123
120
  },
124
121
 
125
122
  getActivator(e) {
126
- // If we've already fetched the activator, re-use
123
+ var _a; // If we've already fetched the activator, re-use
124
+
125
+
127
126
  if (this.activatorElement) return this.activatorElement;
128
127
  let activator = null;
129
128
 
@@ -144,7 +143,7 @@ export default baseMixins.extend({
144
143
  // Use the contents of the activator slot
145
144
  // There's either only one element in it or we
146
145
  // don't have a click event to use as a last resort
147
- const vm = this.activatorNode[0].component.ctx;
146
+ const vm = (_a = this.activatorNode[0].component) === null || _a === void 0 ? void 0 : _a.ctx;
148
147
 
149
148
  if (vm && (vm.isActivatable !== undefined || vm.isMenuable !== undefined)) {
150
149
  // Activator is actually another activatible component, use its activator (#8846)
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/activatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Delayable from '../delayable'\nimport Toggleable from '../toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { getSlot, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport { VNode, PropType } from 'vue'\n\ntype Listeners = Dictionary<(e: MouseEvent & KeyboardEvent & FocusEvent) => void>\n\nconst baseMixins = mixins(\n Delayable,\n Toggleable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'activatable',\n\n props: {\n activator: {\n default: null as unknown as PropType<string | HTMLElement | VNode | Element | null>,\n validator: (val: string | object) => {\n return ['string', 'object'].includes(typeof val)\n },\n },\n disabled: Boolean,\n internalActivator: Boolean,\n openOnClick: {\n type: Boolean,\n default: true,\n },\n openOnHover: Boolean,\n openOnFocus: Boolean,\n },\n\n data: () => ({\n // Do not use this directly, call getActivator() instead\n activatorElement: null as HTMLElement | null,\n activatorNode: [] as VNode[],\n events: ['click', 'mouseenter', 'mouseleave', 'focus'],\n listeners: {} as Listeners,\n }),\n\n watch: {\n activator: 'resetActivator',\n openOnFocus: 'resetActivator',\n openOnHover: 'resetActivator',\n },\n\n mounted () {\n const slotType = getSlotType(this, 'activator', true)\n\n if (slotType && ['v-slot', 'normal'].includes(slotType)) {\n consoleError(`The activator slot must be bound, try '<template v-slot:activator=\"{ on }\"><v-btn v-on=\"on\">'`, this)\n }\n\n this.addActivatorEvents()\n },\n\n beforeDestroy () {\n this.removeActivatorEvents()\n },\n\n computed: {\n isActivatable() {\n return true\n }\n },\n\n methods: {\n addActivatorEvents () {\n if (\n !this.activator ||\n this.disabled ||\n !this.getActivator()\n ) return\n\n this.listeners = this.genActivatorListeners()\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n this.getActivator()!.addEventListener(key, this.listeners[key] as any)\n }\n },\n genActivator () {\n const node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {\n attrs: {\n ...this.genActivatorListeners(),\n ...this.genActivatorAttributes(),\n }\n })) || []\n\n this.activatorNode = node\n\n return node\n },\n genActivatorAttributes () {\n return {\n role: (this.openOnClick && !this.openOnHover) ? 'button' : undefined,\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genActivatorListeners () {\n if (this.disabled) return {}\n\n const listeners: Listeners = {}\n\n if (this.openOnHover) {\n listeners.onMouseenter = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.onMouseleave = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n } else if (this.openOnClick) {\n listeners.onClick = (e: MouseEvent) => {\n const activator = this.getActivator(e)\n if (activator) activator.focus()\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n if (this.openOnFocus) {\n listeners.onFocus = (e: FocusEvent) => {\n this.getActivator(e)\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n return listeners\n },\n getActivator (e?: Event): HTMLElement | null {\n // If we've already fetched the activator, re-use\n if (this.activatorElement) return this.activatorElement\n\n let activator = null\n\n if (this.activator) {\n const target = this.internalActivator ? this.$el : document\n\n if (typeof this.activator === 'string') {\n // Selector\n activator = target.querySelector(this.activator)\n } else if ((this.activator as any).$el) {\n // Component (ref)\n activator = (this.activator as any).$el\n } else {\n // HTMLElement | Element\n activator = this.activator\n }\n } else if (this.activatorNode.length === 1 || (this.activatorNode.length && !e)) {\n\n // Use the contents of the activator slot\n // There's either only one element in it or we\n // don't have a click event to use as a last resort\n const vm = this.activatorNode[0].component.ctx\n if (\n vm &&\n (vm.isActivatable !== undefined || vm.isMenuable !== undefined)\n ) {\n // Activator is actually another activatible component, use its activator (#8846)\n activator = (vm as any).getActivator()\n } else {\n activator = this.activatorNode[0].el as HTMLElement\n }\n } else if (e) {\n // Activated by a click or focus event\n activator = (e.currentTarget || e.target) as HTMLElement\n }\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n this.activatorElement = activator?.nodeType === Node.ELEMENT_NODE ? activator : null\n\n return this.activatorElement\n },\n getContentSlot () {\n return getSlot(this, 'default', this.getValueProxy(), true)\n },\n getValueProxy (): object {\n const self = this\n return {\n get value () {\n return self.isActive\n },\n set value (isActive: boolean) {\n self.isActive = isActive\n },\n }\n },\n removeActivatorEvents () {\n if (\n !this.activator ||\n !this.activatorElement\n ) return\n\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n (this.activatorElement as any).removeEventListener(key, this.listeners[key])\n }\n\n this.listeners = {}\n },\n resetActivator () {\n this.removeActivatorEvents()\n this.activatorElement = null\n this.getActivator()\n this.addActivatorEvents()\n }\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/activatable/index.ts"],"names":[],"mappings":"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","sourcesContent":["// Mixins\nimport Delayable from '../delayable'\nimport Toggleable from '../toggleable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { getSlot, getSlotType } from '../../util/helpers'\nimport { consoleError } from '../../util/console'\n\n// Types\nimport { VNode, PropType } from 'vue'\n\ntype Listeners = Dictionary<(e: MouseEvent & KeyboardEvent & FocusEvent) => void>\n\nconst baseMixins = mixins(\n Delayable,\n Toggleable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'activatable',\n\n props: {\n activator: {\n default: null as unknown as PropType<string | HTMLElement | VNode | Element | null>,\n validator: (val: string | object) => {\n return ['string', 'object'].includes(typeof val)\n },\n },\n disabled: Boolean,\n internalActivator: Boolean,\n openOnClick: {\n type: Boolean,\n default: true,\n },\n openOnHover: Boolean,\n openOnFocus: Boolean,\n },\n\n data: () => ({\n // Do not use this directly, call getActivator() instead\n activatorElement: null as HTMLElement | null,\n activatorNode: [] as VNode[],\n events: ['click', 'mouseenter', 'mouseleave', 'focus'],\n listeners: {} as Listeners,\n }),\n\n watch: {\n activator: 'resetActivator',\n openOnFocus: 'resetActivator',\n openOnHover: 'resetActivator',\n },\n\n mounted () {\n this.addActivatorEvents()\n },\n\n beforeUnmount () {\n this.removeActivatorEvents()\n },\n\n computed: {\n isActivatable() {\n return true\n }\n },\n\n methods: {\n addActivatorEvents () {\n if (\n !this.activator ||\n this.disabled ||\n !this.getActivator()\n ) return\n\n this.listeners = this.genActivatorListeners()\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n this.getActivator()!.addEventListener(key, this.listeners[key] as any)\n }\n },\n genActivator () {\n let node = getSlot(this, 'activator', Object.assign(this.getValueProxy(), {\n attrs: {\n ...this.genActivatorListeners(),\n ...this.genActivatorAttributes(),\n },\n on: this.genActivatorListeners()\n })) || []\n\n node = Array.isArray(node) ? node : [node]\n\n this.activatorNode = node.flatMap(node => {\n return node.type === Symbol.for('v-fgt') ? node.children : node\n })\n\n return node\n },\n genActivatorAttributes () {\n return {\n role: (this.openOnClick && !this.openOnHover) ? 'button' : undefined,\n 'aria-haspopup': true,\n 'aria-expanded': String(this.isActive),\n }\n },\n genActivatorListeners () {\n if (this.disabled) return {}\n\n const listeners: Listeners = {}\n\n if (this.openOnHover) {\n listeners.onMouseenter = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('open')\n }\n listeners.onMouseleave = (e: MouseEvent) => {\n this.getActivator(e)\n this.runDelay('close')\n }\n } else if (this.openOnClick) {\n listeners.onClick = (e: MouseEvent) => {\n const activator = this.getActivator(e)\n if (activator) activator.focus()\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n if (this.openOnFocus) {\n listeners.onFocus = (e: FocusEvent) => {\n this.getActivator(e)\n\n e.stopPropagation()\n\n this.isActive = !this.isActive\n }\n }\n\n return listeners\n },\n getActivator (e?: Event): HTMLElement | null {\n // If we've already fetched the activator, re-use\n if (this.activatorElement) return this.activatorElement\n\n let activator = null\n\n if (this.activator) {\n const target = this.internalActivator ? this.$el : document\n\n if (typeof this.activator === 'string') {\n // Selector\n activator = target.querySelector(this.activator)\n } else if ((this.activator as any).$el) {\n // Component (ref)\n activator = (this.activator as any).$el\n } else {\n // HTMLElement | Element\n activator = this.activator\n }\n } else if (this.activatorNode.length === 1 || (this.activatorNode.length && !e)) {\n\n // Use the contents of the activator slot\n // There's either only one element in it or we\n // don't have a click event to use as a last resort\n const vm = this.activatorNode[0].component?.ctx\n if (\n vm &&\n (vm.isActivatable !== undefined || vm.isMenuable !== undefined)\n ) {\n // Activator is actually another activatible component, use its activator (#8846)\n activator = (vm as any).getActivator()\n } else {\n activator = this.activatorNode[0].el as HTMLElement\n }\n } else if (e) {\n // Activated by a click or focus event\n activator = (e.currentTarget || e.target) as HTMLElement\n }\n\n // The activator should only be a valid element (Ignore comments and text nodes)\n this.activatorElement = activator?.nodeType === Node.ELEMENT_NODE ? activator : null\n\n return this.activatorElement\n },\n getContentSlot () {\n return getSlot(this, 'default', this.getValueProxy(), true)\n },\n getValueProxy (): object {\n const self = this\n return {\n get value () {\n return self.isActive\n },\n set value (isActive: boolean) {\n self.isActive = isActive\n },\n }\n },\n removeActivatorEvents () {\n if (\n !this.activator ||\n !this.activatorElement\n ) return\n\n const keys = Object.keys(this.listeners)\n\n for (const key of keys) {\n (this.activatorElement as any).removeEventListener(key, this.listeners[key])\n }\n\n this.listeners = {}\n },\n resetActivator () {\n this.removeActivatorEvents()\n this.activatorElement = null\n this.getActivator()\n this.addActivatorEvents()\n }\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -22,7 +22,7 @@ export default function applicationable(value, events = []) {
22
22
  },
23
23
 
24
24
  applicationProperty(newVal, oldVal) {
25
- this.$vuetify.application.unregister(this._uid, oldVal);
25
+ this.$vuetify.application.unregister(this.$.uid, oldVal);
26
26
  }
27
27
 
28
28
  },
@@ -47,19 +47,19 @@ export default function applicationable(value, events = []) {
47
47
  this.removeApplication();
48
48
  },
49
49
 
50
- destroyed() {
50
+ unmounted() {
51
51
  this.removeApplication();
52
52
  },
53
53
 
54
54
  methods: {
55
55
  callUpdate() {
56
56
  if (!this.app) return;
57
- this.$vuetify.application.register(this._uid, this.applicationProperty, this.updateApplication());
57
+ this.$vuetify.application.register(this.$.uid, this.applicationProperty, this.updateApplication());
58
58
  },
59
59
 
60
60
  removeApplication(force = false) {
61
61
  if (!force && !this.app) return;
62
- this.$vuetify.application.unregister(this._uid, this.applicationProperty);
62
+ this.$vuetify.application.unregister(this.$.uid, this.applicationProperty);
63
63
  },
64
64
 
65
65
  updateApplication: () => 0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/applicationable/index.ts"],"names":[],"mappings":"AAAA,SAAS,OAAO,IAAI,mBAApB,QAA+C,iBAA/C,C,CAGA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAEA,eAAc,SAAU,eAAV,CAA2B,KAA3B,EAA8C,MAAA,GAAmB,EAAjE,EAAmE;AAC/E;AACA,SAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,UAAD,EAAa,OAAb,CAAD,CAApB,CAAN,CAAmD,MAAnD,CAA0D;AAC/D,IAAA,IAAI,EAAE,iBADyD;AAG/D,IAAA,KAAK,EAAE;AACL,MAAA,GAAG,EAAE;AADA,KAHwD;AAO/D,IAAA,QAAQ,EAAE;AACR,MAAA,mBAAmB,GAAA;AACjB,eAAO,KAAP;AACD;;AAHO,KAPqD;AAa/D,IAAA,KAAK,EAAE;AACL;AACA;AACA,MAAA,GAAG,CAAE,CAAF,EAAc,IAAd,EAA2B;AAC5B,QAAA,IAAI,GACA,KAAK,iBAAL,CAAuB,IAAvB,CADA,GAEA,KAAK,UAAL,EAFJ;AAGD,OAPI;;AAQL,MAAA,mBAAmB,CAAE,MAAF,EAAU,MAAV,EAAgB;AACjC,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CAAqC,KAAK,IAA1C,EAAgD,MAAhD;AACD;;AAVI,KAbwD;;AA0B/D,IAAA,SAAS,GAAA;AACP,WAAK,UAAL;AACD,KA5B8D;;AA8B/D,IAAA,OAAO,GAAA;AACL,WAAK,IAAI,CAAC,GAAG,CAAR,EAAW,MAAM,GAAG,MAAM,CAAC,MAAhC,EAAwC,CAAC,GAAG,MAA5C,EAAoD,CAAC,EAArD,EAAyD;AACvD,aAAK,MAAL,CAAY,MAAM,CAAC,CAAD,CAAlB,EAAuB,KAAK,UAA5B;AACD;;AACD,WAAK,UAAL;AACD,KAnC8D;;AAqC/D,IAAA,OAAO,GAAA;AACL,WAAK,UAAL;AACD,KAvC8D;;AAyC/D,IAAA,WAAW,GAAA;AACT,WAAK,iBAAL;AACD,KA3C8D;;AA6C/D,IAAA,SAAS,GAAA;AACP,WAAK,iBAAL;AACD,KA/C8D;;AAiD/D,IAAA,OAAO,EAAE;AACP,MAAA,UAAU,GAAA;AACR,YAAI,CAAC,KAAK,GAAV,EAAe;AAEf,aAAK,QAAL,CAAc,WAAd,CAA0B,QAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP,EAGE,KAAK,iBAAL,EAHF;AAKD,OATM;;AAUP,MAAA,iBAAiB,CAAE,KAAK,GAAG,KAAV,EAAe;AAC9B,YAAI,CAAC,KAAD,IAAU,CAAC,KAAK,GAApB,EAAyB;AAEzB,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CACE,KAAK,IADP,EAEE,KAAK,mBAFP;AAID,OAjBM;;AAkBP,MAAA,iBAAiB,EAAE,MAAM;AAlBlB;AAjDsD,GAA1D,CAAP;AAsED","sourcesContent":["import { factory as PositionableFactory } from '../positionable'\nimport { TargetProp } from 'vuetify/types/services/application'\n\n// Util\nimport mixins from '../../util/mixins'\n\nexport default function applicationable (value: TargetProp, events: string[] = []) {\n /* @vue/component */\n return mixins(PositionableFactory(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n\n props: {\n app: Boolean,\n },\n\n computed: {\n applicationProperty (): TargetProp {\n return value\n },\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app (x: boolean, prev: boolean) {\n prev\n ? this.removeApplication(true)\n : this.callUpdate()\n },\n applicationProperty (newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal)\n },\n },\n\n activated () {\n this.callUpdate()\n },\n\n created () {\n for (let i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate)\n }\n this.callUpdate()\n },\n\n mounted () {\n this.callUpdate()\n },\n\n deactivated () {\n this.removeApplication()\n },\n\n destroyed () {\n this.removeApplication()\n },\n\n methods: {\n callUpdate () {\n if (!this.app) return\n\n this.$vuetify.application.register(\n this._uid,\n this.applicationProperty,\n this.updateApplication()\n )\n },\n removeApplication (force = false) {\n if (!force && !this.app) return\n\n this.$vuetify.application.unregister(\n this._uid,\n this.applicationProperty\n )\n },\n updateApplication: () => 0,\n },\n })\n}\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/applicationable/index.ts"],"names":[],"mappings":"AAAA,SAAS,OAAO,IAAI,mBAApB,QAA+C,iBAA/C,C,CAGA;;AACA,OAAO,MAAP,MAAmB,mBAAnB;AAEA,eAAc,SAAU,eAAV,CAA2B,KAA3B,EAA8C,MAAA,GAAmB,EAAjE,EAAmE;AAC/E;AACA,SAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,UAAD,EAAa,OAAb,CAAD,CAApB,CAAN,CAAmD,MAAnD,CAA0D;AAC/D,IAAA,IAAI,EAAE,iBADyD;AAG/D,IAAA,KAAK,EAAE;AACL,MAAA,GAAG,EAAE;AADA,KAHwD;AAO/D,IAAA,QAAQ,EAAE;AACR,MAAA,mBAAmB,GAAA;AACjB,eAAO,KAAP;AACD;;AAHO,KAPqD;AAa/D,IAAA,KAAK,EAAE;AACL;AACA;AACA,MAAA,GAAG,CAAE,CAAF,EAAc,IAAd,EAA2B;AAC5B,QAAA,IAAI,GACA,KAAK,iBAAL,CAAuB,IAAvB,CADA,GAEA,KAAK,UAAL,EAFJ;AAGD,OAPI;;AAQL,MAAA,mBAAmB,CAAE,MAAF,EAAU,MAAV,EAAgB;AACjC,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CAAqC,KAAK,CAAL,CAAO,GAA5C,EAAiD,MAAjD;AACD;;AAVI,KAbwD;;AA0B/D,IAAA,SAAS,GAAA;AACP,WAAK,UAAL;AACD,KA5B8D;;AA8B/D,IAAA,OAAO,GAAA;AACL,WAAK,IAAI,CAAC,GAAG,CAAR,EAAW,MAAM,GAAG,MAAM,CAAC,MAAhC,EAAwC,CAAC,GAAG,MAA5C,EAAoD,CAAC,EAArD,EAAyD;AACvD,aAAK,MAAL,CAAY,MAAM,CAAC,CAAD,CAAlB,EAAuB,KAAK,UAA5B;AACD;;AACD,WAAK,UAAL;AACD,KAnC8D;;AAqC/D,IAAA,OAAO,GAAA;AACL,WAAK,UAAL;AACD,KAvC8D;;AAyC/D,IAAA,WAAW,GAAA;AACT,WAAK,iBAAL;AACD,KA3C8D;;AA6C/D,IAAA,SAAS,GAAA;AACP,WAAK,iBAAL;AACD,KA/C8D;;AAiD/D,IAAA,OAAO,EAAE;AACP,MAAA,UAAU,GAAA;AACR,YAAI,CAAC,KAAK,GAAV,EAAe;AAEf,aAAK,QAAL,CAAc,WAAd,CAA0B,QAA1B,CACE,KAAK,CAAL,CAAO,GADT,EAEE,KAAK,mBAFP,EAGE,KAAK,iBAAL,EAHF;AAKD,OATM;;AAUP,MAAA,iBAAiB,CAAE,KAAK,GAAG,KAAV,EAAe;AAC9B,YAAI,CAAC,KAAD,IAAU,CAAC,KAAK,GAApB,EAAyB;AAEzB,aAAK,QAAL,CAAc,WAAd,CAA0B,UAA1B,CACE,KAAK,CAAL,CAAO,GADT,EAEE,KAAK,mBAFP;AAID,OAjBM;;AAkBP,MAAA,iBAAiB,EAAE,MAAM;AAlBlB;AAjDsD,GAA1D,CAAP;AAsED","sourcesContent":["import { factory as PositionableFactory } from '../positionable'\nimport { TargetProp } from 'vuetify/types/services/application'\n\n// Util\nimport mixins from '../../util/mixins'\n\nexport default function applicationable (value: TargetProp, events: string[] = []) {\n /* @vue/component */\n return mixins(PositionableFactory(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n\n props: {\n app: Boolean,\n },\n\n computed: {\n applicationProperty (): TargetProp {\n return value\n },\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app (x: boolean, prev: boolean) {\n prev\n ? this.removeApplication(true)\n : this.callUpdate()\n },\n applicationProperty (newVal, oldVal) {\n this.$vuetify.application.unregister(this.$.uid, oldVal)\n },\n },\n\n activated () {\n this.callUpdate()\n },\n\n created () {\n for (let i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate)\n }\n this.callUpdate()\n },\n\n mounted () {\n this.callUpdate()\n },\n\n deactivated () {\n this.removeApplication()\n },\n\n unmounted () {\n this.removeApplication()\n },\n\n methods: {\n callUpdate () {\n if (!this.app) return\n\n this.$vuetify.application.register(\n this.$.uid,\n this.applicationProperty,\n this.updateApplication()\n )\n },\n removeApplication (force = false) {\n if (!force && !this.app) return\n\n this.$vuetify.application.unregister(\n this.$.uid,\n this.applicationProperty\n )\n },\n updateApplication: () => 0,\n },\n })\n}\n"],"sourceRoot":"","file":"index.js"}
@@ -8,7 +8,7 @@ function makeWatcher(property) {
8
8
  return function (val, oldVal) {
9
9
  for (const attr in oldVal) {
10
10
  if (!Object.prototype.hasOwnProperty.call(val, attr)) {
11
- this.$delete(this.$data[property], attr);
11
+ delete this.$data[property][attr];
12
12
  }
13
13
  }
14
14
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/binds-attrs/index.ts"],"names":[],"mappings":"AAAA,SAAQ,eAAR,QAA8B,KAA9B;AAEA;;;AAGG;;AAEH,SAAS,WAAT,CAAsB,QAAtB,EAAsC;AACpC,SAAO,UAAqB,GAArB,EAA0B,MAA1B,EAAgC;AACrC,SAAK,MAAM,IAAX,IAAmB,MAAnB,EAA2B;AACzB,UAAI,CAAC,MAAM,CAAC,SAAP,CAAiB,cAAjB,CAAgC,IAAhC,CAAqC,GAArC,EAA0C,IAA1C,CAAL,EAAsD;AACpD,aAAK,OAAL,CAAa,KAAK,KAAL,CAAW,QAAX,CAAb,EAAmC,IAAnC;AACD;AACF;;AACD,SAAK,MAAM,IAAX,IAAmB,GAAnB,EAAwB;AACtB,WAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,IAA6B,GAAG,CAAC,IAAD,CAAhC;AACD;AACF,GATD;AAUD;;AAED,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,MAAM,EAAE,EADG;AAEX,IAAA,UAAU,EAAE;AAFD,GAAP,CADuB;;AAM7B,EAAA,OAAO,GAAA;AACL;AACA;AACA,SAAK,MAAL,CAAY,QAAZ,EAAsB,WAAW,CAAC,QAAD,CAAjC,EAA6C;AAAE,MAAA,SAAS,EAAE;AAAb,KAA7C;AACA,SAAK,MAAL,CAAY,YAAZ,EAA0B,WAAW,CAAC,YAAD,CAArC,EAAqD;AAAE,MAAA,SAAS,EAAE;AAAb,KAArD;AACD;;AAX4B,CAAD,CAA9B","sourcesContent":["import {defineComponent} from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType<Vue> & ((val: any, oldVal: any) => void) {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n this.$delete(this.$data[property], attr)\n }\n }\n for (const attr in val) {\n this.$data[property][attr] = val[attr]\n }\n }\n}\n\nexport default defineComponent({\n data: () => ({\n attrs$: {} as Dictionary<string>,\n listeners$: {} as Dictionary<Function | Function[]>,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/binds-attrs/index.ts"],"names":[],"mappings":"AAAA,SAAQ,eAAR,QAA8B,KAA9B;AAEA;;;AAGG;;AAEH,SAAS,WAAT,CAAsB,QAAtB,EAAsC;AACpC,SAAO,UAAqB,GAArB,EAA0B,MAA1B,EAAgC;AACrC,SAAK,MAAM,IAAX,IAAmB,MAAnB,EAA2B;AACzB,UAAI,CAAC,MAAM,CAAC,SAAP,CAAiB,cAAjB,CAAgC,IAAhC,CAAqC,GAArC,EAA0C,IAA1C,CAAL,EAAsD;AACpD,eAAO,KAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,CAAP;AACD;AACF;;AACD,SAAK,MAAM,IAAX,IAAmB,GAAnB,EAAwB;AACtB,WAAK,KAAL,CAAW,QAAX,EAAqB,IAArB,IAA6B,GAAG,CAAC,IAAD,CAAhC;AACD;AACF,GATD;AAUD;;AAED,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,MAAM,EAAE,EADG;AAEX,IAAA,UAAU,EAAE;AAFD,GAAP,CADuB;;AAM7B,EAAA,OAAO,GAAA;AACL;AACA;AACA,SAAK,MAAL,CAAY,QAAZ,EAAsB,WAAW,CAAC,QAAD,CAAjC,EAA6C;AAAE,MAAA,SAAS,EAAE;AAAb,KAA7C;AACA,SAAK,MAAL,CAAY,YAAZ,EAA0B,WAAW,CAAC,YAAD,CAArC,EAAqD;AAAE,MAAA,SAAS,EAAE;AAAb,KAArD;AACD;;AAX4B,CAAD,CAA9B","sourcesContent":["import {defineComponent} from 'vue'\n\n/**\n * This mixin provides `attrs$` and `listeners$` to work around\n * vue bug https://github.com/vuejs/vue/issues/10115\n */\n\nfunction makeWatcher (property: string): ThisType<Vue> & ((val: any, oldVal: any) => void) {\n return function (this: Vue, val, oldVal) {\n for (const attr in oldVal) {\n if (!Object.prototype.hasOwnProperty.call(val, attr)) {\n delete this.$data[property][attr]\n }\n }\n for (const attr in val) {\n this.$data[property][attr] = val[attr]\n }\n }\n}\n\nexport default defineComponent({\n data: () => ({\n attrs$: {} as Dictionary<string>,\n listeners$: {} as Dictionary<Function | Function[]>,\n }),\n\n created () {\n // Work around unwanted re-renders: https://github.com/vuejs/vue/issues/10115\n // Make sure to use `attrs$` instead of `$attrs` (confusing right?)\n this.$watch('$attrs', makeWatcher('attrs$'), { immediate: true })\n this.$watch('$listeners', makeWatcher('listeners$'), { immediate: true })\n },\n})\n"],"sourceRoot":"","file":"index.js"}
@@ -1,8 +1,6 @@
1
1
  // Utilities
2
2
  import { removed } from '../../util/console';
3
- import { h } from 'vue'; // Types
4
-
5
- import { defineComponent } from 'vue';
3
+ import { defineComponent, h, Comment } from 'vue';
6
4
  /**
7
5
  * Bootable
8
6
  * @mixin
@@ -44,7 +42,7 @@ export default defineComponent({
44
42
 
45
43
  methods: {
46
44
  showLazyContent(content) {
47
- return this.hasContent && content ? content() : [h()];
45
+ return this.hasContent && content ? content() : [h(Comment)];
48
46
  }
49
47
 
50
48
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/mixins/bootable/index.ts"],"names":[],"mappings":"AAAA;AACA,SAAS,OAAT,QAAwB,oBAAxB;AACA,SAAQ,CAAR,QAAgB,KAAhB,C,CAEA;;AACA,SAAU,eAAV,QAA6C,KAA7C;AAKA;;;;;;;AAOG;;AACH;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,UADuB;AAG7B,EAAA,KAAK,EAAE;AACL,IAAA,KAAK,EAAE;AADF,GAHsB;AAO7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,QAAQ,EAAE;AADC,GAAP,CAPuB;AAW7B,EAAA,QAAQ,EAAE;AACR,IAAA,UAAU,GAAA;AACR,aAAO,KAAK,QAAL,IAAiB,KAAK,KAAtB,IAA+B,KAAK,QAA3C;AACD;;AAHO,GAXmB;AAiB7B,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,GAAA;AACN,WAAK,QAAL,GAAgB,IAAhB;AACD;;AAHI,GAjBsB;;AAuB7B,EAAA,OAAO,GAAA;AACL;AACA,QAAI,UAAU,KAAK,MAAnB,EAA2B;AACzB,MAAA,OAAO,CAAC,MAAD,EAAS,IAAT,CAAP;AACD;AACF,GA5B4B;;AA8B7B,EAAA,OAAO,EAAE;AACP,IAAA,eAAe,CAAE,OAAF,EAAyB;AACtC,aAAQ,KAAK,UAAL,IAAmB,OAApB,GAA+B,OAAO,EAAtC,GAA2C,CAAC,CAAC,EAAF,CAAlD;AACD;;AAHM;AA9BoB,CAAD,CAA9B","sourcesContent":["// Utilities\nimport { removed } from '../../util/console'\nimport {h} from 'vue'\n\n// Types\nimport { defineComponent, VNode, App } from 'vue'\ninterface Toggleable extends App {\n isActive?: boolean\n}\n\n/**\n * Bootable\n * @mixin\n *\n * Used to add lazy content functionality to components\n * Looks for change in \"isActive\" to automatically boot\n * Otherwise can be set manually\n */\n/* @vue/component */\nexport default defineComponent({\n name: 'bootable',\n\n props: {\n eager: Boolean,\n },\n\n data: () => ({\n isBooted: false,\n }),\n\n computed: {\n hasContent (): boolean | undefined {\n return this.isBooted || this.eager || this.isActive\n },\n },\n\n watch: {\n isActive () {\n this.isBooted = true\n },\n },\n\n created () {\n /* istanbul ignore next */\n if ('lazy' in this.$attrs) {\n removed('lazy', this)\n }\n },\n\n methods: {\n showLazyContent (content?: () => VNode[]): VNode[] {\n return (this.hasContent && content) ? content() : [h()]\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}
1
+ {"version":3,"sources":["../../../src/mixins/bootable/index.ts"],"names":[],"mappings":"AAAA;AACA,SAAS,OAAT,QAAwB,oBAAxB;AAKA,SAAS,eAAT,EAA0B,CAA1B,EAA6B,OAA7B,QAA4C,KAA5C;AAKA;;;;;;;AAOG;;AACH;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,UADuB;AAG7B,EAAA,KAAK,EAAE;AACL,IAAA,KAAK,EAAE;AADF,GAHsB;AAO7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,QAAQ,EAAE;AADC,GAAP,CAPuB;AAW7B,EAAA,QAAQ,EAAE;AACR,IAAA,UAAU,GAAA;AACR,aAAO,KAAK,QAAL,IAAiB,KAAK,KAAtB,IAA+B,KAAK,QAA3C;AACD;;AAHO,GAXmB;AAiB7B,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,GAAA;AACN,WAAK,QAAL,GAAgB,IAAhB;AACD;;AAHI,GAjBsB;;AAuB7B,EAAA,OAAO,GAAA;AACL;AACA,QAAI,UAAU,KAAK,MAAnB,EAA2B;AACzB,MAAA,OAAO,CAAC,MAAD,EAAS,IAAT,CAAP;AACD;AACF,GA5B4B;;AA8B7B,EAAA,OAAO,EAAE;AACP,IAAA,eAAe,CAAE,OAAF,EAAyB;AACtC,aAAQ,KAAK,UAAL,IAAmB,OAApB,GAA+B,OAAO,EAAtC,GAA2C,CAAC,CAAC,CAAC,OAAD,CAAF,CAAlD;AACD;;AAHM;AA9BoB,CAAD,CAA9B","sourcesContent":["// Utilities\nimport { removed } from '../../util/console'\n\n// Types\nimport type { VNode, App } from 'vue'\n\nimport { defineComponent, h, Comment } from 'vue'\ninterface Toggleable extends App {\n isActive?: boolean\n}\n\n/**\n * Bootable\n * @mixin\n *\n * Used to add lazy content functionality to components\n * Looks for change in \"isActive\" to automatically boot\n * Otherwise can be set manually\n */\n/* @vue/component */\nexport default defineComponent({\n name: 'bootable',\n\n props: {\n eager: Boolean,\n },\n\n data: () => ({\n isBooted: false,\n }),\n\n computed: {\n hasContent (): boolean | undefined {\n return this.isBooted || this.eager || this.isActive\n },\n },\n\n watch: {\n isActive () {\n this.isBooted = true\n },\n },\n\n created () {\n /* istanbul ignore next */\n if ('lazy' in this.$attrs) {\n removed('lazy', this)\n }\n },\n\n methods: {\n showLazyContent (content?: () => VNode[]): VNode[] {\n return (this.hasContent && content) ? content() : [h(Comment)]\n },\n },\n})\n"],"sourceRoot":"","file":"index.js"}