@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,656 @@
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
+ };
16
+
17
+ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
18
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
19
+ if (ar || !(i in from)) {
20
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
21
+ ar[i] = from[i];
22
+ }
23
+ }
24
+ return to.concat(ar || Array.prototype.slice.call(from));
25
+ }; // @ts-ignore
26
+
27
+
28
+ import * as Vue from 'vue';
29
+ var allVue = Vue;
30
+ var gh = allVue.h;
31
+ var isV3 = allVue.version && allVue.version[0] === '3';
32
+ import { getModelFields, getField, findMaster, setField, toSchedulerGroups, getToday } from './utils.js';
33
+ import { clone, getListeners, getTemplate, templateRendering } from '@progress/kendo-vue-common';
34
+ import { provideIntlService, provideLocalizationService } from '@progress/kendo-vue-intl';
35
+ import { SchedulerHeader } from './components/header/SchedulerHeader.js';
36
+ import { SchedulerNavigation } from './components/header/navigation/SchedulerNavigation.js';
37
+ import { SchedulerViewSelector } from './components/header/view-selector/SchedulerViewSelector.js';
38
+ import { addDays, addMonths } from '@progress/kendo-date-math';
39
+ import { SchedulerFooter } from './components/footer/SchedulerFooter.js';
40
+ import { ToolbarSpacer } from '@progress/kendo-vue-buttons';
41
+ import { NavigationDatePicker } from './components/header/navigation/NavigationDatePicker.js';
42
+ import { BusinessHours } from './components/footer/bussiness-hours/BusinessHours.js';
43
+ import { DayView } from './views/day/DayView'; // import { SchedulerFormProps } from './editors/SchedulerFormEditor.js';
44
+
45
+ import { validatePackage } from '@progress/kendo-vue-common';
46
+ import { packageMetadata } from './package-metadata.js';
47
+ import { AgendaView, MonthView, WeekView, WorkWeekView } from './main.js';
48
+ import { TimelineView } from './views/time/TimelineView.js';
49
+ import { useEditable } from './hooks.js';
50
+ var DEFAULT_DATE_FORMAT = '{0:D}';
51
+ var DEFAULT_SHORT_DATE_FORMAT = '{0:d}';
52
+ /**
53
+ * Specifies the available [DataAction]({% slug api_scheduler_data_action %}) types.
54
+ */
55
+
56
+ export var DATA_ACTION;
57
+
58
+ (function (DATA_ACTION) {
59
+ DATA_ACTION[DATA_ACTION["create"] = 0] = "create";
60
+ DATA_ACTION[DATA_ACTION["update"] = 1] = "update";
61
+ DATA_ACTION[DATA_ACTION["remove"] = 2] = "remove";
62
+ })(DATA_ACTION || (DATA_ACTION = {}));
63
+ /** @hidden */
64
+
65
+
66
+ var SchedulerVue2 = {
67
+ name: 'KendoScheduler',
68
+ props: {
69
+ dataItems: {
70
+ type: Array,
71
+ default: function _default() {
72
+ return [];
73
+ }
74
+ },
75
+ views: {
76
+ type: Array,
77
+ default: function _default() {
78
+ return [];
79
+ }
80
+ },
81
+ view: String,
82
+ defaultView: String,
83
+ date: Date,
84
+ rtl: Boolean,
85
+ height: {
86
+ type: [Number, String],
87
+ default: 600
88
+ },
89
+ timezone: String,
90
+ group: Object,
91
+ resources: [Object, Array],
92
+ modelFields: Object,
93
+ tabIndex: {
94
+ type: Number,
95
+ default: -1
96
+ },
97
+ editable: {
98
+ type: [Boolean, Object],
99
+ default: false
100
+ },
101
+ defaultDate: {
102
+ type: Date,
103
+ default: function _default() {
104
+ return new Date();
105
+ }
106
+ },
107
+ validator: {
108
+ type: Function,
109
+ default: function _default() {
110
+ return {};
111
+ }
112
+ },
113
+ modifyInitialFormValues: {
114
+ type: Function,
115
+ default: function _default(i) {
116
+ return i;
117
+ }
118
+ },
119
+ header: [String, Function, Object],
120
+ footer: [String, Function, Object],
121
+ slotRender: [String, Function, Object],
122
+ viewSlot: [String, Function, Object],
123
+ item: [String, Function, Object],
124
+ viewItem: [String, Function, Object],
125
+ task: [String, Function, Object],
126
+ form: [String, Function, Object],
127
+ resizeHint: [String, Function, Object],
128
+ dialogProps: Object,
129
+ formProps: Object,
130
+ dateHeaderCell: [String, Function, Object],
131
+ timeHeaderCell: [String, Function, Object]
132
+ },
133
+ computed: {
134
+ wrapperClassName: function wrapperClassName() {
135
+ return {
136
+ 'k-rtl': this.$props.rtl !== undefined ? this.$props.rtl : this.dir === 'rtl',
137
+ 'k-widget': true,
138
+ 'k-scheduler': true,
139
+ 'k-scheduler-flex': true,
140
+ 'k-floatwrap': true
141
+ };
142
+ },
143
+ fields: function fields() {
144
+ return getModelFields(this.$props.modelFields).fields;
145
+ }
146
+ },
147
+ provide: function provide() {
148
+ return {
149
+ ks: this.ks,
150
+ setActiveViewName: this.handleActiveViewNameChange,
151
+ setActiveDate: this.handleDateChange,
152
+ itemDoubleClick: this.handleItemDoubleClick,
153
+ itemClick: this.handleItemClick,
154
+ slotDoubleClick: this.handleSlotDoubleClick,
155
+ slotClick: this.handleSlotClick,
156
+ taskDoubleClick: this.handleTaskDoubleClick,
157
+ taskClick: this.handleTaskClick,
158
+ ksValidator: this.validator,
159
+ ksModifyInitialFormValues: this.modifyInitialFormValues
160
+ };
161
+ },
162
+ data: function data() {
163
+ this.intl = provideIntlService(this);
164
+ this.localization = provideLocalizationService(this);
165
+ var currentDate = this.$props.date || this.$props.defaultDate;
166
+ var activeViewName = this.$props.view || this.$props.defaultView || this.views[0] && this.views[0].name || 'day';
167
+ var view = this.views.find(function (currentView) {
168
+ return currentView.name === activeViewName;
169
+ }) || this.views[0] || h(DayView);
170
+ var dateFormat = this.getViewPropValue(view, 'selectedDateFormat', activeViewName) || DEFAULT_DATE_FORMAT;
171
+ var shortDateFormat = this.getViewPropValue(view, 'selectedShortDateFormat', activeViewName) || DEFAULT_SHORT_DATE_FORMAT;
172
+ var dateRange = this.getViewComponentByName(activeViewName).props.dateRange.default()({
173
+ intl: this.intl,
174
+ date: currentDate,
175
+ timezone: this.$props.timezone,
176
+ numberOfDays: this.getViewPropValue(view, 'numberOfDays', activeViewName),
177
+ workWeekStart: this.getViewPropValue(view, 'workWeekStart', activeViewName) || this.intl.firstDay(),
178
+ workWeekEnd: this.getViewPropValue(view, 'workWeekEnd', activeViewName) || (this.intl.firstDay() + this.getViewPropValue(view, 'numberOfDays', activeViewName)) % 6
179
+ });
180
+ return {
181
+ ks: {
182
+ activeViewName: activeViewName,
183
+ currentDate: currentDate,
184
+ showWorkHours: view.showWorkHours !== undefined ? view.showWorkHours : true,
185
+ timezone: this.$props.timezone,
186
+ props: __assign({}, this.$props),
187
+ views: this.views,
188
+ view: view,
189
+ fields: getModelFields(this.$props.modelFields).fields,
190
+ groups: toSchedulerGroups(this.$props.group, this.$props.resources),
191
+ dateRange: dateRange,
192
+ orientation: this.$props.group && this.$props.group.orientation ? this.$props.group.orientation : 'horizontal',
193
+ dateFormat: dateFormat,
194
+ shortDateFormat: shortDateFormat,
195
+ scheduler: this,
196
+ dataItems: this.dataItems
197
+ }
198
+ };
199
+ },
200
+ watch: {
201
+ view: function view(newName) {
202
+ this.updatePassedState(newName);
203
+ },
204
+ timezone: function timezone(newName) {
205
+ this.ks.timezone = newName;
206
+ this.updatePassedState();
207
+ },
208
+ dataItems: function dataItems(newDataItems) {
209
+ this.ks.dataItems = newDataItems;
210
+ }
211
+ },
212
+ // @ts-ignore
213
+ setup: !isV3 ? undefined : function () {
214
+ var v3 = !!isV3;
215
+ return {
216
+ v3: v3
217
+ };
218
+ },
219
+ // @ts-ignore
220
+ render: function render(createElement) {
221
+ var _this2 = this;
222
+
223
+ var _this = this;
224
+
225
+ var h = gh || createElement;
226
+ validatePackage(packageMetadata);
227
+ var timezone = this.$props.timezone; // const dir = useDir(element);
228
+
229
+ var view = this.views.find(function (currentView) {
230
+ return currentView.name === _this.ks.activeViewName;
231
+ }) || this.views[0] || h(DayView);
232
+ var slotDuration = this.getViewPropValue(this.ks.view, 'slotDuration', this.ks.activeViewName);
233
+ var header = templateRendering.call(this, view.header || this.$props.header, getListeners.call(this));
234
+ var footer = templateRendering.call(this, view.footer || this.$props.footer, getListeners.call(this));
235
+ var slotRender = templateRendering.call(this, view.slot || this.$props.slotRender, {});
236
+ var viewSlot = templateRendering.call(this, view.viewSlot || this.$props.viewSlot, {});
237
+ var item = templateRendering.call(this, view.item || this.$props.item, {});
238
+ var viewItem = templateRendering.call(this, view.viewItem || this.$props.viewItem, {});
239
+ var task = templateRendering.call(this, view.task || this.$props.task, {});
240
+ var dateHeaderCell = templateRendering.call(this, view.dateHeaderCell || this.$props.dateHeaderCell, {});
241
+ var timeHeaderCell = templateRendering.call(this, view.timeHeaderCell || this.$props.timeHeaderCell, {});
242
+ var resizeHint = templateRendering.call(this, view.resizeHint || this.$props.resizeHint, {});
243
+ this.ks.form = templateRendering.call(this, view.form || this.$props.form, {});
244
+ this.ks.dialogProps = view.dialogProps || this.$props.dialogProps;
245
+ this.ks.formProps = view.formProps || this.$props.formProps;
246
+ var currentEditable = useEditable(view.editable !== undefined ? view.editable : this.$props.editable);
247
+ var ViewSelector = SchedulerViewSelector;
248
+ var viewComponent = this.getViewComponentByName(this.ks.activeViewName || view.name);
249
+
250
+ var viewProps = __assign(__assign(__assign({}, this.$props), this.ks.view), {
251
+ showWorkHours: this.ks.showWorkHours,
252
+ dataItems: undefined,
253
+ views: undefined,
254
+ defaultDate: undefined,
255
+ dateRange: this.ks.dateRange,
256
+ slotRender: slotRender,
257
+ viewSlot: viewSlot,
258
+ item: item,
259
+ viewItem: viewItem,
260
+ task: task,
261
+ dateHeaderCell: dateHeaderCell,
262
+ timeHeaderCell: timeHeaderCell,
263
+ resizeHint: resizeHint,
264
+ editable: currentEditable
265
+ });
266
+
267
+ var headerRender;
268
+ var headerRenderDefaultRendering = // @ts-ignore function children
269
+ h(SchedulerHeader, this.v3 ? function () {
270
+ return [h(SchedulerNavigation, {
271
+ onPrevclick: _this2.handlePrevClick,
272
+ on: _this2.v3 ? undefined : {
273
+ "prevclick": _this2.handlePrevClick,
274
+ "nextclick": _this2.handleNextClick,
275
+ "todayclick": _this2.handleTodayClick
276
+ },
277
+ onNextclick: _this2.handleNextClick,
278
+ onTodayclick: _this2.handleTodayClick
279
+ }), h(NavigationDatePicker, {
280
+ value: _this2.ks.currentDate,
281
+ attrs: _this2.v3 ? undefined : {
282
+ value: _this2.ks.currentDate
283
+ },
284
+ onChange: _this2.handleDatePickerChange,
285
+ on: _this2.v3 ? undefined : {
286
+ "change": _this2.handleDatePickerChange
287
+ }
288
+ }), h(ToolbarSpacer), h(ViewSelector)];
289
+ } : [h(SchedulerNavigation, {
290
+ onPrevclick: _this2.handlePrevClick,
291
+ on: _this2.v3 ? undefined : {
292
+ "prevclick": _this2.handlePrevClick,
293
+ "nextclick": _this2.handleNextClick,
294
+ "todayclick": _this2.handleTodayClick
295
+ },
296
+ onNextclick: _this2.handleNextClick,
297
+ onTodayclick: _this2.handleTodayClick
298
+ }), h(NavigationDatePicker, {
299
+ value: _this2.ks.currentDate,
300
+ attrs: _this2.v3 ? undefined : {
301
+ value: _this2.ks.currentDate
302
+ },
303
+ onChange: _this2.handleDatePickerChange,
304
+ on: _this2.v3 ? undefined : {
305
+ "change": _this2.handleDatePickerChange
306
+ }
307
+ }), h(ToolbarSpacer), h(ViewSelector)]);
308
+ headerRender = getTemplate.call(this, {
309
+ h: h,
310
+ template: header,
311
+ defaultRendering: headerRenderDefaultRendering,
312
+ additionalProps: {
313
+ currentDate: this.ks.currentDate
314
+ },
315
+ additionalListeners: {
316
+ prevclick: this.handlePrevClick,
317
+ nextclick: this.handleNextClick,
318
+ todayclick: this.handleTodayClick,
319
+ datepickerchange: this.handleDatePickerChange
320
+ }
321
+ });
322
+ var footerRender;
323
+ var footerRenderDefaultRendering = // @ts-ignore function children
324
+ h(SchedulerFooter, this.v3 ? function () {
325
+ return [// @ts-ignore function children
326
+ h(BusinessHours, {
327
+ slotDuration: slotDuration,
328
+ attrs: _this2.v3 ? undefined : {
329
+ slotDuration: slotDuration
330
+ },
331
+ onClick: _this2.handleShowWorkHoursClick,
332
+ on: _this2.v3 ? undefined : {
333
+ "click": _this2.handleShowWorkHoursClick
334
+ }
335
+ })];
336
+ } : [h(BusinessHours, {
337
+ slotDuration: slotDuration,
338
+ attrs: _this2.v3 ? undefined : {
339
+ slotDuration: slotDuration
340
+ },
341
+ onClick: _this2.handleShowWorkHoursClick,
342
+ on: _this2.v3 ? undefined : {
343
+ "click": _this2.handleShowWorkHoursClick
344
+ }
345
+ })]);
346
+ footerRender = getTemplate.call(this, {
347
+ h: h,
348
+ template: footer,
349
+ defaultRendering: footerRenderDefaultRendering,
350
+ additionalProps: {
351
+ slotDuration: slotDuration
352
+ },
353
+ additionalListeners: {
354
+ showworkhoursclick: this.handleShowWorkHoursClick
355
+ }
356
+ });
357
+ return h("div", {
358
+ id: this.$props.id,
359
+ attrs: this.v3 ? undefined : {
360
+ id: this.$props.id,
361
+ tabindex: this.$props.tabIndex // Aria
362
+ // dir={dir}
363
+ ,
364
+ role: this.$props.role,
365
+ "aria-label": this.$props.ariaLabel,
366
+ "aria-labelledby": this.$props.ariaLabelledby // Handlers
367
+
368
+ },
369
+ style: {
370
+ height: this.$props.height + 'px'
371
+ },
372
+ "class": this.wrapperClassName,
373
+ tabindex: this.$props.tabIndex,
374
+ role: this.$props.role,
375
+ "aria-label": this.$props.ariaLabel,
376
+ "aria-labelledby": this.$props.ariaLabelledby,
377
+ onFocusin: this.handleFocus,
378
+ on: this.v3 ? undefined : {
379
+ "focusin": this.handleFocus,
380
+ "focusout": this.handleBlur
381
+ },
382
+ onFocusout: this.handleBlur
383
+ }, [headerRender, view && h(viewComponent, __assign({
384
+ key: this.ks.view.name,
385
+ onDataaction: this.handleDataAction,
386
+ on: this.v3 ? undefined : {
387
+ 'dataaction': this.handleDataAction
388
+ },
389
+ props: this.v3 ? undefined : viewProps
390
+ }, viewProps)), footerRender]);
391
+ },
392
+ methods: {
393
+ getViewComponentByName: function getViewComponentByName(viewName) {
394
+ switch (viewName.toLowerCase()) {
395
+ case 'week':
396
+ return WeekView;
397
+
398
+ case 'workweek':
399
+ return WorkWeekView;
400
+
401
+ case 'agenda':
402
+ return AgendaView;
403
+
404
+ case 'timeline':
405
+ return TimelineView;
406
+
407
+ case 'month':
408
+ return MonthView;
409
+
410
+ default:
411
+ return DayView;
412
+ }
413
+ },
414
+ getViewPropValue: function getViewPropValue(view, propName, activeViewName) {
415
+ var componentProp = this.getViewComponentByName(activeViewName).props[propName];
416
+ return view[propName] || (componentProp ? componentProp.default : undefined);
417
+ },
418
+ handleDataChange: function handleDataChange(_a) {
419
+ var _b = _a.created,
420
+ created = _b === void 0 ? [] : _b,
421
+ _c = _a.updated,
422
+ updated = _c === void 0 ? [] : _c,
423
+ _d = _a.deleted,
424
+ deleted = _d === void 0 ? [] : _d;
425
+ var args = {
426
+ created: created,
427
+ updated: updated,
428
+ deleted: deleted
429
+ };
430
+ this.$emit('datachange', args);
431
+ },
432
+ handleCreate: function handleCreate(action) {
433
+ var created = [action.dataItem];
434
+ this.handleDataChange({
435
+ created: created
436
+ });
437
+ },
438
+ handleUpdate: function handleUpdate(action) {
439
+ var _this = this;
440
+
441
+ var created = [];
442
+ var updated = [];
443
+
444
+ if (action.series) {
445
+ if (Array.isArray(action.dataItem)) {
446
+ action.dataItem.map(function (dataItem) {
447
+ var masterClone = clone(findMaster(action.dataItem, _this.fields, _this.dataItems));
448
+ var newDataItem = clone(dataItem);
449
+ setField(newDataItem, _this.fields.originalStart, getField(masterClone, _this.fields.originalStart));
450
+ setField(newDataItem, _this.fields.recurrenceId, getField(masterClone, _this.fields.recurrenceId));
451
+ setField(newDataItem, _this.fields.recurrenceExceptions, getField(masterClone, _this.fields.recurrenceExceptions));
452
+ updated.push(newDataItem);
453
+ });
454
+ } else {
455
+ var masterClone = clone(findMaster(action.dataItem, this.fields, this.dataItems));
456
+ var newDataItem = clone(action.dataItem);
457
+ setField(newDataItem, this.fields.originalStart, getField(masterClone, this.fields.originalStart));
458
+ setField(newDataItem, this.fields.recurrenceId, getField(masterClone, this.fields.recurrenceId));
459
+ setField(newDataItem, this.fields.recurrenceExceptions, getField(masterClone, this.fields.recurrenceExceptions));
460
+ updated.push(newDataItem);
461
+ }
462
+ } else {
463
+ if (Array.isArray(action.dataItem)) {
464
+ action.dataItem.map(function (dataItem) {
465
+ var isException = getField(dataItem, _this.fields.recurrenceRule) !== null && getField(dataItem, _this.fields.recurrenceRule) !== undefined;
466
+ var isRecurring = getField(dataItem, _this.fields.recurrenceId) !== null && getField(dataItem, _this.fields.recurrenceId) !== undefined;
467
+
468
+ if (isRecurring && isException) {
469
+ var masterClone = clone(findMaster(dataItem, _this.fields, _this.dataItems));
470
+ var exceptionDate = getField(dataItem, _this.fields.originalStart);
471
+ var currentExceptions = getField(masterClone, _this.fields.recurrenceExceptions) || [];
472
+ setField(masterClone, _this.fields.recurrenceExceptions, __spreadArray(__spreadArray([], currentExceptions, true), [exceptionDate], false));
473
+ setField(dataItem, _this.fields.recurrenceRule, null);
474
+ updated.push(masterClone);
475
+ created.push(dataItem);
476
+ } else {
477
+ updated.push(dataItem);
478
+ }
479
+ });
480
+ } else {
481
+ var isException = getField(action.dataItem, this.fields.recurrenceRule) !== null && getField(action.dataItem, this.fields.recurrenceRule) !== undefined;
482
+ var isRecurring = getField(action.dataItem, this.fields.recurrenceId) !== null && getField(action.dataItem, this.fields.recurrenceId) !== undefined;
483
+
484
+ if (isRecurring && isException) {
485
+ var masterClone = clone(findMaster(action.dataItem, this.fields, this.dataItems));
486
+ var exceptionDate = getField(action.dataItem, this.fields.originalStart);
487
+ var currentExceptions = getField(masterClone, this.fields.recurrenceExceptions) || [];
488
+ setField(masterClone, this.fields.recurrenceExceptions, __spreadArray(__spreadArray([], currentExceptions, true), [exceptionDate], false));
489
+ setField(action.dataItem, this.fields.recurrenceRule, null);
490
+ updated.push(masterClone);
491
+ created.push(action.dataItem);
492
+ } else {
493
+ updated.push(action.dataItem);
494
+ }
495
+ }
496
+ }
497
+
498
+ this.handleDataChange({
499
+ updated: updated,
500
+ created: created
501
+ });
502
+ },
503
+ handleRemove: function handleRemove(action) {
504
+ var updated = [];
505
+ var deleted = [];
506
+
507
+ if (action.series) {
508
+ var masterClone = clone(findMaster(action.dataItem, this.fields, this.dataItems));
509
+ var dataItem = clone(action.dataItem);
510
+ setField(dataItem, this.fields.originalStart, getField(masterClone, this.fields.originalStart));
511
+ setField(dataItem, this.fields.recurrenceId, getField(masterClone, this.fields.recurrenceId));
512
+ setField(dataItem, this.fields.recurrenceRule, getField(masterClone, this.fields.recurrenceRule));
513
+ setField(dataItem, this.fields.recurrenceExceptions, getField(masterClone, this.fields.recurrenceExceptions));
514
+ deleted.push(dataItem);
515
+ } else {
516
+ var isException = getField(action.dataItem, this.fields.recurrenceRule) !== null && getField(action.dataItem, this.fields.recurrenceRule) !== undefined;
517
+
518
+ if (!isException) {
519
+ deleted.push(action.dataItem);
520
+ } else {
521
+ var masterClone = clone(findMaster(action.dataItem, this.fields, this.dataItems));
522
+ var exceptionDate = getField(action.dataItem, this.fields.originalStart);
523
+ var currentExceptions = getField(masterClone, this.fields.recurrenceExceptions) || [];
524
+ setField(masterClone, this.fields.recurrenceExceptions, __spreadArray(__spreadArray([], currentExceptions, true), [exceptionDate], false));
525
+ setField(action.dataItem, this.fields.recurrenceRule, null);
526
+ updated.push(masterClone);
527
+ }
528
+ }
529
+
530
+ this.handleDataChange({
531
+ updated: updated,
532
+ deleted: deleted
533
+ });
534
+ },
535
+ handleDataAction: function handleDataAction(action) {
536
+ switch (action.type) {
537
+ case DATA_ACTION.create:
538
+ this.handleCreate(action);
539
+ break;
540
+
541
+ case DATA_ACTION.update:
542
+ this.handleUpdate(action);
543
+ break;
544
+
545
+ case DATA_ACTION.remove:
546
+ this.handleRemove(action);
547
+ break;
548
+
549
+ default:
550
+ break;
551
+ }
552
+ },
553
+ handleActiveViewNameChange: function handleActiveViewNameChange(newView, event) {
554
+ this.updatePassedState(newView);
555
+ this.$emit('viewchange', __assign(__assign({
556
+ viewName: newView
557
+ }, event), {
558
+ target: this.ks.scheduler.$el
559
+ }));
560
+ },
561
+ handleDateChange: function handleDateChange(newDate, event) {
562
+ this.setDate(newDate, __assign(__assign({}, event), {
563
+ target: this.ks.scheduler.$el
564
+ }));
565
+ },
566
+ handleDatePickerChange: function handleDatePickerChange(event) {
567
+ if (!event.value) {
568
+ return;
569
+ }
570
+
571
+ this.setDate(event.value, __assign(__assign({}, event), {
572
+ target: this.ks.scheduler.$el,
573
+ nativeEvent: event.event
574
+ }));
575
+ },
576
+ handleNextClick: function handleNextClick(event) {
577
+ event.preventDefault();
578
+ var offset = this.getViewPropValue(this.ks.view, 'step', this.ks.activeViewName) || this.getViewPropValue(this.ks.view, 'numberOfDays', this.ks.activeViewName) || 1;
579
+ var isMonthView = offset > 27;
580
+ var newDate = isMonthView ? addMonths(this.ks.currentDate, Math.round(offset / 27)) : addDays(this.ks.currentDate, offset);
581
+ this.setDate(newDate, event);
582
+ },
583
+ handlePrevClick: function handlePrevClick(event) {
584
+ event.preventDefault();
585
+ var offset = this.getViewPropValue(this.ks.view, 'step', this.ks.activeViewName) || this.getViewPropValue(this.ks.view, 'numberOfDays', this.ks.activeViewName) || 1;
586
+ var isMonthView = offset > 27;
587
+ var newDate = isMonthView ? addMonths(this.ks.currentDate, -Math.round(offset / 27)) : addDays(this.ks.currentDate, -offset);
588
+ this.setDate(newDate, event);
589
+ },
590
+ handleTodayClick: function handleTodayClick(event) {
591
+ event.preventDefault();
592
+ var newDate = getToday();
593
+ this.setDate(newDate, event);
594
+ },
595
+ handleShowWorkHoursClick: function handleShowWorkHoursClick() {
596
+ this.ks.showWorkHours = !this.ks.showWorkHours;
597
+ },
598
+ handleFocus: function handleFocus() {
599
+ if (this.$el) {
600
+ this.$el.style.boxShadow = '0 0.5px 0.5px 0.5px rgba(0, 0, 0, .12)';
601
+ }
602
+ },
603
+ handleBlur: function handleBlur() {
604
+ if (this.$el) {
605
+ this.$el.style.boxShadow = '';
606
+ }
607
+ },
608
+ handleItemClick: function handleItemClick(args) {
609
+ this.$emit('itemclick', args);
610
+ },
611
+ handleItemDoubleClick: function handleItemDoubleClick(args) {
612
+ this.$emit('itemdoubleclick', args);
613
+ },
614
+ handleSlotClick: function handleSlotClick(args) {
615
+ this.$emit('slotclick', args);
616
+ },
617
+ handleSlotDoubleClick: function handleSlotDoubleClick(args) {
618
+ this.$emit('slotdoubleclick', args);
619
+ },
620
+ handleTaskClick: function handleTaskClick(args) {
621
+ this.$emit('taskclick', args);
622
+ },
623
+ handleTaskDoubleClick: function handleTaskDoubleClick(args) {
624
+ this.$emit('taskdoubleclick', args);
625
+ },
626
+ setDate: function setDate(newDate, event) {
627
+ this.ks.currentDate = newDate;
628
+ this.updatePassedState();
629
+ this.$emit('datechange', {
630
+ date: newDate,
631
+ event: event
632
+ });
633
+ },
634
+ updatePassedState: function updatePassedState(newViewName) {
635
+ var newView = newViewName || this.ks.activeViewName;
636
+ this.ks.activeViewName = newView;
637
+ this.ks.view = this.views.find(function (currentView) {
638
+ return currentView.name === newView;
639
+ }) || this.views[0] || h(DayView);
640
+ this.ks.dateFormat = this.getViewPropValue(this.ks.view, 'selectedDateFormat', newView) || DEFAULT_DATE_FORMAT;
641
+ this.ks.shortDateFormat = this.getViewPropValue(this.ks.view, 'selectedShortDateFormat', newView) || DEFAULT_SHORT_DATE_FORMAT;
642
+ this.ks.dateRange = this.getViewComponentByName(newView).props.dateRange.default()({
643
+ intl: this.intl,
644
+ date: this.ks.currentDate,
645
+ timezone: this.$props.timezone,
646
+ numberOfDays: this.getViewPropValue(this.ks.view, 'numberOfDays', this.ks.activeViewName),
647
+ workWeekStart: this.getViewPropValue(this.ks.view, 'workWeekStart', this.ks.activeViewName) || this.intl.firstDay(),
648
+ workWeekEnd: this.getViewPropValue(this.ks.view, 'workWeekEnd', this.ks.activeViewName) || (this.intl.firstDay() + this.getViewPropValue(this.ks.view, 'numberOfDays', this.ks.activeViewName)) % 6
649
+ });
650
+ }
651
+ }
652
+ };
653
+ /** @hidden */
654
+
655
+ var Scheduler = SchedulerVue2;
656
+ export { Scheduler, SchedulerVue2 };
@@ -0,0 +1,21 @@
1
+ // @ts-ignore
2
+ import { DefineComponent } from 'vue';
3
+ // @ts-ignore
4
+ import * as Vue from 'vue';
5
+
6
+ /**
7
+ * @hidden
8
+ */
9
+ // @ts-ignore
10
+ type Vue2type = Vue.default;
11
+
12
+ /**
13
+ * @hidden
14
+ */
15
+ // @ts-ignore
16
+ import { RecordPropsDefinition, ComponentOptions } from 'vue/types/options';
17
+ /**
18
+ * @hidden
19
+ */
20
+ // @ts-ignore
21
+ export { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type };