@dimailn/vuetify 2.7.2-alpha26 → 2.7.2-alpha27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/dist/vuetify.js +1109 -1021
  2. package/dist/vuetify.js.map +1 -1
  3. package/dist/vuetify.min.css +1 -1
  4. package/dist/vuetify.min.js +2 -2
  5. package/es5/components/VAlert/VAlert.js +1 -0
  6. package/es5/components/VAlert/VAlert.js.map +1 -1
  7. package/es5/components/VAppBar/VAppBar.js +17 -6
  8. package/es5/components/VAppBar/VAppBar.js.map +1 -1
  9. package/es5/components/VBadge/VBadge.js +1 -0
  10. package/es5/components/VBadge/VBadge.js.map +1 -1
  11. package/es5/components/VBanner/VBanner.js +11 -12
  12. package/es5/components/VBanner/VBanner.js.map +1 -1
  13. package/es5/components/VBottomNavigation/VBottomNavigation.js +8 -7
  14. package/es5/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  15. package/es5/components/VBtn/VBtn.js +2 -2
  16. package/es5/components/VBtn/VBtn.js.map +1 -1
  17. package/es5/components/VCalendar/VCalendar.js +27 -29
  18. package/es5/components/VCalendar/VCalendar.js.map +1 -1
  19. package/es5/components/VCalendar/VCalendarCategory.js +26 -34
  20. package/es5/components/VCalendar/VCalendarCategory.js.map +1 -1
  21. package/es5/components/VCalendar/VCalendarDaily.js +43 -60
  22. package/es5/components/VCalendar/VCalendarDaily.js.map +1 -1
  23. package/es5/components/VCalendar/VCalendarMonthly.js +2 -2
  24. package/es5/components/VCalendar/VCalendarMonthly.js.map +1 -1
  25. package/es5/components/VCalendar/VCalendarWeekly.js +26 -35
  26. package/es5/components/VCalendar/VCalendarWeekly.js.map +1 -1
  27. package/es5/components/VCalendar/mixins/calendar-base.js +5 -10
  28. package/es5/components/VCalendar/mixins/calendar-base.js.map +1 -1
  29. package/es5/components/VCalendar/mixins/calendar-with-events.js +43 -58
  30. package/es5/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  31. package/es5/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  32. package/es5/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  33. package/es5/components/VCalendar/mixins/times.js.map +1 -1
  34. package/es5/components/VCarousel/VCarousel.js +10 -9
  35. package/es5/components/VCarousel/VCarousel.js.map +1 -1
  36. package/es5/components/VCheckbox/VCheckbox.js +31 -2
  37. package/es5/components/VCheckbox/VCheckbox.js.map +1 -1
  38. package/es5/components/VCheckbox/VSimpleCheckbox.js +0 -3
  39. package/es5/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  40. package/es5/components/VChip/VChip.js +14 -6
  41. package/es5/components/VChip/VChip.js.map +1 -1
  42. package/es5/components/VData/VData.js +1 -0
  43. package/es5/components/VData/VData.js.map +1 -1
  44. package/es5/components/VDataIterator/VDataFooter.js +1 -0
  45. package/es5/components/VDataIterator/VDataFooter.js.map +1 -1
  46. package/es5/components/VDataIterator/VDataIterator.js +1 -0
  47. package/es5/components/VDataIterator/VDataIterator.js.map +1 -1
  48. package/es5/components/VDataTable/VDataTable.js +1 -6
  49. package/es5/components/VDataTable/VDataTable.js.map +1 -1
  50. package/es5/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  51. package/es5/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  52. package/es5/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  53. package/es5/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  54. package/es5/components/VDataTable/VEditDialog.js +19 -18
  55. package/es5/components/VDataTable/VEditDialog.js.map +1 -1
  56. package/es5/components/VDataTable/mixins/header.js +0 -6
  57. package/es5/components/VDataTable/mixins/header.js.map +1 -1
  58. package/es5/components/VDatePicker/VDatePicker.js +13 -18
  59. package/es5/components/VDatePicker/VDatePicker.js.map +1 -1
  60. package/es5/components/VDatePicker/VDatePickerHeader.js +48 -26
  61. package/es5/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  62. package/es5/components/VDatePicker/VDatePickerMonthTable.js +6 -3
  63. package/es5/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  64. package/es5/components/VDatePicker/VDatePickerTitle.js +4 -3
  65. package/es5/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  66. package/es5/components/VDatePicker/VDatePickerYears.js +11 -12
  67. package/es5/components/VDatePicker/VDatePickerYears.js.map +1 -1
  68. package/es5/components/VDatePicker/mixins/date-picker-table.js +16 -13
  69. package/es5/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  70. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  71. package/es5/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  72. package/es5/components/VDialog/VDialog.js +1 -0
  73. package/es5/components/VDialog/VDialog.js.map +1 -1
  74. package/es5/components/VExpansionPanel/VExpansionPanel.js +1 -0
  75. package/es5/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  76. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js +1 -10
  77. package/es5/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  78. package/es5/components/VFileInput/VFileInput.js +1 -0
  79. package/es5/components/VFileInput/VFileInput.js.map +1 -1
  80. package/es5/components/VForm/VForm.js +1 -0
  81. package/es5/components/VForm/VForm.js.map +1 -1
  82. package/es5/components/VHover/VHover.js +1 -0
  83. package/es5/components/VHover/VHover.js.map +1 -1
  84. package/es5/components/VImg/VImg.js +3 -5
  85. package/es5/components/VImg/VImg.js.map +1 -1
  86. package/es5/components/VInput/VInput.js +1 -0
  87. package/es5/components/VInput/VInput.js.map +1 -1
  88. package/es5/components/VItemGroup/VItem.js +2 -1
  89. package/es5/components/VItemGroup/VItem.js.map +1 -1
  90. package/es5/components/VItemGroup/VItemGroup.js +5 -1
  91. package/es5/components/VItemGroup/VItemGroup.js.map +1 -1
  92. package/es5/components/VLazy/VLazy.js +8 -15
  93. package/es5/components/VLazy/VLazy.js.map +1 -1
  94. package/es5/components/VList/VListGroup.js +3 -11
  95. package/es5/components/VList/VListGroup.js.map +1 -1
  96. package/es5/components/VList/VListItem.js +26 -12
  97. package/es5/components/VList/VListItem.js.map +1 -1
  98. package/es5/components/VList/VListItemAction.js +23 -9
  99. package/es5/components/VList/VListItemAction.js.map +1 -1
  100. package/es5/components/VMenu/VMenu.js +1 -0
  101. package/es5/components/VMenu/VMenu.js.map +1 -1
  102. package/es5/components/VNavigationDrawer/VNavigationDrawer.js +1 -7
  103. package/es5/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  104. package/es5/components/VOtpInput/VOtpInput.js +1 -5
  105. package/es5/components/VOtpInput/VOtpInput.js.map +1 -1
  106. package/es5/components/VOverflowBtn/VOverflowBtn.js +1 -0
  107. package/es5/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  108. package/es5/components/VOverlay/VOverlay.js +1 -0
  109. package/es5/components/VOverlay/VOverlay.js.map +1 -1
  110. package/es5/components/VPagination/VPagination.js +1 -3
  111. package/es5/components/VPagination/VPagination.js.map +1 -1
  112. package/es5/components/VPicker/VPicker.js +2 -3
  113. package/es5/components/VPicker/VPicker.js.map +1 -1
  114. package/es5/components/VProgressCircular/VProgressCircular.js +1 -10
  115. package/es5/components/VProgressCircular/VProgressCircular.js.map +1 -1
  116. package/es5/components/VProgressLinear/VProgressLinear.js +4 -12
  117. package/es5/components/VProgressLinear/VProgressLinear.js.map +1 -1
  118. package/es5/components/VRadioGroup/VRadio.js +1 -0
  119. package/es5/components/VRadioGroup/VRadio.js.map +1 -1
  120. package/es5/components/VSelect/VSelect.js +111 -64
  121. package/es5/components/VSelect/VSelect.js.map +1 -1
  122. package/es5/components/VSelect/VSelectList.js +13 -17
  123. package/es5/components/VSelect/VSelectList.js.map +1 -1
  124. package/es5/components/VSlideGroup/VSlideGroup.js +1 -4
  125. package/es5/components/VSlideGroup/VSlideGroup.js.map +1 -1
  126. package/es5/components/VSlideGroup/VSlideItem.js +2 -1
  127. package/es5/components/VSlideGroup/VSlideItem.js.map +1 -1
  128. package/es5/components/VSlider/VSlider.js +0 -3
  129. package/es5/components/VSlider/VSlider.js.map +1 -1
  130. package/es5/components/VSnackbar/VSnackbar.js +1 -0
  131. package/es5/components/VSnackbar/VSnackbar.js.map +1 -1
  132. package/es5/components/VSparkline/VSparkline.js +48 -68
  133. package/es5/components/VSparkline/VSparkline.js.map +1 -1
  134. package/es5/components/VSpeedDial/VSpeedDial.js +4 -10
  135. package/es5/components/VSpeedDial/VSpeedDial.js.map +1 -1
  136. package/es5/components/VStepper/VStepper.js +1 -0
  137. package/es5/components/VStepper/VStepper.js.map +1 -1
  138. package/es5/components/VStepper/VStepperStep.js +11 -19
  139. package/es5/components/VStepper/VStepperStep.js.map +1 -1
  140. package/es5/components/VSwitch/VSwitch.js +1 -3
  141. package/es5/components/VSwitch/VSwitch.js.map +1 -1
  142. package/es5/components/VTabs/VTab.js +1 -0
  143. package/es5/components/VTabs/VTab.js.map +1 -1
  144. package/es5/components/VTabs/VTabs.js +11 -4
  145. package/es5/components/VTabs/VTabs.js.map +1 -1
  146. package/es5/components/VTabs/VTabsItems.js +1 -0
  147. package/es5/components/VTabs/VTabsItems.js.map +1 -1
  148. package/es5/components/VTextField/VTextField.js +31 -27
  149. package/es5/components/VTextField/VTextField.js.map +1 -1
  150. package/es5/components/VTimePicker/VTimePicker.js +72 -44
  151. package/es5/components/VTimePicker/VTimePicker.js.map +1 -1
  152. package/es5/components/VTimePicker/VTimePickerClock.js +37 -48
  153. package/es5/components/VTimePicker/VTimePickerClock.js.map +1 -1
  154. package/es5/components/VTimePicker/VTimePickerTitle.js +13 -11
  155. package/es5/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  156. package/es5/components/VToolbar/VToolbar.js +1 -3
  157. package/es5/components/VToolbar/VToolbar.js.map +1 -1
  158. package/es5/components/VTooltip/VTooltip.js +6 -3
  159. package/es5/components/VTooltip/VTooltip.js.map +1 -1
  160. package/es5/components/VVirtualScroll/VVirtualScroll.js +0 -3
  161. package/es5/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  162. package/es5/components/VWindow/VWindow.js +0 -3
  163. package/es5/components/VWindow/VWindow.js.map +1 -1
  164. package/es5/components/VWindow/VWindowItem.js +1 -5
  165. package/es5/components/VWindow/VWindowItem.js.map +1 -1
  166. package/es5/framework.js +1 -1
  167. package/es5/mixins/detachable/index.js +9 -5
  168. package/es5/mixins/detachable/index.js.map +1 -1
  169. package/lib/components/VAlert/VAlert.js +1 -0
  170. package/lib/components/VAlert/VAlert.js.map +1 -1
  171. package/lib/components/VAppBar/VAppBar.js +17 -6
  172. package/lib/components/VAppBar/VAppBar.js.map +1 -1
  173. package/lib/components/VBadge/VBadge.js +1 -0
  174. package/lib/components/VBadge/VBadge.js.map +1 -1
  175. package/lib/components/VBanner/VBanner.js +7 -11
  176. package/lib/components/VBanner/VBanner.js.map +1 -1
  177. package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -7
  178. package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
  179. package/lib/components/VBtn/VBtn.js +2 -2
  180. package/lib/components/VBtn/VBtn.js.map +1 -1
  181. package/lib/components/VCalendar/VCalendar.js +26 -31
  182. package/lib/components/VCalendar/VCalendar.js.map +1 -1
  183. package/lib/components/VCalendar/VCalendarCategory.js +8 -10
  184. package/lib/components/VCalendar/VCalendarCategory.js.map +1 -1
  185. package/lib/components/VCalendar/VCalendarDaily.js +21 -33
  186. package/lib/components/VCalendar/VCalendarDaily.js.map +1 -1
  187. package/lib/components/VCalendar/VCalendarMonthly.js +2 -2
  188. package/lib/components/VCalendar/VCalendarMonthly.js.map +1 -1
  189. package/lib/components/VCalendar/VCalendarWeekly.js +17 -30
  190. package/lib/components/VCalendar/VCalendarWeekly.js.map +1 -1
  191. package/lib/components/VCalendar/mixins/calendar-base.js +7 -11
  192. package/lib/components/VCalendar/mixins/calendar-base.js.map +1 -1
  193. package/lib/components/VCalendar/mixins/calendar-with-events.js +16 -39
  194. package/lib/components/VCalendar/mixins/calendar-with-events.js.map +1 -1
  195. package/lib/components/VCalendar/mixins/calendar-with-intervals.js +2 -2
  196. package/lib/components/VCalendar/mixins/calendar-with-intervals.js.map +1 -1
  197. package/lib/components/VCalendar/mixins/times.js.map +1 -1
  198. package/lib/components/VCarousel/VCarousel.js +12 -11
  199. package/lib/components/VCarousel/VCarousel.js.map +1 -1
  200. package/lib/components/VCheckbox/VCheckbox.js +14 -1
  201. package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
  202. package/lib/components/VCheckbox/VSimpleCheckbox.js +0 -3
  203. package/lib/components/VCheckbox/VSimpleCheckbox.js.map +1 -1
  204. package/lib/components/VChip/VChip.js +14 -6
  205. package/lib/components/VChip/VChip.js.map +1 -1
  206. package/lib/components/VData/VData.js +1 -0
  207. package/lib/components/VData/VData.js.map +1 -1
  208. package/lib/components/VDataIterator/VDataFooter.js +1 -0
  209. package/lib/components/VDataIterator/VDataFooter.js.map +1 -1
  210. package/lib/components/VDataIterator/VDataIterator.js +1 -0
  211. package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
  212. package/lib/components/VDataTable/VDataTable.js +2 -7
  213. package/lib/components/VDataTable/VDataTable.js.map +1 -1
  214. package/lib/components/VDataTable/VDataTableHeaderDesktop.js +1 -0
  215. package/lib/components/VDataTable/VDataTableHeaderDesktop.js.map +1 -1
  216. package/lib/components/VDataTable/VDataTableHeaderMobile.js +1 -0
  217. package/lib/components/VDataTable/VDataTableHeaderMobile.js.map +1 -1
  218. package/lib/components/VDataTable/VEditDialog.js +15 -14
  219. package/lib/components/VDataTable/VEditDialog.js.map +1 -1
  220. package/lib/components/VDataTable/mixins/header.js +0 -5
  221. package/lib/components/VDataTable/mixins/header.js.map +1 -1
  222. package/lib/components/VDatePicker/VDatePicker.js +11 -16
  223. package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
  224. package/lib/components/VDatePicker/VDatePickerHeader.js +33 -20
  225. package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
  226. package/lib/components/VDatePicker/VDatePickerMonthTable.js +3 -1
  227. package/lib/components/VDatePicker/VDatePickerMonthTable.js.map +1 -1
  228. package/lib/components/VDatePicker/VDatePickerTitle.js +4 -3
  229. package/lib/components/VDatePicker/VDatePickerTitle.js.map +1 -1
  230. package/lib/components/VDatePicker/VDatePickerYears.js +8 -9
  231. package/lib/components/VDatePicker/VDatePickerYears.js.map +1 -1
  232. package/lib/components/VDatePicker/mixins/date-picker-table.js +17 -13
  233. package/lib/components/VDatePicker/mixins/date-picker-table.js.map +1 -1
  234. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js +4 -0
  235. package/lib/components/VDatePicker/util/createNativeLocaleFormatter.js.map +1 -1
  236. package/lib/components/VDialog/VDialog.js +1 -0
  237. package/lib/components/VDialog/VDialog.js.map +1 -1
  238. package/lib/components/VExpansionPanel/VExpansionPanel.js +1 -0
  239. package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
  240. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js +1 -4
  241. package/lib/components/VExpansionPanel/VExpansionPanelHeader.js.map +1 -1
  242. package/lib/components/VFileInput/VFileInput.js +1 -0
  243. package/lib/components/VFileInput/VFileInput.js.map +1 -1
  244. package/lib/components/VForm/VForm.js +1 -0
  245. package/lib/components/VForm/VForm.js.map +1 -1
  246. package/lib/components/VHover/VHover.js +1 -0
  247. package/lib/components/VHover/VHover.js.map +1 -1
  248. package/lib/components/VImg/VImg.js +2 -6
  249. package/lib/components/VImg/VImg.js.map +1 -1
  250. package/lib/components/VInput/VInput.js +1 -0
  251. package/lib/components/VInput/VInput.js.map +1 -1
  252. package/lib/components/VItemGroup/VItem.js +2 -1
  253. package/lib/components/VItemGroup/VItem.js.map +1 -1
  254. package/lib/components/VItemGroup/VItemGroup.js +6 -1
  255. package/lib/components/VItemGroup/VItemGroup.js.map +1 -1
  256. package/lib/components/VLazy/VLazy.js +8 -15
  257. package/lib/components/VLazy/VLazy.js.map +1 -1
  258. package/lib/components/VList/VListGroup.js +3 -5
  259. package/lib/components/VList/VListGroup.js.map +1 -1
  260. package/lib/components/VList/VListItem.js +25 -14
  261. package/lib/components/VList/VListItem.js.map +1 -1
  262. package/lib/components/VList/VListItemAction.js +15 -9
  263. package/lib/components/VList/VListItemAction.js.map +1 -1
  264. package/lib/components/VMenu/VMenu.js +1 -0
  265. package/lib/components/VMenu/VMenu.js.map +1 -1
  266. package/lib/components/VNavigationDrawer/VNavigationDrawer.js +1 -6
  267. package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
  268. package/lib/components/VOtpInput/VOtpInput.js +2 -6
  269. package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
  270. package/lib/components/VOverflowBtn/VOverflowBtn.js +1 -0
  271. package/lib/components/VOverflowBtn/VOverflowBtn.js.map +1 -1
  272. package/lib/components/VOverlay/VOverlay.js +1 -0
  273. package/lib/components/VOverlay/VOverlay.js.map +1 -1
  274. package/lib/components/VPagination/VPagination.js +1 -3
  275. package/lib/components/VPagination/VPagination.js.map +1 -1
  276. package/lib/components/VPicker/VPicker.js +3 -3
  277. package/lib/components/VPicker/VPicker.js.map +1 -1
  278. package/lib/components/VProgressCircular/VProgressCircular.js +1 -4
  279. package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
  280. package/lib/components/VProgressLinear/VProgressLinear.js +4 -6
  281. package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
  282. package/lib/components/VRadioGroup/VRadio.js +1 -0
  283. package/lib/components/VRadioGroup/VRadio.js.map +1 -1
  284. package/lib/components/VSelect/VSelect.js +64 -19
  285. package/lib/components/VSelect/VSelect.js.map +1 -1
  286. package/lib/components/VSelect/VSelectList.js +13 -15
  287. package/lib/components/VSelect/VSelectList.js.map +1 -1
  288. package/lib/components/VSlideGroup/VSlideGroup.js +1 -4
  289. package/lib/components/VSlideGroup/VSlideGroup.js.map +1 -1
  290. package/lib/components/VSlideGroup/VSlideItem.js +2 -1
  291. package/lib/components/VSlideGroup/VSlideItem.js.map +1 -1
  292. package/lib/components/VSlider/VSlider.js +0 -3
  293. package/lib/components/VSlider/VSlider.js.map +1 -1
  294. package/lib/components/VSnackbar/VSnackbar.js +1 -0
  295. package/lib/components/VSnackbar/VSnackbar.js.map +1 -1
  296. package/lib/components/VSparkline/VSparkline.js +48 -67
  297. package/lib/components/VSparkline/VSparkline.js.map +1 -1
  298. package/lib/components/VSpeedDial/VSpeedDial.js +3 -9
  299. package/lib/components/VSpeedDial/VSpeedDial.js.map +1 -1
  300. package/lib/components/VStepper/VStepper.js +1 -0
  301. package/lib/components/VStepper/VStepper.js.map +1 -1
  302. package/lib/components/VStepper/VStepperStep.js +7 -18
  303. package/lib/components/VStepper/VStepperStep.js.map +1 -1
  304. package/lib/components/VSwitch/VSwitch.js +1 -3
  305. package/lib/components/VSwitch/VSwitch.js.map +1 -1
  306. package/lib/components/VTabs/VTab.js +1 -0
  307. package/lib/components/VTabs/VTab.js.map +1 -1
  308. package/lib/components/VTabs/VTabs.js +14 -4
  309. package/lib/components/VTabs/VTabs.js.map +1 -1
  310. package/lib/components/VTabs/VTabsItems.js +1 -0
  311. package/lib/components/VTabs/VTabsItems.js.map +1 -1
  312. package/lib/components/VTextField/VTextField.js +6 -15
  313. package/lib/components/VTextField/VTextField.js.map +1 -1
  314. package/lib/components/VTimePicker/VTimePicker.js +65 -31
  315. package/lib/components/VTimePicker/VTimePicker.js.map +1 -1
  316. package/lib/components/VTimePicker/VTimePickerClock.js +24 -39
  317. package/lib/components/VTimePicker/VTimePickerClock.js.map +1 -1
  318. package/lib/components/VTimePicker/VTimePickerTitle.js +3 -2
  319. package/lib/components/VTimePicker/VTimePickerTitle.js.map +1 -1
  320. package/lib/components/VToolbar/VToolbar.js +1 -3
  321. package/lib/components/VToolbar/VToolbar.js.map +1 -1
  322. package/lib/components/VTooltip/VTooltip.js +1 -2
  323. package/lib/components/VTooltip/VTooltip.js.map +1 -1
  324. package/lib/components/VVirtualScroll/VVirtualScroll.js +0 -3
  325. package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
  326. package/lib/components/VWindow/VWindow.js +0 -3
  327. package/lib/components/VWindow/VWindow.js.map +1 -1
  328. package/lib/components/VWindow/VWindowItem.js +2 -6
  329. package/lib/components/VWindow/VWindowItem.js.map +1 -1
  330. package/lib/framework.js +1 -1
  331. package/lib/mixins/detachable/index.js +9 -5
  332. package/lib/mixins/detachable/index.js.map +1 -1
  333. package/package.json +1 -1
  334. package/src/components/VAlert/VAlert.ts +2 -0
  335. package/src/components/VAppBar/VAppBar.ts +12 -3
  336. package/src/components/VBadge/VBadge.ts +1 -1
  337. package/src/components/VBanner/VBanner.ts +14 -14
  338. package/src/components/VBottomNavigation/VBottomNavigation.ts +10 -8
  339. package/src/components/VBtn/VBtn.ts +2 -2
  340. package/src/components/VCalendar/VCalendar.ts +29 -27
  341. package/src/components/VCalendar/VCalendarCategory.ts +9 -8
  342. package/src/components/VCalendar/VCalendarDaily.ts +18 -28
  343. package/src/components/VCalendar/VCalendarMonthly.ts +2 -1
  344. package/src/components/VCalendar/VCalendarWeekly.ts +18 -30
  345. package/src/components/VCalendar/__tests__/VCalendar.spec.ts +18 -34
  346. package/src/components/VCalendar/__tests__/VCalendarCategory.spec.ts +16 -14
  347. package/src/components/VCalendar/__tests__/VCalendarDaily.spec.ts +30 -28
  348. package/src/components/VCalendar/__tests__/__snapshots__/VCalendar.spec.ts.snap +206 -205
  349. package/src/components/VCalendar/__tests__/__snapshots__/VCalendarDaily.spec.ts.snap +122 -122
  350. package/src/components/VCalendar/mixins/__tests__/__snapshots__/calendar-with-events.spec.ts.snap +1 -56
  351. package/src/components/VCalendar/mixins/__tests__/calendar-base.spec.ts +24 -21
  352. package/src/components/VCalendar/mixins/__tests__/calendar-with-events.spec.ts +27 -34
  353. package/src/components/VCalendar/mixins/__tests__/calendar-with-intervals.spec.ts +31 -28
  354. package/src/components/VCalendar/mixins/__tests__/times.spec.ts +10 -9
  355. package/src/components/VCalendar/mixins/calendar-base.ts +8 -12
  356. package/src/components/VCalendar/mixins/calendar-with-events.ts +19 -38
  357. package/src/components/VCalendar/mixins/calendar-with-intervals.ts +1 -1
  358. package/src/components/VCalendar/mixins/times.ts +1 -1
  359. package/src/components/VCarousel/VCarousel.ts +13 -9
  360. package/src/components/VCheckbox/VCheckbox.ts +19 -1
  361. package/src/components/VCheckbox/VSimpleCheckbox.ts +0 -3
  362. package/src/components/VChip/VChip.ts +16 -13
  363. package/src/components/VData/VData.ts +2 -0
  364. package/src/components/VDataIterator/VDataFooter.ts +2 -0
  365. package/src/components/VDataIterator/VDataIterator.ts +2 -0
  366. package/src/components/VDataTable/VDataTable.ts +2 -4
  367. package/src/components/VDataTable/VDataTableHeaderDesktop.ts +5 -0
  368. package/src/components/VDataTable/VDataTableHeaderMobile.ts +2 -0
  369. package/src/components/VDataTable/VEditDialog.ts +19 -17
  370. package/src/components/VDataTable/mixins/header.ts +0 -4
  371. package/src/components/VDatePicker/VDatePicker.ts +13 -18
  372. package/src/components/VDatePicker/VDatePickerHeader.ts +44 -32
  373. package/src/components/VDatePicker/VDatePickerMonthTable.ts +1 -1
  374. package/src/components/VDatePicker/VDatePickerTitle.ts +7 -5
  375. package/src/components/VDatePicker/VDatePickerYears.ts +6 -10
  376. package/src/components/VDatePicker/__tests__/VDatePicker.date.spec.ts +302 -246
  377. package/src/components/VDatePicker/__tests__/VDatePicker.month.spec.ts +90 -86
  378. package/src/components/VDatePicker/__tests__/VDatePickerDateTable.spec.ts +76 -90
  379. package/src/components/VDatePicker/__tests__/VDatePickerHeader.spec.ts +96 -71
  380. package/src/components/VDatePicker/__tests__/VDatePickerMonthTable.spec.ts +63 -77
  381. package/src/components/VDatePicker/__tests__/VDatePickerTitle.spec.ts +48 -28
  382. package/src/components/VDatePicker/__tests__/VDatePickerYears.spec.ts +25 -22
  383. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.date.spec.ts.snap +601 -586
  384. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePicker.month.spec.ts.snap +203 -193
  385. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerDateTable.spec.ts.snap +615 -615
  386. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerHeader.spec.ts.snap +52 -52
  387. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerMonthTable.spec.ts.snap +144 -144
  388. package/src/components/VDatePicker/__tests__/__snapshots__/VDatePickerTitle.spec.ts.snap +3 -4
  389. package/src/components/VDatePicker/mixins/date-picker-table.ts +18 -13
  390. package/src/components/VDatePicker/util/__tests__/createNativeLocaleFormatter.spec.ts +7 -0
  391. package/src/components/VDatePicker/util/createNativeLocaleFormatter.ts +3 -0
  392. package/src/components/VDialog/VDialog.ts +7 -5
  393. package/src/components/VExpansionPanel/VExpansionPanel.ts +5 -0
  394. package/src/components/VExpansionPanel/VExpansionPanelHeader.ts +0 -1
  395. package/src/components/VFileInput/VFileInput.ts +2 -0
  396. package/src/components/VForm/VForm.ts +2 -0
  397. package/src/components/VHover/VHover.ts +2 -0
  398. package/src/components/VImg/VImg.ts +2 -1
  399. package/src/components/VInput/VInput.ts +2 -0
  400. package/src/components/VItemGroup/VItem.ts +4 -0
  401. package/src/components/VItemGroup/VItemGroup.ts +7 -1
  402. package/src/components/VLazy/VLazy.ts +11 -13
  403. package/src/components/VList/VListGroup.ts +7 -8
  404. package/src/components/VList/VListItem.ts +29 -15
  405. package/src/components/VList/VListItemAction.ts +11 -10
  406. package/src/components/VMenu/VMenu.ts +3 -1
  407. package/src/components/VNavigationDrawer/VNavigationDrawer.ts +2 -5
  408. package/src/components/VOtpInput/VOtpInput.ts +2 -3
  409. package/src/components/VOverflowBtn/VOverflowBtn.ts +2 -0
  410. package/src/components/VOverlay/VOverlay.ts +2 -0
  411. package/src/components/VPagination/VPagination.ts +2 -1
  412. package/src/components/VPicker/VPicker.ts +8 -10
  413. package/src/components/VPicker/__tests__/VPicker.spec.ts +14 -15
  414. package/src/components/VProgressCircular/VProgressCircular.ts +0 -1
  415. package/src/components/VProgressLinear/VProgressLinear.ts +14 -13
  416. package/src/components/VRadioGroup/VRadio.ts +2 -0
  417. package/src/components/VSelect/VSelect.ts +59 -19
  418. package/src/components/VSelect/VSelectList.ts +13 -9
  419. package/src/components/VSlideGroup/VSlideGroup.ts +2 -4
  420. package/src/components/VSlideGroup/VSlideItem.ts +2 -0
  421. package/src/components/VSlider/VSlider.ts +0 -3
  422. package/src/components/VSnackbar/VSnackbar.ts +1 -1
  423. package/src/components/VSparkline/VSparkline.ts +54 -92
  424. package/src/components/VSpeedDial/VSpeedDial.ts +6 -8
  425. package/src/components/VStepper/VStepper.ts +3 -1
  426. package/src/components/VStepper/VStepperStep.ts +8 -15
  427. package/src/components/VSwitch/VSwitch.ts +4 -5
  428. package/src/components/VTabs/VTab.ts +2 -0
  429. package/src/components/VTabs/VTabs.ts +16 -10
  430. package/src/components/VTabs/VTabsItems.ts +2 -0
  431. package/src/components/VTextField/VTextField.ts +9 -12
  432. package/src/components/VTimePicker/VTimePicker.ts +199 -89
  433. package/src/components/VTimePicker/VTimePickerClock.ts +40 -45
  434. package/src/components/VTimePicker/VTimePickerTitle.ts +5 -4
  435. package/src/components/VTimePicker/__tests__/VTimePicker.spec.ts +153 -140
  436. package/src/components/VTimePicker/__tests__/VTimePickerClock.spec.ts +78 -81
  437. package/src/components/VTimePicker/__tests__/VTimePickerTitle.spec.ts +47 -41
  438. package/src/components/VTimePicker/__tests__/__snapshots__/VTimePicker.spec.ts.snap +160 -40
  439. package/src/components/VToolbar/VToolbar.ts +1 -1
  440. package/src/components/VTooltip/VTooltip.ts +1 -1
  441. package/src/components/VVirtualScroll/VVirtualScroll.ts +0 -1
  442. package/src/components/VWindow/VWindow.ts +0 -1
  443. package/src/components/VWindow/VWindowItem.ts +2 -3
  444. package/src/mixins/detachable/index.ts +11 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCalendar/VCalendar.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\n// import '../../stylus/components/_calendar-daily.styl'\n\n// Types\nimport { VNode, Component, defineComponent } from 'vue'\n\n// Mixins\nimport CalendarWithEvents from './mixins/calendar-with-events'\n\n// Util\nimport props from './util/props'\nimport {\n DAYS_IN_MONTH_MAX,\n DAY_MIN,\n DAYS_IN_WEEK,\n parseTimestamp,\n validateTimestamp,\n relativeDays,\n nextDay,\n prevDay,\n copyTimestamp,\n updateFormatted,\n updateWeekday,\n updateRelative,\n getStartOfMonth,\n getEndOfMonth,\n VTime,\n VTimestampInput,\n timestampToDate,\n} from './util/timestamp'\n\n// Calendars\nimport VCalendarMonthly from './VCalendarMonthly'\nimport VCalendarDaily from './VCalendarDaily'\nimport VCalendarWeekly from './VCalendarWeekly'\nimport VCalendarCategory from './VCalendarCategory'\nimport { CalendarTimestamp, CalendarFormatter, CalendarCategory } from 'vuetify/types'\nimport { getParsedCategories } from './util/parser'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: string | Component\n maxDays: number\n weekdays: number[]\n categories: CalendarCategory[]\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar',\n extends: CalendarWithEvents,\n\n props: {\n ...props.calendar,\n ...props.weeks,\n ...props.intervals,\n ...props.category,\n },\n\n data: () => ({\n lastStart: null as CalendarTimestamp | null,\n lastEnd: null as CalendarTimestamp | null,\n }),\n\n computed: {\n parsedValue (): CalendarTimestamp {\n return (validateTimestamp(this.value)\n ? parseTimestamp(this.value, true)\n : (this.parsedStart || this.times.today))\n },\n parsedCategoryDays (): number {\n return parseInt(this.categoryDays) || 1\n },\n renderProps (): VCalendarRenderProps {\n const around = this.parsedValue\n let component: any = null\n let maxDays = this.maxDays\n let weekdays = this.parsedWeekdays\n let categories = this.parsedCategories\n let start = around\n let end = around\n switch (this.type) {\n case 'month':\n component = VCalendarMonthly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = this.getStartOfWeek(around)\n end = this.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n weekdays = [start.weekday]\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n weekdays = [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'category':\n const days = this.parsedCategoryDays\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n weekdays = []\n\n for (let i = 0; i < days; i++) {\n weekdays.push((start.weekday + i) % 7)\n }\n\n categories = this.getCategoryList(categories)\n break\n default:\n throw new Error(this.type + ' is not a valid Calendar type')\n }\n\n return { component, start, end, maxDays, weekdays, categories }\n },\n eventWeekdays (): number[] {\n return this.renderProps.weekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n title (): string {\n const { start, end } = this.renderProps\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return this.monthShortFormatter(start, true) + ' ' + start.year + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return this.monthShortFormatter(start, true) + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n } else {\n return this.monthLongFormatter(start, false) + ' ' + start.year\n }\n },\n monthLongFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n },\n monthShortFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n\n watch: {\n renderProps: 'checkChange',\n },\n\n mounted () {\n this.updateEventVisibility()\n this.checkChange()\n },\n\n updated () {\n window.requestAnimationFrame(this.updateEventVisibility)\n },\n\n methods: {\n checkChange (): void {\n const { lastStart, lastEnd } = this\n const { start, end } = this.renderProps\n if (!lastStart || !lastEnd ||\n start.date !== lastStart.date ||\n end.date !== lastEnd.date) {\n this.lastStart = start\n this.lastEnd = end\n this.$emit('change', { start, end })\n }\n },\n move (amount = 1): void {\n const moved = copyTimestamp(this.parsedValue)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (this.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, this.parsedCategoryDays)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, this.times.now)\n\n if (this.value instanceof Date) {\n this.$emit('input', timestampToDate(moved))\n } else if (typeof this.value === 'number') {\n this.$emit('input', timestampToDate(moved).getTime())\n } else {\n this.$emit('input', moved.date)\n }\n\n this.$emit('moved', moved)\n },\n next (amount = 1): void {\n this.move(amount)\n },\n prev (amount = 1): void {\n this.move(-amount)\n },\n timeToY (time: VTime, clamp = true): number | false {\n const c = this.$children[0] as any\n\n if (c && c.timeToY) {\n return c.timeToY(time, clamp)\n } else {\n return false\n }\n },\n timeDelta (time: VTime): number | false {\n const c = this.$children[0] as any\n\n if (c && c.timeDelta) {\n return c.timeDelta(time)\n } else {\n return false\n }\n },\n minutesToPixels (minutes: number): number {\n const c = this.$children[0] as any\n\n if (c && c.minutesToPixels) {\n return c.minutesToPixels(minutes)\n } else {\n return -1\n }\n },\n scrollToTime (time: VTime): boolean {\n const c = this.$children[0] as any\n\n if (c && c.scrollToTime) {\n return c.scrollToTime(time)\n } else {\n return false\n }\n },\n parseTimestamp (input: VTimestampInput, required?: false): CalendarTimestamp | null {\n return parseTimestamp(input, required, this.times.now)\n },\n timestampToDate (timestamp: CalendarTimestamp): Date {\n return timestampToDate(timestamp)\n },\n getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!this.noEvents) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!this.categoryHideDynamic || !this.categoryShowAll) {\n let categoryLength = categories.length\n\n this.parsedEvents.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = this.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!this.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!this.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n },\n },\n\n render (): VNode {\n const { start, end, maxDays, component, weekdays, categories } = this.renderProps\n\n return h(component, {\n class: ['v-calendar', {\n 'v-calendar-events': !this.noEvents,\n }],\n ...this.$props,\n start: start.date,\n end: end.date,\n maxDays,\n weekdays,\n categories,\n role: 'grid',\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.updateEventVisibility,\n }],\n ...this.$listeners,\n 'onClick:date': (day: CalendarTimestamp, e?: MouseEvent) => {\n if (this.$listeners.input) {\n this.$emit('input', day.date)\n }\n if (this.$listeners['click:date']) {\n this.$emit('click:date', day, e)\n }\n },\n scopedSlots: this.getScopedSlots(),\n })\n },\n})\n"],"sourceRoot":"","file":"VCalendar.js"}
