@progress/kendo-angular-scheduler 17.0.0-develop.9 → 17.0.1-develop.1

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 (268) hide show
  1. package/data-binding.directive.d.ts +1 -1
  2. package/editing/date-time-picker.component.d.ts +1 -1
  3. package/editing/edit-dialog-template.directive.d.ts +1 -1
  4. package/editing/edit-dialog.component.d.ts +1 -1
  5. package/editing/edit.service.d.ts +3 -3
  6. package/editing/recurrence/end-rule-radio-button.directive.d.ts +1 -1
  7. package/editing/recurrence/localization/messages.d.ts +1 -1
  8. package/editing/recurrence/recurrence-editor.component.d.ts +1 -1
  9. package/editing/recurrence/recurrence-end-rule-editor.component.d.ts +1 -1
  10. package/editing/recurrence/recurrence-interval-editor.component.d.ts +1 -1
  11. package/editing/recurrence/recurrence-monthly-yearly-editor.component.d.ts +1 -1
  12. package/editing/recurrence/recurrence.service.d.ts +4 -4
  13. package/editing/recurrence/repeat-on-radio-button.directive.d.ts +1 -1
  14. package/editing/resource-editor-base.d.ts +1 -1
  15. package/editing/timezone-editor.component.d.ts +1 -1
  16. package/editing-directives/editing-directive-base.d.ts +1 -1
  17. package/editing-directives/reactive-editing.directive.d.ts +1 -1
  18. package/{esm2020 → esm2022}/data-binding.directive.mjs +20 -13
  19. package/{esm2020 → esm2022}/editing/date-time-picker.component.mjs +15 -9
  20. package/{esm2020 → esm2022}/editing/dialogs.service.mjs +10 -4
  21. package/{esm2020 → esm2022}/editing/edit-dialog-template.directive.mjs +8 -3
  22. package/{esm2020 → esm2022}/editing/edit-dialog.component.mjs +44 -25
  23. package/{esm2020 → esm2022}/editing/edit.service.mjs +9 -5
  24. package/{esm2020 → esm2022}/editing/local-data-changes.service.mjs +5 -6
  25. package/{esm2020 → esm2022}/editing/recurrence/end-rule-radio-button.directive.mjs +13 -6
  26. package/{esm2020 → esm2022}/editing/recurrence/localization/custom-messages.component.mjs +9 -8
  27. package/{esm2020 → esm2022}/editing/recurrence/localization/localized-messages.directive.mjs +9 -8
  28. package/esm2022/editing/recurrence/localization/messages.mjs +239 -0
  29. package/{esm2020 → esm2022}/editing/recurrence/localization/recurrence-localization.service.mjs +4 -3
  30. package/{esm2020 → esm2022}/editing/recurrence/recurrence-editor.component.mjs +61 -36
  31. package/{esm2020 → esm2022}/editing/recurrence/recurrence-end-rule-editor.component.mjs +33 -26
  32. package/{esm2020 → esm2022}/editing/recurrence/recurrence-frequency-editor.component.mjs +8 -4
  33. package/{esm2020 → esm2022}/editing/recurrence/recurrence-interval-editor.component.mjs +18 -15
  34. package/{esm2020 → esm2022}/editing/recurrence/recurrence-monthly-yearly-editor.component.mjs +28 -15
  35. package/{esm2020 → esm2022}/editing/recurrence/recurrence-weekday-rule-editor.component.mjs +9 -5
  36. package/{esm2020 → esm2022}/editing/recurrence/recurrence.service.mjs +13 -7
  37. package/{esm2020 → esm2022}/editing/recurrence/repeat-on-radio-button.directive.mjs +18 -11
  38. package/{esm2020 → esm2022}/editing/resource-editor-base.mjs +9 -9
  39. package/{esm2020 → esm2022}/editing/resource-multiple-editor.component.mjs +7 -6
  40. package/{esm2020 → esm2022}/editing/resource-single-editor.component.mjs +7 -6
  41. package/{esm2020 → esm2022}/editing/timezone-editor.component.mjs +28 -22
  42. package/{esm2020 → esm2022}/editing-directives/base-edit.service.mjs +28 -11
  43. package/{esm2020 → esm2022}/editing-directives/editing-directive-base.mjs +27 -20
  44. package/{esm2020 → esm2022}/editing-directives/local-edit.service.mjs +6 -4
  45. package/{esm2020 → esm2022}/editing-directives/reactive-editing.directive.mjs +10 -3
  46. package/{esm2020 → esm2022}/events/add-event.mjs +8 -0
  47. package/{esm2020 → esm2022}/events/cancel-event.mjs +4 -0
  48. package/{esm2020 → esm2022}/events/create-event.mjs +24 -0
  49. package/{esm2020 → esm2022}/events/date-change-event.mjs +12 -0
  50. package/{esm2020 → esm2022}/events/drag-end-event.mjs +28 -0
  51. package/esm2022/events/drag-event.mjs +54 -0
  52. package/{esm2020 → esm2022}/events/drag-start-event.mjs +12 -0
  53. package/{esm2020 → esm2022}/events/edit-event-base.mjs +16 -0
  54. package/{esm2020 → esm2022}/events/edit-event.mjs +12 -0
  55. package/{esm2020 → esm2022}/events/event-click-event.mjs +16 -0
  56. package/{esm2020 → esm2022}/events/event-keydown-event.mjs +12 -0
  57. package/{esm2020 → esm2022}/events/navigate-event.mjs +8 -0
  58. package/{esm2020 → esm2022}/events/preventable-event.mjs +1 -3
  59. package/{esm2020 → esm2022}/events/remove-event.mjs +12 -0
  60. package/{esm2020 → esm2022}/events/resize-end-event.mjs +20 -0
  61. package/{esm2020 → esm2022}/events/resize-event.mjs +28 -0
  62. package/{esm2020 → esm2022}/events/resize-start-event.mjs +12 -0
  63. package/{esm2020 → esm2022}/events/save-event.mjs +8 -0
  64. package/{esm2020 → esm2022}/events/slot-click-event.mjs +28 -0
  65. package/{esm2020 → esm2022}/events/slot-drag-event.mjs +24 -0
  66. package/{esm2020 → esm2022}/events/slot-drag-start-event.mjs +24 -0
  67. package/{esm2020 → esm2022}/index.mjs +0 -6
  68. package/{esm2020 → esm2022}/loading.component.mjs +12 -8
  69. package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
  70. package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
  71. package/esm2022/localization/messages.mjs +614 -0
  72. package/{esm2020 → esm2022}/localization/scheduler-localization.service.mjs +3 -3
  73. package/{esm2020 → esm2022}/navigation/focus.service.mjs +21 -15
  74. package/{esm2020 → esm2022}/navigation/focusable.directive.mjs +19 -15
  75. package/esm2022/navigation/shortcuts.directive.mjs +220 -0
  76. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  77. package/{esm2020 → esm2022}/pdf/pdf-command.directive.mjs +9 -8
  78. package/{esm2020 → esm2022}/pdf/pdf.component.mjs +93 -8
  79. package/{esm2020 → esm2022}/pdf/pdf.module.mjs +4 -4
  80. package/{esm2020 → esm2022}/pdf/pdf.service.mjs +7 -9
  81. package/{esm2020 → esm2022}/scheduler.component.mjs +412 -256
  82. package/{esm2020 → esm2022}/scheduler.module.mjs +30 -30
  83. package/{esm2020 → esm2022}/toolbar/navigation.component.mjs +49 -34
  84. package/{esm2020 → esm2022}/toolbar/toolbar-template.directive.mjs +4 -3
  85. package/{esm2020 → esm2022}/toolbar/toolbar.component.mjs +29 -18
  86. package/{esm2020 → esm2022}/toolbar/toolbar.service.mjs +16 -4
  87. package/{esm2020 → esm2022}/toolbar/view-selector.component.mjs +23 -15
  88. package/{esm2020 → esm2022}/types/slot-selection.mjs +16 -0
  89. package/{esm2020 → esm2022}/views/agenda/agenda-header-item.component.mjs +9 -9
  90. package/{esm2020 → esm2022}/views/agenda/agenda-header.component.mjs +10 -8
  91. package/{esm2020 → esm2022}/views/agenda/agenda-task-item.component.mjs +18 -12
  92. package/{esm2020 → esm2022}/views/agenda/agenda-view-internal.component.mjs +48 -17
  93. package/{esm2020 → esm2022}/views/agenda/agenda-view-list.component.mjs +17 -7
  94. package/{esm2020 → esm2022}/views/agenda/agenda-view.component.mjs +46 -41
  95. package/{esm2020 → esm2022}/views/agenda/tasks.collection.mjs +8 -4
  96. package/{esm2020 → esm2022}/views/common/base-view.mjs +93 -36
  97. package/{esm2020 → esm2022}/views/common/configuration-view-base.mjs +52 -15
  98. package/esm2022/views/common/dom-events.service.mjs +22 -0
  99. package/{esm2020 → esm2022}/views/common/hint-container.component.mjs +6 -4
  100. package/{esm2020 → esm2022}/views/common/repeat.pipe.mjs +7 -6
  101. package/{esm2020 → esm2022}/views/common/resize-hint.component.mjs +7 -7
  102. package/{esm2020 → esm2022}/views/common/resource-iterator.pipe.mjs +9 -7
  103. package/{esm2020 → esm2022}/views/common/slot-selectable.directive.mjs +22 -10
  104. package/{esm2020 → esm2022}/views/common/view-footer.component.mjs +14 -12
  105. package/{esm2020 → esm2022}/views/common/work-hours-footer.directive.mjs +7 -5
  106. package/{esm2020 → esm2022}/views/day-time/day-time-slot.service.mjs +11 -7
  107. package/{esm2020 → esm2022}/views/day-time/day-time-view-base.mjs +81 -8
  108. package/{esm2020 → esm2022}/views/day-time/day-time-view-item.component.mjs +18 -14
  109. package/{esm2020 → esm2022}/views/day-time/day-time-view.component.mjs +50 -29
  110. package/{esm2020 → esm2022}/views/day-time/event-slot.directive.mjs +23 -14
  111. package/{esm2020 → esm2022}/views/month/month-slot.component.mjs +21 -11
  112. package/{esm2020 → esm2022}/views/month/month-slot.service.mjs +8 -6
  113. package/{esm2020 → esm2022}/views/month/month-view-item.component.mjs +10 -9
  114. package/{esm2020 → esm2022}/views/month/month-view-renderer.component.mjs +31 -15
  115. package/{esm2020 → esm2022}/views/month/month-view.component.mjs +49 -31
  116. package/{esm2020 → esm2022}/views/month/multi-week-view.component.mjs +53 -35
  117. package/{esm2020 → esm2022}/views/multi-day/day-view.component.mjs +25 -17
  118. package/{esm2020 → esm2022}/views/multi-day/multi-day-view-base.mjs +17 -6
  119. package/{esm2020 → esm2022}/views/multi-day/multi-day-view-renderer.component.mjs +22 -13
  120. package/{esm2020 → esm2022}/views/multi-day/multi-day-view.component.mjs +22 -20
  121. package/{esm2020 → esm2022}/views/multi-day/week-view.component.mjs +44 -35
  122. package/{esm2020 → esm2022}/views/multi-day/work-week-view.component.mjs +16 -16
  123. package/{esm2020 → esm2022}/views/scheduler-view.directive.mjs +16 -10
  124. package/{esm2020 → esm2022}/views/templates/agenda-date-template.directive.mjs +4 -3
  125. package/{esm2020 → esm2022}/views/templates/agenda-time-template.directive.mjs +4 -3
  126. package/{esm2020 → esm2022}/views/templates/all-day-event-template.directive.mjs +4 -3
  127. package/{esm2020 → esm2022}/views/templates/all-day-slot-template.directive.mjs +4 -3
  128. package/{esm2020 → esm2022}/views/templates/date-header-template.directive.mjs +4 -3
  129. package/{esm2020 → esm2022}/views/templates/event-template.directive.mjs +4 -3
  130. package/{esm2020 → esm2022}/views/templates/group-header-template.directive.mjs +4 -3
  131. package/{esm2020 → esm2022}/views/templates/major-time-header-template.directive.mjs +4 -3
  132. package/{esm2020 → esm2022}/views/templates/minor-time-header-template.directive.mjs +4 -3
  133. package/{esm2020 → esm2022}/views/templates/month-day-slot-template.directive.mjs +4 -3
  134. package/{esm2020 → esm2022}/views/templates/multi-week-day-slot-template.directive.mjs +4 -3
  135. package/{esm2020 → esm2022}/views/templates/time-slot-template.directive.mjs +4 -3
  136. package/{esm2020 → esm2022}/views/timeline/timeline-base.mjs +10 -6
  137. package/{esm2020 → esm2022}/views/timeline/timeline-month-view.component.mjs +36 -34
  138. package/{esm2020 → esm2022}/views/timeline/timeline-multi-day-view.component.mjs +16 -13
  139. package/{esm2020 → esm2022}/views/timeline/timeline-view.component.mjs +18 -16
  140. package/{esm2020 → esm2022}/views/timeline/timeline-week-view.component.mjs +40 -40
  141. package/{esm2020 → esm2022}/views/timeline/utils.mjs +3 -3
  142. package/{esm2020 → esm2022}/views/view-context.service.mjs +33 -9
  143. package/{esm2020 → esm2022}/views/view-items/base-slot.directive.mjs +15 -9
  144. package/{esm2020 → esm2022}/views/view-items/base-slot.service.mjs +3 -5
  145. package/{esm2020 → esm2022}/views/view-items/base-view-item.mjs +30 -15
  146. package/{esm2020 → esm2022}/views/view-items/item-map.mjs +2 -4
  147. package/{esm2020 → esm2022}/views/view-state.service.mjs +56 -20
  148. package/{esm2020 → esm2022}/views/year/year-view-internal.component.mjs +45 -27
  149. package/{esm2020 → esm2022}/views/year/year-view.component.mjs +38 -31
  150. package/{fesm2020 → fesm2022}/progress-kendo-angular-scheduler.mjs +3642 -1967
  151. package/index.d.ts +0 -6
  152. package/loading.component.d.ts +1 -1
  153. package/localization/messages.d.ts +1 -1
  154. package/navigation/focusable.directive.d.ts +1 -1
  155. package/package.json +24 -30
  156. package/pdf/pdf.component.d.ts +1 -1
  157. package/scheduler.component.d.ts +1 -1
  158. package/schematics/ngAdd/index.js +4 -4
  159. package/toolbar/navigation.component.d.ts +1 -1
  160. package/toolbar/toolbar.component.d.ts +1 -1
  161. package/toolbar/view-selector.component.d.ts +1 -1
  162. package/types/actions.d.ts +1 -1
  163. package/types/focusable-container.d.ts +1 -1
  164. package/types/slot-selection.d.ts +1 -1
  165. package/views/agenda/agenda-header-item.component.d.ts +1 -1
  166. package/views/agenda/agenda-header.component.d.ts +1 -1
  167. package/views/agenda/agenda-task-item.component.d.ts +1 -1
  168. package/views/agenda/agenda-view-internal.component.d.ts +1 -1
  169. package/views/agenda/agenda-view-list.component.d.ts +1 -1
  170. package/views/agenda/agenda-view.component.d.ts +2 -6
  171. package/views/common/base-view.d.ts +1 -1
  172. package/views/common/configuration-view-base.d.ts +1 -1
  173. package/views/common/resize-hint.component.d.ts +1 -1
  174. package/views/common/slot-selectable.directive.d.ts +1 -1
  175. package/views/common/view-footer.component.d.ts +1 -1
  176. package/views/common/work-hours-footer.directive.d.ts +1 -1
  177. package/views/day-time/day-time-view-base.d.ts +2 -6
  178. package/views/day-time/day-time-view-item.component.d.ts +1 -1
  179. package/views/day-time/day-time-view.component.d.ts +1 -1
  180. package/views/day-time/event-slot.directive.d.ts +2 -2
  181. package/views/month/month-slot.component.d.ts +1 -1
  182. package/views/month/month-view-renderer.component.d.ts +1 -1
  183. package/views/month/month-view.component.d.ts +7 -4
  184. package/views/month/multi-week-view.component.d.ts +7 -4
  185. package/views/multi-day/day-view.component.d.ts +1 -1
  186. package/views/multi-day/multi-day-view-base.d.ts +1 -1
  187. package/views/multi-day/multi-day-view-renderer.component.d.ts +1 -1
  188. package/views/multi-day/multi-day-view.component.d.ts +1 -1
  189. package/views/multi-day/week-view.component.d.ts +1 -1
  190. package/views/scheduler-view.directive.d.ts +1 -1
  191. package/views/timeline/timeline-base.d.ts +1 -1
  192. package/views/timeline/timeline-month-view.component.d.ts +1 -1
  193. package/views/timeline/timeline-multi-day-view.component.d.ts +1 -1
  194. package/views/timeline/timeline-view.component.d.ts +1 -1
  195. package/views/timeline/timeline-week-view.component.d.ts +1 -1
  196. package/views/view-items/base-slot.directive.d.ts +1 -1
  197. package/views/view-items/base-view-item.d.ts +1 -1
  198. package/views/year/year-view-internal.component.d.ts +1 -4
  199. package/views/year/year-view.component.d.ts +6 -6
  200. package/esm2020/editing/recurrence/localization/messages.mjs +0 -91
  201. package/esm2020/events/drag-event.mjs +0 -18
  202. package/esm2020/localization/messages.mjs +0 -213
  203. package/esm2020/navigation/shortcuts.directive.mjs +0 -213
  204. package/esm2020/shared.module.mjs +0 -40
  205. package/esm2020/views/common/dom-events.service.mjs +0 -24
  206. package/esm2020/views/common/views-shared.module.mjs +0 -62
  207. package/esm2020/views/day-time/day-time.module.mjs +0 -39
  208. package/esm2020/views/month/month-view.module.mjs +0 -47
  209. package/esm2020/views/multi-day/multi-day-view.module.mjs +0 -52
  210. package/esm2020/views/timeline/timeline-view.module.mjs +0 -48
  211. package/fesm2015/progress-kendo-angular-scheduler.mjs +0 -19229
  212. package/shared.module.d.ts +0 -19
  213. package/views/common/views-shared.module.d.ts +0 -22
  214. package/views/day-time/day-time.module.d.ts +0 -18
  215. package/views/month/month-view.module.d.ts +0 -18
  216. package/views/multi-day/multi-day-view.module.d.ts +0 -20
  217. package/views/timeline/timeline-view.module.d.ts +0 -19
  218. /package/{esm2020 → esm2022}/common/constants.mjs +0 -0
  219. /package/{esm2020 → esm2022}/common/default-model-fields.mjs +0 -0
  220. /package/{esm2020 → esm2022}/common/dom-queries.mjs +0 -0
  221. /package/{esm2020 → esm2022}/common/getter.mjs +0 -0
  222. /package/{esm2020 → esm2022}/common/modifiers.mjs +0 -0
  223. /package/{esm2020 → esm2022}/common/setter.mjs +0 -0
  224. /package/{esm2020 → esm2022}/common/util.mjs +0 -0
  225. /package/{esm2020 → esm2022}/directives.mjs +0 -0
  226. /package/{esm2020 → esm2022}/editing-directives/edit-service.interface.mjs +0 -0
  227. /package/{esm2020 → esm2022}/editing-directives/utils.mjs +0 -0
  228. /package/{esm2020 → esm2022}/events/slot-drag-end-event.mjs +0 -0
  229. /package/{esm2020 → esm2022}/events/view-event-map.mjs +0 -0
  230. /package/{esm2020 → esm2022}/events.mjs +0 -0
  231. /package/{esm2020 → esm2022}/navigation/focus-position.interface.mjs +0 -0
  232. /package/{esm2020 → esm2022}/navigation/focusable-element.interface.mjs +0 -0
  233. /package/{esm2020 → esm2022}/navigation.mjs +0 -0
  234. /package/{esm2020 → esm2022}/pdf/pdf-export-event.mjs +0 -0
  235. /package/{esm2020 → esm2022}/progress-kendo-angular-scheduler.mjs +0 -0
  236. /package/{esm2020 → esm2022}/toolbar/toolbar-context.mjs +0 -0
  237. /package/{esm2020 → esm2022}/types/actions.mjs +0 -0
  238. /package/{esm2020 → esm2022}/types/create-form-group-args.interface.mjs +0 -0
  239. /package/{esm2020 → esm2022}/types/crud-operation.enum.mjs +0 -0
  240. /package/{esm2020 → esm2022}/types/current-time-settings.interface.mjs +0 -0
  241. /package/{esm2020 → esm2022}/types/date-range.interface.mjs +0 -0
  242. /package/{esm2020 → esm2022}/types/datepicker-options.interface.mjs +0 -0
  243. /package/{esm2020 → esm2022}/types/edit-event-args.interface.mjs +0 -0
  244. /package/{esm2020 → esm2022}/types/edit-mode.enum.mjs +0 -0
  245. /package/{esm2020 → esm2022}/types/editable-settings.interface.mjs +0 -0
  246. /package/{esm2020 → esm2022}/types/event-style-args.interface.mjs +0 -0
  247. /package/{esm2020 → esm2022}/types/focusable-container.mjs +0 -0
  248. /package/{esm2020 → esm2022}/types/group.interface.mjs +0 -0
  249. /package/{esm2020 → esm2022}/types/numeric-options.interface.mjs +0 -0
  250. /package/{esm2020 → esm2022}/types/ongoing-events-settings.interface.mjs +0 -0
  251. /package/{esm2020 → esm2022}/types/resource.interface.mjs +0 -0
  252. /package/{esm2020 → esm2022}/types/scheduler-event.mjs +0 -0
  253. /package/{esm2020 → esm2022}/types/scheduler-model-fields.interface.mjs +0 -0
  254. /package/{esm2020 → esm2022}/types/scheduler-slot.interface.mjs +0 -0
  255. /package/{esm2020 → esm2022}/types/scheduler-view.mjs +0 -0
  256. /package/{esm2020 → esm2022}/types/slot-class-args.interface.mjs +0 -0
  257. /package/{esm2020 → esm2022}/types/view-item.interface.mjs +0 -0
  258. /package/{esm2020 → esm2022}/types.mjs +0 -0
  259. /package/{esm2020 → esm2022}/views/agenda/utils.mjs +0 -0
  260. /package/{esm2020 → esm2022}/views/common/scheduler-task.mjs +0 -0
  261. /package/{esm2020 → esm2022}/views/constants.mjs +0 -0
  262. /package/{esm2020 → esm2022}/views/day-time/utils.mjs +0 -0
  263. /package/{esm2020 → esm2022}/views/month/utils.mjs +0 -0
  264. /package/{esm2020 → esm2022}/views/multi-day/utils.mjs +0 -0
  265. /package/{esm2020 → esm2022}/views/templates.mjs +0 -0
  266. /package/{esm2020 → esm2022}/views/utils.mjs +0 -0
  267. /package/{esm2020 → esm2022}/views/view-items/types.mjs +0 -0
  268. /package/{esm2020 → esm2022}/views/year/utils.mjs +0 -0
