@dimailn/vuetify 2.7.2-alpha25 → 2.7.2-alpha27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (494) hide show
  1. package/dist/vuetify.js +1436 -1164
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VAlert/VAlert.js +1 -0
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAppBar/VAppBar.js +17 -6
  8. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  9. package/es5/components/VAppBar/VAppBarNavIcon.js +5 -1
  10. package/es5/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  11. package/es5/components/VBadge/VBadge.js +1 -0
  12. package/es5/components/VBadge/VBadge.js.map +1 -1
  13. package/es5/components/VBanner/VBanner.js +23 -15
  14. package/es5/components/VBanner/VBanner.js.map +1 -1
  15. package/es5/components/VBottomNavigation/VBottomNavigation.js +8 -7
  16. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  17. package/es5/components/VBreadcrumbs/VBreadcrumbs.js +18 -6
  18. package/es5/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  19. package/es5/components/VBtn/VBtn.js +6 -2
  20. package/es5/components/VBtn/VBtn.js.map +1 -1
  21. package/es5/components/VCalendar/VCalendar.js +27 -29
  22. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  23. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  24. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  25. package/es5/components/VCalendar/VCalendarDaily.js +43 -60
  26. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  27. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  28. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  29. package/es5/components/VCalendar/VCalendarWeekly.js +26 -35
  30. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  31. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  32. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  33. package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
  34. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  35. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  36. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  37. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  38. package/es5/components/VCarousel/VCarousel.js +20 -13
  39. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  40. package/es5/components/VCarousel/VCarouselItem.js +7 -3
  41. package/es5/components/VCarousel/VCarouselItem.js.map +1 -1
  42. package/es5/components/VCheckbox/VCheckbox.js +34 -1
  43. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  44. package/es5/components/VCheckbox/VSimpleCheckbox.js +0 -3
  45. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  46. package/es5/components/VChip/VChip.js +14 -6
  47. package/es5/components/VChip/VChip.js.map +1 -1
  48. package/es5/components/VData/VData.js +1 -0
  49. package/es5/components/VData/VData.js.map +1 -1
  50. package/es5/components/VDataIterator/VDataFooter.js +6 -1
  51. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  52. package/es5/components/VDataIterator/VDataIterator.js +1 -0
  53. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  54. package/es5/components/VDataTable/VDataTable.js +22 -13
  55. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  56. package/es5/components/VDataTable/VDataTableHeader.js +2 -6
  57. package/es5/components/VDataTable/VDataTableHeader.js.map +1 -1
  58. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  59. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  60. package/es5/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  61. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  62. package/es5/components/VDataTable/VEditDialog.js +23 -18
  63. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  64. package/es5/components/VDataTable/mixins/header.js +5 -7
  65. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  66. package/es5/components/VDatePicker/VDatePicker.js +13 -18
  67. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  68. package/es5/components/VDatePicker/VDatePickerHeader.js +50 -22
  69. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  70. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  71. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  72. package/es5/components/VDatePicker/VDatePickerTitle.js +16 -7
  73. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  74. package/es5/components/VDatePicker/VDatePickerYears.js +11 -12
  75. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  76. package/es5/components/VDatePicker/mixins/date-picker-table.js +21 -16
  77. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  78. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  79. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  80. package/es5/components/VDialog/VDialog.js +17 -12
  81. package/es5/components/VDialog/VDialog.js.map +1 -1
  82. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  83. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  84. package/es5/components/VExpansionPanel/VExpansionPanelContent.js +11 -9
  85. package/es5/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  86. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +16 -19
  87. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  88. package/es5/components/VFileInput/VFileInput.js +1 -0
  89. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  90. package/es5/components/VForm/VForm.js +1 -0
  91. package/es5/components/VForm/VForm.js.map +1 -1
  92. package/es5/components/VHover/VHover.js +1 -0
  93. package/es5/components/VHover/VHover.js.map +1 -1
  94. package/es5/components/VImg/VImg.js +9 -7
  95. package/es5/components/VImg/VImg.js.map +1 -1
  96. package/es5/components/VInput/VInput.js +11 -4
  97. package/es5/components/VInput/VInput.js.map +1 -1
  98. package/es5/components/VItemGroup/VItem.js +2 -1
  99. package/es5/components/VItemGroup/VItem.js.map +1 -1
  100. package/es5/components/VItemGroup/VItemGroup.js +5 -1
  101. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  102. package/es5/components/VLazy/VLazy.js +8 -15
  103. package/es5/components/VLazy/VLazy.js.map +1 -1
  104. package/es5/components/VList/VListGroup.js +30 -20
  105. package/es5/components/VList/VListGroup.js.map +1 -1
  106. package/es5/components/VList/VListItem.js +31 -13
  107. package/es5/components/VList/VListItem.js.map +1 -1
  108. package/es5/components/VList/VListItemAction.js +23 -9
  109. package/es5/components/VList/VListItemAction.js.map +1 -1
  110. package/es5/components/VMenu/VMenu.js +1 -0
  111. package/es5/components/VMenu/VMenu.js.map +1 -1
  112. package/es5/components/VMessages/VMessages.js +5 -1
  113. package/es5/components/VMessages/VMessages.js.map +1 -1
  114. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +1 -7
  115. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  116. package/es5/components/VOtpInput/VOtpInput.js +1 -5
  117. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  118. package/es5/components/VOverflowBtn/VOverflowBtn.js +4 -1
  119. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  120. package/es5/components/VOverlay/VOverlay.js +1 -0
  121. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  122. package/es5/components/VPagination/VPagination.js +4 -4
  123. package/es5/components/VPagination/VPagination.js.map +1 -1
  124. package/es5/components/VPicker/VPicker.js +7 -4
  125. package/es5/components/VPicker/VPicker.js.map +1 -1
  126. package/es5/components/VProgressCircular/VProgressCircular.js +1 -10
  127. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  128. package/es5/components/VProgressLinear/VProgressLinear.js +4 -12
  129. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  130. package/es5/components/VRadioGroup/VRadio.js +11 -2
  131. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  132. package/es5/components/VSelect/VSelect.js +115 -64
  133. package/es5/components/VSelect/VSelect.js.map +1 -1
  134. package/es5/components/VSelect/VSelectList.js +30 -26
  135. package/es5/components/VSelect/VSelectList.js.map +1 -1
  136. package/es5/components/VSlideGroup/VSlideGroup.js +27 -22
  137. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  138. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  139. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  140. package/es5/components/VSlider/VSlider.js +16 -15
  141. package/es5/components/VSlider/VSlider.js.map +1 -1
  142. package/es5/components/VSnackbar/VSnackbar.js +1 -0
  143. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  144. package/es5/components/VSparkline/VSparkline.js +48 -68
  145. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  146. package/es5/components/VSpeedDial/VSpeedDial.js +4 -10
  147. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  148. package/es5/components/VStepper/VStepper.js +1 -0
  149. package/es5/components/VStepper/VStepper.js.map +1 -1
  150. package/es5/components/VStepper/VStepperContent.js +3 -1
  151. package/es5/components/VStepper/VStepperContent.js.map +1 -1
  152. package/es5/components/VStepper/VStepperStep.js +11 -19
  153. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  154. package/es5/components/VSwitch/VSwitch.js +11 -9
  155. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  156. package/es5/components/VTabs/VTab.js +1 -0
  157. package/es5/components/VTabs/VTab.js.map +1 -1
  158. package/es5/components/VTabs/VTabs.js +17 -6
  159. package/es5/components/VTabs/VTabs.js.map +1 -1
  160. package/es5/components/VTabs/VTabsItems.js +1 -0
  161. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  162. package/es5/components/VTextField/VTextField.js +34 -26
  163. package/es5/components/VTextField/VTextField.js.map +1 -1
  164. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  165. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  166. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  167. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  168. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  169. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  170. package/es5/components/VToolbar/VToolbar.js +1 -3
  171. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  172. package/es5/components/VTooltip/VTooltip.js +9 -4
  173. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  174. package/es5/components/VTreeview/VTreeviewNode.js +11 -3
  175. package/es5/components/VTreeview/VTreeviewNode.js.map +1 -1
  176. package/es5/components/VVirtualScroll/VVirtualScroll.js +0 -3
  177. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  178. package/es5/components/VWindow/VWindow.js +0 -3
  179. package/es5/components/VWindow/VWindow.js.map +1 -1
  180. package/es5/components/VWindow/VWindowItem.js +1 -5
  181. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  182. package/es5/components/transitions/createTransition.js +8 -2
  183. package/es5/components/transitions/createTransition.js.map +1 -1
  184. package/es5/framework.js +1 -1
  185. package/es5/mixins/detachable/index.js +9 -5
  186. package/es5/mixins/detachable/index.js.map +1 -1
  187. package/es5/mixins/picker/index.js +13 -3
  188. package/es5/mixins/picker/index.js.map +1 -1
  189. package/lib/components/VAlert/VAlert.js +1 -0
  190. package/lib/components/VAlert/VAlert.js.map +1 -1
  191. package/lib/components/VAppBar/VAppBar.js +17 -6
  192. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  193. package/lib/components/VAppBar/VAppBarNavIcon.js +1 -1
  194. package/lib/components/VAppBar/VAppBarNavIcon.js.map +1 -1
  195. package/lib/components/VBadge/VBadge.js +1 -0
  196. package/lib/components/VBadge/VBadge.js.map +1 -1
  197. package/lib/components/VBanner/VBanner.js +9 -13
  198. package/lib/components/VBanner/VBanner.js.map +1 -1
  199. package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -7
  200. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  201. package/lib/components/VBreadcrumbs/VBreadcrumbs.js +2 -2
  202. package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
  203. package/lib/components/VBtn/VBtn.js +4 -2
  204. package/lib/components/VBtn/VBtn.js.map +1 -1
  205. package/lib/components/VCalendar/VCalendar.js +26 -31
  206. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  207. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  208. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  209. package/lib/components/VCalendar/VCalendarDaily.js +21 -33
  210. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  211. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  212. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  213. package/lib/components/VCalendar/VCalendarWeekly.js +17 -30
  214. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  215. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  216. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  217. package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
  218. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  219. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  220. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  221. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  222. package/lib/components/VCarousel/VCarousel.js +15 -14
  223. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  224. package/lib/components/VCarousel/VCarouselItem.js +1 -1
  225. package/lib/components/VCarousel/VCarouselItem.js.map +1 -1
  226. package/lib/components/VCheckbox/VCheckbox.js +15 -2
  227. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  228. package/lib/components/VCheckbox/VSimpleCheckbox.js +0 -3
  229. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  230. package/lib/components/VChip/VChip.js +14 -6
  231. package/lib/components/VChip/VChip.js.map +1 -1
  232. package/lib/components/VData/VData.js +1 -0
  233. package/lib/components/VData/VData.js.map +1 -1
  234. package/lib/components/VDataIterator/VDataFooter.js +2 -1
  235. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  236. package/lib/components/VDataIterator/VDataIterator.js +1 -0
  237. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  238. package/lib/components/VDataTable/VDataTable.js +7 -12
  239. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  240. package/lib/components/VDataTable/VDataTableHeader.js +3 -6
  241. package/lib/components/VDataTable/VDataTableHeader.js.map +1 -1
  242. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  243. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  244. package/lib/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  245. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  246. package/lib/components/VDataTable/VEditDialog.js +16 -15
  247. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  248. package/lib/components/VDataTable/mixins/header.js +1 -6
  249. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  250. package/lib/components/VDatePicker/VDatePicker.js +11 -16
  251. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  252. package/lib/components/VDatePicker/VDatePickerHeader.js +33 -20
  253. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  254. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  255. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  256. package/lib/components/VDatePicker/VDatePickerTitle.js +6 -5
  257. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  258. package/lib/components/VDatePicker/VDatePickerYears.js +8 -9
  259. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  260. package/lib/components/VDatePicker/mixins/date-picker-table.js +18 -14
  261. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  262. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  263. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  264. package/lib/components/VDialog/VDialog.js +3 -2
  265. package/lib/components/VDialog/VDialog.js.map +1 -1
  266. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  267. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  268. package/lib/components/VExpansionPanel/VExpansionPanelContent.js +1 -1
  269. package/lib/components/VExpansionPanel/VExpansionPanelContent.js.map +1 -1
  270. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +3 -6
  271. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  272. package/lib/components/VFileInput/VFileInput.js +1 -0
  273. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  274. package/lib/components/VForm/VForm.js +1 -0
  275. package/lib/components/VForm/VForm.js.map +1 -1
  276. package/lib/components/VHover/VHover.js +1 -0
  277. package/lib/components/VHover/VHover.js.map +1 -1
  278. package/lib/components/VImg/VImg.js +4 -8
  279. package/lib/components/VImg/VImg.js.map +1 -1
  280. package/lib/components/VInput/VInput.js +3 -2
  281. package/lib/components/VInput/VInput.js.map +1 -1
  282. package/lib/components/VItemGroup/VItem.js +2 -1
  283. package/lib/components/VItemGroup/VItem.js.map +1 -1
  284. package/lib/components/VItemGroup/VItemGroup.js +6 -1
  285. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  286. package/lib/components/VLazy/VLazy.js +8 -15
  287. package/lib/components/VLazy/VLazy.js.map +1 -1
  288. package/lib/components/VList/VListGroup.js +8 -10
  289. package/lib/components/VList/VListGroup.js.map +1 -1
  290. package/lib/components/VList/VListItem.js +28 -15
  291. package/lib/components/VList/VListItem.js.map +1 -1
  292. package/lib/components/VList/VListItemAction.js +15 -9
  293. package/lib/components/VList/VListItemAction.js.map +1 -1
  294. package/lib/components/VMenu/VMenu.js +1 -0
  295. package/lib/components/VMenu/VMenu.js.map +1 -1
  296. package/lib/components/VMessages/VMessages.js +1 -1
  297. package/lib/components/VMessages/VMessages.js.map +1 -1
  298. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +1 -6
  299. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  300. package/lib/components/VOtpInput/VOtpInput.js +2 -6
  301. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  302. package/lib/components/VOverflowBtn/VOverflowBtn.js +2 -1
  303. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  304. package/lib/components/VOverlay/VOverlay.js +1 -0
  305. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  306. package/lib/components/VPagination/VPagination.js +2 -4
  307. package/lib/components/VPagination/VPagination.js.map +1 -1
  308. package/lib/components/VPicker/VPicker.js +4 -4
  309. package/lib/components/VPicker/VPicker.js.map +1 -1
  310. package/lib/components/VProgressCircular/VProgressCircular.js +1 -4
  311. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  312. package/lib/components/VProgressLinear/VProgressLinear.js +4 -6
  313. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  314. package/lib/components/VRadioGroup/VRadio.js +3 -2
  315. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  316. package/lib/components/VSelect/VSelect.js +66 -21
  317. package/lib/components/VSelect/VSelect.js.map +1 -1
  318. package/lib/components/VSelect/VSelectList.js +15 -17
  319. package/lib/components/VSelect/VSelectList.js.map +1 -1
  320. package/lib/components/VSlideGroup/VSlideGroup.js +4 -7
  321. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  322. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  323. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  324. package/lib/components/VSlider/VSlider.js +1 -4
  325. package/lib/components/VSlider/VSlider.js.map +1 -1
  326. package/lib/components/VSnackbar/VSnackbar.js +1 -0
  327. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  328. package/lib/components/VSparkline/VSparkline.js +48 -67
  329. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  330. package/lib/components/VSpeedDial/VSpeedDial.js +3 -9
  331. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  332. package/lib/components/VStepper/VStepper.js +1 -0
  333. package/lib/components/VStepper/VStepper.js.map +1 -1
  334. package/lib/components/VStepper/VStepperContent.js +1 -1
  335. package/lib/components/VStepper/VStepperContent.js.map +1 -1
  336. package/lib/components/VStepper/VStepperStep.js +7 -18
  337. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  338. package/lib/components/VSwitch/VSwitch.js +2 -4
  339. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  340. package/lib/components/VTabs/VTab.js +1 -0
  341. package/lib/components/VTabs/VTab.js.map +1 -1
  342. package/lib/components/VTabs/VTabs.js +16 -6
  343. package/lib/components/VTabs/VTabs.js.map +1 -1
  344. package/lib/components/VTabs/VTabsItems.js +1 -0
  345. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  346. package/lib/components/VTextField/VTextField.js +7 -16
  347. package/lib/components/VTextField/VTextField.js.map +1 -1
  348. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  349. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  350. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  351. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  352. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  353. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  354. package/lib/components/VToolbar/VToolbar.js +1 -3
  355. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  356. package/lib/components/VTooltip/VTooltip.js +2 -3
  357. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  358. package/lib/components/VTreeview/VTreeviewNode.js +3 -3
  359. package/lib/components/VTreeview/VTreeviewNode.js.map +1 -1
  360. package/lib/components/VVirtualScroll/VVirtualScroll.js +0 -3
  361. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  362. package/lib/components/VWindow/VWindow.js +0 -3
  363. package/lib/components/VWindow/VWindow.js.map +1 -1
  364. package/lib/components/VWindow/VWindowItem.js +2 -6
  365. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  366. package/lib/components/transitions/createTransition.js +2 -2
  367. package/lib/components/transitions/createTransition.js.map +1 -1
  368. package/lib/framework.js +1 -1
  369. package/lib/mixins/detachable/index.js +9 -5
  370. package/lib/mixins/detachable/index.js.map +1 -1
  371. package/lib/mixins/picker/index.js +5 -3
  372. package/lib/mixins/picker/index.js.map +1 -1
  373. package/package.json +1 -1
  374. package/src/components/VAlert/VAlert.ts +2 -0
  375. package/src/components/VAppBar/VAppBar.ts +12 -3
  376. package/src/components/VAppBar/VAppBarNavIcon.ts +1 -1
  377. package/src/components/VBadge/VBadge.ts +1 -1
  378. package/src/components/VBanner/VBanner.ts +17 -17
  379. package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -8
  380. package/src/components/VBreadcrumbs/VBreadcrumbs.ts +2 -2
  381. package/src/components/VBtn/VBtn.ts +8 -2
  382. package/src/components/VCalendar/VCalendar.ts +29 -27
  383. package/src/components/VCalendar/VCalendarCategory.ts +9 -8
  384. package/src/components/VCalendar/VCalendarDaily.ts +18 -28
  385. package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
  386. package/src/components/VCalendar/VCalendarWeekly.ts +18 -30
  387. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +18 -34
  388. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +16 -14
  389. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
  390. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +206 -205
  391. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  392. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  393. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
  394. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
  395. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
  396. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
  397. package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
  398. package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
  399. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
  400. package/src/components/VCalendar/mixins/times.ts +1 -1
  401. package/src/components/VCarousel/VCarousel.ts +16 -12
  402. package/src/components/VCarousel/VCarouselItem.ts +1 -1
  403. package/src/components/VCheckbox/VCheckbox.ts +20 -2
  404. package/src/components/VCheckbox/VSimpleCheckbox.ts +0 -3
  405. package/src/components/VChip/VChip.ts +16 -13
  406. package/src/components/VData/VData.ts +2 -0
  407. package/src/components/VDataIterator/VDataFooter.ts +3 -1
  408. package/src/components/VDataIterator/VDataIterator.ts +2 -0
  409. package/src/components/VDataTable/VDataTable.ts +7 -9
  410. package/src/components/VDataTable/VDataTableHeader.ts +2 -4
  411. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +5 -0
  412. package/src/components/VDataTable/VDataTableHeaderMobile.ts +2 -0
  413. package/src/components/VDataTable/VEditDialog.ts +20 -18
  414. package/src/components/VDataTable/mixins/header.ts +1 -5
  415. package/src/components/VDatePicker/VDatePicker.ts +13 -18
  416. package/src/components/VDatePicker/VDatePickerHeader.ts +44 -32
  417. package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
  418. package/src/components/VDatePicker/VDatePickerTitle.ts +9 -7
  419. package/src/components/VDatePicker/VDatePickerYears.ts +6 -10
  420. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +302 -246
  421. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +90 -86
  422. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
  423. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +96 -71
  424. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
  425. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +48 -28
  426. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +25 -22
  427. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +601 -586
  428. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +203 -193
  429. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  430. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  431. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  432. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +3 -4
  433. package/src/components/VDatePicker/mixins/date-picker-table.ts +19 -14
  434. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  435. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  436. package/src/components/VDialog/VDialog.ts +9 -7
  437. package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
  438. package/src/components/VExpansionPanel/VExpansionPanelContent.ts +1 -1
  439. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +2 -3
  440. package/src/components/VFileInput/VFileInput.ts +2 -0
  441. package/src/components/VForm/VForm.ts +2 -0
  442. package/src/components/VHover/VHover.ts +2 -0
  443. package/src/components/VImg/VImg.ts +4 -3
  444. package/src/components/VInput/VInput.ts +4 -2
  445. package/src/components/VItemGroup/VItem.ts +4 -0
  446. package/src/components/VItemGroup/VItemGroup.ts +7 -1
  447. package/src/components/VLazy/VLazy.ts +11 -13
  448. package/src/components/VList/VListGroup.ts +12 -13
  449. package/src/components/VList/VListItem.ts +36 -19
  450. package/src/components/VList/VListItemAction.ts +11 -10
  451. package/src/components/VMenu/VMenu.ts +3 -1
  452. package/src/components/VMessages/VMessages.ts +1 -1
  453. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +2 -5
  454. package/src/components/VOtpInput/VOtpInput.ts +2 -3
  455. package/src/components/VOverflowBtn/VOverflowBtn.ts +3 -1
  456. package/src/components/VOverlay/VOverlay.ts +2 -0
  457. package/src/components/VPagination/VPagination.ts +3 -2
  458. package/src/components/VPicker/VPicker.ts +9 -11
  459. package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
  460. package/src/components/VProgressCircular/VProgressCircular.ts +0 -1
  461. package/src/components/VProgressLinear/VProgressLinear.ts +14 -13
  462. package/src/components/VRadioGroup/VRadio.ts +4 -2
  463. package/src/components/VSelect/VSelect.ts +61 -21
  464. package/src/components/VSelect/VSelectList.ts +16 -12
  465. package/src/components/VSlideGroup/VSlideGroup.ts +5 -7
  466. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  467. package/src/components/VSlider/VSlider.ts +1 -4
  468. package/src/components/VSnackbar/VSnackbar.ts +1 -1
  469. package/src/components/VSparkline/VSparkline.ts +54 -92
  470. package/src/components/VSpeedDial/VSpeedDial.ts +6 -8
  471. package/src/components/VStepper/VStepper.ts +3 -1
  472. package/src/components/VStepper/VStepperContent.ts +1 -1
  473. package/src/components/VStepper/VStepperStep.ts +8 -15
  474. package/src/components/VSwitch/VSwitch.ts +5 -6
  475. package/src/components/VTabs/VTab.ts +2 -0
  476. package/src/components/VTabs/VTabs.ts +18 -12
  477. package/src/components/VTabs/VTabsItems.ts +2 -0
  478. package/src/components/VTextField/VTextField.ts +10 -13
  479. package/src/components/VTimePicker/VTimePicker.ts +199 -89
  480. package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
  481. package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
  482. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +153 -140
  483. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
  484. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +47 -41
  485. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +160 -40
  486. package/src/components/VToolbar/VToolbar.ts +1 -1
  487. package/src/components/VTooltip/VTooltip.ts +2 -2
  488. package/src/components/VTreeview/VTreeviewNode.ts +3 -3
  489. package/src/components/VVirtualScroll/VVirtualScroll.ts +0 -1
  490. package/src/components/VWindow/VWindow.ts +0 -1
  491. package/src/components/VWindow/VWindowItem.ts +2 -3
  492. package/src/components/transitions/createTransition.ts +2 -2
  493. package/src/mixins/detachable/index.ts +11 -5
  494. package/src/mixins/picker/index.ts +4 -4