1
+ {"version":3,"sources":["../../../src/components/VCalendar/VCalendar.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent, VNode, Component, withDirectives } from 'vue'\n// Styles\n// import '../../stylus/components/_calendar-daily.styl'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Mixins\nimport CalendarWithEvents from './mixins/calendar-with-events'\n\n// Util\nimport props from './util/props'\nimport {\n DAYS_IN_MONTH_MAX,\n DAY_MIN,\n DAYS_IN_WEEK,\n parseTimestamp,\n validateTimestamp,\n relativeDays,\n nextDay,\n prevDay,\n copyTimestamp,\n updateFormatted,\n updateWeekday,\n updateRelative,\n getStartOfMonth,\n getEndOfMonth,\n VTime,\n VTimestampInput,\n timestampToDate,\n} from './util/timestamp'\n\n// Calendars\nimport VCalendarMonthly from './VCalendarMonthly'\nimport VCalendarDaily from './VCalendarDaily'\nimport VCalendarWeekly from './VCalendarWeekly'\nimport VCalendarCategory from './VCalendarCategory'\nimport { CalendarTimestamp, CalendarFormatter, CalendarCategory } from 'vuetify/types'\nimport { getParsedCategories } from './util/parser'\n\n// Types\ninterface VCalendarRenderProps {\n start: CalendarTimestamp\n end: CalendarTimestamp\n component: string | Component\n maxDays: number\n weekdays: number[]\n categories: CalendarCategory[]\n}\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar',\n\n\n extends: CalendarWithEvents,\n\n props: {\n ...props.calendar,\n ...props.weeks,\n ...props.intervals,\n ...props.category,\n },\n\n emits: ['change', 'update:modelValue', 'moved', 'click:date'],\n\n data: () => ({\n lastStart: null as CalendarTimestamp | null,\n lastEnd: null as CalendarTimestamp | null,\n }),\n\n computed: {\n parsedValue (): CalendarTimestamp {\n return (validateTimestamp(this.value)\n ? parseTimestamp(this.value, true)\n : (this.parsedStart || this.times.today))\n },\n parsedCategoryDays (): number {\n return parseInt(this.categoryDays) || 1\n },\n renderProps (): VCalendarRenderProps {\n const around = this.parsedValue\n let component: any = null\n let maxDays = this.maxDays\n let weekdays = this.parsedWeekdays\n let categories = this.parsedCategories\n let start = around\n let end = around\n switch (this.type) {\n case 'month':\n component = VCalendarMonthly\n start = getStartOfMonth(around)\n end = getEndOfMonth(around)\n break\n case 'week':\n component = VCalendarDaily\n start = this.getStartOfWeek(around)\n end = this.getEndOfWeek(around)\n maxDays = 7\n break\n case 'day':\n component = VCalendarDaily\n maxDays = 1\n weekdays = [start.weekday]\n break\n case '4day':\n component = VCalendarDaily\n end = relativeDays(copyTimestamp(end), nextDay, 3)\n updateFormatted(end)\n maxDays = 4\n weekdays = [\n start.weekday,\n (start.weekday + 1) % 7,\n (start.weekday + 2) % 7,\n (start.weekday + 3) % 7,\n ]\n break\n case 'custom-weekly':\n component = VCalendarWeekly\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'custom-daily':\n component = VCalendarDaily\n start = this.parsedStart || around\n end = this.parsedEnd\n break\n case 'category':\n const days = this.parsedCategoryDays\n\n component = VCalendarCategory\n end = relativeDays(copyTimestamp(end), nextDay, days)\n updateFormatted(end)\n maxDays = days\n weekdays = []\n\n for (let i = 0; i < days; i++) {\n weekdays.push((start.weekday + i) % 7)\n }\n\n categories = this.getCategoryList(categories)\n break\n default:\n throw new Error(this.type + ' is not a valid Calendar type')\n }\n\n return { component, start, end, maxDays, weekdays, categories }\n },\n eventWeekdays (): number[] {\n return this.renderProps.weekdays\n },\n categoryMode (): boolean {\n return this.type === 'category'\n },\n title (): string {\n const { start, end } = this.renderProps\n const spanYears = start.year !== end.year\n const spanMonths = spanYears || start.month !== end.month\n\n if (spanYears) {\n return this.monthShortFormatter(start, true) + ' ' + start.year + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n }\n\n if (spanMonths) {\n return this.monthShortFormatter(start, true) + ' - ' + this.monthShortFormatter(end, true) + ' ' + end.year\n } else {\n return this.monthLongFormatter(start, false) + ' ' + start.year\n }\n },\n monthLongFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'long',\n })\n },\n monthShortFormatter (): CalendarFormatter {\n return this.getFormatter({\n timeZone: 'UTC', month: 'short',\n })\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n\n watch: {\n renderProps: 'checkChange',\n },\n\n mounted () {\n this.updateEventVisibility()\n this.checkChange()\n },\n\n updated () {\n window.requestAnimationFrame(this.updateEventVisibility)\n },\n\n methods: {\n checkChange (): void {\n const { lastStart, lastEnd } = this\n const { start, end } = this.renderProps\n if (!lastStart || !lastEnd ||\n start.date !== lastStart.date ||\n end.date !== lastEnd.date) {\n this.lastStart = start\n this.lastEnd = end\n this.$emit('change', { start, end })\n }\n },\n move (amount = 1): void {\n const moved = copyTimestamp(this.parsedValue)\n const forward = amount > 0\n const mover = forward ? nextDay : prevDay\n const limit = forward ? DAYS_IN_MONTH_MAX : DAY_MIN\n let times = forward ? amount : -amount\n\n while (--times >= 0) {\n switch (this.type) {\n case 'month':\n moved.day = limit\n mover(moved)\n break\n case 'week':\n relativeDays(moved, mover, DAYS_IN_WEEK)\n break\n case 'day':\n relativeDays(moved, mover, 1)\n break\n case '4day':\n relativeDays(moved, mover, 4)\n break\n case 'category':\n relativeDays(moved, mover, this.parsedCategoryDays)\n break\n }\n }\n\n updateWeekday(moved)\n updateFormatted(moved)\n updateRelative(moved, this.times.now)\n\n if (this.value instanceof Date) {\n this.$emit('update:modelValue', timestampToDate(moved))\n } else if (typeof this.value === 'number') {\n this.$emit('update:modelValue', timestampToDate(moved).getTime())\n } else {\n this.$emit('update:modelValue', moved.date)\n }\n\n this.$emit('moved', moved)\n },\n next (amount = 1): void {\n this.move(amount)\n },\n prev (amount = 1): void {\n this.move(-amount)\n },\n timeToY (time: VTime, clamp = true): number | false {\n const c = this.$refs.calendarChild as any\n\n if (c && c.timeToY) {\n return c.timeToY(time, clamp)\n } else {\n return false\n }\n },\n timeDelta (time: VTime): number | false {\n const c = this.$refs.calendarChild as any\n\n if (c && c.timeDelta) {\n return c.timeDelta(time)\n } else {\n return false\n }\n },\n minutesToPixels (minutes: number): number {\n const c = this.$refs.calendarChild as any\n\n if (c && c.minutesToPixels) {\n return c.minutesToPixels(minutes)\n } else {\n return -1\n }\n },\n scrollToTime (time: VTime): boolean {\n const c = this.$refs.calendarChild as any\n\n if (c && c.scrollToTime) {\n return c.scrollToTime(time)\n } else {\n return false\n }\n },\n parseTimestamp (input: VTimestampInput, required?: false): CalendarTimestamp | null {\n return parseTimestamp(input, required, this.times.now)\n },\n timestampToDate (timestamp: CalendarTimestamp): Date {\n return timestampToDate(timestamp)\n },\n getCategoryList (categories: CalendarCategory[]): CalendarCategory[] {\n if (!this.noEvents) {\n const categoryMap: any = categories.reduce((map: any, category, index) => {\n if (typeof category === 'object' && category.categoryName) map[category.categoryName] = { index, count: 0 }\n else if (typeof category === 'string') map[category] = { index, count: 0 }\n return map\n }, {})\n\n if (!this.categoryHideDynamic || !this.categoryShowAll) {\n let categoryLength = categories.length\n\n this.parsedEvents.forEach(ev => {\n let category = ev.category\n\n if (typeof category !== 'string') {\n category = this.categoryForInvalid\n }\n\n if (!category) {\n return\n }\n\n if (category in categoryMap) {\n categoryMap[category].count++\n } else if (!this.categoryHideDynamic) {\n categoryMap[category] = {\n index: categoryLength++,\n count: 1,\n }\n }\n })\n }\n\n if (!this.categoryShowAll) {\n for (const category in categoryMap) {\n if (categoryMap[category].count === 0) {\n delete categoryMap[category]\n }\n }\n }\n\n categories = categories.filter((category: CalendarCategory) => {\n if (typeof category === 'object' && category.categoryName) {\n return categoryMap.hasOwnProperty(category.categoryName)\n } else if (typeof category === 'string') {\n return categoryMap.hasOwnProperty(category)\n }\n return false\n })\n }\n return categories\n },\n },\n\n render (): VNode {\n const { start, end, maxDays, component, weekdays, categories } = this.renderProps\n\n // Only pass categories prop to VCalendarCategory component\n const props: any = {\n ref: 'calendarChild',\n class: ['v-calendar', {\n 'v-calendar-events': !this.noEvents,\n }],\n start: start.date,\n end: end.date,\n maxDays,\n weekdays,\n role: 'grid',\n 'onClick:date': (day: CalendarTimestamp, e?: MouseEvent) => {\n this.$emit('update:modelValue', day.date)\n this.$emit('click:date', day, e)\n },\n }\n\n // Only add categories prop for VCalendarCategory component\n if (component.name === 'v-calendar-category') {\n props.categories = categories\n }\n\n return withDirectives(h(component, props, this.getScopedSlots()), [\n [Resize, this.updateEventVisibility, '', { quiet: true }],\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendar.js"}
@@ -1,7 +1,6 @@
1
- // Styles
2
- import "../../../src/components/VCalendar/VCalendarCategory.sass"; // Types
1
+ import { h, defineComponent } from 'vue'; // Styles
3
2
 
4
- import { defineComponent } from 'vue'; // Mixins
3
+ import "../../../src/components/VCalendar/VCalendarCategory.sass"; // Mixins
5
4
 
6
5
  import VCalendarDaily from './VCalendarDaily'; // Util
7
6
 
@@ -55,7 +54,7 @@ export default defineComponent({
55
54
  const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category;
56
55
  return h('div', {
57
56
  class: 'v-calendar-category__column-header',
58
- on: this.getDefaultMouseEventHandlers(':day-category', e => {
57
+ ...this.getDefaultMouseEventHandlers(':day-category', e => {
59
58
  return this.getCategoryScope(this.getSlotScope(day), scope.category);
60
59
  })
61
60
  }, [getSlot(this, 'category', scope) || this.genDayHeaderCategoryTitle(headerTitle), getSlot(this, 'day-header', scope)]);
@@ -81,9 +80,8 @@ export default defineComponent({
81
80
  const category = this.parsedCategories[categoryIndex];
82
81
  return h('div', {
83
82
  key: day.date + '-' + categoryIndex,
84
- class: 'v-calendar-daily__day',
85
- class: this.getRelativeClasses(day),
86
- on: this.getDefaultMouseEventHandlers(':time', e => {
83
+ class: ['v-calendar-daily__day', this.getRelativeClasses(day)],
84
+ ...this.getDefaultMouseEventHandlers(':time', e => {
87
85
  return this.getSlotScope(this.getTimestampAtEvent(e, day));
88
86
  })
89
87
  }, [...this.genDayIntervals(index, category), ...this.genDayBody(day, category)]);
@@ -106,7 +104,7 @@ export default defineComponent({
106
104
  })
107
105
  }
108
106
  };
109
- const children = getSlot(this, 'interval', () => this.getCategoryScope(this.getSlotScope(interval), category));
107
+ const children = getSlot(this, 'interval', this.getCategoryScope(this.getSlotScope(interval), category));
110
108
  return h('div', data, children);
111
109
  },
112
110
 
@@ -121,11 +119,11 @@ export default defineComponent({
121
119
  genDayBodyCategory(day, category) {
122
120
  const data = {
123
121
  class: 'v-calendar-category__column',
124
- on: this.getDefaultMouseEventHandlers(':time-category', e => {
122
+ ...this.getDefaultMouseEventHandlers(':time-category', e => {
125
123
  return this.getCategoryScope(this.getSlotScope(this.getTimestampAtEvent(e, day)), category);
126
124
  })
127
125
  };
128
- const children = getSlot(this, 'day-body', () => this.getCategoryScope(this.getSlotScope(day), category));
126
+ const children = getSlot(this, 'day-body', this.getCategoryScope(this.getSlotScope(day), category));
129
127
  return h('div', data, children);
130
128
  }
131
129
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCalendar/VCalendarCategory.ts"],"names":[],"mappings":"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","sourcesContent":["// Styles\nimport './VCalendarCategory.sass'\n\n// Types\nimport { VNode, defineComponent } from 'vue'\n\n// Mixins\nimport VCalendarDaily from './VCalendarDaily'\n\n// Util\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { CalendarCategory, CalendarTimestamp } from 'types'\nimport props from './util/props'\nimport { getParsedCategories } from './util/parser'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-category',\n extends: VCalendarDaily,\n\n props: props.category,\n\n computed: {\n classes (): object {\n return {\n 'v-calendar-daily': true,\n 'v-calendar-category': true,\n ...this.themeClasses,\n }\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n methods: {\n genDayHeader (day: CalendarTimestamp, index: number): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n const scope = {\n week: this.days, ...day, index,\n }\n\n const children = this.parsedCategories.map(category => {\n return this.genDayHeaderCategory(day, this.getCategoryScope(scope, category))\n })\n\n return [h('div', data, children)]\n },\n getCategoryScope (scope: any, category: CalendarCategory) {\n const cat = typeof category === 'object' && category &&\n category.categoryName === this.categoryForInvalid ? null : category\n return {\n ...scope,\n category: cat,\n }\n },\n genDayHeaderCategory (day: CalendarTimestamp, scope: any): VNode {\n const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category\n return h('div', {\n class: 'v-calendar-category__column-header',\n on: this.getDefaultMouseEventHandlers(':day-category', e => {\n return this.getCategoryScope(this.getSlotScope(day), scope.category)\n }),\n }, [\n getSlot(this, 'category', scope) || this.genDayHeaderCategoryTitle(headerTitle),\n getSlot(this, 'day-header', scope),\n ])\n },\n genDayHeaderCategoryTitle (categoryName: string | null) {\n return h('div', {\n class: 'v-calendar-category__category',\n }, categoryName === null ? this.categoryForInvalid : categoryName)\n },\n genDays (): VNode[] {\n const days: VNode[] = []\n this.days.forEach((d, j) => {\n const day = new Array(this.parsedCategories.length || 1)\n day.fill(d)\n days.push(...day.map((v, i) => this.genDay(v, j, i)))\n })\n return days\n },\n genDay (day: CalendarTimestamp, index: number, categoryIndex: number): VNode {\n const category = this.parsedCategories[categoryIndex]\n return h('div', {\n key: day.date + '-' + categoryIndex,\n class: 'v-calendar-daily__day',\n class: this.getRelativeClasses(day),\n on: this.getDefaultMouseEventHandlers(':time', e => {\n return this.getSlotScope(this.getTimestampAtEvent(e, day))\n }),\n }, [\n ...this.genDayIntervals(index, category),\n ...this.genDayBody(day, category),\n ])\n },\n genDayIntervals (index: number, category: CalendarCategory): VNode[] {\n return this.intervals[index].map(v => this.genDayInterval(v, category))\n },\n genDayInterval (interval: CalendarTimestamp, category: CalendarCategory): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const styler = this.intervalStyle || this.intervalStyleDefault\n\n const data = {\n key: interval.time,\n class: 'v-calendar-daily__day-interval',\n style: {\n height,\n ...styler({ ...interval, category }),\n },\n }\n\n const children = getSlot(this, 'interval', () =>\n this.getCategoryScope(this.getSlotScope(interval), category)\n )\n\n return h('div', data, children)\n },\n genDayBody (day: CalendarTimestamp, category: CalendarCategory): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n\n const children = [this.genDayBodyCategory(day, category)]\n\n return [h('div', data, children)]\n },\n genDayBodyCategory (day: CalendarTimestamp, category: CalendarCategory): VNode {\n const data = {\n class: 'v-calendar-category__column',\n on: this.getDefaultMouseEventHandlers(':time-category', e => {\n return this.getCategoryScope(this.getSlotScope(this.getTimestampAtEvent(e, day)), category)\n }),\n }\n\n const children = getSlot(this, 'day-body', () => this.getCategoryScope(this.getSlotScope(day), category))\n\n return h('div', data, children)\n },\n },\n})\n"],"sourceRoot":"","file":"VCalendarCategory.js"}
1
+ {"version":3,"sources":["../../../src/components/VCalendar/VCalendarCategory.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent } from 'vue'\n\n// Styles\nimport './VCalendarCategory.sass'\n\n// Types\nimport { VNode } from 'vue'\n\n// Mixins\nimport VCalendarDaily from './VCalendarDaily'\n\n// Util\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { CalendarCategory, CalendarTimestamp } from 'types'\nimport props from './util/props'\nimport { getParsedCategories } from './util/parser'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-category',\n extends: VCalendarDaily,\n\n props: props.category,\n\n computed: {\n classes (): object {\n return {\n 'v-calendar-daily': true,\n 'v-calendar-category': true,\n ...this.themeClasses,\n }\n },\n parsedCategories (): CalendarCategory[] {\n return getParsedCategories(this.categories, this.categoryText)\n },\n },\n methods: {\n genDayHeader (day: CalendarTimestamp, index: number): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n const scope = {\n week: this.days, ...day, index,\n }\n\n const children = this.parsedCategories.map(category => {\n return this.genDayHeaderCategory(day, this.getCategoryScope(scope, category))\n })\n\n return [h('div', data, children)]\n },\n getCategoryScope (scope: any, category: CalendarCategory) {\n const cat = typeof category === 'object' && category &&\n category.categoryName === this.categoryForInvalid ? null : category\n return {\n ...scope,\n category: cat,\n }\n },\n genDayHeaderCategory (day: CalendarTimestamp, scope: any): VNode {\n const headerTitle = typeof scope.category === 'object' ? scope.category.categoryName : scope.category\n return h('div', {\n class: 'v-calendar-category__column-header',\n ...this.getDefaultMouseEventHandlers(':day-category', e => {\n return this.getCategoryScope(this.getSlotScope(day), scope.category)\n }),\n }, [\n getSlot(this, 'category', scope) || this.genDayHeaderCategoryTitle(headerTitle),\n getSlot(this, 'day-header', scope),\n ])\n },\n genDayHeaderCategoryTitle (categoryName: string | null) {\n return h('div', {\n class: 'v-calendar-category__category',\n }, categoryName === null ? this.categoryForInvalid : categoryName)\n },\n genDays (): VNode[] {\n const days: VNode[] = []\n this.days.forEach((d, j) => {\n const day = new Array(this.parsedCategories.length || 1)\n day.fill(d)\n days.push(...day.map((v, i) => this.genDay(v, j, i)))\n })\n return days\n },\n genDay (day: CalendarTimestamp, index: number, categoryIndex: number): VNode {\n const category = this.parsedCategories[categoryIndex]\n return h('div', {\n key: day.date + '-' + categoryIndex,\n class: ['v-calendar-daily__day', this.getRelativeClasses(day)],\n ...this.getDefaultMouseEventHandlers(':time', e => {\n return this.getSlotScope(this.getTimestampAtEvent(e, day))\n }),\n }, [\n ...this.genDayIntervals(index, category),\n ...this.genDayBody(day, category),\n ])\n },\n genDayIntervals (index: number, category: CalendarCategory): VNode[] {\n return this.intervals[index].map(v => this.genDayInterval(v, category))\n },\n genDayInterval (interval: CalendarTimestamp, category: CalendarCategory): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const styler = this.intervalStyle || this.intervalStyleDefault\n\n const data = {\n key: interval.time,\n class: 'v-calendar-daily__day-interval',\n style: {\n height,\n ...styler({ ...interval, category }),\n },\n }\n\n const children = getSlot(this, 'interval',\n this.getCategoryScope(this.getSlotScope(interval), category)\n )\n\n return h('div', data, children)\n },\n genDayBody (day: CalendarTimestamp, category: CalendarCategory): VNode[] {\n const data = {\n class: 'v-calendar-category__columns',\n }\n\n const children = [this.genDayBodyCategory(day, category)]\n\n return [h('div', data, children)]\n },\n genDayBodyCategory (day: CalendarTimestamp, category: CalendarCategory): VNode {\n const data = {\n class: 'v-calendar-category__column',\n ...this.getDefaultMouseEventHandlers(':time-category', e => {\n return this.getCategoryScope(this.getSlotScope(this.getTimestampAtEvent(e, day)), category)\n }),\n }\n\n const children = getSlot(this, 'day-body', this.getCategoryScope(this.getSlotScope(day), category))\n\n return h('div', data, children)\n },\n },\n})\n"],"sourceRoot":"","file":"VCalendarCategory.js"}
@@ -1,8 +1,6 @@
1
- import { h } from 'vue'; // Styles
1
+ import { h, defineComponent, withDirectives } from 'vue'; // Styles
2
2
 
3
- import "../../../src/components/VCalendar/VCalendarDaily.sass"; // Types
4
-
5
- import { defineComponent } from 'vue'; // Directives
3
+ import "../../../src/components/VCalendar/VCalendarDaily.sass"; // Directives
6
4
 
7
5
  import Resize from '../../directives/resize'; // Components
8
6
 
@@ -16,9 +14,6 @@ import { convertToUnit, getSlot } from '../../util/helpers';
16
14
  export default defineComponent({
17
15
  name: 'v-calendar-daily',
18
16
  extends: CalendarWithIntervals,
19
- directives: {
20
- Resize
21
- },
22
17
  data: () => ({
23
18
  scrollPush: 0
24
19
  }),
@@ -77,9 +72,8 @@ export default defineComponent({
77
72
  genHeadDay(day, index) {
78
73
  return h('div', {
79
74
  key: day.date,
80
- class: 'v-calendar-daily_head-day',
81
- class: this.getRelativeClasses(day),
82
- on: this.getDefaultMouseEventHandlers(':day', nativeEvent => {
75
+ class: ['v-calendar-daily_head-day', this.getRelativeClasses(day)],
76
+ ...this.getDefaultMouseEventHandlers(':day', nativeEvent => {
83
77
  return {
84
78
  nativeEvent,
85
79
  ...this.getSlotScope(day)
@@ -89,11 +83,11 @@ export default defineComponent({
89
83
  },
90
84
 
91
85
  genDayHeader(day, index) {
92
- return getSlot(this, 'day-header', () => ({
86
+ return getSlot(this, 'day-header', {
93
87
  week: this.days,
94
88
  ...day,
95
89
  index
96
- })) || [];
90
+ }) || [];
97
91
  },
98
92
 
99
93
  genHeadWeekday(day) {
@@ -132,7 +126,9 @@ export default defineComponent({
132
126
  ...day
133
127
  };
134
128
  })
135
- }, this.dayFormatter(day, false));
129
+ }, {
130
+ default: () => this.dayFormatter(day, false)
131
+ });
136
132
  },
137
133
 
138
134
  genBody() {
@@ -171,9 +167,8 @@ export default defineComponent({
171
167
  genDay(day, index) {
172
168
  return h('div', {
173
169
  key: day.date,
174
- class: 'v-calendar-daily__day',
175
- class: this.getRelativeClasses(day),
176
- on: this.getDefaultMouseEventHandlers(':time', nativeEvent => {
170
+ class: ['v-calendar-daily__day', this.getRelativeClasses(day)],
171
+ ...this.getDefaultMouseEventHandlers(':time', nativeEvent => {
177
172
  return {
178
173
  nativeEvent,
179
174
  ...this.getSlotScope(this.getTimestampAtEvent(nativeEvent, day))
@@ -183,7 +178,7 @@ export default defineComponent({
183
178
  },
184
179
 
185
180
  genDayBody(day) {
186
- return getSlot(this, 'day-body', () => this.getSlotScope(day)) || [];
181
+ return getSlot(this, 'day-body', this.getSlotScope(day)) || [];
187
182
  },
188
183
 
189
184
  genDayIntervals(index) {
@@ -201,7 +196,7 @@ export default defineComponent({
201
196
  ...styler(interval)
202
197
  }
203
198
  };
204
- const children = getSlot(this, 'interval', () => this.getSlotScope(interval));
199
+ const children = getSlot(this, 'interval', this.getSlotScope(interval));
205
200
  return h('div', data, children);
206
201
  },
207
202
 
@@ -212,7 +207,7 @@ export default defineComponent({
212
207
  style: {
213
208
  width
214
209
  },
215
- on: this.getDefaultMouseEventHandlers(':interval', nativeEvent => {
210
+ ...this.getDefaultMouseEventHandlers(':interval', nativeEvent => {
216
211
  return {
217
212
  nativeEvent,
218
213
  ...this.getTimestampAtEvent(nativeEvent, this.parsedStart)
@@ -247,21 +242,14 @@ export default defineComponent({
247
242
  },
248
243
 
249
244
  render() {
250
- return h('div', {
245
+ return withDirectives(h('div', {
251
246
  class: this.classes,
252
- on: {
253
- dragstart: e => {
254
- e.preventDefault();
255
- }
256
- },
257
- directives: [{
258
- modifiers: {
259
- quiet: true
260
- },
261
- name: 'resize',
262
- value: this.onResize
263
- }]
264
- }, [!this.hideHeader ? this.genHead() : '', this.genBody()]);
247
+ onDragstart: e => {
248
+ e.preventDefault();
249
+ }
250
+ }, [!this.hideHeader ? this.genHead() : '', this.genBody()]), [[Resize, this.onResize, '', {
251
+ quiet: true
252
+ }]]);
265
253
  }
266
254
 
267
255
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCalendar/VCalendarDaily.ts"],"names":[],"mappings":"AAAA,SAAQ,CAAR,QAAgB,KAAhB,C,CACA;;AACA,OAAO,uDAAP,C,CAEA;;AACA,SAAgB,eAAhB,QAAuC,KAAvC,C,CAEA;;AACA,OAAO,MAAP,MAAmB,yBAAnB,C,CAEA;;AACA,OAAO,IAAP,MAAiB,SAAjB,C,CAEA;;AACA,OAAO,qBAAP,MAAkC,kCAAlC,C,CAEA;;AACA,SAAS,aAAT,EAAwB,OAAxB,QAAuC,oBAAvC;AAGA;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,kBADuB;AAE7B,EAAA,OAAO,EAAE,qBAFoB;AAI7B,EAAA,UAAU,EAAE;AAAE,IAAA;AAAF,GAJiB;AAM7B,EAAA,IAAI,EAAE,OAAO;AACX,IAAA,UAAU,EAAE;AADD,GAAP,CANuB;AAU7B,EAAA,QAAQ,EAAE;AACR,IAAA,OAAO,GAAA;AACL,aAAO;AACL,4BAAoB,IADf;AAEL,WAAG,KAAK;AAFH,OAAP;AAID;;AANO,GAVmB;;AAmB7B,EAAA,OAAO,GAAA;AACL,SAAK,IAAL;AACD,GArB4B;;AAuB7B,EAAA,OAAO,EAAE;AACP,IAAA,IAAI,GAAA;AACF,WAAK,SAAL,CAAe,KAAK,QAApB;AACD,KAHM;;AAIP,IAAA,QAAQ,GAAA;AACN,WAAK,UAAL,GAAkB,KAAK,aAAL,EAAlB;AACD,KANM;;AAOP,IAAA,aAAa,GAAA;AACX,YAAM,IAAI,GAAG,KAAK,KAAL,CAAW,UAAxB;AACA,YAAM,IAAI,GAAG,KAAK,KAAL,CAAW,IAAxB;AAEA,aAAO,IAAI,IAAI,IAAR,GAAgB,IAAI,CAAC,WAAL,GAAmB,IAAI,CAAC,WAAxC,GAAuD,CAA9D;AACD,KAZM;;AAaP,IAAA,OAAO,GAAA;AACL,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,wBADO;AAEd,QAAA,KAAK,EAAE;AACL,UAAA,WAAW,EAAE,KAAK,UAAL,GAAkB;AAD1B;AAFO,OAAR,EAKL,CACD,KAAK,gBAAL,EADC,EAED,GAAG,KAAK,WAAL,EAFF,CALK,CAAR;AASD,KAvBM;;AAwBP,IAAA,gBAAgB,GAAA;AACd,YAAM,KAAK,GAAuB,aAAa,CAAC,KAAK,aAAN,CAA/C;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE,kCADO;AAEd,QAAA,KAAK,EAAE;AACL,UAAA;AADK;AAFO,OAAR,EAKL,OAAO,CAAC,IAAD,EAAO,iBAAP,CALF,CAAR;AAMD,KAjCM;;AAkCP,IAAA,WAAW,GAAA;AACT,aAAO,KAAK,IAAL,CAAU,GAAV,CAAc,KAAK,UAAnB,CAAP;AACD,KApCM;;AAqCP,IAAA,UAAU,CAAE,GAAF,EAA0B,KAA1B,EAAuC;AAC/C,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,GAAG,CAAC,IADK;AAEd,QAAA,KAAK,EAAE,2BAFO;AAGd,QAAA,KAAK,EAAE,KAAK,kBAAL,CAAwB,GAAxB,CAHO;AAId,QAAA,EAAE,EAAE,KAAK,4BAAL,CAAkC,MAAlC,EAA0C,WAAW,IAAG;AAC1D,iBAAO;AAAE,YAAA,WAAF;AAAe,eAAG,KAAK,YAAL,CAAkB,GAAlB;AAAlB,WAAP;AACD,SAFG;AAJU,OAAR,EAOL,CACD,KAAK,cAAL,CAAoB,GAApB,CADC,EAED,KAAK,eAAL,CAAqB,GAArB,CAFC,EAGD,GAAG,KAAK,YAAL,CAAkB,GAAlB,EAAuB,KAAvB,CAHF,CAPK,CAAR;AAYD,KAlDM;;AAmDP,IAAA,YAAY,CAAE,GAAF,EAA0B,KAA1B,EAAuC;AACjD,aAAO,OAAO,CAAC,IAAD,EAAO,YAAP,EAAqB,OAAO;AACxC,QAAA,IAAI,EAAE,KAAK,IAD6B;AACvB,WAAG,GADoB;AACf,QAAA;AADe,OAAP,CAArB,CAAP,IAEA,EAFP;AAGD,KAvDM;;AAwDP,IAAA,cAAc,CAAE,GAAF,EAAwB;AACpC,YAAM,KAAK,GAAG,GAAG,CAAC,OAAJ,GAAc,KAAK,KAAnB,GAA2B,SAAzC;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ,KAAK,YAAL,CAAkB,KAAlB,EAAyB;AACvC,QAAA,KAAK,EAAE;AADgC,OAAzB,CAAR,EAEJ,KAAK,gBAAL,CAAsB,GAAtB,EAA2B,KAAK,aAAhC,CAFI,CAAR;AAGD,KA9DM;;AA+DP,IAAA,eAAe,CAAE,GAAF,EAAwB;AACrC,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,OAAO,CAAC,IAAD,EAAO,kBAAP,EAA2B,GAA3B,CAAP,IAA0C,CAAC,KAAK,gBAAL,CAAsB,GAAtB,CAAD,CAFrC,CAAR;AAGD,KAnEM;;AAoEP,IAAA,gBAAgB,CAAE,GAAF,EAAwB;AACtC,YAAM,KAAK,GAAG,GAAG,CAAC,OAAJ,GAAc,KAAK,KAAnB,GAA2B,aAAzC;AAEA,aAAO,CAAC,CAAC,IAAD,EAAO;AACb,QAAA,KADa;AAEb,QAAA,GAAG,EAAE,IAFQ;AAGb,QAAA,SAAS,EAAE,IAHE;AAIb,WAAG,KAAK,qBAAL,CAA2B;AAC5B,wBAAc;AAAE,YAAA,KAAK,EAAE,OAAT;AAAkB,YAAA,IAAI,EAAE;AAAxB,WADc;AAE5B,8BAAoB;AAAE,YAAA,KAAK,EAAE,aAAT;AAAwB,YAAA,IAAI,EAAE,IAA9B;AAAoC,YAAA,OAAO,EAAE,IAA7C;AAAmD,YAAA,MAAM,EAAE;AAA3D;AAFQ,SAA3B,EAGA,WAAW,IAAG;AACf,iBAAO;AAAE,YAAA,WAAF;AAAe,eAAG;AAAlB,WAAP;AACD,SALE;AAJU,OAAP,EAUL,KAAK,YAAL,CAAkB,GAAlB,EAAuB,KAAvB,CAVK,CAAR;AAWD,KAlFM;;AAmFP,IAAA,OAAO,GAAA;AACL,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,CACD,KAAK,aAAL,EADC,CAFK,CAAR;AAKD,KAzFM;;AA0FP,IAAA,aAAa,GAAA;AACX,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,YADS;AAEd,QAAA,KAAK,EAAE;AAFO,OAAR,EAGL,CACD,KAAK,OAAL,EADC,CAHK,CAAR;AAMD,KAjGM;;AAkGP,IAAA,OAAO,GAAA;AACL,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,MADS;AAEd,QAAA,KAAK,EAAE,wBAFO;AAGd,QAAA,KAAK,EAAE;AACL,UAAA,MAAM,EAAE,aAAa,CAAC,KAAK,UAAN;AADhB;AAHO,OAAR,EAML,CACD,KAAK,eAAL,EADC,CANK,CAAR;AASD,KA5GM;;AA6GP,IAAA,eAAe,GAAA;AACb,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,KAAK,EAAE;AADO,OAAR,EAEL,CACD,KAAK,gBAAL,EADC,EAED,GAAG,KAAK,OAAL,EAFF,CAFK,CAAR;AAMD,KApHM;;AAqHP,IAAA,OAAO,GAAA;AACL,aAAO,KAAK,IAAL,CAAU,GAAV,CAAc,KAAK,MAAnB,CAAP;AACD,KAvHM;;AAwHP,IAAA,MAAM,CAAE,GAAF,EAA0B,KAA1B,EAAuC;AAC3C,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,GAAG,CAAC,IADK;AAEd,QAAA,KAAK,EAAE,uBAFO;AAGd,QAAA,KAAK,EAAE,KAAK,kBAAL,CAAwB,GAAxB,CAHO;AAId,QAAA,EAAE,EAAE,KAAK,4BAAL,CAAkC,OAAlC,EAA2C,WAAW,IAAG;AAC3D,iBAAO;AAAE,YAAA,WAAF;AAAe,eAAG,KAAK,YAAL,CAAkB,KAAK,mBAAL,CAAyB,WAAzB,EAAsC,GAAtC,CAAlB;AAAlB,WAAP;AACD,SAFG;AAJU,OAAR,EAOL,CACD,GAAG,KAAK,eAAL,CAAqB,KAArB,CADF,EAED,GAAG,KAAK,UAAL,CAAgB,GAAhB,CAFF,CAPK,CAAR;AAWD,KApIM;;AAqIP,IAAA,UAAU,CAAE,GAAF,EAAwB;AAChC,aAAO,OAAO,CAAC,IAAD,EAAO,UAAP,EAAmB,MAAM,KAAK,YAAL,CAAkB,GAAlB,CAAzB,CAAP,IAA2D,EAAlE;AACD,KAvIM;;AAwIP,IAAA,eAAe,CAAE,KAAF,EAAe;AAC5B,aAAO,KAAK,SAAL,CAAe,KAAf,EAAsB,GAAtB,CAA0B,KAAK,cAA/B,CAAP;AACD,KA1IM;;AA2IP,IAAA,cAAc,CAAE,QAAF,EAA6B;AACzC,YAAM,MAAM,GAAuB,aAAa,CAAC,KAAK,cAAN,CAAhD;AACA,YAAM,MAAM,GAAG,KAAK,aAAL,IAAsB,KAAK,oBAA1C;AAEA,YAAM,IAAI,GAAG;AACX,QAAA,GAAG,EAAE,QAAQ,CAAC,IADH;AAEX,QAAA,KAAK,EAAE,gCAFI;AAGX,QAAA,KAAK,EAAE;AACL,UAAA,MADK;AAEL,aAAG,MAAM,CAAC,QAAD;AAFJ;AAHI,OAAb;AAUA,YAAM,QAAQ,GAAG,OAAO,CAAC,IAAD,EAAO,UAAP,EAAmB,MAAM,KAAK,YAAL,CAAkB,QAAlB,CAAzB,CAAxB;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,QAAd,CAAR;AACD,KA5JM;;AA6JP,IAAA,gBAAgB,GAAA;AACd,YAAM,KAAK,GAAuB,aAAa,CAAC,KAAK,aAAN,CAA/C;AACA,YAAM,IAAI,GAAG;AACX,QAAA,KAAK,EAAE,kCADI;AAEX,QAAA,KAAK,EAAE;AACL,UAAA;AADK,SAFI;AAKX,QAAA,EAAE,EAAE,KAAK,4BAAL,CAAkC,WAAlC,EAA+C,WAAW,IAAG;AAC/D,iBAAO;AAAE,YAAA,WAAF;AAAe,eAAG,KAAK,mBAAL,CAAyB,WAAzB,EAAsC,KAAK,WAA3C;AAAlB,WAAP;AACD,SAFG;AALO,OAAb;AAUA,aAAO,CAAC,CAAC,KAAD,EAAQ,IAAR,EAAc,KAAK,iBAAL,EAAd,CAAR;AACD,KA1KM;;AA2KP,IAAA,iBAAiB,GAAA;AACf,UAAI,CAAC,KAAK,SAAL,CAAe,MAApB,EAA4B,OAAO,IAAP;AAE5B,aAAO,KAAK,SAAL,CAAe,CAAf,EAAkB,GAAlB,CAAsB,KAAK,gBAA3B,CAAP;AACD,KA/KM;;AAgLP,IAAA,gBAAgB,CAAE,QAAF,EAA6B;AAC3C,YAAM,MAAM,GAAuB,aAAa,CAAC,KAAK,cAAN,CAAhD;AACA,YAAM,KAAK,GAAY,KAAK,cAA5B;AACA,YAAM,MAAM,GAAG,KAAK,iBAAL,IAA0B,KAAK,wBAA9C;AACA,YAAM,IAAI,GAAG,MAAM,CAAC,QAAD,CAAnB;AACA,YAAM,KAAK,GAAG,IAAI,GAAG,KAAK,iBAAL,CAAuB,QAAvB,EAAiC,KAAjC,CAAH,GAA6C,SAA/D;AAEA,aAAO,CAAC,CAAC,KAAD,EAAQ;AACd,QAAA,GAAG,EAAE,QAAQ,CAAC,IADA;AAEd,QAAA,KAAK,EAAE,4BAFO;AAGd,QAAA,KAAK,EAAE;AACL,UAAA;AADK;AAHO,OAAR,EAML,CACD,CAAC,CAAC,KAAD,EAAQ;AACP,QAAA,KAAK,EAAE;AADA,OAAR,EAEE,KAFF,CADA,CANK,CAAR;AAWD;;AAlMM,GAvBoB;;AA4N7B,EAAA,MAAM,GAAA;AACJ,WAAO,CAAC,CAAC,KAAD,EAAQ;AACd,MAAA,KAAK,EAAE,KAAK,OADE;AAEd,MAAA,EAAE,EAAE;AACF,QAAA,SAAS,EAAG,CAAD,IAAkB;AAC3B,UAAA,CAAC,CAAC,cAAF;AACD;AAHC,OAFU;AAOd,MAAA,UAAU,EAAE,CAAC;AACX,QAAA,SAAS,EAAE;AAAE,UAAA,KAAK,EAAE;AAAT,SADA;AAEX,QAAA,IAAI,EAAE,QAFK;AAGX,QAAA,KAAK,EAAE,KAAK;AAHD,OAAD;AAPE,KAAR,EAYL,CACD,CAAC,KAAK,UAAN,GAAmB,KAAK,OAAL,EAAnB,GAAoC,EADnC,EAED,KAAK,OAAL,EAFC,CAZK,CAAR;AAgBD;;AA7O4B,CAAD,CAA9B","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VCalendarDaily.sass'\n\n// Types\nimport { VNode, defineComponent } from 'vue'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Components\nimport VBtn from '../VBtn'\n\n// Mixins\nimport CalendarWithIntervals from './mixins/calendar-with-intervals'\n\n// Util\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { CalendarTimestamp } from 'vuetify/types'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-daily',\n extends: CalendarWithIntervals,\n\n directives: { Resize },\n\n data: () => ({\n scrollPush: 0,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-calendar-daily': true,\n ...this.themeClasses,\n }\n },\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init () {\n this.$nextTick(this.onResize)\n },\n onResize () {\n this.scrollPush = this.getScrollPush()\n },\n getScrollPush (): number {\n const area = this.$refs.scrollArea as HTMLElement\n const pane = this.$refs.pane as HTMLElement\n\n return area && pane ? (area.offsetWidth - pane.offsetWidth) : 0\n },\n genHead (): VNode {\n return h('div', {\n class: 'v-calendar-daily__head',\n style: {\n marginRight: this.scrollPush + 'px',\n },\n }, [\n this.genHeadIntervals(),\n ...this.genHeadDays(),\n ])\n },\n genHeadIntervals (): VNode {\n const width: string | undefined = convertToUnit(this.intervalWidth)\n\n return h('div', {\n class: 'v-calendar-daily__intervals-head',\n style: {\n width,\n },\n }, getSlot(this, 'interval-header'))\n },\n genHeadDays (): VNode[] {\n return this.days.map(this.genHeadDay)\n },\n genHeadDay (day: CalendarTimestamp, index: number): VNode {\n return h('div', {\n key: day.date,\n class: 'v-calendar-daily_head-day',\n class: this.getRelativeClasses(day),\n on: this.getDefaultMouseEventHandlers(':day', nativeEvent => {\n return { nativeEvent, ...this.getSlotScope(day) }\n }),\n }, [\n this.genHeadWeekday(day),\n this.genHeadDayLabel(day),\n ...this.genDayHeader(day, index),\n ])\n },\n genDayHeader (day: CalendarTimestamp, index: number): VNode[] {\n return getSlot(this, 'day-header', () => ({\n week: this.days, ...day, index,\n })) || []\n },\n genHeadWeekday (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n class: 'v-calendar-daily_head-weekday',\n }), this.weekdayFormatter(day, this.shortWeekdays))\n },\n genHeadDayLabel (day: CalendarTimestamp): VNode {\n return h('div', {\n class: 'v-calendar-daily_head-day-label',\n }, getSlot(this, 'day-label-header', day) || [this.genHeadDayButton(day)])\n },\n genHeadDayButton (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : 'transparent'\n\n return h(VBtn, {\n color,\n fab: true,\n depressed: true,\n ...this.getMouseEventHandlers({\n 'click:date': { event: 'click', stop: true },\n 'contextmenu:date': { event: 'contextmenu', stop: true, prevent: true, result: false },\n }, nativeEvent => {\n return { nativeEvent, ...day }\n }),\n }, this.dayFormatter(day, false))\n },\n genBody (): VNode {\n return h('div', {\n class: 'v-calendar-daily__body',\n }, [\n this.genScrollArea(),\n ])\n },\n genScrollArea (): VNode {\n return h('div', {\n ref: 'scrollArea',\n class: 'v-calendar-daily__scroll-area',\n }, [\n this.genPane(),\n ])\n },\n genPane (): VNode {\n return h('div', {\n ref: 'pane',\n class: 'v-calendar-daily__pane',\n style: {\n height: convertToUnit(this.bodyHeight),\n },\n }, [\n this.genDayContainer(),\n ])\n },\n genDayContainer (): VNode {\n return h('div', {\n class: 'v-calendar-daily__day-container',\n }, [\n this.genBodyIntervals(),\n ...this.genDays(),\n ])\n },\n genDays (): VNode[] {\n return this.days.map(this.genDay)\n },\n genDay (day: CalendarTimestamp, index: number): VNode {\n return h('div', {\n key: day.date,\n class: 'v-calendar-daily__day',\n class: this.getRelativeClasses(day),\n on: this.getDefaultMouseEventHandlers(':time', nativeEvent => {\n return { nativeEvent, ...this.getSlotScope(this.getTimestampAtEvent(nativeEvent, day)) }\n }),\n }, [\n ...this.genDayIntervals(index),\n ...this.genDayBody(day),\n ])\n },\n genDayBody (day: CalendarTimestamp): VNode[] {\n return getSlot(this, 'day-body', () => this.getSlotScope(day)) || []\n },\n genDayIntervals (index: number): VNode[] {\n return this.intervals[index].map(this.genDayInterval)\n },\n genDayInterval (interval: CalendarTimestamp): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const styler = this.intervalStyle || this.intervalStyleDefault\n\n const data = {\n key: interval.time,\n class: 'v-calendar-daily__day-interval',\n style: {\n height,\n ...styler(interval),\n },\n\n }\n\n const children = getSlot(this, 'interval', () => this.getSlotScope(interval))\n\n return h('div', data, children)\n },\n genBodyIntervals (): VNode {\n const width: string | undefined = convertToUnit(this.intervalWidth)\n const data = {\n class: 'v-calendar-daily__intervals-body',\n style: {\n width,\n },\n on: this.getDefaultMouseEventHandlers(':interval', nativeEvent => {\n return { nativeEvent, ...this.getTimestampAtEvent(nativeEvent, this.parsedStart) }\n }),\n }\n\n return h('div', data, this.genIntervalLabels())\n },\n genIntervalLabels (): VNode[] | null {\n if (!this.intervals.length) return null\n\n return this.intervals[0].map(this.genIntervalLabel)\n },\n genIntervalLabel (interval: CalendarTimestamp): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const short: boolean = this.shortIntervals\n const shower = this.showIntervalLabel || this.showIntervalLabelDefault\n const show = shower(interval)\n const label = show ? this.intervalFormatter(interval, short) : undefined\n\n return h('div', {\n key: interval.time,\n class: 'v-calendar-daily__interval',\n style: {\n height,\n },\n }, [\n h('div', {\n class: 'v-calendar-daily__interval-text',\n }, label),\n ])\n },\n },\n\n render (): VNode {\n return h('div', {\n class: this.classes,\n on: {\n dragstart: (e: MouseEvent) => {\n e.preventDefault()\n },\n },\n directives: [{\n modifiers: { quiet: true },\n name: 'resize',\n value: this.onResize,\n }],\n }, [\n !this.hideHeader ? this.genHead() : '',\n this.genBody(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendarDaily.js"}
1
+ {"version":3,"sources":["../../../src/components/VCalendar/VCalendarDaily.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent, withDirectives, VNode } from 'vue'\n// Styles\nimport './VCalendarDaily.sass'\n\n// Directives\nimport Resize from '../../directives/resize'\n\n// Components\nimport VBtn from '../VBtn'\n\n// Mixins\nimport CalendarWithIntervals from './mixins/calendar-with-intervals'\n\n// Util\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { CalendarTimestamp } from 'vuetify/types'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-daily',\n\n\n extends: CalendarWithIntervals,\n\n data: () => ({\n scrollPush: 0,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-calendar-daily': true,\n ...this.themeClasses,\n }\n },\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init () {\n this.$nextTick(this.onResize)\n },\n onResize () {\n this.scrollPush = this.getScrollPush()\n },\n getScrollPush (): number {\n const area = this.$refs.scrollArea as HTMLElement\n const pane = this.$refs.pane as HTMLElement\n\n return area && pane ? (area.offsetWidth - pane.offsetWidth) : 0\n },\n genHead (): VNode {\n return h('div', {\n class: 'v-calendar-daily__head',\n style: {\n marginRight: this.scrollPush + 'px',\n },\n }, [\n this.genHeadIntervals(),\n ...this.genHeadDays(),\n ])\n },\n genHeadIntervals (): VNode {\n const width: string | undefined = convertToUnit(this.intervalWidth)\n\n return h('div', {\n class: 'v-calendar-daily__intervals-head',\n style: {\n width,\n },\n }, getSlot(this, 'interval-header'))\n },\n genHeadDays (): VNode[] {\n return this.days.map(this.genHeadDay)\n },\n genHeadDay (day: CalendarTimestamp, index: number): VNode {\n return h('div', {\n key: day.date,\n class: ['v-calendar-daily_head-day', this.getRelativeClasses(day)],\n ...this.getDefaultMouseEventHandlers(':day', nativeEvent => {\n return { nativeEvent, ...this.getSlotScope(day) }\n }),\n }, [\n this.genHeadWeekday(day),\n this.genHeadDayLabel(day),\n ...this.genDayHeader(day, index),\n ])\n },\n genDayHeader (day: CalendarTimestamp, index: number): VNode[] {\n return getSlot(this, 'day-header', {\n week: this.days, ...day, index,\n }) || []\n },\n genHeadWeekday (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n class: 'v-calendar-daily_head-weekday',\n }), this.weekdayFormatter(day, this.shortWeekdays))\n },\n genHeadDayLabel (day: CalendarTimestamp): VNode {\n return h('div', {\n class: 'v-calendar-daily_head-day-label',\n }, getSlot(this, 'day-label-header', day) || [this.genHeadDayButton(day)])\n },\n genHeadDayButton (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : 'transparent'\n\n return h(VBtn, {\n color,\n fab: true,\n depressed: true,\n ...this.getMouseEventHandlers({\n 'click:date': { event: 'click', stop: true },\n 'contextmenu:date': { event: 'contextmenu', stop: true, prevent: true, result: false },\n }, nativeEvent => {\n return { nativeEvent, ...day }\n }),\n }, { default: () => this.dayFormatter(day, false) })\n },\n genBody (): VNode {\n return h('div', {\n class: 'v-calendar-daily__body',\n }, [\n this.genScrollArea(),\n ])\n },\n genScrollArea (): VNode {\n return h('div', {\n ref: 'scrollArea',\n class: 'v-calendar-daily__scroll-area',\n }, [\n this.genPane(),\n ])\n },\n genPane (): VNode {\n return h('div', {\n ref: 'pane',\n class: 'v-calendar-daily__pane',\n style: {\n height: convertToUnit(this.bodyHeight),\n },\n }, [\n this.genDayContainer(),\n ])\n },\n genDayContainer (): VNode {\n return h('div', {\n class: 'v-calendar-daily__day-container',\n }, [\n this.genBodyIntervals(),\n ...this.genDays(),\n ])\n },\n genDays (): VNode[] {\n return this.days.map(this.genDay)\n },\n genDay (day: CalendarTimestamp, index: number): VNode {\n return h('div', {\n key: day.date,\n class: ['v-calendar-daily__day', this.getRelativeClasses(day)],\n ...this.getDefaultMouseEventHandlers(':time', nativeEvent => {\n return { nativeEvent, ...this.getSlotScope(this.getTimestampAtEvent(nativeEvent, day)) }\n }),\n }, [\n ...this.genDayIntervals(index),\n ...this.genDayBody(day),\n ])\n },\n genDayBody (day: CalendarTimestamp): VNode[] {\n return getSlot(this, 'day-body', this.getSlotScope(day)) || []\n },\n genDayIntervals (index: number): VNode[] {\n return this.intervals[index].map(this.genDayInterval)\n },\n genDayInterval (interval: CalendarTimestamp): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const styler = this.intervalStyle || this.intervalStyleDefault\n\n const data = {\n key: interval.time,\n class: 'v-calendar-daily__day-interval',\n style: {\n height,\n ...styler(interval),\n },\n\n }\n\n const children = getSlot(this, 'interval', this.getSlotScope(interval))\n\n return h('div', data, children)\n },\n genBodyIntervals (): VNode {\n const width: string | undefined = convertToUnit(this.intervalWidth)\n const data = {\n class: 'v-calendar-daily__intervals-body',\n style: {\n width,\n },\n ...this.getDefaultMouseEventHandlers(':interval', nativeEvent => {\n return { nativeEvent, ...this.getTimestampAtEvent(nativeEvent, this.parsedStart) }\n }),\n }\n\n return h('div', data, this.genIntervalLabels())\n },\n genIntervalLabels (): VNode[] | null {\n if (!this.intervals.length) return null\n\n return this.intervals[0].map(this.genIntervalLabel)\n },\n genIntervalLabel (interval: CalendarTimestamp): VNode {\n const height: string | undefined = convertToUnit(this.intervalHeight)\n const short: boolean = this.shortIntervals\n const shower = this.showIntervalLabel || this.showIntervalLabelDefault\n const show = shower(interval)\n const label = show ? this.intervalFormatter(interval, short) : undefined\n\n return h('div', {\n key: interval.time,\n class: 'v-calendar-daily__interval',\n style: {\n height,\n },\n }, [\n h('div', {\n class: 'v-calendar-daily__interval-text',\n }, label),\n ])\n },\n },\n\n render (): VNode {\n return withDirectives(h('div', {\n class: this.classes,\n onDragstart: (e: MouseEvent) => {\n e.preventDefault()\n },\n }, [\n !this.hideHeader ? this.genHead() : '',\n this.genBody(),\n ]), [\n [Resize, this.onResize, '', { quiet: true }],\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendarDaily.js"}
@@ -1,10 +1,10 @@
1
- // Styles
1
+ import { defineComponent } from 'vue'; // Styles
2
+
2
3
  import "../../../src/components/VCalendar/VCalendarWeekly.sass"; // Mixins
3
4
 
4
5
  import VCalendarWeekly from './VCalendarWeekly'; // Util
5
6
 
6
7
  import { parseTimestamp, getStartOfMonth, getEndOfMonth } from './util/timestamp';
7
- import { defineComponent } from 'vue';
8
8
  /* @vue/component */
9
9
 
10
10
  export default defineComponent({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCalendar/VCalendarMonthly.ts"],"names":[],"mappings":"AAAA;AACA,OAAO,wDAAP,C,CAEA;;AACA,OAAO,eAAP,MAA4B,mBAA5B,C,CAEA;;AACA,SAAS,cAAT,EAAyB,eAAzB,EAA0C,aAA1C,QAA+D,kBAA/D;AAEA,SAAS,eAAT,QAAgC,KAAhC;AAEA;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,oBADuB;AAE7B,EAAA,OAAO,EAAE,eAFoB;AAI7B,EAAA,QAAQ,EAAE;AACR,IAAA,WAAW,GAAA;AACT,aAAO,sCAAP;AACD,KAHO;;AAIR,IAAA,WAAW,GAAA;AACT,aAAO,eAAe,CAAC,cAAc,CAAC,KAAK,KAAN,EAAa,IAAb,CAAf,CAAtB;AACD,KANO;;AAOR,IAAA,SAAS,GAAA;AACP,aAAO,aAAa,CAAC,cAAc,CAAC,KAAK,GAAN,EAAW,IAAX,CAAf,CAApB;AACD;;AATO;AAJmB,CAAD,CAA9B","sourcesContent":["// Styles\nimport './VCalendarWeekly.sass'\n\n// Mixins\nimport VCalendarWeekly from './VCalendarWeekly'\n\n// Util\nimport { parseTimestamp, getStartOfMonth, getEndOfMonth } from './util/timestamp'\nimport { CalendarTimestamp } from 'vuetify/types'\nimport { defineComponent } from 'vue'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-monthly',\n extends: VCalendarWeekly,\n\n computed: {\n staticClass (): string {\n return 'v-calendar-monthly v-calendar-weekly'\n },\n parsedStart (): CalendarTimestamp {\n return getStartOfMonth(parseTimestamp(this.start, true))\n },\n parsedEnd (): CalendarTimestamp {\n return getEndOfMonth(parseTimestamp(this.end, true))\n },\n },\n\n})\n"],"sourceRoot":"","file":"VCalendarMonthly.js"}
1
+ {"version":3,"sources":["../../../src/components/VCalendar/VCalendarMonthly.ts"],"names":[],"mappings":"AAAA,SAAS,eAAT,QAAgC,KAAhC,C,CAEA;;AACA,OAAO,wDAAP,C,CAEA;;AACA,OAAO,eAAP,MAA4B,mBAA5B,C,CAEA;;AACA,SAAS,cAAT,EAAyB,eAAzB,EAA0C,aAA1C,QAA+D,kBAA/D;AAGA;;AACA,eAAe,eAAe,CAAC;AAC7B,EAAA,IAAI,EAAE,oBADuB;AAE7B,EAAA,OAAO,EAAE,eAFoB;AAI7B,EAAA,QAAQ,EAAE;AACR,IAAA,WAAW,GAAA;AACT,aAAO,sCAAP;AACD,KAHO;;AAIR,IAAA,WAAW,GAAA;AACT,aAAO,eAAe,CAAC,cAAc,CAAC,KAAK,KAAN,EAAa,IAAb,CAAf,CAAtB;AACD,KANO;;AAOR,IAAA,SAAS,GAAA;AACP,aAAO,aAAa,CAAC,cAAc,CAAC,KAAK,GAAN,EAAW,IAAX,CAAf,CAApB;AACD;;AATO;AAJmB,CAAD,CAA9B","sourcesContent":["import { defineComponent } from 'vue'\n\n// Styles\nimport './VCalendarWeekly.sass'\n\n// Mixins\nimport VCalendarWeekly from './VCalendarWeekly'\n\n// Util\nimport { parseTimestamp, getStartOfMonth, getEndOfMonth } from './util/timestamp'\nimport { CalendarTimestamp } from 'vuetify/types'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-monthly',\n extends: VCalendarWeekly,\n\n computed: {\n staticClass (): string {\n return 'v-calendar-monthly v-calendar-weekly'\n },\n parsedStart (): CalendarTimestamp {\n return getStartOfMonth(parseTimestamp(this.start, true))\n },\n parsedEnd (): CalendarTimestamp {\n return getEndOfMonth(parseTimestamp(this.end, true))\n },\n },\n\n})\n"],"sourceRoot":"","file":"VCalendarMonthly.js"}
@@ -1,8 +1,6 @@
1
- import { h } from 'vue'; // Styles
1
+ import { h, defineComponent } from 'vue'; // Styles
2
2
 
3
- import "../../../src/components/VCalendar/VCalendarWeekly.sass"; // Types
4
-
5
- import { defineComponent } from 'vue'; // Components
3
+ import "../../../src/components/VCalendar/VCalendarWeekly.sass"; // Components
6
4
 
7
5
  import VBtn from '../VBtn'; // Mixins
8
6
 
@@ -71,9 +69,7 @@ export default defineComponent({
71
69
  genHead() {
72
70
  return h('div', {
73
71
  class: 'v-calendar-weekly__head',
74
- attrs: {
75
- role: 'row'
76
- }
72
+ role: 'row'
77
73
  }, this.genHeadDays());
78
74
  },
79
75
 
@@ -94,11 +90,8 @@ export default defineComponent({
94
90
  const color = day.present ? this.color : undefined;
95
91
  return h('div', this.setTextColor(color, {
96
92
  key: day.date,
97
- class: 'v-calendar-weekly__head-weekday',
98
- class: this.getRelativeClasses(day, outside),
99
- attrs: {
100
- role: 'columnheader'
101
- }
93
+ class: ['v-calendar-weekly__head-weekday', this.getRelativeClasses(day, outside)],
94
+ role: 'columnheader'
102
95
  }), this.weekdayFormatter(day, this.shortWeekdays));
103
96
  },
104
97
 
@@ -124,9 +117,7 @@ export default defineComponent({
124
117
  return h('div', {
125
118
  key: week[0].date,
126
119
  class: 'v-calendar-weekly__week',
127
- attrs: {
128
- role: 'row'
129
- }
120
+ role: 'row'
130
121
  }, weekNodes);
131
122
  },
132
123
 
@@ -144,23 +135,20 @@ export default defineComponent({
144
135
  const outside = this.isOutside(day);
145
136
  return h('div', {
146
137
  key: day.date,
147
- class: 'v-calendar-weekly__day',
148
- class: this.getRelativeClasses(day, outside),
149
- attrs: {
150
- role: 'cell'
151
- },
152
- on: this.getDefaultMouseEventHandlers(':day', nativeEvent => {
138
+ class: ['v-calendar-weekly__day', this.getRelativeClasses(day, outside)],
139
+ role: 'cell',
140
+ ...this.getDefaultMouseEventHandlers(':day', nativeEvent => {
153
141
  return {
154
142
  nativeEvent,
155
143
  ...day
156
144
  };
157
145
  })
158
- }, [this.genDayLabel(day), ...(getSlot(this, 'day', () => ({
146
+ }, [this.genDayLabel(day), ...(getSlot(this, 'day', {
159
147
  outside,
160
148
  index,
161
149
  week,
162
150
  ...day
163
- })) || [])]);
151
+ }) || [])]);
164
152
  },
165
153
 
166
154
  genDayLabel(day) {
@@ -192,7 +180,9 @@ export default defineComponent({
192
180
  nativeEvent,
193
181
  ...day
194
182
  }))
195
- }, hasMonth ? this.monthFormatter(day, this.shortMonths) + ' ' + this.dayFormatter(day, false) : this.dayFormatter(day, false));
183
+ }, {
184
+ default: () => hasMonth ? this.monthFormatter(day, this.shortMonths) + ' ' + this.dayFormatter(day, false) : this.dayFormatter(day, false)
185
+ });
196
186
  },
197
187
 
198
188
  genDayMonth(day) {
@@ -206,12 +196,9 @@ export default defineComponent({
206
196
 
207
197
  render() {
208
198
  return h('div', {
209
- class: this.staticClass,
210
- class: this.classes,
211
- on: {
212
- dragstart: e => {
213
- e.preventDefault();
214
- }
199
+ class: [this.staticClass, this.classes],
200
+ onDragstart: e => {
201
+ e.preventDefault();
215
202
  }
216
203
  }, [!this.hideHeader ? this.genHead() : '', ...this.genWeeks()]);
217
204
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/VCalendar/VCalendarWeekly.ts"],"names":[],"mappings":"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","sourcesContent":["import {h} from 'vue'\n// Styles\nimport './VCalendarWeekly.sass'\n\n// Types\nimport { VNode, defineComponent } from 'vue'\n\n// Components\nimport VBtn from '../VBtn'\n\n// Mixins\nimport CalendarBase from './mixins/calendar-base'\n\n// Util\nimport { getSlot } from '../../util/helpers'\nimport { weekNumber } from '../../util/dateTimeUtils'\nimport props from './util/props'\nimport {\n createDayList,\n getDayIdentifier,\n createNativeLocaleFormatter,\n} from './util/timestamp'\nimport { CalendarTimestamp, CalendarFormatter } from 'vuetify/types'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-weekly',\n extends: CalendarBase,\n\n props: props.weeks,\n\n computed: {\n staticClass (): string {\n return 'v-calendar-weekly'\n },\n classes (): object {\n return this.themeClasses\n },\n parsedMinWeeks (): number {\n return parseInt(this.minWeeks)\n },\n days (): CalendarTimestamp[] {\n const minDays = this.parsedMinWeeks * this.parsedWeekdays.length\n const start = this.getStartOfWeek(this.parsedStart)\n const end = this.getEndOfWeek(this.parsedEnd)\n\n return createDayList(\n start,\n end,\n this.times.today,\n this.weekdaySkips,\n Number.MAX_SAFE_INTEGER,\n minDays\n )\n },\n todayWeek (): CalendarTimestamp[] {\n const today = this.times.today\n const start = this.getStartOfWeek(today)\n const end = this.getEndOfWeek(today)\n\n return createDayList(\n start,\n end,\n today,\n this.weekdaySkips,\n this.parsedWeekdays.length,\n this.parsedWeekdays.length\n )\n },\n monthFormatter (): CalendarFormatter {\n if (this.monthFormat) {\n return this.monthFormat as CalendarFormatter\n }\n\n const longOptions = { timeZone: 'UTC', month: 'long' }\n const shortOptions = { timeZone: 'UTC', month: 'short' }\n\n return createNativeLocaleFormatter(\n this.currentLocale,\n (_tms, short) => short ? shortOptions : longOptions\n )\n },\n },\n\n methods: {\n isOutside (day: CalendarTimestamp): boolean {\n const dayIdentifier = getDayIdentifier(day)\n\n return dayIdentifier < getDayIdentifier(this.parsedStart) ||\n dayIdentifier > getDayIdentifier(this.parsedEnd)\n },\n genHead (): VNode {\n return h('div', {\n class: 'v-calendar-weekly__head',\n attrs: {\n role: 'row',\n },\n }, this.genHeadDays())\n },\n genHeadDays (): VNode[] {\n const header = this.todayWeek.map(this.genHeadDay)\n\n if (this.showWeek) {\n header.unshift(h('div', {\n class: 'v-calendar-weekly__head-weeknumber',\n }))\n }\n\n return header\n },\n genHeadDay (day: CalendarTimestamp, index: number): VNode {\n const outside = this.isOutside(this.days[index])\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n key: day.date,\n class: 'v-calendar-weekly__head-weekday',\n class: this.getRelativeClasses(day, outside),\n attrs: {\n role: 'columnheader',\n },\n }), this.weekdayFormatter(day, this.shortWeekdays))\n },\n genWeeks (): VNode[] {\n const days = this.days\n const weekDays = this.parsedWeekdays.length\n const weeks: VNode[] = []\n\n for (let i = 0; i < days.length; i += weekDays) {\n weeks.push(this.genWeek(days.slice(i, i + weekDays), this.getWeekNumber(days[i])))\n }\n\n return weeks\n },\n genWeek (week: CalendarTimestamp[], weekNumber: number): VNode {\n const weekNodes = week.map((day, index) => this.genDay(day, index, week))\n\n if (this.showWeek) {\n weekNodes.unshift(this.genWeekNumber(weekNumber))\n }\n\n return h('div', {\n key: week[0].date,\n class: 'v-calendar-weekly__week',\n attrs: {\n role: 'row',\n },\n }, weekNodes)\n },\n getWeekNumber (determineDay: CalendarTimestamp) {\n return weekNumber(\n determineDay.year,\n determineDay.month - 1,\n determineDay.day,\n this.parsedWeekdays[0],\n parseInt(this.localeFirstDayOfYear)\n )\n },\n genWeekNumber (weekNumber: number) {\n return h('div', {\n class: 'v-calendar-weekly__weeknumber',\n }, [\n h('small', String(weekNumber)),\n ])\n },\n genDay (day: CalendarTimestamp, index: number, week: CalendarTimestamp[]): VNode {\n const outside = this.isOutside(day)\n\n return h('div', {\n key: day.date,\n class: 'v-calendar-weekly__day',\n class: this.getRelativeClasses(day, outside),\n attrs: {\n role: 'cell',\n },\n on: this.getDefaultMouseEventHandlers(':day', nativeEvent => {\n return { nativeEvent, ...day }\n }),\n }, [\n this.genDayLabel(day),\n ...(getSlot(this, 'day', () => ({ outside, index, week, ...day })) || []),\n ])\n },\n genDayLabel (day: CalendarTimestamp): VNode {\n return h('div', {\n class: 'v-calendar-weekly__day-label',\n }, getSlot(this, 'day-label', day) || [this.genDayLabelButton(day)])\n },\n genDayLabelButton (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : 'transparent'\n const hasMonth = day.day === 1 && this.showMonthOnFirst\n\n return h(VBtn, {\n color,\n fab: true,\n depressed: true,\n small: true,\n ...this.getMouseEventHandlers({\n 'click:date': { event: 'click', stop: true },\n 'contextmenu:date': { event: 'contextmenu', stop: true, prevent: true, result: false },\n }, nativeEvent => ({ nativeEvent, ...day })),\n }, hasMonth\n ? this.monthFormatter(day, this.shortMonths) + ' ' + this.dayFormatter(day, false)\n : this.dayFormatter(day, false)\n )\n },\n genDayMonth (day: CalendarTimestamp): VNode | string {\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n class: 'v-calendar-weekly__day-month',\n }), getSlot(this, 'day-month', day) || this.monthFormatter(day, this.shortMonths))\n },\n },\n\n render (): VNode {\n return h('div', {\n class: this.staticClass,\n class: this.classes,\n on: {\n dragstart: (e: MouseEvent) => {\n e.preventDefault()\n },\n },\n }, [\n !this.hideHeader ? this.genHead() : '',\n ...this.genWeeks(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendarWeekly.js"}
1
+ {"version":3,"sources":["../../../src/components/VCalendar/VCalendarWeekly.ts"],"names":[],"mappings":"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","sourcesContent":["import { h, defineComponent } from 'vue'\n// Styles\nimport './VCalendarWeekly.sass'\n\n// Types\nimport { VNode } from 'vue'\n\n// Components\nimport VBtn from '../VBtn'\n\n// Mixins\nimport CalendarBase from './mixins/calendar-base'\n\n// Util\nimport { getSlot } from '../../util/helpers'\nimport { weekNumber } from '../../util/dateTimeUtils'\nimport props from './util/props'\nimport {\n createDayList,\n getDayIdentifier,\n createNativeLocaleFormatter,\n} from './util/timestamp'\nimport { CalendarTimestamp, CalendarFormatter } from 'vuetify/types'\n\n/* @vue/component */\nexport default defineComponent({\n name: 'v-calendar-weekly',\n extends: CalendarBase,\n\n props: props.weeks,\n\n computed: {\n staticClass (): string {\n return 'v-calendar-weekly'\n },\n classes (): object {\n return this.themeClasses\n },\n parsedMinWeeks (): number {\n return parseInt(this.minWeeks)\n },\n days (): CalendarTimestamp[] {\n const minDays = this.parsedMinWeeks * this.parsedWeekdays.length\n const start = this.getStartOfWeek(this.parsedStart)\n const end = this.getEndOfWeek(this.parsedEnd)\n\n return createDayList(\n start,\n end,\n this.times.today,\n this.weekdaySkips,\n Number.MAX_SAFE_INTEGER,\n minDays\n )\n },\n todayWeek (): CalendarTimestamp[] {\n const today = this.times.today\n const start = this.getStartOfWeek(today)\n const end = this.getEndOfWeek(today)\n\n return createDayList(\n start,\n end,\n today,\n this.weekdaySkips,\n this.parsedWeekdays.length,\n this.parsedWeekdays.length\n )\n },\n monthFormatter (): CalendarFormatter {\n if (this.monthFormat) {\n return this.monthFormat as CalendarFormatter\n }\n\n const longOptions = { timeZone: 'UTC', month: 'long' }\n const shortOptions = { timeZone: 'UTC', month: 'short' }\n\n return createNativeLocaleFormatter(\n this.currentLocale,\n (_tms, short) => short ? shortOptions : longOptions\n )\n },\n },\n\n methods: {\n isOutside (day: CalendarTimestamp): boolean {\n const dayIdentifier = getDayIdentifier(day)\n\n return dayIdentifier < getDayIdentifier(this.parsedStart) ||\n dayIdentifier > getDayIdentifier(this.parsedEnd)\n },\n genHead (): VNode {\n return h('div', {\n class: 'v-calendar-weekly__head',\n role: 'row',\n }, this.genHeadDays())\n },\n genHeadDays (): VNode[] {\n const header = this.todayWeek.map(this.genHeadDay)\n\n if (this.showWeek) {\n header.unshift(h('div', {\n class: 'v-calendar-weekly__head-weeknumber',\n }))\n }\n\n return header\n },\n genHeadDay (day: CalendarTimestamp, index: number): VNode {\n const outside = this.isOutside(this.days[index])\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n key: day.date,\n class: ['v-calendar-weekly__head-weekday', this.getRelativeClasses(day, outside)],\n role: 'columnheader',\n }), this.weekdayFormatter(day, this.shortWeekdays))\n },\n genWeeks (): VNode[] {\n const days = this.days\n const weekDays = this.parsedWeekdays.length\n const weeks: VNode[] = []\n\n for (let i = 0; i < days.length; i += weekDays) {\n weeks.push(this.genWeek(days.slice(i, i + weekDays), this.getWeekNumber(days[i])))\n }\n\n return weeks\n },\n genWeek (week: CalendarTimestamp[], weekNumber: number): VNode {\n const weekNodes = week.map((day, index) => this.genDay(day, index, week))\n\n if (this.showWeek) {\n weekNodes.unshift(this.genWeekNumber(weekNumber))\n }\n\n return h('div', {\n key: week[0].date,\n class: 'v-calendar-weekly__week',\n role: 'row',\n }, weekNodes)\n },\n getWeekNumber (determineDay: CalendarTimestamp) {\n return weekNumber(\n determineDay.year,\n determineDay.month - 1,\n determineDay.day,\n this.parsedWeekdays[0],\n parseInt(this.localeFirstDayOfYear)\n )\n },\n genWeekNumber (weekNumber: number) {\n return h('div', {\n class: 'v-calendar-weekly__weeknumber',\n }, [\n h('small', String(weekNumber)),\n ])\n },\n genDay (day: CalendarTimestamp, index: number, week: CalendarTimestamp[]): VNode {\n const outside = this.isOutside(day)\n\n return h('div', {\n key: day.date,\n class: ['v-calendar-weekly__day', this.getRelativeClasses(day, outside)],\n role: 'cell',\n ...this.getDefaultMouseEventHandlers(':day', nativeEvent => {\n return { nativeEvent, ...day }\n }),\n }, [\n this.genDayLabel(day),\n ...(getSlot(this, 'day', { outside, index, week, ...day }) || []),\n ])\n },\n genDayLabel (day: CalendarTimestamp): VNode {\n return h('div', {\n class: 'v-calendar-weekly__day-label',\n }, getSlot(this, 'day-label', day) || [this.genDayLabelButton(day)])\n },\n genDayLabelButton (day: CalendarTimestamp): VNode {\n const color = day.present ? this.color : 'transparent'\n const hasMonth = day.day === 1 && this.showMonthOnFirst\n\n return h(VBtn, {\n color,\n fab: true,\n depressed: true,\n small: true,\n ...this.getMouseEventHandlers({\n 'click:date': { event: 'click', stop: true },\n 'contextmenu:date': { event: 'contextmenu', stop: true, prevent: true, result: false },\n }, nativeEvent => ({ nativeEvent, ...day })),\n }, {\n default: () => hasMonth\n ? this.monthFormatter(day, this.shortMonths) + ' ' + this.dayFormatter(day, false)\n : this.dayFormatter(day, false)\n })\n },\n genDayMonth (day: CalendarTimestamp): VNode | string {\n const color = day.present ? this.color : undefined\n\n return h('div', this.setTextColor(color, {\n class: 'v-calendar-weekly__day-month',\n }), getSlot(this, 'day-month', day) || this.monthFormatter(day, this.shortMonths))\n },\n },\n\n render (): VNode {\n return h('div', {\n class: [this.staticClass, this.classes],\n onDragstart: (e: MouseEvent) => {\n e.preventDefault()\n },\n }, [\n !this.hideHeader ? this.genHead() : '',\n ...this.genWeeks(),\n ])\n },\n})\n"],"sourceRoot":"","file":"VCalendarWeekly.js"}
@@ -1,23 +1,19 @@
1
- // Mixins
2
- import mixins from '../../../util/mixins';
1
+ import { defineComponent } from 'vue'; // Mixins
2
+
3
3
  import Colorable from '../../../mixins/colorable';
4
4
  import Localable from '../../../mixins/localable';
5
5
  import Mouse from '../../../mixins/mouse';
6
6
  import Themeable from '../../../mixins/themeable';
7
- import Times from './times'; // Directives
8
-
9
- import Resize from '../../../directives/resize'; // Util
7
+ import Times from './times'; // Util
10
8
 
11
9
  import props from '../util/props';
12
10
  import { parseTimestamp, getWeekdaySkips, createDayList, createNativeLocaleFormatter, getStartOfWeek, getEndOfWeek, getTimestampIdentifier } from '../util/timestamp';
13
- export default mixins(Colorable, Localable, Mouse, Themeable, Times
14
- /* @vue/component */
15
- ).extend({
11
+ export default defineComponent({
16
12
  name: 'calendar-base',
17
- directives: {
18
- Resize
19
- },
13
+ extends: Times,
14
+ mixins: [Colorable, Localable, Mouse, Themeable],
20
15
  props: props.base,
16
+ emits: ['click', 'mousedown', 'mouseup', 'touchstart', 'touchend'],
21
17
  computed: {
22
18
  parsedWeekdays() {
23
19
  return Array.isArray(this.weekdays) ? this.weekdays : (this.weekdays || '').split(',').map(x => parseInt(x, 10));