@@ -15,24 +15,60 @@ const emptyDateRange = () => ({
15
15
  * A service for publishing the view state and actions to the Scheduler.
16
16
  */
17
17
  export class ViewStateService {
18
+ /**
19
+ * A stream for publishing the visible date range of the current view to the Scheduler.
20
+ */
21
+ dateRange;
22
+ /**
23
+ * A stream for publishing the changes to the selected date that are initiated from the view.
24
+ */
25
+ nextDate;
26
+ /**
27
+ * A stream fro navigating from the current to another view.
28
+ */
29
+ navigate;
30
+ /**
31
+ * A stream for navigating from the current to another view.
32
+ */
33
+ viewEvent;
34
+ /**
35
+ * A stream for indicating that the view layout finished.
36
+ */
37
+ layoutEnd;
38
+ /**
39
+ * A stream for indicating that the view options has changed.
40
+ */
41
+ optionsChange;
42
+ /**
43
+ * A stream indicating that the user has started making a new slot selection.
44
+ */
45
+ slotSelectionStart;
46
+ /**
47
+ * A stream indicating that the user has dragged over a different slot while making a selection.
48
+ */
49
+ slotSelectionDrag;
50
+ /**
51
+ * A stream indicating that the user has finished making a slot selection.
52
+ */
53
+ slotSelectionEnd;
54
+ /**
55
+ * @hidden
56
+ */
57
+ toggleWorkHours = new Subject();
58
+ /**
59
+ * @hidden
60
+ */
61
+ toolbarVisibilityByView = new Map();
62
+ dateRangeSource = new BehaviorSubject(emptyDateRange());
63
+ nextDateSource = new Subject();
64
+ navigateSource = new Subject();
65
+ viewEventSource = new Subject();
66
+ layoutEndSource = new Subject();
67
+ optionsChangeSource = new Subject();
68
+ slotSelectionStartSource = new Subject();
69
+ slotSelectionStartDragSource = new Subject();
70
+ slotSelectionStartEndSource = new Subject();
18
71
  constructor() {
19
- /**
20
- * @hidden
21
- */
22
- this.toggleWorkHours = new Subject();
23
- /**
24
- * @hidden
25
- */
26
- this.toolbarVisibilityByView = new Map();
27
- this.dateRangeSource = new BehaviorSubject(emptyDateRange());
28
- this.nextDateSource = new Subject();
29
- this.navigateSource = new Subject();
30
- this.viewEventSource = new Subject();
31
- this.layoutEndSource = new Subject();
32
- this.optionsChangeSource = new Subject();
33
- this.slotSelectionStartSource = new Subject();
34
- this.slotSelectionStartDragSource = new Subject();
35
- this.slotSelectionStartEndSource = new Subject();
36
72
  this.dateRange = this.dateRangeSource.asObservable();
37
73
  this.nextDate = this.nextDateSource.asObservable();
38
74
  this.navigate = this.navigateSource.asObservable();
@@ -97,10 +133,10 @@ export class ViewStateService {
97
133
  notifySlotSelectionEnd(selection) {
98
134
  this.slotSelectionStartEndSource.next(selection);
99
135
  }
136
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
137
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewStateService, providedIn: 'root' });
100
138
  }
101
- ViewStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ViewStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
102
- ViewStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ViewStateService, providedIn: 'root' });
103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ViewStateService, decorators: [{
139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ViewStateService, decorators: [{
104
140
  type: Injectable,
105
141
  args: [{
106
142
  providedIn: 'root'
@@ -20,6 +20,7 @@ import { createTasks, noop, yearEnd, yearStart } from './utils';
20
20
  import { MonthSlotService } from '../month/month-slot.service';
21
21
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
22
22
  import { NgIf, NgFor, NgClass, NgStyle } from '@angular/common';
23
+ import { take } from 'rxjs/operators';
23
24
  import * as i0 from "@angular/core";
24
25
  import * as i1 from "@progress/kendo-angular-l10n";
25
26
  import * as i2 from "../../navigation";
@@ -35,24 +36,20 @@ const getDateAttribute = (element) => element?.querySelector('span>span[date]')?
35
36
  * @hidden
36
37
  */
37
38
  export class YearViewInternalComponent extends BaseView {
38
- constructor(localization, focusService, intl, viewContext, viewState, zone, renderer, pdfService, element, slotService, scrollBarWidthService, changeDetector, localeId) {
39
- super(viewContext, viewState, intl, slotService, zone, renderer, element, pdfService, localization, changeDetector, scrollBarWidthService);
40
- this.localization = localization;
41
- this.focusService = focusService;
42
- this.intl = intl;
43
- this.localeId = localeId;
44
- this.caretAltLeftIcon = caretAltLeftIcon;
45
- this.caretAltRightIcon = caretAltRightIcon;
46
- this.eventsPerSelectedDay = [];
47
- this.days = [];
48
- this.tds = [];
49
- this.isTooltipClicked = false;
50
- this.slotByIndex = (slotIndex, args) => noop(slotIndex);
51
- this.dragHintSize = (startSlot, endSlot) => noop(startSlot);
52
- this.dragRanges = (slot) => noop(slot);
53
- this.slotByPosition = (x, y, container) => noop(x);
54
- this.cachedTds = [];
55
- }
39
+ localization;
40
+ focusService;
41
+ intl;
42
+ localeId;
43
+ /**
44
+ * Calculates the next or previous range to be displayed
45
+ */
46
+ newRange;
47
+ /**
48
+ * Determines the displayed date range and formats the selected date
49
+ */
50
+ dateRangeFn;
51
+ calendar;
52
+ tooltip;
56
53
  get arrowIcons() {
57
54
  return !this.localization.rtl
58
55
  ? ['caret-alt-left', 'caret-alt-right']
@@ -63,6 +60,21 @@ export class YearViewInternalComponent extends BaseView {
63
60
  ? [this.caretAltLeftIcon, this.caretAltRightIcon]
64
61
  : [this.caretAltRightIcon, this.caretAltLeftIcon];
65
62
  }
63
+ caretAltLeftIcon = caretAltLeftIcon;
64
+ caretAltRightIcon = caretAltRightIcon;
65
+ eventsPerSelectedDay = [];
66
+ days = [];
67
+ focusedDate;
68
+ currentTd;
69
+ tds = [];
70
+ isTooltipClicked = false;
71
+ constructor(localization, focusService, intl, viewContext, viewState, zone, renderer, pdfService, element, slotService, scrollBarWidthService, changeDetector, localeId) {
72
+ super(viewContext, viewState, intl, slotService, zone, renderer, element, pdfService, localization, changeDetector, scrollBarWidthService);
73
+ this.localization = localization;
74
+ this.focusService = focusService;
75
+ this.intl = intl;
76
+ this.localeId = localeId;
77
+ }
66
78
  ngAfterViewInit() {
67
79
  this.updateTds();
68
80
  super.ngAfterViewInit();
@@ -175,7 +187,8 @@ export class YearViewInternalComponent extends BaseView {
175
187
  if (this.calendar) {
176
188
  this.calendar.min = start;
177
189
  this.calendar.max = yearEnd(start.getFullYear());
178
- this.updateTds();
190
+ // wait for the view to update to get the new tds
191
+ this.zone.onStable.pipe(take(1)).subscribe(() => this.updateTds());
179
192
  }
180
193
  }
181
194
  onAction(e) {
@@ -211,6 +224,10 @@ export class YearViewInternalComponent extends BaseView {
211
224
  onTasksChange() {
212
225
  this.items.next(this.tasks);
213
226
  }
227
+ slotByIndex = (slotIndex, args) => noop(slotIndex);
228
+ dragHintSize = (startSlot, endSlot) => noop(startSlot);
229
+ dragRanges = (slot) => noop(slot);
230
+ slotByPosition = (x, y, container) => noop(x);
214
231
  createDaySlots({ start }) {
215
232
  const days = [];
216
233
  const monthsPerYear = 12;
@@ -228,12 +245,17 @@ export class YearViewInternalComponent extends BaseView {
228
245
  getLastDayOfMonth(year, month) {
229
246
  return new Date(year, month + 1, 0).getDate();
230
247
  }
248
+ cachedTds = [];
231
249
  updateTds() {
232
250
  this.cachedTds.forEach((td) => {
233
251
  this.renderer.setAttribute(td, 'class', 'k-calendar-td');
234
252
  });
235
253
  this.cachedTds = [];
236
254
  this.tds = Array.from(this.calendar.element.nativeElement.querySelectorAll('.k-calendar-td:not(.k-empty)'));
255
+ if (this.calendar.value instanceof Date &&
256
+ this.calendar.value.getFullYear() === this.calendar.min?.getFullYear()) {
257
+ this.currentTd = this.tds.find((td) => getDateAttribute(td) === this.calendar.value.toString());
258
+ }
237
259
  if (this.slotClass) {
238
260
  this.tds.forEach((td) => {
239
261
  const date = toUTCDate(new Date(getDateAttribute(td)));
@@ -245,9 +267,8 @@ export class YearViewInternalComponent extends BaseView {
245
267
  });
246
268
  }
247
269
  }
248
- }
249
- YearViewInternalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: YearViewInternalComponent, deps: [{ token: i1.LocalizationService }, { token: i2.FocusService }, { token: i3.IntlService }, { token: i4.ViewContextService }, { token: i5.ViewStateService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i6.PDFService }, { token: i0.ElementRef }, { token: i7.MonthSlotService }, { token: i8.ScrollbarWidthService }, { token: i0.ChangeDetectorRef }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
250
- YearViewInternalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: YearViewInternalComponent, isStandalone: true, selector: "year-view-internal", inputs: { newRange: "newRange", dateRangeFn: "dateRangeFn", selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat" }, providers: [MonthSlotService], viewQueries: [{ propertyName: "calendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }, { propertyName: "tooltip", first: true, predicate: TooltipDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
270
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewInternalComponent, deps: [{ token: i1.LocalizationService }, { token: i2.FocusService }, { token: i3.IntlService }, { token: i4.ViewContextService }, { token: i5.ViewStateService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i6.PDFService }, { token: i0.ElementRef }, { token: i7.MonthSlotService }, { token: i8.ScrollbarWidthService }, { token: i0.ChangeDetectorRef }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
271
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: YearViewInternalComponent, isStandalone: true, selector: "year-view-internal", inputs: { newRange: "newRange", dateRangeFn: "dateRangeFn" }, providers: [MonthSlotService], viewQueries: [{ propertyName: "calendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }, { propertyName: "tooltip", first: true, predicate: TooltipDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
251
272
  <div #content class="k-scheduler-layout k-scheduler-layout-flex k-scheduler-yearview">
252
273
  <div class="k-scheduler-body">
253
274
  <kendo-multiviewcalendar
@@ -319,7 +340,8 @@ YearViewInternalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
319
340
  </div>
320
341
  </ng-template>
321
342
  `, isInline: true, dependencies: [{ kind: "component", type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "showCalendarHeader", "size", "id", "focusedDate", "footer", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "allowReverse", "value", "disabled", "tabindex", "tabIndex", "weekDaysFormat", "isActive", "disabledDates", "activeView", "bottomView", "topView", "showViewHeader", "animateNavigation", "weekNumber", "activeRangeEnd", "selectionRange", "views", "orientation", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "footerTemplate", "headerTitleTemplate", "headerTemplate"], outputs: ["activeViewChange", "navigate", "cellEnter", "cellLeave", "valueChange", "rangeSelectionChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { kind: "directive", type: TooltipDirective, selector: "[kendoTooltip]", inputs: ["filter", "position", "titleTemplate", "showOn", "showAfter", "callout", "closable", "offset", "tooltipWidth", "tooltipHeight", "tooltipClass", "tooltipContentClass", "collision", "closeTitle", "tooltipTemplate"], exportAs: ["kendoTooltip"] }, { kind: "directive", type: MonthCellTemplateDirective, selector: "[kendoCalendarMonthCellTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
322
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: YearViewInternalComponent, decorators: [{
343
+ }
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewInternalComponent, decorators: [{
323
345
  type: Component,
324
346
  args: [{
325
347
  selector: 'year-view-internal',
@@ -412,8 +434,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
412
434
  }], tooltip: [{
413
435
  type: ViewChild,
414
436
  args: [TooltipDirective]
415
- }], selectedDateFormat: [{
416
- type: Input
417
- }], selectedShortDateFormat: [{
418
- type: Input
419
437
  }] } });
@@ -21,35 +21,40 @@ import * as i4 from "@progress/kendo-angular-intl";
21
21
  * The component for rendering the **Year** view.
22
22
  */
23
23
  export class YearViewComponent extends ConfigurationViewBase {
24
- constructor(localization, changeDetector, viewContext, viewState, intl) {
25
- super(localization, changeDetector, viewContext, viewState);
26
- this.intl = intl;
27
- /**
28
- * The long-date format for displaying the
29
- * selected year in the Scheduler toolbar.
30
- * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
31
- * @default '{0:yyy}'
32
- */
33
- this.selectedDateFormat = '{0:yyy}';
34
- /**
35
- * The short-date format for displaying the
36
- * selected year in the Scheduler toolbar.
37
- * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
38
- * @default '{0:yyy}'
39
- */
40
- this.selectedShortDateFormat = '{0:yyy}';
41
- /**
42
- * The invariant name for this view.
43
- * @default 'year'
44
- */
45
- this.name = 'year';
46
- }
24
+ intl;
25
+ /**
26
+ * The long-date format for displaying the
27
+ * selected year in the Scheduler toolbar.
28
+ * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
29
+ * @default '{0:yyy}'
30
+ */
31
+ selectedDateFormat = '{0:yyy}';
32
+ /**
33
+ * The short-date format for displaying the
34
+ * selected year in the Scheduler toolbar.
35
+ * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
36
+ * @default '{0:yyy}'
37
+ */
38
+ selectedShortDateFormat = '{0:yyy}';
47
39
  /**
48
40
  * @hidden
49
41
  */
50
42
  get title() {
51
43
  return this.localization.get('yearViewTitle');
52
44
  }
45
+ /**
46
+ * @hidden
47
+ */
48
+ highlightOngoingEvents;
49
+ /**
50
+ * The invariant name for this view.
51
+ * @default 'year'
52
+ */
53
+ name = 'year';
54
+ constructor(localization, changeDetector, viewContext, viewState, intl) {
55
+ super(localization, changeDetector, viewContext, viewState);
56
+ this.intl = intl;
57
+ }
53
58
  /**
54
59
  * @hidden
55
60
  */
@@ -67,12 +72,11 @@ export class YearViewComponent extends ConfigurationViewBase {
67
72
  newRange(date, direction = 1) {
68
73
  return new Date(addYears(date, direction));
69
74
  }
70
- }
71
- YearViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: YearViewComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.ViewContextService }, { token: i3.ViewStateService }, { token: i4.IntlService }], target: i0.ɵɵFactoryTarget.Component });
72
- YearViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: YearViewComponent, isStandalone: true, selector: "kendo-scheduler-year-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat" }, providers: [{
73
- provide: SchedulerView,
74
- useExisting: forwardRef(() => YearViewComponent)
75
- }], usesInheritance: true, ngImport: i0, template: `
75
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i2.ViewContextService }, { token: i3.ViewStateService }, { token: i4.IntlService }], target: i0.ɵɵFactoryTarget.Component });
76
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: YearViewComponent, isStandalone: true, selector: "kendo-scheduler-year-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat", highlightOngoingEvents: "highlightOngoingEvents" }, providers: [{
77
+ provide: SchedulerView,
78
+ useExisting: forwardRef(() => YearViewComponent)
79
+ }], usesInheritance: true, ngImport: i0, template: `
76
80
  <ng-template #content>
77
81
  <year-view-internal
78
82
  [selectedDateFormat]="selectedDateFormat"
@@ -84,8 +88,9 @@ YearViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
84
88
  [newRange]="newRange">
85
89
  </year-view-internal>
86
90
  </ng-template>
87
- `, isInline: true, dependencies: [{ kind: "component", type: YearViewInternalComponent, selector: "year-view-internal", inputs: ["newRange", "dateRangeFn", "selectedDateFormat", "selectedShortDateFormat"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: YearViewComponent, decorators: [{
91
+ `, isInline: true, dependencies: [{ kind: "component", type: YearViewInternalComponent, selector: "year-view-internal", inputs: ["newRange", "dateRangeFn"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewComponent, decorators: [{
89
94
  type: Component,
90
95
  args: [{
91
96
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -114,4 +119,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
114
119
  type: Input
115
120
  }], selectedShortDateFormat: [{
116
121
  type: Input
122
+ }], highlightOngoingEvents: [{
123
+ type: Input
117
124
  }] } });