@@ -58,9 +58,6 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
58
58
  var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _themeable.default
59
59
  /* @vue/component */
60
60
  ).extend({
61
- directives: {
62
- Touch: _touch.default
63
- },
64
61
  props: {
65
62
  allowedDates: Function,
66
63
  current: String,
@@ -87,7 +84,7 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
87
84
  type: String,
88
85
  required: true
89
86
  },
90
- value: [String, Array]
87
+ modelValue: [String, Array]
91
88
  },
92
89
  data: function data() {
93
90
  return {
@@ -104,6 +101,10 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
104
101
  },
105
102
  displayedYear: function displayedYear() {
106
103
  return Number(this.tableDate.split('-')[0]);
104
+ },
105
+ // Vue 3 compatibility: use modelValue
106
+ currentValue: function currentValue() {
107
+ return this.modelValue;
107
108
  }
108
109
  },
109
110
  watch: {
@@ -135,7 +136,9 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
135
136
  if (this.disabled) return undefined;
136
137
  return (0, _mergeData.mergeListeners)({
137
138
  onClick: function onClick() {
138
- if (isAllowed && !_this.readonly) _this.$emit('input', value);
139
+ if (isAllowed && !_this.readonly) {
140
+ _this.$emit('update:modelValue', value);
141
+ }
139
142
  }
140
143
  }, (0, _util.createItemTypeNativeListeners)(this, ":".concat(mouseEventType), value));
141
144
  },
@@ -149,9 +152,9 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
149
152
  var isFirst = false;
150
153
  var isLast = false;
151
154
 
152
- if (this.range && !!this.value && Array.isArray(this.value)) {
153
- isFirst = value === this.value[0];
154
- isLast = value === this.value[this.value.length - 1];
155
+ if (this.range && !!this.currentValue && Array.isArray(this.currentValue)) {
156
+ isFirst = value === this.currentValue[0];
157
+ isLast = value === this.currentValue[this.currentValue.length - 1];
155
158
  }
156
159
 
157
160
  return (0, _vue.h)('button', setColor(color, _objectSpread({
@@ -226,9 +229,11 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
226
229
 
227
230
  var transition = (0, _vue.h)(_vue.Transition, {
228
231
  name: this.computedTransition
229
- }, [(0, _vue.h)('table', {
230
- key: this.tableDate
231
- }, children)]);
232
+ }, function () {
233
+ return [(0, _vue.h)('table', {
234
+ key: _this3.tableDate
235
+ }, children)];
236
+ });
232
237
  var touchDirective = [_touch.default, {
233
238
  left: function left(e) {
234
239
  return e.offsetX < -15 && _this3.isValidScroll(1, calculateTableDate) && _this3.touch(1, calculateTableDate);
@@ -250,20 +255,20 @@ var _default2 = (0, _mixins.default)(_colorable.default, _localable.default, _th
250
255
  } : {}), [transition]), [touchDirective]);
251
256
  },
252
257
  isSelected: function isSelected(value) {
253
- if (Array.isArray(this.value)) {
254
- if (this.range && this.value.length === 2) {
255
- var _sort = _toConsumableArray(this.value).sort(),
258
+ if (Array.isArray(this.currentValue)) {
259
+ if (this.range && this.currentValue.length === 2) {
260
+ var _sort = _toConsumableArray(this.currentValue).sort(),
256
261
  _sort2 = _slicedToArray(_sort, 2),
257
262
  from = _sort2[0],
258
263
  to = _sort2[1];
259
264
 
260
265
  return from <= value && value <= to;
261
266
  } else {
262
- return this.value.indexOf(value) !== -1;
267
+ return this.currentValue.indexOf(value) !== -1;
263
268
  }
264
269
  }
265
270
 
266
- return value === this.value;
271
+ return value === this.currentValue;
267
272
  }
268
273
  }
269
274
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/VDatePicker/mixins/date-picker-table.ts"],"names":[],"mappings":"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","sourcesContent":["import '../VDatePickerTable.sass'\n\n// Directives\nimport Touch from '../../../directives/touch'\n\n// Mixins\nimport Colorable from '../../../mixins/colorable'\nimport Localable from '../../../mixins/localable'\nimport Themeable from '../../../mixins/themeable'\n\n// Utils\nimport { createItemTypeNativeListeners, sanitizeDateString } from '../util'\nimport isDateAllowed from '../util/isDateAllowed'\nimport { mergeListeners } from '../../../util/mergeData'\nimport mixins from '../../../util/mixins'\nimport { throttle } from '../../../util/helpers'\n\n// Types\nimport {\n PropType,\n VNodeChildren,\n Transition,\n withDirectives,\n h\n} from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DatePickerAllowedDatesFunction,\n DatePickerEventColors,\n DatePickerEventColorValue,\n DatePickerEvents,\n DatePickerFormatter,\n TouchWrapper,\n} from 'vuetify/types'\n\ntype CalculateTableDateFunction = (v: number) => string\n\nexport default mixins(\n Colorable,\n Localable,\n Themeable\n/* @vue/component */\n).extend({\n directives: { Touch },\n\n props: {\n allowedDates: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n current: String,\n disabled: Boolean,\n format: Function as PropType<DatePickerFormatter | undefined>,\n events: {\n type: [Array, Function, Object],\n default: () => null,\n } as PropValidator<DatePickerEvents | null>,\n eventColor: {\n type: [Array, Function, Object, String],\n default: () => 'warning',\n } as PropValidator<DatePickerEventColors>,\n min: String,\n max: String,\n range: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n tableDate: {\n type: String,\n required: true,\n },\n value: [String, Array] as PropType<string | string[]>,\n },\n\n data: () => ({\n isReversing: false,\n wheelThrottle: null as any,\n }),\n\n computed: {\n computedTransition (): string {\n return (this.isReversing === !this.$vuetify.rtl) ? 'tab-reverse-transition' : 'tab-transition'\n },\n displayedMonth (): number {\n return Number(this.tableDate.split('-')[1]) - 1\n },\n displayedYear (): number {\n return Number(this.tableDate.split('-')[0])\n },\n },\n\n watch: {\n tableDate (newVal: string, oldVal: string) {\n this.isReversing = newVal < oldVal\n },\n },\n\n mounted () {\n this.wheelThrottle = throttle(this.wheel, 250)\n },\n\n methods: {\n genButtonClasses (\n isAllowed: boolean,\n isFloating: boolean,\n isSelected: boolean,\n isCurrent: boolean,\n isFirst: boolean,\n isLast: boolean,\n ) {\n return {\n 'v-size--default': !isFloating,\n 'v-date-picker-table__current': isCurrent,\n 'v-btn--active': isSelected,\n 'v-btn--flat': !isAllowed || this.disabled,\n 'v-btn--text': isSelected === isCurrent,\n 'v-btn--rounded': isFloating,\n 'v-btn--disabled': !isAllowed || this.disabled,\n 'v-btn--outlined': isCurrent && !isSelected,\n 'v-date-picker--first-in-range': isFirst,\n 'v-date-picker--last-in-range': isLast,\n ...this.themeClasses,\n }\n },\n genButtonEvents (value: string, isAllowed: boolean, mouseEventType: string) {\n if (this.disabled) return undefined\n\n return mergeListeners({\n onClick: () => {\n if (isAllowed && !this.readonly) this.$emit('input', value)\n },\n }, createItemTypeNativeListeners(this, `:${mouseEventType}`, value))\n },\n genButton (value: string, isFloating: boolean, mouseEventType: string, formatter: DatePickerFormatter, isOtherMonth = false) {\n const isAllowed = isDateAllowed(value, this.min, this.max, this.allowedDates)\n const isSelected = this.isSelected(value) && isAllowed\n const isCurrent = value === this.current\n const setColor = isSelected ? this.setBackgroundColor : this.setTextColor\n const color = (isSelected || isCurrent) && (this.color || 'accent')\n let isFirst = false\n let isLast = false\n if (this.range && !!this.value && Array.isArray(this.value)) {\n isFirst = value === this.value[0]\n isLast = value === this.value[this.value.length - 1]\n }\n\n return h('button', setColor(color, {\n class: ['v-btn', this.genButtonClasses(\n isAllowed && !isOtherMonth,\n isFloating,\n isSelected,\n isCurrent,\n isFirst,\n isLast,\n )],\n type: 'button',\n disabled: this.disabled || !isAllowed || isOtherMonth,\n ...this.genButtonEvents(value, isAllowed, mouseEventType),\n }), [\n h('div', {\n class: 'v-btn__content',\n }, [formatter(value)]),\n this.genEvents(value),\n ])\n },\n getEventColors (date: string) {\n const arrayize = (v: string | string[]) => Array.isArray(v) ? v : [v]\n let eventData: boolean | DatePickerEventColorValue\n let eventColors: string[] = []\n\n if (Array.isArray(this.events)) {\n eventData = this.events.includes(date)\n } else if (this.events instanceof Function) {\n eventData = this.events(date) || false\n } else if (this.events) {\n eventData = this.events[date] || false\n } else {\n eventData = false\n }\n\n if (!eventData) {\n return []\n } else if (eventData !== true) {\n eventColors = arrayize(eventData)\n } else if (typeof this.eventColor === 'string') {\n eventColors = [this.eventColor]\n } else if (typeof this.eventColor === 'function') {\n eventColors = arrayize(this.eventColor(date))\n } else if (Array.isArray(this.eventColor)) {\n eventColors = this.eventColor\n } else {\n eventColors = arrayize(this.eventColor[date])\n }\n\n return eventColors.filter(v => v)\n },\n genEvents (date: string) {\n const eventColors = this.getEventColors(date)\n\n return eventColors.length ? h('div', {\n class: 'v-date-picker-table__events',\n }, eventColors.map(color => h('div', this.setBackgroundColor(color)))) : null\n },\n isValidScroll (value: number, calculateTableDate: CalculateTableDateFunction) {\n const tableDate = calculateTableDate(value)\n // tableDate is 'YYYY-MM' for DateTable and 'YYYY' for MonthTable\n const sanitizeType = tableDate.split('-').length === 1 ? 'year' : 'month'\n return (value < 0 && (this.min ? tableDate >= sanitizeDateString(this.min, sanitizeType) : true)) ||\n (value > 0 && (this.max ? tableDate <= sanitizeDateString(this.max, sanitizeType) : true))\n },\n wheel (e: WheelEvent, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(e.deltaY))\n },\n touch (value: number, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(value))\n },\n genTable (staticClass: string, children: VNodeChildren, calculateTableDate: CalculateTableDateFunction) {\n const transition = h(Transition, {\n name: this.computedTransition,\n }, [h('table', { key: this.tableDate }, children)])\n\n const touchDirective = [\n Touch,\n {\n left: (e: TouchWrapper) => (e.offsetX < -15) &&\n (this.isValidScroll(1, calculateTableDate) && this.touch(1, calculateTableDate)),\n right: (e: TouchWrapper) => (e.offsetX > 15) &&\n (this.isValidScroll(-1, calculateTableDate) && this.touch(-1, calculateTableDate)),\n }\n ]\n\n return withDirectives(h('div', {\n class: {\n [staticClass]: true,\n 'v-date-picker-table--disabled': this.disabled,\n ...this.themeClasses,\n },\n ...((!this.disabled && this.scrollable) ? {\n onWheel: (e: WheelEvent) => {\n e.preventDefault()\n if (this.isValidScroll(e.deltaY, calculateTableDate)) { this.wheelThrottle(e, calculateTableDate) }\n },\n } : {}),\n }, [transition]), [touchDirective])\n },\n isSelected (value: string): boolean {\n if (Array.isArray(this.value)) {\n if (this.range && this.value.length === 2) {\n const [from, to] = [...this.value].sort()\n return from <= value && value <= to\n } else {\n return this.value.indexOf(value) !== -1\n }\n }\n\n return value === this.value\n },\n },\n})\n"],"sourceRoot":"","file":"date-picker-table.js"}
1
+ {"version":3,"sources":["../../../../src/components/VDatePicker/mixins/date-picker-table.ts"],"names":[],"mappings":"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","sourcesContent":["import '../VDatePickerTable.sass'\n\n// Directives\nimport Touch from '../../../directives/touch'\n\n// Mixins\nimport Colorable from '../../../mixins/colorable'\nimport Localable from '../../../mixins/localable'\nimport Themeable from '../../../mixins/themeable'\n\n// Utils\nimport { createItemTypeNativeListeners, sanitizeDateString } from '../util'\nimport isDateAllowed from '../util/isDateAllowed'\nimport { mergeListeners } from '../../../util/mergeData'\nimport mixins from '../../../util/mixins'\nimport { throttle } from '../../../util/helpers'\n\n// Types\nimport {\n PropType,\n VNodeChildren,\n Transition,\n withDirectives,\n h,\n} from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DatePickerAllowedDatesFunction,\n DatePickerEventColors,\n DatePickerEventColorValue,\n DatePickerEvents,\n DatePickerFormatter,\n TouchWrapper,\n} from 'vuetify/types'\n\ntype CalculateTableDateFunction = (v: number) => string\n\nexport default mixins(\n Colorable,\n Localable,\n Themeable\n/* @vue/component */\n).extend({\n\n props: {\n allowedDates: Function as PropType<DatePickerAllowedDatesFunction | undefined>,\n current: String,\n disabled: Boolean,\n format: Function as PropType<DatePickerFormatter | undefined>,\n events: {\n type: [Array, Function, Object],\n default: () => null,\n } as PropValidator<DatePickerEvents | null>,\n eventColor: {\n type: [Array, Function, Object, String],\n default: () => 'warning',\n } as PropValidator<DatePickerEventColors>,\n min: String,\n max: String,\n range: Boolean,\n readonly: Boolean,\n scrollable: Boolean,\n tableDate: {\n type: String,\n required: true,\n },\n modelValue: [String, Array] as PropType<string | string[]>,\n },\n\n data: () => ({\n isReversing: false,\n wheelThrottle: null as any,\n }),\n\n computed: {\n computedTransition (): string {\n return (this.isReversing === !this.$vuetify.rtl) ? 'tab-reverse-transition' : 'tab-transition'\n },\n displayedMonth (): number {\n return Number(this.tableDate.split('-')[1]) - 1\n },\n displayedYear (): number {\n return Number(this.tableDate.split('-')[0])\n },\n // Vue 3 compatibility: use modelValue\n currentValue (): string | string[] | undefined {\n return this.modelValue\n },\n },\n\n watch: {\n tableDate (newVal: string, oldVal: string) {\n this.isReversing = newVal < oldVal\n },\n },\n\n mounted () {\n this.wheelThrottle = throttle(this.wheel, 250)\n },\n\n methods: {\n genButtonClasses (\n isAllowed: boolean,\n isFloating: boolean,\n isSelected: boolean,\n isCurrent: boolean,\n isFirst: boolean,\n isLast: boolean,\n ) {\n return {\n 'v-size--default': !isFloating,\n 'v-date-picker-table__current': isCurrent,\n 'v-btn--active': isSelected,\n 'v-btn--flat': !isAllowed || this.disabled,\n 'v-btn--text': isSelected === isCurrent,\n 'v-btn--rounded': isFloating,\n 'v-btn--disabled': !isAllowed || this.disabled,\n 'v-btn--outlined': isCurrent && !isSelected,\n 'v-date-picker--first-in-range': isFirst,\n 'v-date-picker--last-in-range': isLast,\n ...this.themeClasses,\n }\n },\n genButtonEvents (value: string, isAllowed: boolean, mouseEventType: string) {\n if (this.disabled) return undefined\n\n return mergeListeners({\n onClick: () => {\n if (isAllowed && !this.readonly) {\n this.$emit('update:modelValue', value)\n }\n },\n }, createItemTypeNativeListeners(this, `:${mouseEventType}`, value))\n },\n genButton (value: string, isFloating: boolean, mouseEventType: string, formatter: DatePickerFormatter, isOtherMonth = false) {\n const isAllowed = isDateAllowed(value, this.min, this.max, this.allowedDates)\n const isSelected = this.isSelected(value) && isAllowed\n const isCurrent = value === this.current\n const setColor = isSelected ? this.setBackgroundColor : this.setTextColor\n const color = (isSelected || isCurrent) && (this.color || 'accent')\n let isFirst = false\n let isLast = false\n if (this.range && !!this.currentValue && Array.isArray(this.currentValue)) {\n isFirst = value === this.currentValue[0]\n isLast = value === this.currentValue[this.currentValue.length - 1]\n }\n\n return h('button', setColor(color, {\n class: ['v-btn', this.genButtonClasses(\n isAllowed && !isOtherMonth,\n isFloating,\n isSelected,\n isCurrent,\n isFirst,\n isLast,\n )],\n type: 'button',\n disabled: this.disabled || !isAllowed || isOtherMonth,\n ...this.genButtonEvents(value, isAllowed, mouseEventType),\n }), [\n h('div', {\n class: 'v-btn__content',\n }, [formatter(value)]),\n this.genEvents(value),\n ])\n },\n getEventColors (date: string) {\n const arrayize = (v: string | string[]) => Array.isArray(v) ? v : [v]\n let eventData: boolean | DatePickerEventColorValue\n let eventColors: string[] = []\n\n if (Array.isArray(this.events)) {\n eventData = this.events.includes(date)\n } else if (this.events instanceof Function) {\n eventData = this.events(date) || false\n } else if (this.events) {\n eventData = this.events[date] || false\n } else {\n eventData = false\n }\n\n if (!eventData) {\n return []\n } else if (eventData !== true) {\n eventColors = arrayize(eventData)\n } else if (typeof this.eventColor === 'string') {\n eventColors = [this.eventColor]\n } else if (typeof this.eventColor === 'function') {\n eventColors = arrayize(this.eventColor(date))\n } else if (Array.isArray(this.eventColor)) {\n eventColors = this.eventColor\n } else {\n eventColors = arrayize(this.eventColor[date])\n }\n\n return eventColors.filter(v => v)\n },\n genEvents (date: string) {\n const eventColors = this.getEventColors(date)\n\n return eventColors.length ? h('div', {\n class: 'v-date-picker-table__events',\n }, eventColors.map(color => h('div', this.setBackgroundColor(color)))) : null\n },\n isValidScroll (value: number, calculateTableDate: CalculateTableDateFunction) {\n const tableDate = calculateTableDate(value)\n // tableDate is 'YYYY-MM' for DateTable and 'YYYY' for MonthTable\n const sanitizeType = tableDate.split('-').length === 1 ? 'year' : 'month'\n return (value < 0 && (this.min ? tableDate >= sanitizeDateString(this.min, sanitizeType) : true)) ||\n (value > 0 && (this.max ? tableDate <= sanitizeDateString(this.max, sanitizeType) : true))\n },\n wheel (e: WheelEvent, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(e.deltaY))\n },\n touch (value: number, calculateTableDate: CalculateTableDateFunction) {\n this.$emit('update:table-date', calculateTableDate(value))\n },\n genTable (staticClass: string, children: VNodeChildren, calculateTableDate: CalculateTableDateFunction) {\n const transition = h(Transition, {\n name: this.computedTransition,\n }, () => [h('table', { key: this.tableDate }, children)])\n\n const touchDirective = [\n Touch,\n {\n left: (e: TouchWrapper) => (e.offsetX < -15) &&\n (this.isValidScroll(1, calculateTableDate) && this.touch(1, calculateTableDate)),\n right: (e: TouchWrapper) => (e.offsetX > 15) &&\n (this.isValidScroll(-1, calculateTableDate) && this.touch(-1, calculateTableDate)),\n },\n ]\n\n return withDirectives(h('div', {\n class: {\n [staticClass]: true,\n 'v-date-picker-table--disabled': this.disabled,\n ...this.themeClasses,\n },\n ...((!this.disabled && this.scrollable) ? {\n onWheel: (e: WheelEvent) => {\n e.preventDefault()\n if (this.isValidScroll(e.deltaY, calculateTableDate)) { this.wheelThrottle(e, calculateTableDate) }\n },\n } : {}),\n }, [transition]), [touchDirective])\n },\n isSelected (value: string): boolean {\n if (Array.isArray(this.currentValue)) {\n if (this.range && this.currentValue.length === 2) {\n const [from, to] = [...this.currentValue].sort()\n return from <= value && value <= to\n } else {\n return this.currentValue.indexOf(value) !== -1\n }\n }\n\n return value === this.currentValue\n },\n },\n})\n"],"sourceRoot":"","file":"date-picker-table.js"}
@@ -28,6 +28,10 @@ function createNativeLocaleFormatter(locale, options) {
28
28
  };
29
29
 
30
30
  var makeIsoString = function makeIsoString(dateString) {
31
+ if (!dateString || dateString === 'undefined' || dateString === 'null') {
32
+ return '1970-01-01'; // fallback date
33
+ }
34
+
31
35
  var _dateString$trim$spli = dateString.trim().split(' ')[0].split('-'),
32
36
  _dateString$trim$spli2 = _slicedToArray(_dateString$trim$spli, 3),
33
37
  year = _dateString$trim$spli2[0],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/VDatePicker/util/createNativeLocaleFormatter.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;;;;;;;;;;;;;AAmBA,SAAS,2BAAT,CACE,MADF,EAEE,OAFF,EAGwD;AAAA,MAAtD,aAAsD,uEAAvB;AAAE,IAAA,KAAK,EAAE,CAAT;AAAY,IAAA,MAAM,EAAE;AAApB,GAAuB;;AAEtD,MAAM,aAAa,GAAG,SAAhB,aAAgB,CAAC,UAAD,EAAuB;AAAA,gCACf,UAAU,CAAC,IAAX,GAAkB,KAAlB,CAAwB,GAAxB,EAA6B,CAA7B,EAAgC,KAAhC,CAAsC,GAAtC,CADe;AAAA;AAAA,QACpC,IADoC;AAAA,QAC9B,KAD8B;AAAA,QACvB,IADuB;;AAE3C,WAAO,CAAC,kBAAI,IAAJ,EAAU,CAAV,CAAD,EAAe,kBAAI,KAAK,IAAI,CAAb,CAAf,EAAgC,kBAAI,IAAI,IAAI,CAAZ,CAAhC,EAAgD,IAAhD,CAAqD,GAArD,CAAP;AACD,GAHD;;AAKA,MAAI;AACF,QAAM,aAAa,GAAG,IAAI,IAAI,CAAC,cAAT,CAAwB,MAAM,IAAI,SAAlC,EAA6C,OAA7C,CAAtB;AACA,WAAO,UAAC,UAAD;AAAA,aAAwB,aAAa,CAAC,MAAd,CAAqB,IAAI,IAAJ,WAAY,aAAa,CAAC,UAAD,CAAzB,qBAArB,CAAxB;AAAA,KAAP;AACD,GAHD,CAGE,OAAO,CAAP,EAAU;AACV,WAAQ,aAAa,CAAC,KAAd,IAAuB,aAAa,CAAC,MAAtC,GACH,UAAC,UAAD;AAAA,aAAwB,aAAa,CAAC,UAAD,CAAb,CAA0B,MAA1B,CAAiC,aAAa,CAAC,KAAd,IAAuB,CAAxD,EAA2D,aAAa,CAAC,MAAzE,CAAxB;AAAA,KADG,GAEH,SAFJ;AAGD;AACF;;eAEc,2B","sourcesContent":["import pad from './pad'\nimport { DatePickerFormatter } from 'vuetify/types'\n\ninterface SubstrOptions {\n start?: number\n length: number\n}\n\nfunction createNativeLocaleFormatter (\n local: string | undefined,\n options: Intl.DateTimeFormatOptions\n): DatePickerFormatter | undefined\n\nfunction createNativeLocaleFormatter (\n local: string | undefined,\n options: Intl.DateTimeFormatOptions,\n substrOptions: SubstrOptions\n): DatePickerFormatter\n\nfunction createNativeLocaleFormatter (\n locale: string | undefined,\n options: Intl.DateTimeFormatOptions,\n substrOptions: SubstrOptions = { start: 0, length: 0 }\n): DatePickerFormatter | undefined {\n const makeIsoString = (dateString: string) => {\n const [year, month, date] = dateString.trim().split(' ')[0].split('-')\n return [pad(year, 4), pad(month || 1), pad(date || 1)].join('-')\n }\n\n try {\n const intlFormatter = new Intl.DateTimeFormat(locale || undefined, options)\n return (dateString: string) => intlFormatter.format(new Date(`${makeIsoString(dateString)}T00:00:00+00:00`))\n } catch (e) {\n return (substrOptions.start || substrOptions.length)\n ? (dateString: string) => makeIsoString(dateString).substr(substrOptions.start || 0, substrOptions.length)\n : undefined\n }\n}\n\nexport default createNativeLocaleFormatter\n"],"sourceRoot":"","file":"createNativeLocaleFormatter.js"}
1
+ {"version":3,"sources":["../../../../src/components/VDatePicker/util/createNativeLocaleFormatter.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;;;;;;;;;;;;;AAmBA,SAAS,2BAAT,CACE,MADF,EAEE,OAFF,EAGwD;AAAA,MAAtD,aAAsD,uEAAvB;AAAE,IAAA,KAAK,EAAE,CAAT;AAAY,IAAA,MAAM,EAAE;AAApB,GAAuB;;AAEtD,MAAM,aAAa,GAAG,SAAhB,aAAgB,CAAC,UAAD,EAAuB;AAC3C,QAAI,CAAC,UAAD,IAAe,UAAU,KAAK,WAA9B,IAA6C,UAAU,KAAK,MAAhE,EAAwE;AACtE,aAAO,YAAP,CADsE,CAClD;AACrB;;AAH0C,gCAIf,UAAU,CAAC,IAAX,GAAkB,KAAlB,CAAwB,GAAxB,EAA6B,CAA7B,EAAgC,KAAhC,CAAsC,GAAtC,CAJe;AAAA;AAAA,QAIpC,IAJoC;AAAA,QAI9B,KAJ8B;AAAA,QAIvB,IAJuB;;AAK3C,WAAO,CAAC,kBAAI,IAAJ,EAAU,CAAV,CAAD,EAAe,kBAAI,KAAK,IAAI,CAAb,CAAf,EAAgC,kBAAI,IAAI,IAAI,CAAZ,CAAhC,EAAgD,IAAhD,CAAqD,GAArD,CAAP;AACD,GAND;;AAQA,MAAI;AACF,QAAM,aAAa,GAAG,IAAI,IAAI,CAAC,cAAT,CAAwB,MAAM,IAAI,SAAlC,EAA6C,OAA7C,CAAtB;AACA,WAAO,UAAC,UAAD;AAAA,aAAwB,aAAa,CAAC,MAAd,CAAqB,IAAI,IAAJ,WAAY,aAAa,CAAC,UAAD,CAAzB,qBAArB,CAAxB;AAAA,KAAP;AACD,GAHD,CAGE,OAAO,CAAP,EAAU;AACV,WAAQ,aAAa,CAAC,KAAd,IAAuB,aAAa,CAAC,MAAtC,GACH,UAAC,UAAD;AAAA,aAAwB,aAAa,CAAC,UAAD,CAAb,CAA0B,MAA1B,CAAiC,aAAa,CAAC,KAAd,IAAuB,CAAxD,EAA2D,aAAa,CAAC,MAAzE,CAAxB;AAAA,KADG,GAEH,SAFJ;AAGD;AACF;;eAEc,2B","sourcesContent":["import pad from './pad'\nimport { DatePickerFormatter } from 'vuetify/types'\n\ninterface SubstrOptions {\n start?: number\n length: number\n}\n\nfunction createNativeLocaleFormatter (\n local: string | undefined,\n options: Intl.DateTimeFormatOptions\n): DatePickerFormatter | undefined\n\nfunction createNativeLocaleFormatter (\n local: string | undefined,\n options: Intl.DateTimeFormatOptions,\n substrOptions: SubstrOptions\n): DatePickerFormatter\n\nfunction createNativeLocaleFormatter (\n locale: string | undefined,\n options: Intl.DateTimeFormatOptions,\n substrOptions: SubstrOptions = { start: 0, length: 0 }\n): DatePickerFormatter | undefined {\n const makeIsoString = (dateString: string) => {\n if (!dateString || dateString === 'undefined' || dateString === 'null') {\n return '1970-01-01' // fallback date\n }\n const [year, month, date] = dateString.trim().split(' ')[0].split('-')\n return [pad(year, 4), pad(month || 1), pad(date || 1)].join('-')\n }\n\n try {\n const intlFormatter = new Intl.DateTimeFormat(locale || undefined, options)\n return (dateString: string) => intlFormatter.format(new Date(`${makeIsoString(dateString)}T00:00:00+00:00`))\n } catch (e) {\n return (substrOptions.start || substrOptions.length)\n ? (dateString: string) => makeIsoString(dateString).substr(substrOptions.start || 0, substrOptions.length)\n : undefined\n }\n}\n\nexport default createNativeLocaleFormatter\n"],"sourceRoot":"","file":"createNativeLocaleFormatter.js"}
@@ -79,6 +79,7 @@ var _default = baseMixins.extend({
79
79
  },
80
80
  width: [String, Number]
81
81
  },
82
+ emits: ['click:outside', 'keydown'],
82
83
  data: function data() {
83
84
  return {
84
85
  activatedBy: null,
@@ -256,17 +257,19 @@ var _default = baseMixins.extend({
256
257
  root: true,
257
258
  light: _this4.light,
258
259
  dark: _this4.dark
259
- }, [(0, _vue.h)('div', _objectSpread(_objectSpread({
260
- class: _this4.contentClasses,
261
- role: 'dialog',
262
- 'aria-modal': _this4.hideOverlay ? undefined : 'true'
263
- }, _this4.getScopeIdAttrs()), {}, {
264
- onKeydown: _this4.onKeydown,
265
- style: {
266
- zIndex: _this4.activeZIndex
267
- },
268
- ref: 'content'
269
- }), [_this4.genTransition()])])];
260
+ }, function () {
261
+ return [(0, _vue.h)('div', _objectSpread(_objectSpread({
262
+ class: _this4.contentClasses,
263
+ role: 'dialog',
264
+ 'aria-modal': _this4.hideOverlay ? undefined : 'true'
265
+ }, _this4.getScopeIdAttrs()), {}, {
266
+ onKeydown: _this4.onKeydown,
267
+ style: {
268
+ zIndex: _this4.activeZIndex
269
+ },
270
+ ref: 'content'
271
+ }), [_this4.genTransition()])];
272
+ })];
270
273
  });
271
274
  },
272
275
  genTransition: function genTransition() {
@@ -276,7 +279,9 @@ var _default = baseMixins.extend({
276
279
  name: this.transition,
277
280
  origin: this.origin,
278
281
  appear: true
279
- }, [content]);
282
+ }, function () {
283
+ return [content];
284
+ });
280
285
  },
