@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,772 @@
1
+ // @ts-ignore
2
+ import * as Vue from 'vue';
3
+ var allVue = Vue;
4
+ var gh = allVue.h;
5
+ var isV3 = allVue.version && allVue.version[0] === '3';
6
+ var inject = allVue.inject;
7
+ import { provideLocalizationService, provideIntlService } from '@progress/kendo-vue-intl';
8
+ import { messages, recurrenceEditorEndLabel, recurrenceEditorEndAfter, recurrenceEditorEndNever, recurrenceEditorEndOccurrence, recurrenceEditorEndOn, recurrenceEditorWeeklyRepeatOn, recurrenceEditorYearlyRepeatOn, recurrenceEditorMonthlyRepeatOn, recurrenceEditorMonthlyDay, recurrenceEditorYearlyOf, recurrenceEditorRepeat } from '../messages.js';
9
+ import { serializeRule } from '@progress/kendo-recurrence';
10
+ import { toLocalDate, ZonedDate } from '@progress/kendo-date-math';
11
+ import { RecurrenceFrequencyEditor } from './RecurrenceFrequencyEditor.js';
12
+ import { RecurrenceRepeatOnWeekEditor } from './RecurrenceRepeatOnWeekEditor.js';
13
+ import { getRule, getUntil, getMonths, getWeekDays, getExtendedWeekDays, getEndRule, getMonthDay, getRepeatOnRule, weekDayRuleFromString, getOffsets, capitalize, getFrequencies, getFrequency, getWeekDay, getMonth, getOffset } from './common.js';
14
+ import { Label } from '@progress/kendo-vue-labels';
15
+ import { NumericTextBox, RadioGroup } from '@progress/kendo-vue-inputs';
16
+ import { DropDownList } from '@progress/kendo-vue-dropdowns';
17
+ import { DatePicker } from '@progress/kendo-vue-dateinputs';
18
+ /**
19
+ * @hidden
20
+ */
21
+
22
+ var RecurrenceEditorVue2 = {
23
+ name: 'KendoRecurrenceEditor',
24
+ // @ts-ignore
25
+ emits: {
26
+ change: null
27
+ },
28
+ props: {
29
+ name: String,
30
+ value: {
31
+ type: String,
32
+ default: ''
33
+ },
34
+ start: Date,
35
+ timezone: String
36
+ },
37
+ inject: {
38
+ ks: {
39
+ default: null
40
+ },
41
+ kendoLocalizationService: {
42
+ default: null
43
+ },
44
+ kendoIntlService: {
45
+ default: null
46
+ }
47
+ },
48
+ computed: {
49
+ rrule: function rrule() {
50
+ return getRule(this.$props.value);
51
+ },
52
+ frequencies: function frequencies() {
53
+ return getFrequencies(this.localizeMessage);
54
+ },
55
+ frequency: function frequency() {
56
+ return getFrequency(this.rrule);
57
+ },
58
+ extendedWeekDays: function extendedWeekDays() {
59
+ return getExtendedWeekDays(this.intl, this.localizeMessage);
60
+ },
61
+ weekDay: function weekDay() {
62
+ return getWeekDay(this.extendedWeekDays, this.rrule, this.$props.start);
63
+ },
64
+ months: function months() {
65
+ return getMonths(this.intl);
66
+ },
67
+ month: function month() {
68
+ return getMonth(this.months, this.rrule);
69
+ },
70
+ offsets: function offsets() {
71
+ return getOffsets(this.localizeMessage);
72
+ },
73
+ offset: function offset() {
74
+ return getOffset(this.offsets, this.rrule);
75
+ },
76
+ endRule: function endRule() {
77
+ return getEndRule(this.rrule);
78
+ },
79
+ monthDay: function monthDay() {
80
+ return getMonthDay(this.rrule, this.$props.start);
81
+ },
82
+ until: function until() {
83
+ return getUntil(this.rrule);
84
+ },
85
+ weekDays: function weekDays() {
86
+ return getWeekDays(this.intl);
87
+ },
88
+ repeatOnRule: function repeatOnRule() {
89
+ return getRepeatOnRule(this.rrule);
90
+ }
91
+ },
92
+ data: function data() {
93
+ return {
94
+ defaultCount: 1,
95
+ defaultUntil: ZonedDate.fromUTCDate(this.$props.start)
96
+ };
97
+ },
98
+ // @ts-ignore
99
+ setup: !isV3 ? undefined : function () {
100
+ var v3 = !!isV3;
101
+ return {
102
+ v3: v3
103
+ };
104
+ },
105
+ // @ts-ignore
106
+ render: function render(createElement) {
107
+ var _this2 = this;
108
+
109
+ var h = gh || createElement;
110
+ var that = this;
111
+ this.intl = provideIntlService(this);
112
+ this.localization = provideLocalizationService(this);
113
+ var timezone = this.ks.timezone;
114
+ var itemStyle = {
115
+ display: 'flex',
116
+ alignItems: 'center',
117
+ minHeight: 30
118
+ };
119
+
120
+ var monthlyWeekDay = function monthlyWeekDay() {
121
+ return [h(DropDownList, {
122
+ key: "weekday-offset",
123
+ textField: "text",
124
+ attrs: this.v3 ? undefined : {
125
+ textField: "text",
126
+ dataItemKey: "value",
127
+ disabled: this.repeatOnRule !== 'weekday',
128
+ dataItems: this.offsets,
129
+ value: this.offset
130
+ },
131
+ dataItemKey: "value",
132
+ disabled: this.repeatOnRule !== 'weekday',
133
+ dataItems: this.offsets,
134
+ value: this.offset,
135
+ onChange: this.handleOffsetChange,
136
+ on: this.v3 ? undefined : {
137
+ "change": this.handleOffsetChange
138
+ },
139
+ style: {
140
+ width: 'auto'
141
+ }
142
+ }), h(DropDownList, {
143
+ key: "weekday-value",
144
+ disabled: this.repeatOnRule !== 'weekday',
145
+ attrs: this.v3 ? undefined : {
146
+ disabled: this.repeatOnRule !== 'weekday',
147
+ value: this.weekDay,
148
+ dataItem: this.extendedWeekDays,
149
+ textField: "text",
150
+ dataItemKey: "value"
151
+ },
152
+ value: this.weekDay,
153
+ dataItem: this.extendedWeekDays,
154
+ onChange: this.handleWeekDayChange,
155
+ on: this.v3 ? undefined : {
156
+ "change": this.handleWeekDayChange
157
+ },
158
+ textField: "text",
159
+ dataItemKey: "value",
160
+ style: {
161
+ width: 'auto'
162
+ }
163
+ })];
164
+ };
165
+
166
+ var monthlyMonthDay = function monthlyMonthDay() {
167
+ return h(NumericTextBox, {
168
+ key: 'weekday-day',
169
+ min: 1,
170
+ attrs: this.v3 ? undefined : {
171
+ min: 1,
172
+ max: 31,
173
+ disabled: this.repeatOnRule !== 'monthday',
174
+ value: this.rrule && this.rrule.byMonthDay && this.rrule.byMonthDay[0],
175
+ width: 'auto'
176
+ },
177
+ max: 31,
178
+ disabled: this.repeatOnRule !== 'monthday',
179
+ value: this.rrule && this.rrule.byMonthDay && this.rrule.byMonthDay[0],
180
+ onChange: this.handleMonthDayChange,
181
+ on: this.v3 ? undefined : {
182
+ "change": this.handleMonthDayChange
183
+ },
184
+ width: 'auto'
185
+ });
186
+ };
187
+
188
+ var yearlyMonthDay = function yearlyMonthDay() {
189
+ return [h(DropDownList, {
190
+ key: "monthday-month",
191
+ disabled: this.repeatOnRule !== 'monthday',
192
+ attrs: this.v3 ? undefined : {
193
+ disabled: this.repeatOnRule !== 'monthday',
194
+ value: this.month,
195
+ dataItems: this.months,
196
+ textField: "text",
197
+ dataItemKey: "value"
198
+ },
199
+ value: this.month,
200
+ dataItems: this.months,
201
+ textField: "text",
202
+ dataItemKey: "value",
203
+ onChange: this.handleMonthChange,
204
+ on: this.v3 ? undefined : {
205
+ "change": this.handleMonthChange
206
+ },
207
+ style: {
208
+ width: 'auto'
209
+ }
210
+ }), h(NumericTextBox, {
211
+ key: "monthday-day",
212
+ min: 1,
213
+ attrs: this.v3 ? undefined : {
214
+ min: 1,
215
+ max: 31,
216
+ disabled: this.repeatOnRule !== 'monthday',
217
+ value: this.monthDay
218
+ },
219
+ max: 31,
220
+ disabled: this.repeatOnRule !== 'monthday',
221
+ value: this.monthDay,
222
+ onChange: this.handleMonthDayChange,
223
+ on: this.v3 ? undefined : {
224
+ "change": this.handleMonthDayChange
225
+ },
226
+ style: {
227
+ width: 'auto'
228
+ }
229
+ })];
230
+ };
231
+
232
+ var yearlyWeekDay = function yearlyWeekDay() {
233
+ return [h(DropDownList, {
234
+ key: "yearly-weekday-offset",
235
+ textField: "text",
236
+ attrs: this.v3 ? undefined : {
237
+ textField: "text",
238
+ dataItemKey: "value",
239
+ disabled: this.repeatOnRule !== 'weekday',
240
+ dataItems: this.offsets,
241
+ value: this.offset
242
+ },
243
+ dataItemKey: "value",
244
+ disabled: this.repeatOnRule !== 'weekday',
245
+ dataItems: this.offsets,
246
+ value: this.offset,
247
+ onChange: this.handleOffsetChange,
248
+ on: this.v3 ? undefined : {
249
+ "change": this.handleOffsetChange
250
+ },
251
+ style: {
252
+ width: 'auto'
253
+ }
254
+ }), h(DropDownList, {
255
+ key: "yearly-weekday-day",
256
+ textField: "text",
257
+ attrs: this.v3 ? undefined : {
258
+ textField: "text",
259
+ dataItemKey: "value",
260
+ disabled: this.repeatOnRule !== 'weekday',
261
+ value: this.weekDay,
262
+ dataItems: this.extendedWeekDays
263
+ },
264
+ dataItemKey: "value",
265
+ disabled: this.repeatOnRule !== 'weekday',
266
+ value: this.weekDay,
267
+ dataItems: this.extendedWeekDays,
268
+ onChange: this.handleWeekDayChange,
269
+ on: this.v3 ? undefined : {
270
+ "change": this.handleWeekDayChange
271
+ },
272
+ style: {
273
+ width: 'auto'
274
+ }
275
+ }), h("span", {
276
+ key: "yearly-weekday-of-label"
277
+ }, [this.localizeMessage(recurrenceEditorYearlyOf, true)]), h(DropDownList, {
278
+ key: "yearly-weekday-month",
279
+ textField: "text",
280
+ attrs: this.v3 ? undefined : {
281
+ textField: "text",
282
+ dataItemKey: "value",
283
+ disabled: this.repeatOnRule !== 'weekday',
284
+ value: this.month,
285
+ dataItems: this.months
286
+ },
287
+ dataItemKey: "value",
288
+ disabled: this.repeatOnRule !== 'weekday',
289
+ value: this.month,
290
+ dataItems: this.months,
291
+ onChange: this.handleMonthChange,
292
+ on: this.v3 ? undefined : {
293
+ "change": this.handleMonthChange
294
+ },
295
+ style: {
296
+ width: 'auto'
297
+ }
298
+ })];
299
+ };
300
+
301
+ var count = function count() {
302
+ var _this = this;
303
+
304
+ return [h(NumericTextBox, {
305
+ key: "endrule-after-editor",
306
+ id: "k-endrule-after",
307
+ attrs: this.v3 ? undefined : {
308
+ id: "k-endrule-after",
309
+ min: 1,
310
+ width: '70px',
311
+ value: this.endRule === 'count' ? this.rrule.count : this.defaultCount,
312
+ disabled: this.endRule !== 'count'
313
+ },
314
+ min: 1,
315
+ width: '70px',
316
+ value: this.endRule === 'count' ? this.rrule.count : this.defaultCount,
317
+ onChange: this.handleCountChange,
318
+ on: this.v3 ? undefined : {
319
+ "change": this.handleCountChange
320
+ },
321
+ disabled: this.endRule !== 'count'
322
+ }), // @ts-ignore function children
323
+ h(Label, {
324
+ key: "endrule-after-label",
325
+ "class": 'k-radio-label',
326
+ editorId: 'k-endrule-after',
327
+ attrs: this.v3 ? undefined : {
328
+ editorId: 'k-endrule-after'
329
+ }
330
+ }, this.v3 ? function () {
331
+ return [_this.localizeMessage(recurrenceEditorEndOccurrence, true)];
332
+ } : [_this.localizeMessage(recurrenceEditorEndOccurrence, true)])];
333
+ };
334
+
335
+ var dpUntil = function dpUntil() {
336
+ return (// @ts-ignore
337
+ h(DatePicker, {
338
+ key: "k-endrule-until-editor",
339
+ id: "k-endrule-until",
340
+ attrs: this.v3 ? undefined : {
341
+ id: "k-endrule-until",
342
+ disabled: that.endRule !== 'until',
343
+ min: that.$props.start,
344
+ value: that.endRule === 'until' ? that.until : toLocalDate(that.defaultUntil)
345
+ },
346
+ disabled: that.endRule !== 'until',
347
+ min: that.$props.start,
348
+ value: that.endRule === 'until' ? that.until : toLocalDate(that.defaultUntil),
349
+ onChange: that.handleUntilChange,
350
+ on: this.v3 ? undefined : {
351
+ "change": that.handleUntilChange
352
+ },
353
+ style: {
354
+ width: 'auto'
355
+ }
356
+ })
357
+ );
358
+ };
359
+
360
+ return (// fragment
361
+ h("div", [h("div", {
362
+ "class": "k-form-field"
363
+ }, [// @ts-ignore function children
364
+ h(Label, this.v3 ? function () {
365
+ return [_this2.localization.toLanguageString(recurrenceEditorRepeat, messages[recurrenceEditorRepeat])];
366
+ } : [_this2.localization.toLanguageString(recurrenceEditorRepeat, messages[recurrenceEditorRepeat])]), h("div", {
367
+ "class": "k-form-field-wrap"
368
+ }, [h(RecurrenceFrequencyEditor, {
369
+ value: this.frequency,
370
+ attrs: this.v3 ? undefined : {
371
+ value: this.frequency,
372
+ dataItems: this.frequencies
373
+ },
374
+ dataItems: this.frequencies,
375
+ onChange: this.handleFrequencyChange,
376
+ on: this.v3 ? undefined : {
377
+ "change": this.handleFrequencyChange
378
+ }
379
+ })])]), this.frequency !== 'never' && h("div", {
380
+ "class": 'k-form-field'
381
+ }, [// @ts-ignore function children
382
+ h(Label, {
383
+ editorId: "interval-editor",
384
+ attrs: this.v3 ? undefined : {
385
+ editorId: "interval-editor"
386
+ }
387
+ }, this.v3 ? function () {
388
+ return [_this2.localizeMessage(capitalize(_this2.frequency) + 'RepeatEvery')];
389
+ } : [_this2.localizeMessage(capitalize(_this2.frequency) + 'RepeatEvery')]), h("div", {
390
+ "class": "k-form-field-wrap"
391
+ }, [h("div", {
392
+ style: {
393
+ display: 'flex',
394
+ alignItems: 'center'
395
+ }
396
+ }, [h(NumericTextBox, {
397
+ min: 1,
398
+ attrs: this.v3 ? undefined : {
399
+ min: 1,
400
+ step: 1,
401
+ defaultValue: 1,
402
+ value: this.rrule.interval,
403
+ id: "interval-editor"
404
+ },
405
+ step: 1,
406
+ defaultValue: 1,
407
+ value: this.rrule.interval,
408
+ onChange: this.handleIntervalChange,
409
+ on: this.v3 ? undefined : {
410
+ "change": this.handleIntervalChange
411
+ },
412
+ id: "interval-editor"
413
+ }), // @ts-ignore function children
414
+ h(Label, {
415
+ editorId: "interval-editor",
416
+ attrs: this.v3 ? undefined : {
417
+ editorId: "interval-editor"
418
+ }
419
+ }, this.v3 ? function () {
420
+ return [_this2.localizeMessage(capitalize(_this2.frequency) + 'Interval')];
421
+ } : [_this2.localizeMessage(capitalize(_this2.frequency) + 'Interval')])])])]), this.frequency === 'weekly' && h("div", {
422
+ "class": "k-form-field"
423
+ }, [// @ts-ignore function children
424
+ h(Label, this.v3 ? function () {
425
+ return [_this2.localizeMessage(recurrenceEditorWeeklyRepeatOn, true)];
426
+ } : [_this2.localizeMessage(recurrenceEditorWeeklyRepeatOn, true)]), h("div", {
427
+ "class": "k-form-field-wrap"
428
+ }, [h(RecurrenceRepeatOnWeekEditor, {
429
+ dataItems: this.weekDays,
430
+ attrs: this.v3 ? undefined : {
431
+ dataItems: this.weekDays,
432
+ value: (this.rrule.byWeekDay || []).map(function (_a) {
433
+ var day = _a.day;
434
+ return day;
435
+ })
436
+ },
437
+ value: (this.rrule.byWeekDay || []).map(function (_a) {
438
+ var day = _a.day;
439
+ return day;
440
+ }),
441
+ onChange: this.handleWeekDaysChange,
442
+ on: this.v3 ? undefined : {
443
+ "change": this.handleWeekDaysChange
444
+ }
445
+ })])]), this.frequency === 'monthly' && h("div", {
446
+ "class": "k-form-field"
447
+ }, [// @ts-ignore function children
448
+ h(Label, {
449
+ key: "recurrence-repeat-on-monthly-label"
450
+ }, this.v3 ? function () {
451
+ return [_this2.localizeMessage(recurrenceEditorMonthlyRepeatOn, true)];
452
+ } : [_this2.localizeMessage(recurrenceEditorMonthlyRepeatOn, true)]), h("div", {
453
+ "class": "k-form-field-wrap"
454
+ }, [h(RadioGroup, {
455
+ value: this.repeatOnRule,
456
+ attrs: this.v3 ? undefined : {
457
+ value: this.repeatOnRule,
458
+ dataItems: [{
459
+ value: 'monthday',
460
+ style: itemStyle,
461
+ label: this.localizeMessage(recurrenceEditorMonthlyDay, true),
462
+ content: monthlyMonthDay.call(this)
463
+ }, {
464
+ value: 'weekday',
465
+ style: itemStyle,
466
+ label: ' ',
467
+ content: monthlyWeekDay.call(this)
468
+ }]
469
+ },
470
+ onChange: this.handleRepeatOnRuleChange,
471
+ on: this.v3 ? undefined : {
472
+ "change": this.handleRepeatOnRuleChange
473
+ },
474
+ "class": "k-reset",
475
+ dataItems: [{
476
+ value: 'monthday',
477
+ style: itemStyle,
478
+ label: this.localizeMessage(recurrenceEditorMonthlyDay, true),
479
+ content: monthlyMonthDay.call(this)
480
+ }, {
481
+ value: 'weekday',
482
+ style: itemStyle,
483
+ label: ' ',
484
+ content: monthlyWeekDay.call(this)
485
+ }]
486
+ })])]), this.frequency === 'yearly' && h("div", {
487
+ "class": "k-form-field"
488
+ }, [// @ts-ignore function children
489
+ h(Label, this.v3 ? function () {
490
+ return [_this2.localizeMessage(recurrenceEditorYearlyRepeatOn, true)];
491
+ } : [_this2.localizeMessage(recurrenceEditorYearlyRepeatOn, true)]), h("div", {
492
+ "class": "k-form-field-wrap"
493
+ }, [h(RadioGroup, {
494
+ value: this.repeatOnRule,
495
+ attrs: this.v3 ? undefined : {
496
+ value: this.repeatOnRule,
497
+ dataItems: [{
498
+ value: 'monthday',
499
+ label: ' ',
500
+ style: itemStyle,
501
+ content: yearlyMonthDay.call(this)
502
+ }, {
503
+ value: 'weekday',
504
+ label: ' ',
505
+ style: itemStyle,
506
+ content: yearlyWeekDay.call(this)
507
+ }]
508
+ },
509
+ onChange: this.handleRepeatOnRuleChange,
510
+ on: this.v3 ? undefined : {
511
+ "change": this.handleRepeatOnRuleChange
512
+ },
513
+ "class": "k-reset",
514
+ dataItems: [{
515
+ value: 'monthday',
516
+ label: ' ',
517
+ style: itemStyle,
518
+ content: yearlyMonthDay.call(this)
519
+ }, {
520
+ value: 'weekday',
521
+ label: ' ',
522
+ style: itemStyle,
523
+ content: yearlyWeekDay.call(this)
524
+ }]
525
+ })])]), this.frequency !== 'never' && h("div", {
526
+ "class": "k-form-field"
527
+ }, [// @ts-ignore function children
528
+ h(Label, this.v3 ? function () {
529
+ return [_this2.localizeMessage(recurrenceEditorEndLabel, true)];
530
+ } : [_this2.localizeMessage(recurrenceEditorEndLabel, true)]), h("div", {
531
+ "class": "k-form-field-wrap"
532
+ }, [h(RadioGroup, {
533
+ value: this.endRule,
534
+ attrs: this.v3 ? undefined : {
535
+ value: this.endRule,
536
+ dataItems: [{
537
+ value: 'never',
538
+ style: itemStyle,
539
+ label: this.localizeMessage(recurrenceEditorEndNever, true)
540
+ }, {
541
+ value: 'count',
542
+ style: itemStyle,
543
+ label: this.localizeMessage(recurrenceEditorEndAfter, true),
544
+ content: count.call(this)
545
+ }, {
546
+ value: 'until',
547
+ style: itemStyle,
548
+ label: this.localizeMessage(recurrenceEditorEndOn, true),
549
+ content: dpUntil.call(this)
550
+ }]
551
+ },
552
+ onChange: this.handleEndRuleChange,
553
+ on: this.v3 ? undefined : {
554
+ "change": this.handleEndRuleChange
555
+ },
556
+ dataItems: [{
557
+ value: 'never',
558
+ style: itemStyle,
559
+ label: this.localizeMessage(recurrenceEditorEndNever, true)
560
+ }, {
561
+ value: 'count',
562
+ style: itemStyle,
563
+ label: this.localizeMessage(recurrenceEditorEndAfter, true),
564
+ content: count.call(this)
565
+ }, {
566
+ value: 'until',
567
+ style: itemStyle,
568
+ label: this.localizeMessage(recurrenceEditorEndOn, true),
569
+ content: dpUntil.call(this)
570
+ }]
571
+ })])])])
572
+ );
573
+ },
574
+ methods: {
575
+ localizeMessage: function localizeMessage(baseMassage, removePrepend) {
576
+ var message = removePrepend ? baseMassage : 'scheduler.recurrenceEditor' + baseMassage;
577
+ return this.localization.toLanguageString(message, messages[message]);
578
+ },
579
+ onChangeHandler: function onChangeHandler(newRrule) {
580
+ if (newRrule.freq === 'never') {
581
+ this.$emit('change', {
582
+ value: null
583
+ });
584
+ } else {
585
+ if (newRrule.weekStart === undefined) {
586
+ newRrule.weekStart = this.intl.firstDay();
587
+ }
588
+
589
+ this.$emit('change', {
590
+ value: serializeRule(newRrule, this.$props.timezone)
591
+ });
592
+ }
593
+ },
594
+ handleFrequencyChange: function handleFrequencyChange(newFreq) {
595
+ var newRrule = {};
596
+ newRrule.freq = newFreq;
597
+ newRrule.interval = 1;
598
+
599
+ if (newFreq === 'weekly') {
600
+ newRrule.byWeekDay = [{
601
+ day: ZonedDate.fromLocalDate(this.$props.start, this.timezone).getDay(),
602
+ offset: 0
603
+ }];
604
+ }
605
+
606
+ if (newFreq === 'monthly' || newFreq === 'yearly') {
607
+ newRrule.byMonthDay = [this.$props.start.getDate()];
608
+ }
609
+
610
+ if (newFreq === 'yearly') {
611
+ newRrule.byMonth = [this.$props.start.getMonth() + 1];
612
+ }
613
+
614
+ this.onChangeHandler(newRrule);
615
+ },
616
+ handleIntervalChange: function handleIntervalChange(event) {
617
+ var newInterval = event.value;
618
+ this.onChangeHandler(Object.assign({}, this.rrule, {
619
+ interval: newInterval
620
+ }));
621
+ },
622
+ handleCountChange: function handleCountChange(event) {
623
+ var newCount = event.value;
624
+ this.onChangeHandler(Object.assign({}, this.rrule, {
625
+ count: newCount
626
+ }));
627
+
628
+ if (newCount !== null) {
629
+ this.defaultCount = newCount;
630
+ }
631
+ },
632
+ handleUntilChange: function handleUntilChange(event) {
633
+ var newUntil = event.value;
634
+
635
+ if (!newUntil) {
636
+ return;
637
+ }
638
+
639
+ var value = ZonedDate.fromLocalDate(newUntil, this.$props.timezone);
640
+ this.onChangeHandler(Object.assign({}, this.rrule, {
641
+ until: value
642
+ }));
643
+ this.defaultUntil = value;
644
+ },
645
+ handleWeekDaysChange: function handleWeekDaysChange(newWeekDays) {
646
+ this.onChangeHandler(Object.assign({}, this.rrule, {
647
+ byWeekDay: this.weekDays.filter(function (wd) {
648
+ return newWeekDays.some(function (nwd) {
649
+ return nwd === wd.value;
650
+ });
651
+ }).map(function (wd) {
652
+ return {
653
+ offset: 0,
654
+ day: wd.value
655
+ };
656
+ })
657
+ }));
658
+ },
659
+ handleWeekDayChange: function handleWeekDayChange(event) {
660
+ var newRrule = Object.assign({}, this.rrule);
661
+ var newWeekDay = event.target.value;
662
+
663
+ if (typeof newWeekDay.value === 'string') {
664
+ /* day, weekday or weekend */
665
+ newRrule.byWeekDay = weekDayRuleFromString(newWeekDay.value);
666
+ newRrule.bySetPosition = [this.offset.value];
667
+ } else {
668
+ /* specific weekday */
669
+ newRrule.byWeekDay = [{
670
+ day: newWeekDay.value,
671
+ offset: this.offset.value
672
+ }];
673
+ }
674
+
675
+ this.onChangeHandler(newRrule);
676
+ },
677
+ handleMonthDayChange: function handleMonthDayChange(event) {
678
+ this.onChangeHandler(Object.assign({}, this.rrule, {
679
+ byMonthDay: [event.value]
680
+ }));
681
+ },
682
+ handleMonthChange: function handleMonthChange(event) {
683
+ var newMonth = event.value;
684
+ this.onChangeHandler(Object.assign({}, this.rrule, {
685
+ byMonth: [newMonth.value]
686
+ }));
687
+ },
688
+ handleEndRuleChange: function handleEndRuleChange(event) {
689
+ var newEnd = event.value;
690
+ var newRrule = Object.assign({}, this.rrule);
691
+
692
+ switch (newEnd) {
693
+ case 'never':
694
+ newRrule.until = undefined;
695
+ newRrule.count = undefined;
696
+ break;
697
+
698
+ case 'count':
699
+ newRrule.until = undefined;
700
+ newRrule.count = this.defaultCount;
701
+ break;
702
+
703
+ case 'until':
704
+ newRrule.until = this.defaultUntil;
705
+ newRrule.count = undefined;
706
+ break;
707
+
708
+ default:
709
+ break;
710
+ }
711
+
712
+ this.onChangeHandler(newRrule);
713
+ },
714
+ handleRepeatOnRuleChange: function handleRepeatOnRuleChange(event) {
715
+ var newRrule = Object.assign({}, this.rrule);
716
+
717
+ if (event.value === 'monthday') {
718
+ newRrule.byWeekDay = undefined;
719
+ newRrule.bySetPosition = undefined;
720
+ newRrule.byMonthDay = [this.monthDay];
721
+ } else if (event.value === 'weekday') {
722
+ // weekDays
723
+ newRrule.byMonthDay = undefined;
724
+
725
+ if (typeof this.weekDay.value === 'string') {
726
+ /* day, weekday or weekend */
727
+ newRrule.bySetPosition = [this.offset.value];
728
+ newRrule.byWeekDay = weekDayRuleFromString(this.weekDay.value);
729
+ } else {
730
+ /* specific weekday */
731
+ newRrule.byWeekDay = [{
732
+ day: this.weekDay.value,
733
+ offset: this.offset.value
734
+ }];
735
+ }
736
+ }
737
+
738
+ this.onChangeHandler(newRrule);
739
+ },
740
+ handleOffsetChange: function handleOffsetChange(event) {
741
+ var newRrule = Object.assign({}, this.rrule);
742
+ var newOffset = event.value;
743
+
744
+ if (newRrule.byWeekDay) {
745
+ var weekDaysCount = newRrule.byWeekDay.length;
746
+
747
+ switch (weekDaysCount) {
748
+ case 7:
749
+ case 5:
750
+ case 2:
751
+ newRrule.bySetPosition = [newOffset.value];
752
+ break;
753
+
754
+ case 1:
755
+ newRrule.byWeekDay[0].offset = newOffset.value;
756
+ break;
757
+
758
+ default:
759
+ break;
760
+ }
761
+ }
762
+
763
+ this.onChangeHandler(newRrule);
764
+ }
765
+ }
766
+ };
767
+ /**
768
+ * @hidden
769
+ */
770
+
771
+ var RecurrenceEditor = RecurrenceEditorVue2;
772
+ export { RecurrenceEditor, RecurrenceEditorVue2 };