@progress/kendo-vue-scheduler 3.5.0 → 3.5.1-dev.202208150613

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 (441) hide show
  1. package/README.md +2 -2
  2. package/dist/cdn/js/kendo-vue-scheduler.js +2 -16
  3. package/dist/cdn/js/kendo-vue-scheduler.js.LICENSE.txt +14 -0
  4. package/dist/es/Scheduler.js +9 -13
  5. package/dist/es/components/CurrentTimeMarker.js +3 -3
  6. package/dist/es/components/CurrentTimeMarkerArrow.js +2 -2
  7. package/dist/es/hooks/use-items-selection.js +9 -13
  8. package/dist/es/hooks/use-slots-selection.js +7 -11
  9. package/dist/es/hooks/useCellSync.js +1 -1
  10. package/dist/es/items/SchedulerItem.js +1 -1
  11. package/dist/es/items/SchedulerViewItem.js +1 -1
  12. package/dist/es/items/hooks/use-drag-item.js +7 -11
  13. package/dist/es/items/hooks/use-form-item.d.ts +5 -1
  14. package/dist/es/items/hooks/use-remove-item.d.ts +5 -1
  15. package/dist/es/items/hooks/use-resize-item.js +8 -12
  16. package/dist/es/models/DataItem.js +1 -0
  17. package/dist/es/models/DateRange.js +1 -0
  18. package/dist/es/models/EditableProp.js +1 -0
  19. package/dist/es/models/Fields.js +1 -0
  20. package/dist/es/models/Group.js +1 -0
  21. package/dist/es/models/Item.js +1 -0
  22. package/dist/es/models/NavigationAction.js +1 -0
  23. package/dist/es/models/Occurrence.js +1 -0
  24. package/dist/es/models/Omit.js +1 -0
  25. package/dist/es/models/Orientation.js +1 -0
  26. package/dist/es/models/Range.js +1 -0
  27. package/dist/es/models/Rect.js +1 -0
  28. package/dist/es/models/Resource.js +1 -0
  29. package/dist/es/models/SchedulerGroup.js +1 -0
  30. package/dist/es/models/SchedulerHandle.js +1 -0
  31. package/dist/es/models/SchedulerModelFields.js +1 -0
  32. package/dist/es/models/SchedulerResource.js +1 -0
  33. package/dist/es/models/SchedulerView.js +1 -0
  34. package/dist/es/models/Slot.js +1 -0
  35. package/dist/es/models/events.js +1 -0
  36. package/dist/es/package-metadata.js +1 -1
  37. package/dist/es/recurrence/RecurrenceRepeatOnWeekEditor.js +7 -11
  38. package/dist/es/recurrence/types/EndRule.js +1 -0
  39. package/dist/es/recurrence/types/Frequency.js +1 -0
  40. package/dist/es/recurrence/types/FrequencyEntity.js +1 -0
  41. package/dist/es/recurrence/types/MonthEntity.js +1 -0
  42. package/dist/es/recurrence/types/OffsetPosition.js +1 -0
  43. package/dist/es/recurrence/types/OffsetPositionEntity.js +1 -0
  44. package/dist/es/recurrence/types/RepeatOnRule.js +1 -0
  45. package/dist/es/recurrence/types/WeekDayEntity.js +1 -0
  46. package/dist/es/recurrence/types/WeekDayRule.js +1 -0
  47. package/dist/es/services/itemsService.js +1 -7
  48. package/dist/es/services/occurrenceService.js +10 -8
  49. package/dist/es/slots/SchedulerSlot.js +1 -1
  50. package/dist/es/utils/index.js +14 -12
  51. package/dist/es/views/agenda/AgendaView.js +2 -1
  52. package/dist/es/views/agenda/AgendaViewBody.js +2 -2
  53. package/dist/es/views/common/utils.js +14 -12
  54. package/dist/es/views/day/DayViewAllDaySlots.js +1 -1
  55. package/dist/es/views/day/DayViewMiddleRow.js +1 -1
  56. package/dist/es/views/day/DayViewVerticalRow.js +1 -1
  57. package/dist/es/views/day/DayViewVerticalSlotsRow.js +1 -1
  58. package/dist/es/views/day/MultiDayView.js +16 -20
  59. package/dist/es/views/month/MonthView.js +2 -2
  60. package/dist/es/views/time/MultiDayTimelineView.js +10 -14
  61. package/dist/es/views/time/TimelineViewBody.js +1 -1
  62. package/dist/esm/Scheduler.d.ts +341 -0
  63. package/dist/esm/Scheduler.js +656 -0
  64. package/dist/esm/additionalTypes.ts +21 -0
  65. package/dist/esm/components/BaseView.d.ts +51 -0
  66. package/dist/esm/components/BaseView.js +145 -0
  67. package/dist/esm/components/CurrentTimeMarker.d.ts +50 -0
  68. package/dist/esm/components/CurrentTimeMarker.js +168 -0
  69. package/dist/esm/components/CurrentTimeMarkerArrow.d.ts +47 -0
  70. package/dist/esm/components/CurrentTimeMarkerArrow.js +141 -0
  71. package/dist/esm/components/DateHeaderCell.d.ts +76 -0
  72. package/dist/esm/components/DateHeaderCell.js +67 -0
  73. package/dist/esm/components/SchedulerActionButtons.d.ts +48 -0
  74. package/dist/esm/components/SchedulerActionButtons.js +103 -0
  75. package/dist/esm/components/SchedulerForm.d.ts +73 -0
  76. package/dist/esm/components/SchedulerForm.js +234 -0
  77. package/dist/esm/components/SchedulerOccurrenceDialog.d.ts +76 -0
  78. package/dist/esm/components/SchedulerOccurrenceDialog.js +185 -0
  79. package/dist/esm/components/SchedulerRemoveDialog.d.ts +72 -0
  80. package/dist/esm/components/SchedulerRemoveDialog.js +166 -0
  81. package/dist/esm/components/ShowMoreItemsButton.d.ts +56 -0
  82. package/dist/esm/components/ShowMoreItemsButton.js +69 -0
  83. package/dist/esm/components/TimeHeaderCell.d.ts +76 -0
  84. package/dist/esm/components/TimeHeaderCell.js +65 -0
  85. package/dist/esm/components/footer/SchedulerFooter.d.ts +52 -0
  86. package/dist/esm/components/footer/SchedulerFooter.js +43 -0
  87. package/dist/esm/components/footer/bussiness-hours/BusinessHours.d.ts +50 -0
  88. package/dist/esm/components/footer/bussiness-hours/BusinessHours.js +96 -0
  89. package/dist/esm/components/header/SchedulerHeader.d.ts +49 -0
  90. package/dist/esm/components/header/SchedulerHeader.js +35 -0
  91. package/dist/esm/components/header/navigation/DatePickerToggleButton.d.ts +42 -0
  92. package/dist/esm/components/header/navigation/DatePickerToggleButton.js +102 -0
  93. package/dist/esm/components/header/navigation/NavigationDatePicker.d.ts +42 -0
  94. package/dist/esm/components/header/navigation/NavigationDatePicker.js +97 -0
  95. package/dist/esm/components/header/navigation/SchedulerNavigation.d.ts +49 -0
  96. package/dist/esm/components/header/navigation/SchedulerNavigation.js +354 -0
  97. package/dist/esm/components/header/view-selector/SchedulerViewSelector.d.ts +49 -0
  98. package/dist/esm/components/header/view-selector/SchedulerViewSelector.js +42 -0
  99. package/dist/esm/components/header/view-selector/ViewSelectorItem.d.ts +47 -0
  100. package/dist/esm/components/header/view-selector/ViewSelectorItem.js +79 -0
  101. package/dist/esm/components/header/view-selector/ViewSelectorList.d.ts +42 -0
  102. package/dist/esm/components/header/view-selector/ViewSelectorList.js +176 -0
  103. package/dist/esm/constants/index.d.ts +49 -0
  104. package/dist/esm/constants/index.js +55 -0
  105. package/dist/esm/context/SchedulerContext.d.ts +22 -0
  106. package/dist/esm/context/SchedulerContext.js +4 -0
  107. package/dist/esm/context/SchedulerEditItemContext.d.ts +16 -0
  108. package/dist/esm/context/SchedulerEditItemContext.js +4 -0
  109. package/dist/esm/context/SchedulerEditSlotContext.d.ts +11 -0
  110. package/dist/esm/context/SchedulerEditSlotContext.js +4 -0
  111. package/dist/esm/context/SchedulerEditTaskContext.d.ts +12 -0
  112. package/dist/esm/context/SchedulerEditTaskContext.js +4 -0
  113. package/dist/esm/context/SchedulerResourceIteratorContext.d.ts +43 -0
  114. package/dist/esm/context/SchedulerResourceIteratorContext.js +57 -0
  115. package/dist/esm/context/SchedulerViewContext.d.ts +18 -0
  116. package/dist/esm/context/SchedulerViewContext.js +4 -0
  117. package/dist/esm/context/index.d.ts +5 -0
  118. package/dist/esm/context/index.js +5 -0
  119. package/dist/esm/editors/FilterableComboBox.d.ts +42 -0
  120. package/dist/esm/editors/FilterableComboBox.js +94 -0
  121. package/dist/esm/editors/ResourceEditor.d.ts +53 -0
  122. package/dist/esm/editors/ResourceEditor.js +149 -0
  123. package/dist/esm/editors/SchedulerFormEditor.d.ts +262 -0
  124. package/dist/esm/editors/SchedulerFormEditor.js +1079 -0
  125. package/dist/esm/editors/ZonedDateTime.d.ts +51 -0
  126. package/dist/esm/editors/ZonedDateTime.js +117 -0
  127. package/dist/esm/editors/common.d.ts +12 -0
  128. package/dist/esm/editors/common.js +29 -0
  129. package/dist/esm/hooks/index.d.ts +9 -0
  130. package/dist/esm/hooks/index.js +9 -0
  131. package/dist/esm/hooks/use-items-focus.d.ts +23 -0
  132. package/dist/esm/hooks/use-items-focus.js +73 -0
  133. package/dist/esm/hooks/use-items-selection.d.ts +30 -0
  134. package/dist/esm/hooks/use-items-selection.js +109 -0
  135. package/dist/esm/hooks/use-slots-focus.d.ts +33 -0
  136. package/dist/esm/hooks/use-slots-focus.js +118 -0
  137. package/dist/esm/hooks/use-slots-selection.d.ts +23 -0
  138. package/dist/esm/hooks/use-slots-selection.js +60 -0
  139. package/dist/esm/hooks/useAsyncMouseEnterLeave.d.ts +10 -0
  140. package/dist/esm/hooks/useAsyncMouseEnterLeave.js +29 -0
  141. package/dist/esm/hooks/useCellSync.d.ts +9 -0
  142. package/dist/esm/hooks/useCellSync.js +51 -0
  143. package/dist/esm/hooks/useEditable.d.ts +3 -0
  144. package/dist/esm/hooks/useEditable.js +19 -0
  145. package/dist/esm/hooks/usePropOrState.d.ts +2 -0
  146. package/dist/esm/hooks/usePropOrState.js +8 -0
  147. package/dist/esm/hooks/useRowSync.d.ts +10 -0
  148. package/dist/esm/hooks/useRowSync.js +55 -0
  149. package/dist/esm/hooks/useSchedulerSlot.d.ts +6 -0
  150. package/dist/esm/hooks/useSchedulerSlot.js +7 -0
  151. package/dist/esm/hooks/useSlotExpand.d.ts +3 -0
  152. package/dist/esm/hooks/useSlotExpand.js +70 -0
  153. package/dist/esm/hooks/useWorkHours.d.ts +2 -0
  154. package/dist/esm/hooks/useWorkHours.js +4 -0
  155. package/dist/esm/items/SchedulerEditItem.d.ts +357 -0
  156. package/dist/esm/items/SchedulerEditItem.js +1127 -0
  157. package/dist/esm/items/SchedulerItem.d.ts +236 -0
  158. package/dist/esm/items/SchedulerItem.js +861 -0
  159. package/dist/esm/items/SchedulerItemContent.d.ts +47 -0
  160. package/dist/esm/items/SchedulerItemContent.js +37 -0
  161. package/dist/esm/items/SchedulerViewItem.d.ts +61 -0
  162. package/dist/esm/items/SchedulerViewItem.js +596 -0
  163. package/dist/esm/items/hooks/use-drag-item.d.ts +34 -0
  164. package/dist/esm/items/hooks/use-drag-item.js +255 -0
  165. package/dist/esm/items/hooks/use-form-item.d.ts +22 -0
  166. package/dist/esm/items/hooks/use-form-item.js +50 -0
  167. package/dist/esm/items/hooks/use-remove-item.d.ts +30 -0
  168. package/dist/esm/items/hooks/use-remove-item.js +48 -0
  169. package/dist/esm/items/hooks/use-resize-item.d.ts +39 -0
  170. package/dist/esm/items/hooks/use-resize-item.js +307 -0
  171. package/dist/esm/items/hooks/use-series.d.ts +25 -0
  172. package/dist/esm/items/hooks/use-series.js +44 -0
  173. package/dist/esm/items/hooks/use-show-occurrence-dialog.d.ts +29 -0
  174. package/dist/esm/items/hooks/use-show-occurrence-dialog.js +55 -0
  175. package/dist/esm/items/hooks/use-show-remove-item-dialog.d.ts +29 -0
  176. package/dist/esm/items/hooks/use-show-remove-item-dialog.js +54 -0
  177. package/dist/esm/main.d.ts +43 -0
  178. package/dist/esm/main.js +49 -0
  179. package/dist/esm/messages/index.d.ts +233 -0
  180. package/dist/esm/messages/index.js +234 -0
  181. package/dist/esm/models/DataItem.d.ts +8 -0
  182. package/dist/esm/models/DataItem.js +1 -0
  183. package/dist/esm/models/DateRange.d.ts +18 -0
  184. package/dist/esm/models/DateRange.js +1 -0
  185. package/dist/esm/models/EditableProp.d.ts +29 -0
  186. package/dist/esm/models/EditableProp.js +1 -0
  187. package/dist/esm/models/Fields.d.ts +17 -0
  188. package/dist/esm/models/Fields.js +1 -0
  189. package/dist/esm/models/Group.d.ts +8 -0
  190. package/dist/esm/models/Group.js +1 -0
  191. package/dist/esm/models/Item.d.ts +62 -0
  192. package/dist/esm/models/Item.js +1 -0
  193. package/dist/esm/models/NavigationAction.d.ts +17 -0
  194. package/dist/esm/models/NavigationAction.js +1 -0
  195. package/dist/esm/models/Occurrence.d.ts +52 -0
  196. package/dist/esm/models/Occurrence.js +1 -0
  197. package/dist/esm/models/Omit.d.ts +4 -0
  198. package/dist/esm/models/Omit.js +1 -0
  199. package/dist/esm/models/Orientation.d.ts +2 -0
  200. package/dist/esm/models/Orientation.js +1 -0
  201. package/dist/esm/models/Range.d.ts +10 -0
  202. package/dist/esm/models/Range.js +1 -0
  203. package/dist/esm/models/Rect.d.ts +15 -0
  204. package/dist/esm/models/Rect.js +1 -0
  205. package/dist/esm/models/Resource.d.ts +8 -0
  206. package/dist/esm/models/Resource.js +1 -0
  207. package/dist/esm/models/SchedulerGroup.d.ts +13 -0
  208. package/dist/esm/models/SchedulerGroup.js +1 -0
  209. package/dist/esm/models/SchedulerHandle.d.ts +6 -0
  210. package/dist/esm/models/SchedulerHandle.js +1 -0
  211. package/dist/esm/models/SchedulerModelFields.d.ts +62 -0
  212. package/dist/esm/models/SchedulerModelFields.js +1 -0
  213. package/dist/esm/models/SchedulerResource.d.ts +33 -0
  214. package/dist/esm/models/SchedulerResource.js +1 -0
  215. package/dist/esm/models/SchedulerView.d.ts +83 -0
  216. package/dist/esm/models/SchedulerView.js +1 -0
  217. package/dist/esm/models/Slot.d.ts +49 -0
  218. package/dist/esm/models/Slot.js +1 -0
  219. package/dist/esm/models/events.d.ts +81 -0
  220. package/dist/esm/models/events.js +1 -0
  221. package/dist/esm/models/index.d.ts +17 -0
  222. package/dist/esm/models/index.js +17 -0
  223. package/dist/esm/package-metadata.d.ts +5 -0
  224. package/dist/esm/package-metadata.js +11 -0
  225. package/dist/esm/package.json +3 -0
  226. package/dist/esm/recurrence/RecurrenceEditor.d.ts +54 -0
  227. package/dist/esm/recurrence/RecurrenceEditor.js +772 -0
  228. package/dist/esm/recurrence/RecurrenceFrequencyEditor.d.ts +48 -0
  229. package/dist/esm/recurrence/RecurrenceFrequencyEditor.js +101 -0
  230. package/dist/esm/recurrence/RecurrenceRepeatOnWeekEditor.d.ts +51 -0
  231. package/dist/esm/recurrence/RecurrenceRepeatOnWeekEditor.js +135 -0
  232. package/dist/esm/recurrence/common.d.ts +57 -0
  233. package/dist/esm/recurrence/common.js +212 -0
  234. package/dist/esm/recurrence/types/EndRule.d.ts +4 -0
  235. package/dist/esm/recurrence/types/EndRule.js +1 -0
  236. package/dist/esm/recurrence/types/Frequency.d.ts +4 -0
  237. package/dist/esm/recurrence/types/Frequency.js +1 -0
  238. package/dist/esm/recurrence/types/FrequencyEntity.d.ts +8 -0
  239. package/dist/esm/recurrence/types/FrequencyEntity.js +1 -0
  240. package/dist/esm/recurrence/types/MonthEntity.d.ts +7 -0
  241. package/dist/esm/recurrence/types/MonthEntity.js +1 -0
  242. package/dist/esm/recurrence/types/OffsetPosition.d.ts +4 -0
  243. package/dist/esm/recurrence/types/OffsetPosition.js +1 -0
  244. package/dist/esm/recurrence/types/OffsetPositionEntity.d.ts +7 -0
  245. package/dist/esm/recurrence/types/OffsetPositionEntity.js +1 -0
  246. package/dist/esm/recurrence/types/RepeatOnRule.d.ts +4 -0
  247. package/dist/esm/recurrence/types/RepeatOnRule.js +1 -0
  248. package/dist/esm/recurrence/types/WeekDayEntity.d.ts +7 -0
  249. package/dist/esm/recurrence/types/WeekDayEntity.js +1 -0
  250. package/dist/esm/recurrence/types/WeekDayRule.d.ts +8 -0
  251. package/dist/esm/recurrence/types/WeekDayRule.js +1 -0
  252. package/dist/esm/recurrence/utils/index.d.ts +1 -0
  253. package/dist/esm/recurrence/utils/index.js +0 -0
  254. package/dist/esm/reducers/editReducer.d.ts +33 -0
  255. package/dist/esm/reducers/editReducer.js +65 -0
  256. package/dist/esm/reducers/index.d.ts +1 -0
  257. package/dist/esm/reducers/index.js +1 -0
  258. package/dist/esm/services/index.d.ts +4 -0
  259. package/dist/esm/services/index.js +4 -0
  260. package/dist/esm/services/itemsService.d.ts +14 -0
  261. package/dist/esm/services/itemsService.js +76 -0
  262. package/dist/esm/services/occurrenceService.d.ts +7 -0
  263. package/dist/esm/services/occurrenceService.js +92 -0
  264. package/dist/esm/services/rangeService.d.ts +6 -0
  265. package/dist/esm/services/rangeService.js +23 -0
  266. package/dist/esm/services/slotsService.d.ts +8 -0
  267. package/dist/esm/services/slotsService.js +42 -0
  268. package/dist/esm/slots/SchedulerEditSlot.d.ts +80 -0
  269. package/dist/esm/slots/SchedulerEditSlot.js +375 -0
  270. package/dist/esm/slots/SchedulerSlot.d.ts +144 -0
  271. package/dist/esm/slots/SchedulerSlot.js +345 -0
  272. package/dist/esm/slots/SchedulerViewSlot.d.ts +73 -0
  273. package/dist/esm/slots/SchedulerViewSlot.js +220 -0
  274. package/dist/esm/tasks/SchedulerEditTask.d.ts +113 -0
  275. package/dist/esm/tasks/SchedulerEditTask.js +330 -0
  276. package/dist/esm/tasks/SchedulerTask.d.ts +82 -0
  277. package/dist/esm/tasks/SchedulerTask.js +223 -0
  278. package/dist/esm/tasks/SchedulerViewTask.d.ts +58 -0
  279. package/dist/esm/tasks/SchedulerViewTask.js +160 -0
  280. package/dist/esm/utils/index.d.ts +185 -0
  281. package/dist/esm/utils/index.js +591 -0
  282. package/dist/esm/views/agenda/AgendaView.d.ts +107 -0
  283. package/dist/esm/views/agenda/AgendaView.js +342 -0
  284. package/dist/esm/views/agenda/AgendaViewBody.d.ts +50 -0
  285. package/dist/esm/views/agenda/AgendaViewBody.js +225 -0
  286. package/dist/esm/views/agenda/AgendaViewHead.d.ts +46 -0
  287. package/dist/esm/views/agenda/AgendaViewHead.js +58 -0
  288. package/dist/esm/views/agenda/AgendaViewHeaderItem.d.ts +46 -0
  289. package/dist/esm/views/agenda/AgendaViewHeaderItem.js +49 -0
  290. package/dist/esm/views/common/HorizontalResourceIterator.d.ts +61 -0
  291. package/dist/esm/views/common/HorizontalResourceIterator.js +185 -0
  292. package/dist/esm/views/common/SchedulerDrag.d.ts +64 -0
  293. package/dist/esm/views/common/SchedulerDrag.js +147 -0
  294. package/dist/esm/views/common/SchedulerResize.d.ts +67 -0
  295. package/dist/esm/views/common/SchedulerResize.js +152 -0
  296. package/dist/esm/views/common/VerticalResourceIterator.d.ts +56 -0
  297. package/dist/esm/views/common/VerticalResourceIterator.js +382 -0
  298. package/dist/esm/views/common/utils.d.ts +34 -0
  299. package/dist/esm/views/common/utils.js +189 -0
  300. package/dist/esm/views/day/DayView.d.ts +43 -0
  301. package/dist/esm/views/day/DayView.js +193 -0
  302. package/dist/esm/views/day/DayViewAllDayRowContent.d.ts +41 -0
  303. package/dist/esm/views/day/DayViewAllDayRowContent.js +42 -0
  304. package/dist/esm/views/day/DayViewAllDaySlots.d.ts +48 -0
  305. package/dist/esm/views/day/DayViewAllDaySlots.js +111 -0
  306. package/dist/esm/views/day/DayViewGroupRowContent.d.ts +41 -0
  307. package/dist/esm/views/day/DayViewGroupRowContent.js +35 -0
  308. package/dist/esm/views/day/DayViewHead.d.ts +42 -0
  309. package/dist/esm/views/day/DayViewHead.js +64 -0
  310. package/dist/esm/views/day/DayViewMiddleRow.d.ts +53 -0
  311. package/dist/esm/views/day/DayViewMiddleRow.js +118 -0
  312. package/dist/esm/views/day/DayViewRowContent.d.ts +45 -0
  313. package/dist/esm/views/day/DayViewRowContent.js +53 -0
  314. package/dist/esm/views/day/DayViewVerticalRow.d.ts +44 -0
  315. package/dist/esm/views/day/DayViewVerticalRow.js +108 -0
  316. package/dist/esm/views/day/DayViewVerticalSlotsRow.d.ts +56 -0
  317. package/dist/esm/views/day/DayViewVerticalSlotsRow.js +157 -0
  318. package/dist/esm/views/day/MultiDayView.d.ts +181 -0
  319. package/dist/esm/views/day/MultiDayView.js +1461 -0
  320. package/dist/esm/views/month/MonthView.d.ts +102 -0
  321. package/dist/esm/views/month/MonthView.js +658 -0
  322. package/dist/esm/views/month/MonthViewBody.d.ts +48 -0
  323. package/dist/esm/views/month/MonthViewBody.js +143 -0
  324. package/dist/esm/views/month/MonthViewHead.d.ts +42 -0
  325. package/dist/esm/views/month/MonthViewHead.js +72 -0
  326. package/dist/esm/views/time/MultiDayTimelineView.d.ts +175 -0
  327. package/dist/esm/views/time/MultiDayTimelineView.js +859 -0
  328. package/dist/esm/views/time/TimelineView.d.ts +43 -0
  329. package/dist/esm/views/time/TimelineView.js +201 -0
  330. package/dist/esm/views/time/TimelineViewAllEventsRowContent.d.ts +40 -0
  331. package/dist/esm/views/time/TimelineViewAllEventsRowContent.js +44 -0
  332. package/dist/esm/views/time/TimelineViewBody.d.ts +49 -0
  333. package/dist/esm/views/time/TimelineViewBody.js +119 -0
  334. package/dist/esm/views/time/TimelineViewRowContent.d.ts +40 -0
  335. package/dist/esm/views/time/TimelineViewRowContent.js +31 -0
  336. package/dist/esm/views/week/WeekView.d.ts +114 -0
  337. package/dist/esm/views/week/WeekView.js +219 -0
  338. package/dist/esm/views/week/WorkWeekView.d.ts +40 -0
  339. package/dist/esm/views/week/WorkWeekView.js +208 -0
  340. package/dist/npm/Scheduler.js +52 -56
  341. package/dist/npm/components/BaseView.js +3 -3
  342. package/dist/npm/components/CurrentTimeMarker.js +10 -10
  343. package/dist/npm/components/CurrentTimeMarkerArrow.js +8 -8
  344. package/dist/npm/components/DateHeaderCell.js +1 -1
  345. package/dist/npm/components/SchedulerForm.js +2 -2
  346. package/dist/npm/components/SchedulerOccurrenceDialog.js +2 -2
  347. package/dist/npm/components/SchedulerRemoveDialog.js +2 -2
  348. package/dist/npm/components/TimeHeaderCell.js +1 -1
  349. package/dist/npm/components/footer/SchedulerFooter.js +1 -1
  350. package/dist/npm/components/footer/bussiness-hours/BusinessHours.js +2 -2
  351. package/dist/npm/components/header/SchedulerHeader.js +1 -1
  352. package/dist/npm/components/header/navigation/DatePickerToggleButton.js +1 -1
  353. package/dist/npm/components/header/navigation/NavigationDatePicker.js +2 -2
  354. package/dist/npm/components/header/navigation/SchedulerNavigation.js +2 -2
  355. package/dist/npm/components/header/view-selector/SchedulerViewSelector.js +1 -1
  356. package/dist/npm/components/header/view-selector/ViewSelectorItem.js +1 -1
  357. package/dist/npm/components/header/view-selector/ViewSelectorList.js +1 -1
  358. package/dist/npm/constants/index.js +1 -1
  359. package/dist/npm/context/SchedulerContext.js +4 -2
  360. package/dist/npm/context/SchedulerEditItemContext.js +4 -2
  361. package/dist/npm/context/SchedulerEditSlotContext.js +4 -2
  362. package/dist/npm/context/SchedulerEditTaskContext.js +4 -2
  363. package/dist/npm/context/SchedulerResourceIteratorContext.js +1 -1
  364. package/dist/npm/context/SchedulerViewContext.js +4 -2
  365. package/dist/npm/context/index.js +6 -2
  366. package/dist/npm/editors/FilterableComboBox.js +1 -1
  367. package/dist/npm/editors/ResourceEditor.js +1 -1
  368. package/dist/npm/editors/SchedulerFormEditor.js +3 -3
  369. package/dist/npm/editors/ZonedDateTime.js +1 -1
  370. package/dist/npm/editors/common.js +6 -4
  371. package/dist/npm/hooks/index.js +6 -2
  372. package/dist/npm/hooks/use-items-focus.js +7 -5
  373. package/dist/npm/hooks/use-items-selection.js +15 -17
  374. package/dist/npm/hooks/use-slots-focus.js +20 -14
  375. package/dist/npm/hooks/use-slots-selection.js +11 -13
  376. package/dist/npm/hooks/useAsyncMouseEnterLeave.js +4 -2
  377. package/dist/npm/hooks/useCellSync.js +7 -5
  378. package/dist/npm/hooks/useEditable.js +4 -2
  379. package/dist/npm/hooks/usePropOrState.js +4 -2
  380. package/dist/npm/hooks/useRowSync.js +6 -4
  381. package/dist/npm/hooks/useSchedulerSlot.js +4 -2
  382. package/dist/npm/hooks/useSlotExpand.js +8 -6
  383. package/dist/npm/hooks/useWorkHours.js +4 -2
  384. package/dist/npm/items/SchedulerEditItem.js +10 -10
  385. package/dist/npm/items/SchedulerItem.js +6 -6
  386. package/dist/npm/items/SchedulerItemContent.js +1 -1
  387. package/dist/npm/items/SchedulerViewItem.js +12 -12
  388. package/dist/npm/items/hooks/use-drag-item.js +32 -34
  389. package/dist/npm/items/hooks/use-form-item.d.ts +5 -1
  390. package/dist/npm/items/hooks/use-form-item.js +4 -2
  391. package/dist/npm/items/hooks/use-remove-item.d.ts +5 -1
  392. package/dist/npm/items/hooks/use-remove-item.js +4 -2
  393. package/dist/npm/items/hooks/use-resize-item.js +40 -42
  394. package/dist/npm/items/hooks/use-series.js +7 -4
  395. package/dist/npm/items/hooks/use-show-occurrence-dialog.js +7 -4
  396. package/dist/npm/items/hooks/use-show-remove-item-dialog.js +7 -4
  397. package/dist/npm/messages/index.js +2 -1
  398. package/dist/npm/models/index.js +6 -2
  399. package/dist/npm/package-metadata.js +1 -1
  400. package/dist/npm/recurrence/RecurrenceEditor.js +25 -25
  401. package/dist/npm/recurrence/RecurrenceRepeatOnWeekEditor.js +11 -15
  402. package/dist/npm/recurrence/common.js +50 -32
  403. package/dist/npm/reducers/editReducer.js +2 -1
  404. package/dist/npm/reducers/index.js +6 -2
  405. package/dist/npm/services/index.js +6 -2
  406. package/dist/npm/services/itemsService.js +14 -16
  407. package/dist/npm/services/occurrenceService.js +37 -34
  408. package/dist/npm/services/rangeService.js +2 -1
  409. package/dist/npm/services/slotsService.js +2 -1
  410. package/dist/npm/slots/SchedulerEditSlot.js +13 -13
  411. package/dist/npm/slots/SchedulerSlot.js +3 -3
  412. package/dist/npm/slots/SchedulerViewSlot.js +4 -4
  413. package/dist/npm/tasks/SchedulerEditTask.js +3 -3
  414. package/dist/npm/tasks/SchedulerTask.js +3 -3
  415. package/dist/npm/tasks/SchedulerViewTask.js +1 -1
  416. package/dist/npm/utils/index.js +142 -95
  417. package/dist/npm/views/agenda/AgendaView.js +20 -19
  418. package/dist/npm/views/agenda/AgendaViewBody.js +4 -4
  419. package/dist/npm/views/agenda/AgendaViewHead.js +1 -1
  420. package/dist/npm/views/agenda/AgendaViewHeaderItem.js +1 -1
  421. package/dist/npm/views/common/HorizontalResourceIterator.js +7 -6
  422. package/dist/npm/views/common/SchedulerDrag.js +3 -3
  423. package/dist/npm/views/common/SchedulerResize.js +3 -3
  424. package/dist/npm/views/common/VerticalResourceIterator.js +2 -2
  425. package/dist/npm/views/common/utils.js +34 -23
  426. package/dist/npm/views/day/DayView.js +1 -1
  427. package/dist/npm/views/day/DayViewAllDayRowContent.js +1 -1
  428. package/dist/npm/views/day/DayViewAllDaySlots.js +1 -1
  429. package/dist/npm/views/day/DayViewMiddleRow.js +4 -4
  430. package/dist/npm/views/day/DayViewRowContent.js +1 -1
  431. package/dist/npm/views/day/DayViewVerticalRow.js +1 -1
  432. package/dist/npm/views/day/DayViewVerticalSlotsRow.js +4 -4
  433. package/dist/npm/views/day/MultiDayView.js +40 -44
  434. package/dist/npm/views/month/MonthView.js +15 -15
  435. package/dist/npm/views/month/MonthViewBody.js +1 -1
  436. package/dist/npm/views/time/MultiDayTimelineView.js +29 -33
  437. package/dist/npm/views/time/TimelineViewAllEventsRowContent.js +1 -1
  438. package/dist/npm/views/time/TimelineViewBody.js +4 -4
  439. package/dist/npm/views/week/WeekView.js +6 -6
  440. package/dist/npm/views/week/WorkWeekView.js +5 -5
  441. package/package.json +18 -12