281
286
  genInnerContent: function genInnerContent() {
282
287
  var directives = [[_clickOutside.default, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VDialog/VDialog.ts"],"names":[],"mappings":"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","sourcesContent":["import {Transition, h, vShow, withDirectives} from 'vue'\n// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Dependent from '../../mixins/dependent'\nimport Detachable from '../../mixins/detachable'\nimport Overlayable from '../../mixins/overlayable'\nimport Returnable from '../../mixins/returnable'\nimport Stackable from '../../mixins/stackable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Detachable,\n Overlayable,\n Returnable,\n Stackable,\n Activatable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-dialog',\n\n props: {\n dark: Boolean,\n disabled: Boolean,\n fullscreen: Boolean,\n light: Boolean,\n maxWidth: [String, Number],\n noClickAnimation: Boolean,\n origin: {\n type: String,\n default: 'center center',\n },\n persistent: Boolean,\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n transition: {\n type: [String, Boolean],\n default: 'dialog-transition',\n },\n width: [String, Number],\n },\n\n data () {\n return {\n activatedBy: null as EventTarget | null,\n animate: false,\n animateTimeout: -1,\n stackMinZIndex: 200,\n previousActiveElement: null as HTMLElement | null,\n }\n },\n\n computed: {\n classes (): object {\n return {\n [(`v-dialog ${this.contentClass}`).trim()]: true,\n 'v-dialog--active': this.isActive,\n 'v-dialog--persistent': this.persistent,\n 'v-dialog--fullscreen': this.fullscreen,\n 'v-dialog--scrollable': this.scrollable,\n 'v-dialog--animated': this.animate,\n }\n },\n contentClasses (): object {\n return {\n 'v-dialog__content': true,\n 'v-dialog__content--active': this.isActive,\n }\n },\n hasActivator (): boolean {\n return Boolean(\n !!this.$slots.activator ||\n !!this.$slots.activator\n )\n },\n },\n\n watch: {\n isActive (val) {\n if (val) {\n this.show()\n this.hideScroll()\n } else {\n this.removeOverlay()\n this.unbind()\n this.previousActiveElement?.focus()\n }\n },\n fullscreen (val) {\n if (!this.isActive) return\n\n if (val) {\n this.hideScroll()\n this.removeOverlay(false)\n } else {\n this.showScroll()\n this.genOverlay()\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.isBooted = this.isActive\n this.isActive && this.show()\n })\n },\n\n beforeUnmount () {\n if (typeof window !== 'undefined') this.unbind()\n },\n\n methods: {\n animateClick () {\n this.animate = false\n // Needed for when clicking very fast\n // outside of the dialog\n this.$nextTick(() => {\n this.animate = true\n window.clearTimeout(this.animateTimeout)\n this.animateTimeout = window.setTimeout(() => (this.animate = false), 150)\n })\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n // Ignore the click if the dialog is closed or destroyed,\n // if it was on an element inside the content,\n // if it was dragged onto the overlay (#6969),\n // or if this isn't the topmost dialog (#9907)\n return !(\n this._isDestroyed ||\n !this.isActive ||\n this.$refs.content.contains(target) ||\n (this.overlay && target && !this.overlay.$el.contains(target))\n ) && this.activeZIndex >= this.getMaxZIndex()\n },\n hideScroll () {\n if (this.fullscreen) {\n document.documentElement.classList.add('overflow-y-hidden')\n } else {\n Overlayable.methods.hideScroll.call(this)\n }\n },\n show () {\n !this.fullscreen && !this.hideOverlay && this.genOverlay()\n // Double nextTick to wait for lazy content to be generated\n this.$nextTick(() => {\n this.$nextTick(() => {\n if (!this.$refs.dialog?.contains(document.activeElement)) {\n this.previousActiveElement = document.activeElement as HTMLElement\n this.$refs.dialog?.focus()\n }\n this.bind()\n })\n })\n },\n bind () {\n window.addEventListener('focusin', this.onFocusin)\n },\n unbind () {\n window.removeEventListener('focusin', this.onFocusin)\n },\n onClickOutside (e: Event) {\n this.$emit('click:outside', e)\n\n if (this.persistent) {\n this.noClickAnimation || this.animateClick()\n } else {\n this.isActive = false\n }\n },\n onKeydown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.esc && !this.getOpenDependents().length) {\n if (!this.persistent) {\n this.isActive = false\n const activator = this.getActivator()\n this.$nextTick(() => activator && (activator as HTMLElement).focus())\n } else if (!this.noClickAnimation) {\n this.animateClick()\n }\n }\n this.$emit('keydown', e)\n },\n // On focus change, wrap focus to stay inside the dialog\n // https://github.com/vuetifyjs/vuetify/issues/6892\n onFocusin (e: Event) {\n if (!e || !this.retainFocus) return\n\n const target = e.target as HTMLElement\n\n if (\n !!target &&\n this.$refs.dialog &&\n // It isn't the document or the dialog body\n ![document, this.$refs.dialog].includes(target) &&\n // It isn't inside the dialog body\n !this.$refs.dialog.contains(target) &&\n // We're the topmost dialog\n this.activeZIndex >= this.getMaxZIndex() &&\n // It isn't inside a dependent element (like a menu)\n !this.getOpenDependentElements().some(el => el.contains(target))\n // So we must have focused something outside the dialog and its children\n ) {\n // Find and focus the first available element inside the dialog\n const focusable = this.$refs.dialog.querySelectorAll('button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])')\n const el = [...focusable].find(el => !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]')) as HTMLElement | undefined\n el && el.focus()\n }\n },\n genContent () {\n return this.showLazyContent(() => [\n h(VThemeProvider, {\n root: true,\n light: this.light,\n dark: this.dark\n }, [\n h('div', {\n class: this.contentClasses,\n role: 'dialog',\n 'aria-modal': this.hideOverlay ? undefined : 'true',\n ...this.getScopeIdAttrs(),\n onKeydown: this.onKeydown,\n style: { zIndex: this.activeZIndex },\n ref: 'content',\n }, [this.genTransition()]),\n ]),\n ])\n },\n genTransition () {\n const content = this.genInnerContent()\n\n if (!this.transition) return content\n\n return h(Transition, {\n name: this.transition,\n origin: this.origin,\n appear: true\n }, [content])\n },\n genInnerContent () {\n const directives = [\n [\n ClickOutside,\n {\n handler: this.onClickOutside,\n closeConditional: this.closeConditional,\n include: this.getOpenDependentElements,\n }\n ],\n [\n vShow,\n this.isActive\n ]\n ]\n const data: VNodeData = {\n class: this.classes,\n tabindex: this.isActive ? 0 : undefined,\n ref: 'dialog',\n style: {\n transformOrigin: this.origin,\n },\n }\n\n if (!this.fullscreen) {\n data.style = {\n ...data.style as object,\n maxWidth: convertToUnit(this.maxWidth),\n width: convertToUnit(this.width),\n }\n }\n\n return withDirectives(\n h('div', data, this.getContentSlot()),\n directives\n )\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-dialog__container', {\n 'v-dialog__container--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }]\n }, [\n this.genActivator(),\n this.genContent(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VDialog.js"}
1
+ {"version":3,"sources":["../../../src/components/VDialog/VDialog.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAEA;;AAGA;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;AAGA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAM,UAAU,GAAG,qBACjB,kBADiB,EAEjB,mBAFiB,EAGjB,oBAHiB,EAIjB,mBAJiB,EAKjB,kBALiB,EAMjB,oBANiB,CAAnB;AASA;;eACe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,UADyB;AAG/B,EAAA,KAAK,EAAE;AACL,IAAA,IAAI,EAAE,OADD;AAEL,IAAA,QAAQ,EAAE,OAFL;AAGL,IAAA,UAAU,EAAE,OAHP;AAIL,IAAA,KAAK,EAAE,OAJF;AAKL,IAAA,QAAQ,EAAE,CAAC,MAAD,EAAS,MAAT,CALL;AAML,IAAA,gBAAgB,EAAE,OANb;AAOL,IAAA,MAAM,EAAE;AACN,MAAA,IAAI,EAAE,MADA;AAEN,MAAA,OAAO,EAAE;AAFH,KAPH;AAWL,IAAA,UAAU,EAAE,OAXP;AAYL,IAAA,WAAW,EAAE;AACX,MAAA,IAAI,EAAE,OADK;AAEX,MAAA,OAAO,EAAE;AAFE,KAZR;AAgBL,IAAA,UAAU,EAAE,OAhBP;AAiBL,IAAA,UAAU,EAAE;AACV,MAAA,IAAI,EAAE,CAAC,MAAD,EAAS,OAAT,CADI;AAEV,MAAA,OAAO,EAAE;AAFC,KAjBP;AAqBL,IAAA,KAAK,EAAE,CAAC,MAAD,EAAS,MAAT;AArBF,GAHwB;AA2B/B,EAAA,KAAK,EAAE,CAAC,eAAD,EAAkB,SAAlB,CA3BwB;AA6B/B,EAAA,IA7B+B,kBA6B3B;AACF,WAAO;AACL,MAAA,WAAW,EAAE,IADR;AAEL,MAAA,OAAO,EAAE,KAFJ;AAGL,MAAA,cAAc,EAAE,CAAC,CAHZ;AAIL,MAAA,cAAc,EAAE,GAJX;AAKL,MAAA,qBAAqB,EAAE;AALlB,KAAP;AAOD,GArC8B;AAuC/B,EAAA,QAAQ,EAAE;AACR,IAAA,OADQ,qBACD;AAAA;;AACL,8CACG,mBAAa,KAAK,YAAlB,EAAkC,IAAlC,EADH,EAC8C,IAD9C,yBAEE,kBAFF,EAEsB,KAAK,QAF3B,yBAGE,sBAHF,EAG0B,KAAK,UAH/B,yBAIE,sBAJF,EAI0B,KAAK,UAJ/B,yBAKE,sBALF,EAK0B,KAAK,UAL/B,yBAME,oBANF,EAMwB,KAAK,OAN7B;AAQD,KAVO;AAWR,IAAA,cAXQ,4BAWM;AACZ,aAAO;AACL,6BAAqB,IADhB;AAEL,qCAA6B,KAAK;AAF7B,OAAP;AAID,KAhBO;AAiBR,IAAA,YAjBQ,0BAiBI;AACV,aAAO,OAAO,CACZ,CAAC,CAAC,KAAK,MAAL,CAAY,SAAd,IACA,CAAC,CAAC,KAAK,MAAL,CAAY,SAFF,CAAd;AAID;AAtBO,GAvCqB;AAgE/B,EAAA,KAAK,EAAE;AACL,IAAA,QADK,oBACK,GADL,EACQ;;;AACX,UAAI,GAAJ,EAAS;AACP,aAAK,IAAL;AACA,aAAK,UAAL;AACD,OAHD,MAGO;AACL,aAAK,aAAL;AACA,aAAK,MAAL;AACA,SAAA,EAAA,GAAA,KAAK,qBAAL,MAA0B,IAA1B,IAA0B,EAAA,KAAA,KAAA,CAA1B,GAA0B,KAAA,CAA1B,GAA0B,EAAA,CAAE,KAAF,EAA1B;AACD;AACF,KAVI;AAWL,IAAA,UAXK,sBAWO,GAXP,EAWU;AACb,UAAI,CAAC,KAAK,QAAV,EAAoB;;AAEpB,UAAI,GAAJ,EAAS;AACP,aAAK,UAAL;AACA,aAAK,aAAL,CAAmB,KAAnB;AACD,OAHD,MAGO;AACL,aAAK,UAAL;AACA,aAAK,UAAL;AACD;AACF;AArBI,GAhEwB;AAwF/B,EAAA,OAxF+B,qBAwFxB;AACL;AACA,QAAI,KAAK,MAAL,CAAY,cAAZ,CAA2B,YAA3B,CAAJ,EAA8C;AAC5C,4BAAQ,YAAR,EAAsB,IAAtB;AACD;AACF,GA7F8B;AA+F/B,EAAA,WA/F+B,yBA+FpB;AAAA;;AACT,SAAK,SAAL,CAAe,YAAK;AAClB,MAAA,KAAI,CAAC,QAAL,GAAgB,KAAI,CAAC,QAArB;AACA,MAAA,KAAI,CAAC,QAAL,IAAiB,KAAI,CAAC,IAAL,EAAjB;AACD,KAHD;AAID,GApG8B;AAsG/B,EAAA,aAtG+B,2BAsGlB;AACX,QAAI,OAAO,MAAP,KAAkB,WAAtB,EAAmC,KAAK,MAAL;AACpC,GAxG8B;AA0G/B,EAAA,OAAO,EAAE;AACP,IAAA,YADO,0BACK;AAAA;;AACV,WAAK,OAAL,GAAe,KAAf,CADU,CAEV;AACA;;AACA,WAAK,SAAL,CAAe,YAAK;AAClB,QAAA,MAAI,CAAC,OAAL,GAAe,IAAf;AACA,QAAA,MAAM,CAAC,YAAP,CAAoB,MAAI,CAAC,cAAzB;AACA,QAAA,MAAI,CAAC,cAAL,GAAsB,MAAM,CAAC,UAAP,CAAkB;AAAA,iBAAO,MAAI,CAAC,OAAL,GAAe,KAAtB;AAAA,SAAlB,EAAgD,GAAhD,CAAtB;AACD,OAJD;AAKD,KAVM;AAWP,IAAA,gBAXO,4BAWW,CAXX,EAWmB;AACxB,UAAM,MAAM,GAAG,CAAC,CAAC,MAAjB,CADwB,CAExB;AACA;AACA;AACA;;AACA,aAAO,EACL,KAAK,YAAL,IACA,CAAC,KAAK,QADN,IAEA,KAAK,KAAL,CAAW,OAAX,CAAmB,QAAnB,CAA4B,MAA5B,CAFA,IAGC,KAAK,OAAL,IAAgB,MAAhB,IAA0B,CAAC,KAAK,OAAL,CAAa,GAAb,CAAiB,QAAjB,CAA0B,MAA1B,CAJvB,KAKF,KAAK,YAAL,IAAqB,KAAK,YAAL,EAL1B;AAMD,KAvBM;AAwBP,IAAA,UAxBO,wBAwBG;AACR,UAAI,KAAK,UAAT,EAAqB;AACnB,QAAA,QAAQ,CAAC,eAAT,CAAyB,SAAzB,CAAmC,GAAnC,CAAuC,mBAAvC;AACD,OAFD,MAEO;AACL,6BAAY,OAAZ,CAAoB,UAApB,CAA+B,IAA/B,CAAoC,IAApC;AACD;AACF,KA9BM;AA+BP,IAAA,IA/BO,kBA+BH;AAAA;;AACF,OAAC,KAAK,UAAN,IAAoB,CAAC,KAAK,WAA1B,IAAyC,KAAK,UAAL,EAAzC,CADE,CAEF;;AACA,WAAK,SAAL,CAAe,YAAK;AAClB,QAAA,MAAI,CAAC,SAAL,CAAe,YAAK;;;AAClB,cAAI,EAAC,CAAA,EAAA,GAAA,MAAI,CAAC,KAAL,CAAW,MAAX,MAAiB,IAAjB,IAAiB,EAAA,KAAA,KAAA,CAAjB,GAAiB,KAAA,CAAjB,GAAiB,EAAA,CAAE,QAAF,CAAW,QAAQ,CAAC,aAApB,CAAlB,CAAJ,EAA0D;AACxD,YAAA,MAAI,CAAC,qBAAL,GAA6B,QAAQ,CAAC,aAAtC;AACA,aAAA,EAAA,GAAA,MAAI,CAAC,KAAL,CAAW,MAAX,MAAiB,IAAjB,IAAiB,EAAA,KAAA,KAAA,CAAjB,GAAiB,KAAA,CAAjB,GAAiB,EAAA,CAAE,KAAF,EAAjB;AACD;;AACD,UAAA,MAAI,CAAC,IAAL;AACD,SAND;AAOD,OARD;AASD,KA3CM;AA4CP,IAAA,IA5CO,kBA4CH;AACF,MAAA,MAAM,CAAC,gBAAP,CAAwB,SAAxB,EAAmC,KAAK,SAAxC;AACD,KA9CM;AA+CP,IAAA,MA/CO,oBA+CD;AACJ,MAAA,MAAM,CAAC,mBAAP,CAA2B,SAA3B,EAAsC,KAAK,SAA3C;AACD,KAjDM;AAkDP,IAAA,cAlDO,0BAkDS,CAlDT,EAkDiB;AACtB,WAAK,KAAL,CAAW,eAAX,EAA4B,CAA5B;;AAEA,UAAI,KAAK,UAAT,EAAqB;AACnB,aAAK,gBAAL,IAAyB,KAAK,YAAL,EAAzB;AACD,OAFD,MAEO;AACL,aAAK,QAAL,GAAgB,KAAhB;AACD;AACF,KA1DM;AA2DP,IAAA,SA3DO,qBA2DI,CA3DJ,EA2DoB;AACzB,UAAI,CAAC,CAAC,OAAF,KAAc,kBAAS,GAAvB,IAA8B,CAAC,KAAK,iBAAL,GAAyB,MAA5D,EAAoE;AAClE,YAAI,CAAC,KAAK,UAAV,EAAsB;AACpB,eAAK,QAAL,GAAgB,KAAhB;AACA,cAAM,SAAS,GAAG,KAAK,YAAL,EAAlB;AACA,eAAK,SAAL,CAAe;AAAA,mBAAM,SAAS,IAAK,SAAyB,CAAC,KAA1B,EAApB;AAAA,WAAf;AACD,SAJD,MAIO,IAAI,CAAC,KAAK,gBAAV,EAA4B;AACjC,eAAK,YAAL;AACD;AACF;;AACD,WAAK,KAAL,CAAW,SAAX,EAAsB,CAAtB;AACD,KAtEM;AAuEP;AACA;AACA,IAAA,SAzEO,qBAyEI,CAzEJ,EAyEY;AACjB,UAAI,CAAC,CAAD,IAAM,CAAC,KAAK,WAAhB,EAA6B;AAE7B,UAAM,MAAM,GAAG,CAAC,CAAC,MAAjB;;AAEA,UACE,CAAC,CAAC,MAAF,IACA,KAAK,KAAL,CAAW,MADX,IAEA;AACA,OAAC,CAAC,QAAD,EAAW,KAAK,KAAL,CAAW,MAAtB,EAA8B,QAA9B,CAAuC,MAAvC,CAHD,IAIA;AACA,OAAC,KAAK,KAAL,CAAW,MAAX,CAAkB,QAAlB,CAA2B,MAA3B,CALD,IAMA;AACA,WAAK,YAAL,IAAqB,KAAK,YAAL,EAPrB,IAQA;AACA,OAAC,KAAK,wBAAL,GAAgC,IAAhC,CAAqC,UAAA,EAAE;AAAA,eAAI,EAAE,CAAC,QAAH,CAAY,MAAZ,CAAJ;AAAA,OAAvC,CAVH,CAWE;AAXF,QAYE;AACA;AACA,YAAM,SAAS,GAAG,KAAK,KAAL,CAAW,MAAX,CAAkB,gBAAlB,CAAmC,+FAAnC,CAAlB;;AACA,YAAM,EAAE,GAAG,mBAAI,SAAJ,EAAe,IAAf,CAAoB,UAAA,EAAE;AAAA,iBAAI,CAAC,EAAE,CAAC,YAAH,CAAgB,UAAhB,CAAD,IAAgC,CAAC,EAAE,CAAC,OAAH,CAAW,iBAAX,CAArC;AAAA,SAAtB,CAAX;;AACA,QAAA,EAAE,IAAI,EAAE,CAAC,KAAH,EAAN;AACD;AACF,KAhGM;AAiGP,IAAA,UAjGO,wBAiGG;AAAA;;AACR,aAAO,KAAK,eAAL,CAAqB;AAAA,eAAM,CAChC,YAAE,8BAAF,EAAkB;AAChB,UAAA,IAAI,EAAE,IADU;AAEhB,UAAA,KAAK,EAAE,MAAI,CAAC,KAFI;AAGhB,UAAA,IAAI,EAAE,MAAI,CAAC;AAHK,SAAlB,EAIG;AAAA,iBAAM,CACP,YAAE,KAAF;AACE,YAAA,KAAK,EAAE,MAAI,CAAC,cADd;AAEE,YAAA,IAAI,EAAE,QAFR;AAGE,0BAAc,MAAI,CAAC,WAAL,GAAmB,SAAnB,GAA+B;AAH/C,aAIK,MAAI,CAAC,eAAL,EAJL;AAKE,YAAA,SAAS,EAAE,MAAI,CAAC,SALlB;AAME,YAAA,KAAK,EAAE;AAAE,cAAA,MAAM,EAAE,MAAI,CAAC;AAAf,aANT;AAOE,YAAA,GAAG,EAAE;AAPP,cAQG,CAAC,MAAI,CAAC,aAAL,EAAD,CARH,CADO,CAAN;AAAA,SAJH,CADgC,CAAN;AAAA,OAArB,CAAP;AAiBD,KAnHM;AAoHP,IAAA,aApHO,2BAoHM;AACX,UAAM,OAAO,GAAG,KAAK,eAAL,EAAhB;AAEA,UAAI,CAAC,KAAK,UAAV,EAAsB,OAAO,OAAP;AAEtB,aAAO,YAAE,eAAF,EAAc;AACnB,QAAA,IAAI,EAAE,KAAK,UADQ;AAEnB,QAAA,MAAM,EAAE,KAAK,MAFM;AAGnB,QAAA,MAAM,EAAE;AAHW,OAAd,EAIJ;AAAA,eAAM,CAAC,OAAD,CAAN;AAAA,OAJI,CAAP;AAKD,KA9HM;AA+HP,IAAA,eA/HO,6BA+HQ;AACb,UAAM,UAAU,GAAG,CACjB,CACE,qBADF,EAEE;AACE,QAAA,OAAO,EAAE,KAAK,cADhB;AAEE,QAAA,gBAAgB,EAAE,KAAK,gBAFzB;AAGE,QAAA,OAAO,EAAE,KAAK;AAHhB,OAFF,CADiB,EASjB,CACE,UADF,EAEE,KAAK,QAFP,CATiB,CAAnB;AAcA,UAAM,IAAI,GAAc;AACtB,QAAA,KAAK,EAAE,KAAK,OADU;AAEtB,QAAA,QAAQ,EAAE,KAAK,QAAL,GAAgB,CAAhB,GAAoB,SAFR;AAGtB,QAAA,GAAG,EAAE,QAHiB;AAItB,QAAA,KAAK,EAAE;AACL,UAAA,eAAe,EAAE,KAAK;AADjB;AAJe,OAAxB;;AASA,UAAI,CAAC,KAAK,UAAV,EAAsB;AACpB,QAAA,IAAI,CAAC,KAAL,mCACK,IAAI,CAAC,KADV;AAEE,UAAA,QAAQ,EAAE,4BAAc,KAAK,QAAnB,CAFZ;AAGE,UAAA,KAAK,EAAE,4BAAc,KAAK,KAAnB;AAHT;AAKD;;AAED,aAAO,yBACL,YAAE,KAAF,EAAS,IAAT,EAAe,KAAK,cAAL,EAAf,CADK,EAEL,UAFK,CAAP;AAID;AAnKM,GA1GsB;AAgR/B,EAAA,MAhR+B,oBAgRzB;AACJ,WAAO,YAAE,KAAF,EAAS;AACd,MAAA,KAAK,EAAE,CAAC,qBAAD,EAAwB;AAC7B,yCACE,KAAK,MAAL,KAAgB,EAAhB,IACA,KAAK,MAAL,KAAgB,IADhB,IAEA,KAAK,MAAL,KAAgB;AAJW,OAAxB;AADO,KAAT,EAOJ,CACD,KAAK,YAAL,EADC,EAED,KAAK,UAAL,EAFC,CAPI,CAAP;AAWD;AA5R8B,CAAlB,C","sourcesContent":["import { Transition, h, vShow, withDirectives } from 'vue'\n// Styles\nimport './VDialog.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Dependent from '../../mixins/dependent'\nimport Detachable from '../../mixins/detachable'\nimport Overlayable from '../../mixins/overlayable'\nimport Returnable from '../../mixins/returnable'\nimport Stackable from '../../mixins/stackable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\n\n// Types\nimport { VNode, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Detachable,\n Overlayable,\n Returnable,\n Stackable,\n Activatable,\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-dialog',\n\n props: {\n dark: Boolean,\n disabled: Boolean,\n fullscreen: Boolean,\n light: Boolean,\n maxWidth: [String, Number],\n noClickAnimation: Boolean,\n origin: {\n type: String,\n default: 'center center',\n },\n persistent: Boolean,\n retainFocus: {\n type: Boolean,\n default: true,\n },\n scrollable: Boolean,\n transition: {\n type: [String, Boolean],\n default: 'dialog-transition',\n },\n width: [String, Number],\n },\n\n emits: ['click:outside', 'keydown'],\n\n data () {\n return {\n activatedBy: null as EventTarget | null,\n animate: false,\n animateTimeout: -1,\n stackMinZIndex: 200,\n previousActiveElement: null as HTMLElement | null,\n }\n },\n\n computed: {\n classes (): object {\n return {\n [(`v-dialog ${this.contentClass}`).trim()]: true,\n 'v-dialog--active': this.isActive,\n 'v-dialog--persistent': this.persistent,\n 'v-dialog--fullscreen': this.fullscreen,\n 'v-dialog--scrollable': this.scrollable,\n 'v-dialog--animated': this.animate,\n }\n },\n contentClasses (): object {\n return {\n 'v-dialog__content': true,\n 'v-dialog__content--active': this.isActive,\n }\n },\n hasActivator (): boolean {\n return Boolean(\n !!this.$slots.activator ||\n !!this.$slots.activator\n )\n },\n },\n\n watch: {\n isActive (val) {\n if (val) {\n this.show()\n this.hideScroll()\n } else {\n this.removeOverlay()\n this.unbind()\n this.previousActiveElement?.focus()\n }\n },\n fullscreen (val) {\n if (!this.isActive) return\n\n if (val) {\n this.hideScroll()\n this.removeOverlay(false)\n } else {\n this.showScroll()\n this.genOverlay()\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n beforeMount () {\n this.$nextTick(() => {\n this.isBooted = this.isActive\n this.isActive && this.show()\n })\n },\n\n beforeUnmount () {\n if (typeof window !== 'undefined') this.unbind()\n },\n\n methods: {\n animateClick () {\n this.animate = false\n // Needed for when clicking very fast\n // outside of the dialog\n this.$nextTick(() => {\n this.animate = true\n window.clearTimeout(this.animateTimeout)\n this.animateTimeout = window.setTimeout(() => (this.animate = false), 150)\n })\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n // Ignore the click if the dialog is closed or destroyed,\n // if it was on an element inside the content,\n // if it was dragged onto the overlay (#6969),\n // or if this isn't the topmost dialog (#9907)\n return !(\n this._isDestroyed ||\n !this.isActive ||\n this.$refs.content.contains(target) ||\n (this.overlay && target && !this.overlay.$el.contains(target))\n ) && this.activeZIndex >= this.getMaxZIndex()\n },\n hideScroll () {\n if (this.fullscreen) {\n document.documentElement.classList.add('overflow-y-hidden')\n } else {\n Overlayable.methods.hideScroll.call(this)\n }\n },\n show () {\n !this.fullscreen && !this.hideOverlay && this.genOverlay()\n // Double nextTick to wait for lazy content to be generated\n this.$nextTick(() => {\n this.$nextTick(() => {\n if (!this.$refs.dialog?.contains(document.activeElement)) {\n this.previousActiveElement = document.activeElement as HTMLElement\n this.$refs.dialog?.focus()\n }\n this.bind()\n })\n })\n },\n bind () {\n window.addEventListener('focusin', this.onFocusin)\n },\n unbind () {\n window.removeEventListener('focusin', this.onFocusin)\n },\n onClickOutside (e: Event) {\n this.$emit('click:outside', e)\n\n if (this.persistent) {\n this.noClickAnimation || this.animateClick()\n } else {\n this.isActive = false\n }\n },\n onKeydown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.esc && !this.getOpenDependents().length) {\n if (!this.persistent) {\n this.isActive = false\n const activator = this.getActivator()\n this.$nextTick(() => activator && (activator as HTMLElement).focus())\n } else if (!this.noClickAnimation) {\n this.animateClick()\n }\n }\n this.$emit('keydown', e)\n },\n // On focus change, wrap focus to stay inside the dialog\n // https://github.com/vuetifyjs/vuetify/issues/6892\n onFocusin (e: Event) {\n if (!e || !this.retainFocus) return\n\n const target = e.target as HTMLElement\n\n if (\n !!target &&\n this.$refs.dialog &&\n // It isn't the document or the dialog body\n ![document, this.$refs.dialog].includes(target) &&\n // It isn't inside the dialog body\n !this.$refs.dialog.contains(target) &&\n // We're the topmost dialog\n this.activeZIndex >= this.getMaxZIndex() &&\n // It isn't inside a dependent element (like a menu)\n !this.getOpenDependentElements().some(el => el.contains(target))\n // So we must have focused something outside the dialog and its children\n ) {\n // Find and focus the first available element inside the dialog\n const focusable = this.$refs.dialog.querySelectorAll('button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])')\n const el = [...focusable].find(el => !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]')) as HTMLElement | undefined\n el && el.focus()\n }\n },\n genContent () {\n return this.showLazyContent(() => [\n h(VThemeProvider, {\n root: true,\n light: this.light,\n dark: this.dark\n }, () => [\n h('div', {\n class: this.contentClasses,\n role: 'dialog',\n 'aria-modal': this.hideOverlay ? undefined : 'true',\n ...this.getScopeIdAttrs(),\n onKeydown: this.onKeydown,\n style: { zIndex: this.activeZIndex },\n ref: 'content',\n }, [this.genTransition()]),\n ]),\n ])\n },\n genTransition () {\n const content = this.genInnerContent()\n\n if (!this.transition) return content\n\n return h(Transition, {\n name: this.transition,\n origin: this.origin,\n appear: true\n }, () => [content])\n },\n genInnerContent () {\n const directives = [\n [\n ClickOutside,\n {\n handler: this.onClickOutside,\n closeConditional: this.closeConditional,\n include: this.getOpenDependentElements,\n },\n ],\n [\n vShow,\n this.isActive,\n ],\n ]\n const data: VNodeData = {\n class: this.classes,\n tabindex: this.isActive ? 0 : undefined,\n ref: 'dialog',\n style: {\n transformOrigin: this.origin,\n },\n }\n\n if (!this.fullscreen) {\n data.style = {\n ...data.style as object,\n maxWidth: convertToUnit(this.maxWidth),\n width: convertToUnit(this.width),\n }\n }\n\n return withDirectives(\n h('div', data, this.getContentSlot()),\n directives\n )\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-dialog__container', {\n 'v-dialog__container--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n }],\n }, [\n this.genActivator(),\n this.genContent(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VDialog.js"}
@@ -27,6 +27,7 @@ var _default = (0, _mixins.default)((0, _groupable.factory)('expansionPanels', '
27
27
  /* @vue/component */
28
28
  ).extend({
29
29
  name: 'v-expansion-panel',
30
+ emits: ['click', 'change'],
30
31
  props: {
31
32
  disabled: Boolean,
32
33
  readonly: Boolean
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanel.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAOA;;AACA;;AAGA;;AACA;;;;;;;;;;eAQe,qBACb,wBAA6D,iBAA7D,EAAgF,mBAAhF,EAAqG,oBAArG,CADa,EAEb,0BAAmB,gBAAnB,EAAqC,IAArC;AACA;AAHa,EAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,mBADC;AAGP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE,OADL;AAEL,IAAA,QAAQ,EAAE;AAFL,GAHA;AAQP,EAAA,IARO,kBAQH;AACF,WAAO;AACL,MAAA,OAAO,EAAE,IADJ;AAEL,MAAA,MAAM,EAAE,IAFH;AAGL,MAAA,YAAY,EAAE;AAHT,KAAP;AAKD,GAdM;AAgBP,EAAA,QAAQ,EAAE;AACR,IAAA,OADQ,qBACD;AACL;AACE,qCAA6B,KAAK,QADpC;AAEE,0CAAkC,KAAK,YAFzC;AAGE,uCAA+B,KAAK;AAHtC,SAIK,KAAK,YAJV;AAMD,KARO;AASR,IAAA,UATQ,wBASE;AACR,aAAO,KAAK,eAAL,CAAqB,QAArB,IAAiC,KAAK,QAA7C;AACD,KAXO;AAYR,IAAA,UAZQ,wBAYE;AACR,aAAO,KAAK,eAAL,CAAqB,QAArB,IAAiC,KAAK,QAA7C;AACD;AAdO,GAhBH;AAiCP,EAAA,OAAO,EAAE;AACP,IAAA,eADO,2BACU,EADV,EAC4C;AACjD,WAAK,OAAL,GAAe,EAAf;AACD,KAHM;AAIP,IAAA,iBAJO,+BAIU;AACf,WAAK,OAAL,GAAe,IAAf;AACD,KANM;AAOP,IAAA,cAPO,0BAOS,EAPT,EAO0C;AAC/C,WAAK,MAAL,GAAc,EAAd;AACA,MAAA,EAAE,CAAC,GAAH,CAAO,OAAP,EAAgB,KAAK,OAArB;AACD,KAVM;AAWP,IAAA,gBAXO,8BAWS;AACd,WAAK,MAAL,GAAc,IAAd;AACD,KAbM;AAcP,IAAA,OAdO,mBAcE,CAdF,EAce;AACpB,UAAI,CAAC,CAAC,MAAN,EAAc,KAAK,MAAL,CAAa,GAAb,CAAiB,IAAjB;AAEd,WAAK,KAAL,CAAW,OAAX,EAAoB,CAApB;AAEA,WAAK,UAAL,IAAmB,KAAK,UAAxB,IAAsC,KAAK,MAAL,EAAtC;AACD,KApBM;AAqBP,IAAA,MArBO,oBAqBD;AAAA;;AACJ,WAAK,SAAL,CAAe,YAAK;AAClB,QAAA,KAAI,CAAC,KAAL,CAAW,QAAX;;AACA,QAAA,KAAI,CAAC,WAAL,CAAiB,QAAjB;AACD,OAHD;AAID;AA1BM,GAjCF;AA8DP,EAAA,MA9DO,oBA8DD;AACJ,WAAO,YAAE,KAAF,EAAS;AACd,MAAA,KAAK,EAAE,CAAC,mBAAD,EAAsB,KAAK,OAA3B,CADO;AAEd,uBAAiB,MAAM,CAAC,KAAK,QAAN;AAFT,KAAT,EAGJ,sBAAQ,IAAR,CAHI,CAAP;AAID;AAnEM,CAJM,C","sourcesContent":["import {h} from 'vue'\n// Components\nimport VExpansionPanels from './VExpansionPanels'\nimport VExpansionPanelHeader from './VExpansionPanelHeader'\nimport VExpansionPanelContent from './VExpansionPanelContent'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { provide as RegistrableProvide } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VExpansionPanelHeaderInstance = InstanceType<typeof VExpansionPanelHeader>\ntype VExpansionPanelContentInstance = InstanceType<typeof VExpansionPanelContent>\n\nexport default mixins(\n GroupableFactory<'expansionPanels', typeof VExpansionPanels>('expansionPanels', 'v-expansion-panel', 'v-expansion-panels'),\n RegistrableProvide('expansionPanel', true)\n /* @vue/component */\n).extend({\n name: 'v-expansion-panel',\n\n props: {\n disabled: Boolean,\n readonly: Boolean,\n },\n\n data () {\n return {\n content: null as VExpansionPanelContentInstance | null,\n header: null as VExpansionPanelHeaderInstance | null,\n nextIsActive: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel--active': this.isActive,\n 'v-expansion-panel--next-active': this.nextIsActive,\n 'v-expansion-panel--disabled': this.isDisabled,\n ...this.groupClasses,\n }\n },\n isDisabled (): boolean {\n return this.expansionPanels.disabled || this.disabled\n },\n isReadonly (): boolean {\n return this.expansionPanels.readonly || this.readonly\n },\n },\n\n methods: {\n registerContent (vm: VExpansionPanelContentInstance) {\n this.content = vm\n },\n unregisterContent () {\n this.content = null\n },\n registerHeader (vm: VExpansionPanelHeaderInstance) {\n this.header = vm\n vm.$on('click', this.onClick)\n },\n unregisterHeader () {\n this.header = null\n },\n onClick (e: MouseEvent) {\n if (e.detail) this.header!.$el.blur()\n\n this.$emit('click', e)\n\n this.isReadonly || this.isDisabled || this.toggle()\n },\n toggle () {\n this.$nextTick(() => {\n this.$emit('change')\n this.$emitLegacy('change')\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-expansion-panel', this.classes],\n 'aria-expanded': String(this.isActive),\n }, getSlot(this))\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanel.js"}
1
+ {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanel.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAOA;;AACA;;AAGA;;AACA;;;;;;;;;;eAQe,qBACb,wBAA6D,iBAA7D,EAAgF,mBAAhF,EAAqG,oBAArG,CADa,EAEb,0BAAmB,gBAAnB,EAAqC,IAArC;AACA;AAHa,EAIb,MAJa,CAIN;AACP,EAAA,IAAI,EAAE,mBADC;AAGP,EAAA,KAAK,EAAE,CACL,OADK,EAEL,QAFK,CAHA;AAQP,EAAA,KAAK,EAAE;AACL,IAAA,QAAQ,EAAE,OADL;AAEL,IAAA,QAAQ,EAAE;AAFL,GARA;AAaP,EAAA,IAbO,kBAaH;AACF,WAAO;AACL,MAAA,OAAO,EAAE,IADJ;AAEL,MAAA,MAAM,EAAE,IAFH;AAGL,MAAA,YAAY,EAAE;AAHT,KAAP;AAKD,GAnBM;AAqBP,EAAA,QAAQ,EAAE;AACR,IAAA,OADQ,qBACD;AACL;AACE,qCAA6B,KAAK,QADpC;AAEE,0CAAkC,KAAK,YAFzC;AAGE,uCAA+B,KAAK;AAHtC,SAIK,KAAK,YAJV;AAMD,KARO;AASR,IAAA,UATQ,wBASE;AACR,aAAO,KAAK,eAAL,CAAqB,QAArB,IAAiC,KAAK,QAA7C;AACD,KAXO;AAYR,IAAA,UAZQ,wBAYE;AACR,aAAO,KAAK,eAAL,CAAqB,QAArB,IAAiC,KAAK,QAA7C;AACD;AAdO,GArBH;AAsCP,EAAA,OAAO,EAAE;AACP,IAAA,eADO,2BACU,EADV,EAC4C;AACjD,WAAK,OAAL,GAAe,EAAf;AACD,KAHM;AAIP,IAAA,iBAJO,+BAIU;AACf,WAAK,OAAL,GAAe,IAAf;AACD,KANM;AAOP,IAAA,cAPO,0BAOS,EAPT,EAO0C;AAC/C,WAAK,MAAL,GAAc,EAAd;AACA,MAAA,EAAE,CAAC,GAAH,CAAO,OAAP,EAAgB,KAAK,OAArB;AACD,KAVM;AAWP,IAAA,gBAXO,8BAWS;AACd,WAAK,MAAL,GAAc,IAAd;AACD,KAbM;AAcP,IAAA,OAdO,mBAcE,CAdF,EAce;AACpB,UAAI,CAAC,CAAC,MAAN,EAAc,KAAK,MAAL,CAAa,GAAb,CAAiB,IAAjB;AAEd,WAAK,KAAL,CAAW,OAAX,EAAoB,CAApB;AAEA,WAAK,UAAL,IAAmB,KAAK,UAAxB,IAAsC,KAAK,MAAL,EAAtC;AACD,KApBM;AAqBP,IAAA,MArBO,oBAqBD;AAAA;;AACJ,WAAK,SAAL,CAAe,YAAK;AAClB,QAAA,KAAI,CAAC,KAAL,CAAW,QAAX;;AACA,QAAA,KAAI,CAAC,WAAL,CAAiB,QAAjB;AACD,OAHD;AAID;AA1BM,GAtCF;AAmEP,EAAA,MAnEO,oBAmED;AACJ,WAAO,YAAE,KAAF,EAAS;AACd,MAAA,KAAK,EAAE,CAAC,mBAAD,EAAsB,KAAK,OAA3B,CADO;AAEd,uBAAiB,MAAM,CAAC,KAAK,QAAN;AAFT,KAAT,EAGJ,sBAAQ,IAAR,CAHI,CAAP;AAID;AAxEM,CAJM,C","sourcesContent":["import {h} from 'vue'\n// Components\nimport VExpansionPanels from './VExpansionPanels'\nimport VExpansionPanelHeader from './VExpansionPanelHeader'\nimport VExpansionPanelContent from './VExpansionPanelContent'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { provide as RegistrableProvide } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VExpansionPanelHeaderInstance = InstanceType<typeof VExpansionPanelHeader>\ntype VExpansionPanelContentInstance = InstanceType<typeof VExpansionPanelContent>\n\nexport default mixins(\n GroupableFactory<'expansionPanels', typeof VExpansionPanels>('expansionPanels', 'v-expansion-panel', 'v-expansion-panels'),\n RegistrableProvide('expansionPanel', true)\n /* @vue/component */\n).extend({\n name: 'v-expansion-panel',\n\n emits: [\n 'click',\n 'change',\n ],\n\n props: {\n disabled: Boolean,\n readonly: Boolean,\n },\n\n data () {\n return {\n content: null as VExpansionPanelContentInstance | null,\n header: null as VExpansionPanelHeaderInstance | null,\n nextIsActive: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel--active': this.isActive,\n 'v-expansion-panel--next-active': this.nextIsActive,\n 'v-expansion-panel--disabled': this.isDisabled,\n ...this.groupClasses,\n }\n },\n isDisabled (): boolean {\n return this.expansionPanels.disabled || this.disabled\n },\n isReadonly (): boolean {\n return this.expansionPanels.readonly || this.readonly\n },\n },\n\n methods: {\n registerContent (vm: VExpansionPanelContentInstance) {\n this.content = vm\n },\n unregisterContent () {\n this.content = null\n },\n registerHeader (vm: VExpansionPanelHeaderInstance) {\n this.header = vm\n vm.$on('click', this.onClick)\n },\n unregisterHeader () {\n this.header = null\n },\n onClick (e: MouseEvent) {\n if (e.detail) this.header!.$el.blur()\n\n this.$emit('click', e)\n\n this.isReadonly || this.isDisabled || this.toggle()\n },\n toggle () {\n this.$nextTick(() => {\n this.$emit('change')\n this.$emitLegacy('change')\n })\n },\n },\n\n render (): VNode {\n return h('div', {\n class: ['v-expansion-panel', this.classes],\n 'aria-expanded': String(this.isActive),\n }, getSlot(this))\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanel.js"}
@@ -60,15 +60,17 @@ var _default = baseMixins.extend({
60
60
  render: function render() {
61
61
  var _this2 = this;
62
62
 
63
- return (0, _vue.h)(_transitions.VExpandTransition, this.showLazyContent(function () {
64
- return [(0, _vue.withDirectives)((0, _vue.h)('div', _this2.setBackgroundColor(_this2.color, {
65
- class: 'v-expansion-panel-content'
66
- }), [(0, _vue.h)('div', {
67
- class: 'v-expansion-panel-content__wrap'
68
- }, (0, _helpers.getSlot)(_this2, 'default', {
69
- open: _this2.isActive
70
- }))]), [[_vue.vShow, _this2.isActive]])];
71
- }));
63
+ return (0, _vue.h)(_transitions.VExpandTransition, {}, function () {
64
+ return _this2.showLazyContent(function () {
65
+ return [(0, _vue.withDirectives)((0, _vue.h)('div', _this2.setBackgroundColor(_this2.color, {
66
+ class: 'v-expansion-panel-content'
67
+ }), [(0, _vue.h)('div', {
68
+ class: 'v-expansion-panel-content__wrap'
69
+ }, (0, _helpers.getSlot)(_this2, 'default', {
70
+ open: _this2.isActive
71
+ }))]), [[_vue.vShow, _this2.isActive]])];
72
+ });
73
+ });
72
74
  }
73
75
  });
74
76
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelContent.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAGA;;AAGA;;AACA;;AACA;;AAGA;;AACA;;;;AAPA;AAKA;AAOA,IAAM,UAAU,GAAG,qBACjB,iBADiB,EAEjB,kBAFiB,EAGjB,yBAAyD,gBAAzD,EAA2E,2BAA3E,EAAwG,mBAAxG,CAHiB,CAAnB;AAUA;;eACe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,2BADyB;AAG/B,EAAA,IAAI,EAAE;AAAA,WAAO;AACX,MAAA,QAAQ,EAAE;AADC,KAAP;AAAA,GAHyB;AAO/B,EAAA,QAAQ,EAAE;AACR,IAAA,cADQ,4BACM;AACZ,aAAO,KAAK,cAAL,CAAoB,QAA3B;AACD;AAHO,GAPqB;AAa/B,EAAA,KAAK,EAAE;AACL,IAAA,cAAc,EAAE;AACd,MAAA,SAAS,EAAE,IADG;AAEd,MAAA,OAFc,mBAEL,GAFK,EAEA,MAFA,EAEM;AAAA;;AAClB,YAAI,GAAJ,EAAS,KAAK,QAAL,GAAgB,IAAhB;AAET,YAAI,MAAM,IAAI,IAAd,EAAoB,KAAK,QAAL,GAAgB,GAAhB,CAApB,KACK,KAAK,SAAL,CAAe;AAAA,iBAAM,KAAI,CAAC,QAAL,GAAgB,GAAtB;AAAA,SAAf;AACN;AAPa;AADX,GAbwB;AAyB/B,EAAA,OAzB+B,qBAyBxB;AACL,SAAK,cAAL,CAAoB,eAApB,CAAoC,IAApC;AACD,GA3B8B;AA6B/B,EAAA,aA7B+B,2BA6BlB;AACX,SAAK,cAAL,CAAoB,iBAApB;AACD,GA/B8B;AAiC/B,EAAA,MAjC+B,oBAiCzB;AAAA;;AACJ,WAAO,YAAE,8BAAF,EAAqB,KAAK,eAAL,CAAqB;AAAA,aAAM,CACrD,yBAAe,YAAE,KAAF,EAAS,MAAI,CAAC,kBAAL,CAAwB,MAAI,CAAC,KAA7B,EAAoC;AAC1D,QAAA,KAAK,EAAE;AADmD,OAApC,CAAT,EAEX,CACF,YAAE,KAAF,EAAS;AAAE,QAAA,KAAK,EAAE;AAAT,OAAT,EAAuD,sBAAQ,MAAR,EAAc,SAAd,EAAyB;AAAE,QAAA,IAAI,EAAE,MAAI,CAAC;AAAb,OAAzB,CAAvD,CADE,CAFW,CAAf,EAII,CACF,CACE,UADF,EAEE,MAAI,CAAC,QAFP,CADE,CAJJ,CADqD,CAAN;AAAA,KAArB,CAArB,CAAP;AAYD;AA9C8B,CAAlB,C","sourcesContent":["import {h, vShow, withDirectives} from 'vue'\n// Components\nimport VExpansionPanel from './VExpansionPanel'\nimport { VExpandTransition } from '../transitions'\n\n// Mixins\nimport Bootable from '../../mixins/bootable'\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Bootable,\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-content', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-expansion-panel-content',\n\n data: () => ({\n isActive: false,\n }),\n\n computed: {\n parentIsActive (): boolean {\n return this.expansionPanel.isActive\n },\n },\n\n watch: {\n parentIsActive: {\n immediate: true,\n handler (val, oldVal) {\n if (val) this.isBooted = true\n\n if (oldVal == null) this.isActive = val\n else this.$nextTick(() => this.isActive = val)\n },\n },\n },\n\n created () {\n this.expansionPanel.registerContent(this)\n },\n\n beforeUnmount () {\n this.expansionPanel.unregisterContent()\n },\n\n render (): VNode {\n return h(VExpandTransition, this.showLazyContent(() => [\n withDirectives(h('div', this.setBackgroundColor(this.color, {\n class: 'v-expansion-panel-content'\n }), [\n h('div', { class: 'v-expansion-panel-content__wrap' }, getSlot(this, 'default', { open: this.isActive })),\n ]), [\n [\n vShow,\n this.isActive\n ]\n ]),\n ]))\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelContent.js"}
1
+ {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelContent.ts"],"names":[],"mappings":";;;;;;;AAAA;;AAGA;;AAGA;;AACA;;AACA;;AAGA;;AACA;;;;AAPA;AAKA;AAOA,IAAM,UAAU,GAAG,qBACjB,iBADiB,EAEjB,kBAFiB,EAGjB,yBAAyD,gBAAzD,EAA2E,2BAA3E,EAAwG,mBAAxG,CAHiB,CAAnB;AAUA;;eACe,UAAU,CAAC,MAAX,CAAkB;AAC/B,EAAA,IAAI,EAAE,2BADyB;AAG/B,EAAA,IAAI,EAAE;AAAA,WAAO;AACX,MAAA,QAAQ,EAAE;AADC,KAAP;AAAA,GAHyB;AAO/B,EAAA,QAAQ,EAAE;AACR,IAAA,cADQ,4BACM;AACZ,aAAO,KAAK,cAAL,CAAoB,QAA3B;AACD;AAHO,GAPqB;AAa/B,EAAA,KAAK,EAAE;AACL,IAAA,cAAc,EAAE;AACd,MAAA,SAAS,EAAE,IADG;AAEd,MAAA,OAFc,mBAEL,GAFK,EAEA,MAFA,EAEM;AAAA;;AAClB,YAAI,GAAJ,EAAS,KAAK,QAAL,GAAgB,IAAhB;AAET,YAAI,MAAM,IAAI,IAAd,EAAoB,KAAK,QAAL,GAAgB,GAAhB,CAApB,KACK,KAAK,SAAL,CAAe;AAAA,iBAAM,KAAI,CAAC,QAAL,GAAgB,GAAtB;AAAA,SAAf;AACN;AAPa;AADX,GAbwB;AAyB/B,EAAA,OAzB+B,qBAyBxB;AACL,SAAK,cAAL,CAAoB,eAApB,CAAoC,IAApC;AACD,GA3B8B;AA6B/B,EAAA,aA7B+B,2BA6BlB;AACX,SAAK,cAAL,CAAoB,iBAApB;AACD,GA/B8B;AAiC/B,EAAA,MAjC+B,oBAiCzB;AAAA;;AACJ,WAAO,YAAE,8BAAF,EAAqB,EAArB,EAAyB;AAAA,aAAM,MAAI,CAAC,eAAL,CAAqB;AAAA,eAAM,CAC/D,yBAAe,YAAE,KAAF,EAAS,MAAI,CAAC,kBAAL,CAAwB,MAAI,CAAC,KAA7B,EAAoC;AAC1D,UAAA,KAAK,EAAE;AADmD,SAApC,CAAT,EAEX,CACF,YAAE,KAAF,EAAS;AAAE,UAAA,KAAK,EAAE;AAAT,SAAT,EAAuD,sBAAQ,MAAR,EAAc,SAAd,EAAyB;AAAE,UAAA,IAAI,EAAE,MAAI,CAAC;AAAb,SAAzB,CAAvD,CADE,CAFW,CAAf,EAII,CACF,CACE,UADF,EAEE,MAAI,CAAC,QAFP,CADE,CAJJ,CAD+D,CAAN;AAAA,OAArB,CAAN;AAAA,KAAzB,CAAP;AAYD;AA9C8B,CAAlB,C","sourcesContent":["import {h, vShow, withDirectives} from 'vue'\n// Components\nimport VExpansionPanel from './VExpansionPanel'\nimport { VExpandTransition } from '../transitions'\n\n// Mixins\nimport Bootable from '../../mixins/bootable'\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Bootable,\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-content', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-expansion-panel-content',\n\n data: () => ({\n isActive: false,\n }),\n\n computed: {\n parentIsActive (): boolean {\n return this.expansionPanel.isActive\n },\n },\n\n watch: {\n parentIsActive: {\n immediate: true,\n handler (val, oldVal) {\n if (val) this.isBooted = true\n\n if (oldVal == null) this.isActive = val\n else this.$nextTick(() => this.isActive = val)\n },\n },\n },\n\n created () {\n this.expansionPanel.registerContent(this)\n },\n\n beforeUnmount () {\n this.expansionPanel.unregisterContent()\n },\n\n render (): VNode {\n return h(VExpandTransition, {}, () => this.showLazyContent(() => [\n withDirectives(h('div', this.setBackgroundColor(this.color, {\n class: 'v-expansion-panel-content'\n }), [\n h('div', { class: 'v-expansion-panel-content__wrap' }, getSlot(this, 'default', { open: this.isActive })),\n ]), [\n [\n vShow,\n this.isActive\n ]\n ]),\n ]))\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelContent.js"}
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
@@ -17,16 +15,12 @@ var _colorable = _interopRequireDefault(require("../../mixins/colorable"));
17
15
 
18
16
  var _registrable = require("../../mixins/registrable");
19
17
 
20
- var _ripple = _interopRequireWildcard(require("../../directives/ripple"));
18
+ var _ripple = require("../../directives/ripple");
21
19
 
22
20
  var _helpers = require("../../util/helpers");
23
21
 
24
22
  var _mixins = _interopRequireDefault(require("../../util/mixins"));
25
23
 
26
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
27
-
28
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
-
30
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
25
 
32
26
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
@@ -39,9 +33,6 @@ var baseMixins = (0, _mixins.default)(_colorable.default, (0, _registrable.injec
39
33
 
40
34
  var _default = baseMixins.extend({
41
35
  name: 'v-expansion-panel-header',
42
- directives: {
43
- ripple: _ripple.default
44
- },
45
36
  props: {
46
37
  disableIconRotate: Boolean,
47
38
  expandIcon: {
@@ -88,18 +79,24 @@ var _default = baseMixins.extend({
88
79
  this.$emitLegacy('click', e);
89
80
  },
90
81
  genIcon: function genIcon() {
82
+ var _this = this;
83
+
91
84
  var icon = (0, _helpers.getSlot)(this, 'actions', {
92
85
  open: this.isActive
93
- }) || [(0, _vue.h)(_VIcon.default, this.expandIcon)];
94
- return (0, _vue.h)(_transitions.VFadeTransition, [(0, _vue.withDirectives)((0, _vue.h)('div', {
95
- class: ['v-expansion-panel-header__icon', {
96
- 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate
97
- }]
98
- }, icon), [[_vue.vShow, !this.isDisabled]])]);
86
+ }) || [(0, _vue.h)(_VIcon.default, {}, function () {
87
+ return _this.expandIcon;
88
+ })];
89
+ return (0, _vue.h)(_transitions.VFadeTransition, {}, function () {
90
+ return [(0, _vue.withDirectives)((0, _vue.h)('div', {
91
+ class: ['v-expansion-panel-header__icon', {
92
+ 'v-expansion-panel-header__icon--disable-rotate': _this.disableIconRotate
93
+ }]
94
+ }, icon), [[_vue.vShow, !_this.isDisabled]])];
95
+ });
99
96
  }
100
97
  },
101
98
  render: function render() {
102
- var _this = this;
99
+ var _this2 = this;
103
100
 
104
101
  var directives = [[_ripple.Ripple, this.ripple]];
105
102
  return (0, _vue.withDirectives)((0, _vue.h)('button', this.setBackgroundColor(this.color, _objectSpread(_objectSpread({
@@ -110,10 +107,10 @@ var _default = baseMixins.extend({
110
107
  }, this.$listeners), {}, {
111
108
  onClick: this.onClick,
112
109
  onMousedown: function onMousedown() {
113
- return _this.hasMousedown = true;
110
+ return _this2.hasMousedown = true;
114
111
  },
115
112
  onMouseup: function onMouseup() {
116
- return _this.hasMousedown = false;
113
+ return _this2.hasMousedown = false;
117
114
  }
118
115
  })), [(0, _helpers.getSlot)(this, 'default', {
119
116
  open: this.isActive
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts"],"names":[],"mappings":"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","sourcesContent":["import {h, vShow, withDirectives} from 'vue'\n// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple, { Ripple } from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\nexport default baseMixins.extend({\n name: 'v-expansion-panel-header',\n\n directives: { ripple },\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeUnmount () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n this.$emitLegacy('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions', { open: this.isActive }) ||\n [h(VIcon, this.expandIcon)]\n\n return h(VFadeTransition, [\n withDirectives(h('div', {\n class: ['v-expansion-panel-header__icon', {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n }]\n }, icon), [\n [\n vShow,\n !this.isDisabled\n ]\n ]),\n ])\n },\n },\n\n render (): VNode {\n const directives = [\n [\n Ripple,\n this.ripple\n ]\n ]\n\n return withDirectives(h('button', this.setBackgroundColor(this.color, {\n class: ['v-expansion-panel-header', this.classes],\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n 'aria-expanded': this.isActive,\n ...this.$listeners,\n onClick: this.onClick,\n onMousedown: () => (this.hasMousedown = true),\n onMouseup: () => (this.hasMousedown = false)\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ]), directives)\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelHeader.js"}
1
+ {"version":3,"sources":["../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts"],"names":[],"mappings":"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","sourcesContent":["import {h, vShow, withDirectives} from 'vue'\n// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple, { Ripple } from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor<Vue>>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue<typeof baseMixins> {\n $el: HTMLElement\n expansionPanel: InstanceType<typeof VExpansionPanel>\n}\n\nexport default baseMixins.extend({\n name: 'v-expansion-panel-header',\n\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeUnmount () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n this.$emitLegacy('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions', { open: this.isActive }) ||\n [h(VIcon, {}, () => this.expandIcon)]\n\n return h(VFadeTransition, {}, () => [\n withDirectives(h('div', {\n class: ['v-expansion-panel-header__icon', {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n }]\n }, icon), [\n [\n vShow,\n !this.isDisabled\n ]\n ]),\n ])\n },\n },\n\n render (): VNode {\n const directives = [\n [\n Ripple,\n this.ripple\n ]\n ]\n\n return withDirectives(h('button', this.setBackgroundColor(this.color, {\n class: ['v-expansion-panel-header', this.classes],\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n 'aria-expanded': this.isActive,\n ...this.$listeners,\n onClick: this.onClick,\n onMousedown: () => (this.hasMousedown = true),\n onMouseup: () => (this.hasMousedown = false)\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ]), directives)\n },\n})\n"],"sourceRoot":"","file":"VExpansionPanelHeader.js"}
@@ -98,6 +98,7 @@ var _default = (0, _vue.defineComponent)({
98
98
  }
99
99
  }
100
100
  },
101
+ emits: ['change', 'keydown'],
101
102
  computed: {
102
103
  classes: function classes() {
103
104
  return _objectSpread(_objectSpread({}, _VTextField.default.computed.classes.call(this)), {}, {