@@ -0,0 +1,596 @@
1
+ var __assign = this && this.__assign || function () {
2
+ __assign = Object.assign || function (t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+
6
+ for (var p in s) {
7
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
8
+ }
9
+ }
10
+
11
+ return t;
12
+ };
13
+
14
+ return __assign.apply(this, arguments);
15
+ }; // @ts-ignore
16
+
17
+
18
+ import * as Vue from 'vue';
19
+ var allVue = Vue;
20
+ var gh = allVue.h;
21
+ var isV3 = allVue.version && allVue.version[0] === '3';
22
+ var inject = allVue.inject;
23
+ import { SchedulerItem } from './SchedulerItem.js';
24
+ import { intersects, first, calculateOrder } from '../utils.js';
25
+ import { getRect, setRect } from '../views/common/utils.js';
26
+ import { BORDER_WIDTH } from '../constants.js';
27
+ import { provideIntlService } from '@progress/kendo-vue-intl';
28
+ import { SchedulerItemContent } from './SchedulerItemContent.js';
29
+ import { getDefaultSlots, getTemplate } from '@progress/kendo-vue-common';
30
+ /** @hidden */
31
+
32
+ var ITEMS_SPACING = 1;
33
+ /**
34
+ * @hidden
35
+ */
36
+
37
+ var SchedulerViewItemVue2 = {
38
+ name: 'KendoSchedulerViewItem',
39
+ props: {
40
+ ignoreIsAllDay: Boolean,
41
+ item: [String, Function, Object],
42
+ uid: [String, Number],
43
+ start: Date,
44
+ end: Date,
45
+ originalStart: Date,
46
+ startTimezone: String,
47
+ endTimezone: String,
48
+ isAllDay: Boolean,
49
+ title: String,
50
+ description: String,
51
+ occurrenceId: String,
52
+ recurrenceExceptions: Array,
53
+ recurrenceRule: String,
54
+ recurrenceId: [String, Number],
55
+ dataItem: Object,
56
+ head: Boolean,
57
+ tail: Boolean,
58
+ order: Number,
59
+ zonedStart: Object,
60
+ zonedEnd: Object,
61
+ slots: Array,
62
+ group: Object,
63
+ range: Object,
64
+ isException: Boolean,
65
+ isRecurring: Boolean,
66
+ id: String,
67
+ tabIndex: Number,
68
+ className: String,
69
+ itemStyle: Object,
70
+ editable: [Object, Boolean],
71
+ selected: Boolean,
72
+ vertical: Boolean,
73
+ dragHint: Boolean,
74
+ resizeHint: Boolean,
75
+ format: String,
76
+ showOccurrenceDialog: {
77
+ type: Boolean,
78
+ default: undefined
79
+ },
80
+ showRemoveDialog: {
81
+ type: Boolean,
82
+ default: undefined
83
+ },
84
+ formItem: Object,
85
+ dragItem: Object,
86
+ resizeItem: Object,
87
+ removeItem: Object
88
+ },
89
+ inject: {
90
+ kendoIntlService: {
91
+ default: null
92
+ },
93
+ ks: {
94
+ default: null
95
+ },
96
+ bv: {
97
+ default: null
98
+ }
99
+ },
100
+ computed: {
101
+ itemTime: function itemTime() {
102
+ return this.$props.isAllDay ? this.intl.toString(this.$props.zonedStart, 't') : this.intl.format('{0:t} - {1:t}', this.$props.zonedStart, this.$props.zonedEnd);
103
+ },
104
+ itemTitle: function itemTitle() {
105
+ return "(".concat(this.itemTime, "): ").concat(this.$props.title);
106
+ }
107
+ },
108
+ data: function data() {
109
+ return {
110
+ timeout: undefined,
111
+ currentItem: null,
112
+ viewItem: null,
113
+ display: true,
114
+ visible: false,
115
+ maxSiblingsPerSlot: 0
116
+ };
117
+ },
118
+ mounted: function mounted() {
119
+ this.element = this.getElement();
120
+
121
+ if (!this.ks.scheduler || !this.ks.scheduler.$el) {
122
+ return;
123
+ }
124
+
125
+ this.observer = new window.ResizeObserver(this.handleResize);
126
+ this.observer.observe(this.ks.scheduler.$el);
127
+ },
128
+ updated: function updated() {
129
+ var that = this;
130
+ this.$nextTick(function () {
131
+ that.align();
132
+ that.position();
133
+ });
134
+
135
+ if (!this.ks.scheduler || !this.ks.scheduler.$el || this.observer) {
136
+ return;
137
+ }
138
+
139
+ this.observer = new window.ResizeObserver(this.handleResize);
140
+ this.observer.observe(this.ks.scheduler.$el);
141
+ },
142
+ destroyed: !!isV3 ? undefined : function () {
143
+ if (this.observer) {
144
+ this.observer.disconnect();
145
+ }
146
+ },
147
+ // @ts-ignore
148
+ unmounted: function unmounted() {
149
+ if (this.observer) {
150
+ this.observer.disconnect();
151
+ }
152
+ },
153
+ // @ts-ignore
154
+ setup: !isV3 ? undefined : function () {
155
+ var v3 = !!isV3;
156
+ return {
157
+ v3: v3
158
+ };
159
+ },
160
+ // @ts-ignore
161
+ render: function render(createElement) {
162
+ var _this2 = this;
163
+
164
+ var h = gh || createElement;
165
+ var defaultSlot = getDefaultSlots(this); // tslint:enable:max-line-length
166
+
167
+ this.intl = provideIntlService(this);
168
+ var itemRender;
169
+ var itemRenderDefaultRendering = // @ts-ignore function children
170
+ h(SchedulerItem, {
171
+ ignoreIsAllDay: this.ignoreIsAllDay,
172
+ attrs: this.v3 ? undefined : {
173
+ ignoreIsAllDay: this.ignoreIsAllDay,
174
+ item: this.item,
175
+ uid: this.uid,
176
+ start: this.start,
177
+ end: this.end,
178
+ originalStart: this.originalStart,
179
+ startTimezone: this.startTimezone,
180
+ endTimezone: this.endTimezone,
181
+ isAllDay: this.isAllDay,
182
+ title: this.title,
183
+ description: this.description,
184
+ occurrenceId: this.occurrenceId,
185
+ recurrenceExceptions: this.recurrenceExceptions,
186
+ recurrenceRule: this.recurrenceRule,
187
+ recurrenceId: this.recurrenceId,
188
+ dataItem: this.dataItem,
189
+ head: this.head,
190
+ tail: this.tail,
191
+ order: this.order,
192
+ zonedStart: this.zonedStart,
193
+ zonedEnd: this.zonedEnd,
194
+ slots: this.slots,
195
+ group: this.group,
196
+ range: this.range,
197
+ isException: this.isException,
198
+ isRecurring: this.isRecurring,
199
+ id: this.id,
200
+ tabIndex: this.tabIndex,
201
+ className: this.className,
202
+ itemStyle: this.itemStyle,
203
+ editable: this.editable,
204
+ selected: this.selected,
205
+ vertical: this.vertical,
206
+ dragHint: this.dragHint,
207
+ resizeHint: this.resizeHint,
208
+ format: this.format,
209
+ itemTitle: this.itemTitle,
210
+ showOccurrenceDialog: this.showOccurrenceDialog,
211
+ showRemoveDialog: this.showRemoveDialog,
212
+ formItem: this.formItem,
213
+ dragItem: this.dragItem,
214
+ resizeItem: this.resizeItem,
215
+ removeItem: this.removeItem,
216
+ maxSiblingsPerSlot: this.maxSiblingsPerSlot
217
+ },
218
+ item: this.item,
219
+ uid: this.uid,
220
+ start: this.start,
221
+ end: this.end,
222
+ originalStart: this.originalStart,
223
+ startTimezone: this.startTimezone,
224
+ endTimezone: this.endTimezone,
225
+ isAllDay: this.isAllDay,
226
+ title: this.title,
227
+ description: this.description,
228
+ occurrenceId: this.occurrenceId,
229
+ recurrenceExceptions: this.recurrenceExceptions,
230
+ recurrenceRule: this.recurrenceRule,
231
+ recurrenceId: this.recurrenceId,
232
+ dataItem: this.dataItem,
233
+ head: this.head,
234
+ tail: this.tail,
235
+ order: this.order,
236
+ zonedStart: this.zonedStart,
237
+ zonedEnd: this.zonedEnd,
238
+ slots: this.slots,
239
+ group: this.group,
240
+ range: this.range,
241
+ isException: this.isException,
242
+ isRecurring: this.isRecurring,
243
+ id: this.id,
244
+ tabIndex: this.tabIndex,
245
+ className: this.className,
246
+ itemStyle: this.itemStyle,
247
+ editable: this.editable,
248
+ selected: this.selected,
249
+ vertical: this.vertical,
250
+ dragHint: this.dragHint,
251
+ resizeHint: this.resizeHint,
252
+ format: this.format,
253
+ itemTitle: this.itemTitle,
254
+ showOccurrenceDialog: this.showOccurrenceDialog,
255
+ showRemoveDialog: this.showRemoveDialog,
256
+ formItem: this.formItem,
257
+ dragItem: this.dragItem,
258
+ resizeItem: this.resizeItem,
259
+ removeItem: this.removeItem,
260
+ maxSiblingsPerSlot: this.maxSiblingsPerSlot,
261
+ style: __assign({
262
+ visibility: this.visible ? undefined : 'hidden',
263
+ display: this.display ? undefined : 'none'
264
+ }, this.$props.itemStyle) // Keyboard
265
+ ,
266
+ onKeydown: this.handleKeyDown,
267
+ on: this.v3 ? undefined : {
268
+ "keydown": this.handleKeyDown,
269
+ "keyup": this.handleKeyUp,
270
+ "focus": this.handleFocus,
271
+ "mouseup": this.handleMouseUp,
272
+ "mousedown": this.handleMouseDown,
273
+ "click": this.handleClick,
274
+ "doubleclick": this.handleDoubleClick,
275
+ "removeclick": this.handleRemoveClick,
276
+ "press": this.handlePress,
277
+ "drag": this.handleDrag,
278
+ "release": this.handleRelease,
279
+ "resizepress": this.handleResizePress,
280
+ "resizeenddrag": this.handleResizeEndDrag,
281
+ "resizestartdrag": this.handleResizeStartDrag,
282
+ "resizerelease": this.handleResizeRelease
283
+ },
284
+ onKeyup: this.handleKeyUp // Focus
285
+ ,
286
+ onFocus: this.handleFocus // Mouse
287
+ ,
288
+ onMouseup: this.handleMouseUp,
289
+ onMousedown: this.handleMouseDown,
290
+ onClick: this.handleClick,
291
+ onDoubleclick: this.handleDoubleClick,
292
+ onRemoveclick: this.handleRemoveClick // Drag
293
+ ,
294
+ onPress: this.handlePress,
295
+ onDrag: this.handleDrag,
296
+ onRelease: this.handleRelease // Resize
297
+ ,
298
+ onResizepress: this.handleResizePress,
299
+ onResizeenddrag: this.handleResizeEndDrag,
300
+ onResizestartdrag: this.handleResizeStartDrag,
301
+ onResizerelease: this.handleResizeRelease
302
+ }, this.v3 ? function () {
303
+ return [!_this2.$props.resizeHint && h("div", {
304
+ title: _this2.itemTitle,
305
+ attrs: _this2.v3 ? undefined : {
306
+ title: _this2.itemTitle
307
+ }
308
+ }, [!_this2.$props.isAllDay && // @ts-ignore function children
309
+ h(SchedulerItemContent, {
310
+ title: _this2.itemTitle,
311
+ attrs: _this2.v3 ? undefined : {
312
+ title: _this2.itemTitle
313
+ },
314
+ "class": "k-event-template k-event-time "
315
+ }, _this2.v3 ? function () {
316
+ return [defaultSlot];
317
+ } : [defaultSlot]), // @ts-ignore function children
318
+ h(SchedulerItemContent, {
319
+ title: _this2.$props.title,
320
+ attrs: _this2.v3 ? undefined : {
321
+ title: _this2.$props.title
322
+ },
323
+ "class": "k-event-template"
324
+ }, _this2.v3 ? function () {
325
+ return [defaultSlot];
326
+ } : [defaultSlot])])];
327
+ } : [!_this2.$props.resizeHint && h("div", {
328
+ title: _this2.itemTitle,
329
+ attrs: _this2.v3 ? undefined : {
330
+ title: _this2.itemTitle
331
+ }
332
+ }, [!_this2.$props.isAllDay && h(SchedulerItemContent, {
333
+ title: _this2.itemTitle,
334
+ attrs: _this2.v3 ? undefined : {
335
+ title: _this2.itemTitle
336
+ },
337
+ "class": "k-event-template k-event-time "
338
+ }, _this2.v3 ? function () {
339
+ return [defaultSlot];
340
+ } : [defaultSlot]), h(SchedulerItemContent, {
341
+ title: _this2.$props.title,
342
+ attrs: _this2.v3 ? undefined : {
343
+ title: _this2.$props.title
344
+ },
345
+ "class": "k-event-template"
346
+ }, _this2.v3 ? function () {
347
+ return [defaultSlot];
348
+ } : [defaultSlot])])]);
349
+ itemRender = getTemplate.call(this, {
350
+ h: h,
351
+ template: this.$props.item,
352
+ defaultRendering: itemRenderDefaultRendering,
353
+ defaultSlots: defaultSlot,
354
+ additionalListeners: {
355
+ // keydown: this.handleKeyDown,
356
+ // keyup: this.handleKeyUp,
357
+ // Focus
358
+ // focus: this.handleFocus,
359
+ // Mouse
360
+ // mouseup: this.handleMouseUp,
361
+ // mousedown: this.handleMouseDown,
362
+ // click: this.handleClick,
363
+ doubleclick: this.handleDoubleClick,
364
+ removeclick: this.handleRemoveClick,
365
+ // Drag
366
+ press: this.handlePress,
367
+ drag: this.handleDrag,
368
+ release: this.handleRelease,
369
+ // Resize
370
+ resizepress: this.handleResizePress,
371
+ resizeenddrag: this.handleResizeEndDrag,
372
+ resizestartdrag: this.handleResizeStartDrag,
373
+ resizerelease: this.handleResizeRelease
374
+ }
375
+ });
376
+ return itemRender;
377
+ },
378
+ methods: {
379
+ getElement: function getElement() {
380
+ return this.$el.nodeType === 8 ? this.$el.parentElement : this.$el.nodeType === 3 ? this.$el.nextElementSibling : this.$el;
381
+ },
382
+ // Focus Handlers
383
+ handleFocus: function handleFocus(e) {
384
+ this.$emit('focus', e);
385
+ },
386
+ handleBlur: function handleBlur(e) {
387
+ this.$emit('blur', e);
388
+ },
389
+ // Mouse Handlers
390
+ handleMouseDown: function handleMouseDown(e) {
391
+ this.$emit('mousedown', e);
392
+ },
393
+ handleClick: function handleClick(e) {
394
+ this.$emit('click', e);
395
+ },
396
+ handleMouseUp: function handleMouseUp(e) {
397
+ this.$emit('mouseup', e);
398
+ },
399
+ handleMouseOver: function handleMouseOver(e) {
400
+ this.$emit('mouseover', e);
401
+ },
402
+ handleMouseOut: function handleMouseOut(e) {
403
+ this.$emit('mouseout', e);
404
+ },
405
+ handleMouseEnter: function handleMouseEnter(e) {
406
+ this.$emit('mouseenter', e);
407
+ },
408
+ handleMouseLeave: function handleMouseLeave(e) {
409
+ this.$emit('mouseleave', e);
410
+ },
411
+ handleDoubleClick: function handleDoubleClick(e) {
412
+ this.$emit('doubleclick', e);
413
+ },
414
+ handleRemoveClick: function handleRemoveClick(e) {
415
+ this.$emit('removeclick', e);
416
+ },
417
+ // Keyboard Handlers
418
+ handleKeyDown: function handleKeyDown(e) {
419
+ this.$emit('keydown', e);
420
+ },
421
+ handleKeyPress: function handleKeyPress(e) {
422
+ this.$emit('keypress', e);
423
+ },
424
+ handleKeyUp: function handleKeyUp(e) {
425
+ this.$emit('keyup', e);
426
+ },
427
+ // Drag Handlers
428
+ handlePress: function handlePress(e) {
429
+ this.$emit('press', e);
430
+ },
431
+ handleDrag: function handleDrag(e) {
432
+ this.$emit('drag', e);
433
+ },
434
+ handleRelease: function handleRelease(e) {
435
+ this.$emit('release', e);
436
+ },
437
+ handleResizePress: function handleResizePress(e) {
438
+ this.$emit('resizepress', e);
439
+ },
440
+ handleResizeStartDrag: function handleResizeStartDrag(e) {
441
+ this.$emit('resizestartdrag', e);
442
+ },
443
+ handleResizeEndDrag: function handleResizeEndDrag(e) {
444
+ this.$emit('resizeenddrag', e);
445
+ },
446
+ handleResizeRelease: function handleResizeRelease(e) {
447
+ this.$emit('resizerelease', e);
448
+ },
449
+ calculateMostSiblings: function calculateMostSiblings(slots, items) {
450
+ var _this = this;
451
+
452
+ var most = 1;
453
+ slots.forEach(function (slot) {
454
+ var itemsInSlot = items.filter(function (i) {
455
+ return _this.inSlot(slot.$props, i.$props);
456
+ });
457
+
458
+ if (itemsInSlot.length > most) {
459
+ most = itemsInSlot.length;
460
+ }
461
+ });
462
+ return most;
463
+ },
464
+ getSiblingsInAllSlots: function getSiblingsInAllSlots(slots, items) {
465
+ var _this = this;
466
+
467
+ var siblings = slots.map(function (slot) {
468
+ return items.filter(function (i) {
469
+ return _this.inSlot(slot.$props, i.$props);
470
+ });
471
+ });
472
+ return siblings;
473
+ },
474
+ inSlot: function inSlot(slot, current) {
475
+ return intersects(slot.start, slot.end, current.start, current.end) && slot.group.index === current.group.index && slot.range.index === current.range.index && (this.$props.ignoreIsAllDay || slot.isAllDay === current.isAllDay);
476
+ },
477
+ align: function align() {
478
+ var _this = this;
479
+
480
+ if (!this.element) {
481
+ return;
482
+ }
483
+
484
+ var slots = (this.bv.slots || []).filter(function (slot) {
485
+ return slot && _this.inSlot(slot.$props, _this.$props);
486
+ });
487
+
488
+ if (slots.length === 0) {
489
+ this.display = false;
490
+ return;
491
+ }
492
+
493
+ var firstSlot = first(slots.sort(function (a, b) {
494
+ if (a.$props.start && b.$props.start) {
495
+ return a.$props.start.getTime() - b.$props.start.getTime();
496
+ }
497
+
498
+ return true;
499
+ }));
500
+
501
+ if (!firstSlot) {
502
+ return;
503
+ }
504
+
505
+ var rect = getRect(firstSlot.$el);
506
+ setRect(this.element, rect);
507
+ },
508
+ position: function position() {
509
+ var _this = this;
510
+
511
+ if (!this.element) {
512
+ return;
513
+ }
514
+
515
+ var slots = (this.bv.slots || []).filter(function (slot) {
516
+ return slot && _this.inSlot(slot.$props, _this.$props);
517
+ });
518
+ var items = [];
519
+ var dragItems = [];
520
+ var resizeItems = [];
521
+ (this.bv.items || []).forEach(function (i) {
522
+ if (!i) {
523
+ return;
524
+ }
525
+
526
+ if (i.$props.dragHint) {
527
+ dragItems.push(i);
528
+ } else if (i.$props.resizeHint) {
529
+ resizeItems.push(i);
530
+ } else {
531
+ items.push(i);
532
+ }
533
+ });
534
+ var order = this.$props.dragHint || this.$props.resizeHint ? calculateOrder(this, this.$props.dragHint ? dragItems : resizeItems, slots, this.$props.ignoreIsAllDay) : this.$props.order || 0;
535
+ var mostSiblingsInSlot = this.$props.dragHint || this.$props.resizeHint ? this.calculateMostSiblings(slots, this.$props.dragHint ? dragItems : resizeItems) : this.calculateMostSiblings(slots, items);
536
+ var siblingsPerSlot = this.getSiblingsInAllSlots(slots, items);
537
+ var topOffset = 0;
538
+ var rect = getRect(this.element);
539
+ siblingsPerSlot.forEach(function (slot) {
540
+ var currentOffset = 0;
541
+ var currentItem = slot.sort(function (a, b) {
542
+ return a.$props.order - b.$props.order;
543
+ });
544
+ currentItem.forEach(function (current) {
545
+ if (intersects(current.$props.start, current.$props.end, _this.$props.start, _this.$props.end) && !(_this.$props.dragHint || _this.$props.resizeHint) && current.$props.maxSiblingsPerSlot && current.$props.maxSiblingsPerSlot > mostSiblingsInSlot && current.getElement() !== _this.element) {
546
+ mostSiblingsInSlot = current.$props.maxSiblingsPerSlot;
547
+ }
548
+
549
+ var currentRect = getRect(current.getElement());
550
+
551
+ if (current.$props.order !== null && current.$props.order < order) {
552
+ currentOffset = (currentRect.top || rect.top) + currentRect.height - rect.top - BORDER_WIDTH * order + ITEMS_SPACING;
553
+ }
554
+ });
555
+
556
+ if (currentOffset > topOffset) {
557
+ topOffset = currentOffset;
558
+ }
559
+ });
560
+
561
+ if (slots.length === 0) {
562
+ this.display = false;
563
+ return;
564
+ }
565
+
566
+ var OFFSET = 20;
567
+ rect.width = this.$props.vertical ? rect.width / mostSiblingsInSlot - BORDER_WIDTH - OFFSET / mostSiblingsInSlot : rect.width * slots.length - BORDER_WIDTH - OFFSET;
568
+ rect.height = this.$props.vertical ? rect.height * slots.length - BORDER_WIDTH : (this.$props.resizeHint || this.$props.dragHint) && mostSiblingsInSlot <= 1 ? rect.height : this.$props.itemStyle && this.$props.itemStyle.height ? this.$props.itemStyle.height : 25;
569
+ rect.left = this.$props.vertical ? rect.left + order * rect.width + BORDER_WIDTH * order : rect.left;
570
+ rect.top = this.$props.vertical ? rect.top : rect.top + topOffset + BORDER_WIDTH * order;
571
+ this.maxSiblingsPerSlot = mostSiblingsInSlot;
572
+ setRect(this.element, rect);
573
+ this.visible = true;
574
+ this.display = true;
575
+ },
576
+ handleResize: function handleResize() {
577
+ var _this = this;
578
+
579
+ if (this.timeout !== undefined) {
580
+ window.cancelAnimationFrame(this.timeout);
581
+ }
582
+
583
+ this.timeout = window.requestAnimationFrame(function () {
584
+ _this.align();
585
+
586
+ _this.position();
587
+ });
588
+ }
589
+ }
590
+ };
591
+ /**
592
+ * @hidden
593
+ */
594
+
595
+ var SchedulerViewItem = SchedulerViewItemVue2;
596
+ export { SchedulerViewItem, SchedulerViewItemVue2 };
@@ -0,0 +1,34 @@
1
+ import { DataItem } from '../../models';
2
+ import { SchedulerEditItemAll } from '../SchedulerEditItem';
3
+ /**
4
+ * Represents the available `action` types for the `SchedulerItemDragItemAction` objects.
5
+ *
6
+ * The available types are:
7
+ * - `DRAG_ITEM_SET'`
8
+ * - `DRAG_ITEM_START'`
9
+ * - `DRAG_ITEM_DRAG'`
10
+ * - `DRAG_ITEM_COMPLETE'`
11
+ * - `DRAG_ITEM_COMPLETE_OCCURRENCE'`
12
+ * - `DRAG_ITEM_COMPLETE_SERIES'`
13
+ * - `DRAG_ITEM_RESET'`
14
+ * - `DRAG_ITEM_DRAG_SELECTED`
15
+ */
16
+ export declare enum DRAG_ITEM_ACTION {
17
+ set = "DRAG_ITEM_SET",
18
+ start = "DRAG_ITEM_START",
19
+ drag = "DRAG_ITEM_DRAG",
20
+ complete = "DRAG_ITEM_COMPLETE",
21
+ completeOccurrence = "DRAG_ITEM_COMPLETE_OCCURRENCE",
22
+ completeSeries = "DRAG_ITEM_COMPLETE_SERIES",
23
+ reset = "DRAG_ITEM_RESET",
24
+ dragSelected = "DRAG_ITEM_DRAG_SELECTED"
25
+ }
26
+ /**
27
+ * Represents the object passed to the `drag-item` reducer.
28
+ */
29
+ export interface SchedulerItemDragItemAction {
30
+ type: DRAG_ITEM_ACTION;
31
+ payload?: DataItem;
32
+ }
33
+ /** @hidden */
34
+ export declare const useDragItem: (this: SchedulerEditItemAll, action: SchedulerItemDragItemAction) => void;