@progress/kendo-vue-scheduler 9.3.0-develop.5 → 9.3.0-develop.7

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 (160) hide show
  1. package/Scheduler.d.ts +67 -4
  2. package/Scheduler.js +1 -1
  3. package/Scheduler.mjs +267 -115
  4. package/components/BaseView.js +1 -1
  5. package/components/BaseView.mjs +10 -4
  6. package/components/CurrentTimeMarker.js +1 -1
  7. package/components/CurrentTimeMarker.mjs +9 -9
  8. package/components/CurrentTimeMarkerArrow.js +1 -1
  9. package/components/CurrentTimeMarkerArrow.mjs +3 -3
  10. package/components/DateHeaderCell.js +1 -1
  11. package/components/DateHeaderCell.mjs +22 -13
  12. package/components/MoreEventsPopover.d.ts +77 -0
  13. package/components/MoreEventsPopover.js +8 -0
  14. package/components/MoreEventsPopover.mjs +125 -0
  15. package/components/SchedulerActionButtons.d.ts +6 -0
  16. package/components/SchedulerActionButtons.js +1 -1
  17. package/components/SchedulerActionButtons.mjs +25 -19
  18. package/components/SchedulerForm.d.ts +7 -0
  19. package/components/SchedulerForm.js +1 -1
  20. package/components/SchedulerForm.mjs +69 -61
  21. package/components/SchedulerOccurrenceDialog.d.ts +4 -4
  22. package/components/SchedulerOccurrenceDialog.js +1 -1
  23. package/components/SchedulerOccurrenceDialog.mjs +35 -26
  24. package/components/SchedulerRemoveDialog.d.ts +6 -0
  25. package/components/SchedulerRemoveDialog.js +1 -1
  26. package/components/SchedulerRemoveDialog.mjs +24 -23
  27. package/components/ShowMoreItemsButton.d.ts +10 -1
  28. package/components/ShowMoreItemsButton.js +1 -1
  29. package/components/ShowMoreItemsButton.mjs +40 -18
  30. package/components/footer/bussiness-hours/BusinessHours.js +1 -1
  31. package/components/footer/bussiness-hours/BusinessHours.mjs +16 -21
  32. package/components/header/SchedulerAdaptiveHeader.js +1 -1
  33. package/components/header/SchedulerAdaptiveHeader.mjs +28 -26
  34. package/components/header/SchedulerHeader.d.ts +5 -1
  35. package/components/header/SchedulerHeader.js +1 -1
  36. package/components/header/SchedulerHeader.mjs +11 -7
  37. package/components/header/navigation/NavigationDatePicker.d.ts +22 -3
  38. package/components/header/navigation/NavigationDatePicker.js +1 -1
  39. package/components/header/navigation/NavigationDatePicker.mjs +27 -30
  40. package/components/header/view-selector/ViewSelectorList.d.ts +26 -6
  41. package/components/header/view-selector/ViewSelectorList.js +1 -1
  42. package/components/header/view-selector/ViewSelectorList.mjs +55 -49
  43. package/dist/cdn/js/kendo-vue-scheduler.js +1 -1
  44. package/editors/RemoveRecurrenceConfirmDialog.d.ts +29 -0
  45. package/editors/RemoveRecurrenceConfirmDialog.js +8 -0
  46. package/editors/RemoveRecurrenceConfirmDialog.mjs +65 -0
  47. package/editors/ResourceEditor.d.ts +3 -0
  48. package/editors/ResourceEditor.js +1 -1
  49. package/editors/ResourceEditor.mjs +12 -10
  50. package/editors/SchedulerFormEditor.d.ts +1067 -2953
  51. package/editors/SchedulerFormEditor.js +1 -1
  52. package/editors/SchedulerFormEditor.mjs +297 -365
  53. package/editors/SchedulerRecurrenceDialog.d.ts +143 -0
  54. package/editors/SchedulerRecurrenceDialog.js +8 -0
  55. package/editors/SchedulerRecurrenceDialog.mjs +575 -0
  56. package/editors/TimezoneDropDownList.d.ts +46 -0
  57. package/editors/TimezoneDropDownList.js +8 -0
  58. package/editors/TimezoneDropDownList.mjs +63 -0
  59. package/editors/ZonedSplitDateTime.d.ts +65 -0
  60. package/editors/ZonedSplitDateTime.js +8 -0
  61. package/editors/ZonedSplitDateTime.mjs +100 -0
  62. package/hooks/main.d.ts +1 -0
  63. package/hooks/useGroupRowHeightSync.d.ts +10 -0
  64. package/hooks/useRecurrenceSummary.d.ts +10 -0
  65. package/hooks/useRecurrenceSummary.js +8 -0
  66. package/hooks/useRecurrenceSummary.mjs +74 -0
  67. package/hooks/useRowSync.js +1 -1
  68. package/hooks/useRowSync.mjs +23 -4
  69. package/hooks/useSlotExpand.js +1 -1
  70. package/hooks/useSlotExpand.mjs +36 -28
  71. package/index.d.mts +9 -3
  72. package/index.d.ts +9 -3
  73. package/index.js +1 -1
  74. package/index.mjs +83 -71
  75. package/items/SchedulerEditItem.d.ts +14 -3
  76. package/items/SchedulerEditItem.js +1 -1
  77. package/items/SchedulerEditItem.mjs +130 -72
  78. package/items/SchedulerItem.d.ts +10 -0
  79. package/items/SchedulerItem.js +1 -1
  80. package/items/SchedulerItem.mjs +153 -135
  81. package/items/SchedulerProportionalViewItem.d.ts +183 -0
  82. package/items/SchedulerProportionalViewItem.js +8 -0
  83. package/items/SchedulerProportionalViewItem.mjs +378 -0
  84. package/items/SchedulerViewItem.d.ts +3 -0
  85. package/items/SchedulerViewItem.js +1 -1
  86. package/items/SchedulerViewItem.mjs +107 -67
  87. package/messages/main.d.ts +186 -0
  88. package/messages/main.js +1 -1
  89. package/messages/main.mjs +226 -102
  90. package/models/Item.d.ts +2 -0
  91. package/models/Occurrence.d.ts +2 -0
  92. package/models/SchedulerModelFields.d.ts +5 -0
  93. package/models/SchedulerResource.d.ts +6 -0
  94. package/models/SchedulerView.d.ts +2 -0
  95. package/package-metadata.js +1 -1
  96. package/package-metadata.mjs +2 -2
  97. package/package.json +12 -11
  98. package/recurrence/common.js +1 -1
  99. package/recurrence/common.mjs +36 -39
  100. package/services/itemsService.js +1 -1
  101. package/services/itemsService.mjs +31 -27
  102. package/services/occurrenceService.js +1 -1
  103. package/services/occurrenceService.mjs +41 -35
  104. package/slots/SchedulerEditSlot.d.ts +2 -0
  105. package/slots/SchedulerEditSlot.js +1 -1
  106. package/slots/SchedulerEditSlot.mjs +27 -28
  107. package/slots/SchedulerSlot.d.ts +4 -0
  108. package/slots/SchedulerSlot.js +1 -1
  109. package/slots/SchedulerSlot.mjs +10 -1
  110. package/slots/SchedulerViewSlot.d.ts +5 -0
  111. package/slots/SchedulerViewSlot.js +1 -1
  112. package/slots/SchedulerViewSlot.mjs +70 -50
  113. package/tasks/SchedulerEditTask.d.ts +6 -0
  114. package/tasks/SchedulerEditTask.js +1 -1
  115. package/tasks/SchedulerEditTask.mjs +64 -23
  116. package/tasks/SchedulerTask.d.ts +15 -0
  117. package/tasks/SchedulerTask.js +1 -1
  118. package/tasks/SchedulerTask.mjs +39 -28
  119. package/tasks/SchedulerViewTask.d.ts +9 -0
  120. package/tasks/SchedulerViewTask.js +1 -1
  121. package/tasks/SchedulerViewTask.mjs +10 -5
  122. package/utils/main.d.ts +4 -1
  123. package/utils/main.js +1 -1
  124. package/utils/main.mjs +133 -112
  125. package/views/agenda/AgendaView.js +1 -1
  126. package/views/agenda/AgendaView.mjs +28 -22
  127. package/views/agenda/AgendaViewBody.js +1 -1
  128. package/views/agenda/AgendaViewBody.mjs +44 -42
  129. package/views/agenda/AgendaViewHead.js +1 -1
  130. package/views/agenda/AgendaViewHead.mjs +14 -10
  131. package/views/common/SchedulerDrag.d.ts +12 -0
  132. package/views/common/SchedulerResize.d.ts +12 -0
  133. package/views/common/VerticalResourceIterator.d.ts +3 -0
  134. package/views/common/VerticalResourceIterator.js +1 -1
  135. package/views/common/VerticalResourceIterator.mjs +16 -9
  136. package/views/day/DayView.js +1 -1
  137. package/views/day/DayView.mjs +2 -2
  138. package/views/day/MultiDayView.js +1 -1
  139. package/views/day/MultiDayView.mjs +98 -127
  140. package/views/month/MonthView.d.ts +8 -2
  141. package/views/month/MonthView.js +1 -1
  142. package/views/month/MonthView.mjs +115 -109
  143. package/views/month/MonthViewBody.d.ts +7 -2
  144. package/views/month/MonthViewBody.js +1 -1
  145. package/views/month/MonthViewBody.mjs +15 -11
  146. package/views/time/MultiDayTimelineView.d.ts +5 -0
  147. package/views/time/MultiDayTimelineView.js +1 -1
  148. package/views/time/MultiDayTimelineView.mjs +125 -132
  149. package/views/time/TimelineView.js +1 -1
  150. package/views/time/TimelineView.mjs +2 -2
  151. package/views/week/WeekView.js +1 -1
  152. package/views/week/WeekView.mjs +2 -2
  153. package/views/week/WorkWeekView.js +1 -1
  154. package/views/week/WorkWeekView.mjs +9 -9
  155. package/components/header/navigation/DatePickerToggleButton.d.ts +0 -16
  156. package/editors/FilterableComboBox.d.ts +0 -38
  157. package/editors/FilterableComboBox.js +0 -8
  158. package/editors/FilterableComboBox.mjs +0 -61
  159. package/editors/ZonedDateTime.js +0 -8
  160. package/editors/ZonedDateTime.mjs +0 -57
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),R=require("../../components/BaseView.js"),s=require("@progress/kendo-date-math"),g=require("../common/VerticalResourceIterator.js"),I=require("../common/HorizontalResourceIterator.js"),a=require("../../utils/main.js"),p=require("../../messages/main.js"),y=require("../../slots/SchedulerEditSlot.js"),m=require("@progress/kendo-vue-intl"),z=require("../../constants/main.js"),$=require("../../services/rangeService.js"),v=require("../../services/slotsService.js"),k=require("../../services/occurrenceService.js"),V=require("../../services/itemsService.js"),S=require("./MonthViewHead.js"),b=require("./MonthViewBody.js"),w=require("../../items/SchedulerEditItem.js"),f=require("../common/SchedulerResize.js"),D=require("../common/SchedulerDrag.js"),N=t.defineComponent({name:"KendoMonthView",props:{itemsPerSlot:{type:Number,default:2},name:{type:String,default:"month"},dateRange:{type:[Function,Object],default:function(){return q}},slotDuration:{type:Number,default:1440},slotDivisions:{type:Number,default:1},numberOfDays:{type:Number,default:31},dragItem:{type:Object,default:function(){}},resizeItem:{type:Object,default:function(){}},title:String,selectedDateFormat:{type:String,default:"{0:Y}"},selectedShortDateFormat:{type:String,default:"{0:Y}"},dateHeaderCell:[String,Function,Object],slotRender:[String,Function,Object],viewSlot:[String,Function,Object],resizeHint:[String,Function,Object],item:[String,Function,Object],viewItem:[String,Function,Object],editable:{type:[Boolean,Object],default:!1}},inject:{ks:{default:{}},kendoLocalizationService:{default:null},kendoIntlService:{default:null}},created(){this.intl=m.provideIntlService(this)},mounted(){this.hasMounted=!0},data(){return{hasMounted:!1,currentDragItem:void 0,currentResizeItem:void 0}},computed:{ranges(){return $.toRanges(this.ks.dateRange,{step:s.MS_PER_DAY*z.DAYS_IN_WEEK_COUNT,timezone:this.ks.timezone})},monthSlots(){return v.toSlots(this.ks.dateRange,{step:s.MS_PER_DAY},{groups:this.ks.groups,ranges:this.ranges})},occurrences(){return k.toOccurrences(this.ks.dataItems,{dateRange:this.ks.dateRange,fields:this.ks.fields,timezone:this.ks.timezone})},items(){const r=V.toItems(this.occurrences,{timezone:this.ks.timezone},{groups:this.ks.groups,ranges:this.ranges});return a.mapItemsToSlots(r,this.monthSlots,!0),a.mapSlotsToItems(r,this.monthSlots,!0),r},compDragItem(){return this.dragItem!==void 0?this.dragItem:this.currentDragItem},compResizeItem(){return this.resizeItem!==void 0?this.resizeItem:this.currentResizeItem}},render(){this.localization=m.provideLocalizationService(this),this.localization.toLanguageString(p.monthViewTitle,p.messages[p.monthViewTitle]);const r=this.$props.editItem||w.SchedulerEditItem;this.$props.editSlot||y.SchedulerEditSlot;const c=this.items,o=this.monthSlots,l=function(e){return this.compDragItem&&this.$props.editable.drag&&(Array.isArray(this.compDragItem)?this.compDragItem.map(function(i,h){return t.createVNode(D.SchedulerDrag,{key:h,ignoreIsAllDay:!0,dataItem:i,vertical:e,item:this.$props.dataItem},null)},this):t.createVNode(D.SchedulerDrag,{ignoreIsAllDay:!0,dataItem:this.compDragItem,vertical:e,item:this.$props.dataItem},null))},u=function(e){return this.compResizeItem&&this.editable.resize&&(Array.isArray(this.compResizeItem)?this.compResizeItem.map(function(i,h){return t.createVNode(f.SchedulerResize,{key:h,format:this.$props.format,ignoreIsAllDay:!0,dataItem:i,viewItem:this.$props.viewItem,item:this.$props.item,vertical:e},null)},this):t.createVNode(f.SchedulerResize,{format:this.$props.format,ignoreIsAllDay:!0,dataItem:this.compResizeItem,viewItem:this.$props.viewItem,item:this.$props.item,vertical:e},null))};this.intl=m.provideIntlService(this);const n=this.$props.itemsPerSlot,d=this.ks.orientation==="horizontal"?this.ranges.map(function(e,i){return t.createVNode(I.HorizontalResourceIterator,{resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[t.createVNode(b.MonthViewBody,{editable:this.$props.editable,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,monthSlots:o,rangeIndex:i,itemsPerSlot:n,onDataaction:this.handleDataAction},null)]})},this):t.createVNode(g.VerticalResourceIterator,{nested:!0,resources:this.ks.props.resources,group:this.ks.props.group,onDataaction:this.handleDataAction,more:{slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,monthSlots:o,ranges:this.ranges,itemsPerSlot:n,editable:this.$props.editable}},null);return t.createVNode(R.BaseView,{viewProps:{...this.$props},baseSlots:o,ranges:this.ranges,class:"k-scheduler-monthview"},{default:()=>[t.createVNode("div",{class:"k-scheduler-head"},[this.ks.orientation==="horizontal"?t.createVNode(I.HorizontalResourceIterator,{nested:!0,resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[t.createVNode(S.MonthViewHead,{monthSlots:o,dateHeaderCell:this.$props.dateHeaderCell},null)]}):t.createVNode(g.VerticalResourceIterator,{resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[t.createVNode(S.MonthViewHead,{monthSlots:o,dateHeaderCell:this.$props.dateHeaderCell},null)]})]),t.createVNode("div",{class:"k-scheduler-body"},[d,this.hasMounted&&c.filter(e=>e.order===null||e.order<n).sort(a.orderSort).map(function(e){return t.createVNode(r,{item:this.$props.item,viewItem:this.$props.viewItem,form:this.$props.form,key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,uid:e.uid,start:e.start,end:e.end,originalStart:e.originalStart,startTimezone:e.startTimezone,endTimezone:e.endTimezone,isAllDay:e.isAllDay,title:e.title,description:e.description,occurrenceId:e.occurrenceId,recurrenceExceptions:e.recurrenceExceptions,recurrenceRule:e.recurrenceRule,recurrenceId:e.recurrenceId,dataItem:e.dataItem,itemRef:e.itemRef,head:e.head,tail:e.tail,order:e.order,zonedStart:e.zonedStart,zonedEnd:e.zonedEnd,slots:e.slots,group:e.group,range:e.range,isException:e.isException,isRecurring:e.isRecurring,onDragitemchange:this.handleDragItemChange,onResizeitemchange:this.handleResizeItemChange,onDataaction:this.handleDataAction,vertical:!1,editable:this.$props.editable,ignoreIsAllDay:!0},null)},this),this.compDragItem&&l.call(this,!1),this.compResizeItem&&u.call(this,!1)])]})},methods:{handleDataAction(r){this.$emit("dataaction",r)},handleDragItemChange(r){this.currentDragItem=r},handleResizeItemChange(r){this.currentResizeItem=r}}}),q=({intl:r,date:c,timezone:o})=>{const l=s.firstDayInWeek(s.firstDayOfMonth(s.getDate(c)),r.firstDay()),u=s.addDays(s.firstDayInWeek(s.lastDayOfMonth(s.getDate(c)),r.firstDay()),z.DAYS_IN_WEEK_COUNT),n=s.ZonedDate.fromUTCDate(a.toUTCDateTime(l),o),d=s.ZonedDate.fromUTCDate(a.toUTCDateTime(u),o),e=new Date(n.getTime()),i=new Date(d.getTime());return{start:e,end:i,zonedStart:n,zonedEnd:d}};exports.MonthView=N;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),f=require("../../components/BaseView.js"),n=require("@progress/kendo-date-math"),u=require("../common/VerticalResourceIterator.js"),p=require("../common/HorizontalResourceIterator.js"),a=require("../../utils/main.js"),d=require("../../messages/main.js"),I=require("../../slots/SchedulerEditSlot.js"),h=require("@progress/kendo-vue-intl"),g=require("../../constants/main.js"),D=require("../../services/rangeService.js"),w=require("../../services/slotsService.js"),k=require("../../services/occurrenceService.js"),y=require("../../services/itemsService.js"),m=require("./MonthViewHead.js"),z=require("./MonthViewBody.js"),R=require("../../components/MoreEventsPopover.js"),V=require("../../items/SchedulerEditItem.js"),b=o.defineComponent({name:"KendoMonthView",props:{itemsPerSlot:{type:Number,default:2},name:{type:String,default:"month"},dateRange:{type:[Function,Object],default:function(){return $}},slotDuration:{type:Number,default:1440},slotDivisions:{type:Number,default:1},numberOfDays:{type:Number,default:31},dragItem:{type:Object,default:function(){}},resizeItem:{type:Object,default:function(){}},title:String,selectedDateFormat:{type:String,default:"{0:Y}"},selectedShortDateFormat:{type:String,default:"{0:y}"},dateHeaderCell:[String,Function,Object],slotRender:[String,Function,Object],viewSlot:[String,Function,Object],resizeHint:[String,Function,Object],item:[String,Function,Object],viewItem:[String,Function,Object],editable:{type:[Boolean,Object],default:!1}},inject:{ks:{default:{}},setActiveDate:{default:null},setActiveViewName:{default:null},kendoLocalizationService:{default:null},kendoIntlService:{default:null}},created(){this.intl=h.provideIntlService(this)},mounted(){this.hasMounted=!0},data(){return{hasMounted:!1,currentDragItem:void 0,currentResizeItem:void 0,popoverShow:!1,popoverAnchor:null,popoverSlot:null}},computed:{ranges(){return D.toRanges(this.ks.dateRange,{step:n.MS_PER_DAY*g.DAYS_IN_WEEK_COUNT,timezone:this.ks.timezone})},monthSlots(){return w.toSlots(this.ks.dateRange,{step:n.MS_PER_DAY},{groups:this.ks.groups,ranges:this.ranges})},occurrences(){return k.toOccurrences(this.ks.dataItems,{dateRange:this.ks.dateRange,fields:this.ks.fields,timezone:this.ks.timezone})},items(){const t=y.toItems(this.occurrences,{timezone:this.ks.timezone},{groups:this.ks.groups,ranges:this.ranges});return a.mapItemsToSlots(t,this.monthSlots,!0),a.mapSlotsToItems(t,this.monthSlots,!0),t},compDragItem(){return this.dragItem!==void 0?this.dragItem:this.currentDragItem},compResizeItem(){return this.resizeItem!==void 0?this.resizeItem:this.currentResizeItem}},render(){this.localization=h.provideLocalizationService(this),this.localization.toLanguageString(d.monthViewTitle,d.messages[d.monthViewTitle]);const t=this.$props.editItem||V.SchedulerEditItem;this.$props.editSlot||I.SchedulerEditSlot;const i=this.items,r=this.monthSlots;this.intl=h.provideIntlService(this);const s=this.$props.itemsPerSlot,c=this.ks.orientation==="horizontal"?this.ranges.map(function(e,l){return o.createVNode(p.HorizontalResourceIterator,{resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[o.createVNode(z.MonthViewBody,{editable:this.$props.editable,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,monthSlots:r,rangeIndex:l,itemsPerSlot:s,onDataaction:this.handleDataAction,onShowmoreitems:this.handleShowMoreItemsClick},null)]})},this):o.createVNode(u.VerticalResourceIterator,{nested:!0,resources:this.ks.props.resources,group:this.ks.props.group,onDataaction:this.handleDataAction,more:{slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,monthSlots:r,ranges:this.ranges,itemsPerSlot:s,editable:this.$props.editable,onShowmoreitems:this.handleShowMoreItemsClick}},null);return o.createVNode(f.BaseView,{viewProps:{...this.$props},baseSlots:r,ranges:this.ranges,class:"k-scheduler-monthview"},{default:()=>[o.createVNode("div",{class:"k-scheduler-head"},[this.ks.orientation==="horizontal"?o.createVNode(p.HorizontalResourceIterator,{nested:!0,resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[o.createVNode(m.MonthViewHead,{monthSlots:r,dateHeaderCell:this.$props.dateHeaderCell},null)]}):o.createVNode(u.VerticalResourceIterator,{resources:this.ks.props.resources,group:this.ks.props.group},{default:()=>[o.createVNode(m.MonthViewHead,{monthSlots:r,dateHeaderCell:this.$props.dateHeaderCell},null)]})]),o.createVNode("div",{class:"k-scheduler-body"},[c,this.hasMounted&&i.filter(e=>e.order===null||e.order<s).sort(a.orderSort).map(function(e){return o.createVNode(t,{item:this.$props.item,viewItem:this.$props.viewItem,form:this.$props.form,key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,uid:e.uid,start:e.start,end:e.end,originalStart:e.originalStart,startTimezone:e.startTimezone,endTimezone:e.endTimezone,isAllDay:e.isAllDay,title:e.title,description:e.description,occurrenceId:e.occurrenceId,recurrenceExceptions:e.recurrenceExceptions,recurrenceRule:e.recurrenceRule,recurrenceId:e.recurrenceId,dataItem:e.dataItem,itemRef:e.itemRef,head:e.head,tail:e.tail,order:e.order,zonedStart:e.zonedStart,zonedEnd:e.zonedEnd,slots:e.slots,group:e.group,range:e.range,isException:e.isException,isRecurring:e.isRecurring,readonly:e.readonly,onDragitemchange:this.handleDragItemChange,onResizeitemchange:this.handleResizeItemChange,onDataaction:this.handleDataAction,vertical:!1,editable:this.$props.editable,ignoreIsAllDay:!0},null)},this)]),o.createVNode(R.MoreEventsPopover,{show:this.popoverShow,anchor:this.popoverAnchor,slot:this.popoverSlot,items:i,itemsPerSlot:s,onDayclick:this.handlePopoverDayClick,onClose:this.handlePopoverClose},null)]})},methods:{handleShowMoreItemsClick({event:t,slot:i}){var s;const r=((s=t.target)==null?void 0:s.element)||null;if(this.popoverShow&&this.popoverAnchor===r){this.popoverShow=!1,this.popoverAnchor=null,this.popoverSlot=null;return}this.popoverShow=!0,this.popoverAnchor=r,this.popoverSlot=i||null},handlePopoverClose(){this.popoverShow=!1,this.popoverAnchor=null,this.popoverSlot=null},handlePopoverDayClick(t){const r=this.ks.views.find(s=>s.name==="day");!this.setActiveViewName||!r||!r.name||(this.popoverShow=!1,this.popoverAnchor=null,this.popoverSlot=null,this.$nextTick(()=>{this.setActiveViewName(r.name),this.setActiveDate(t.start)}))},handleDataAction(t){this.$emit("dataaction",t)},handleDragItemChange(t){this.currentDragItem=t},handleResizeItemChange(t){this.currentResizeItem=t}}}),$=({intl:t,date:i,timezone:r})=>{const s=n.firstDayInWeek(n.firstDayOfMonth(n.getDate(i)),t.firstDay()),c=n.addDays(n.firstDayInWeek(n.lastDayOfMonth(n.getDate(i)),t.firstDay()),g.DAYS_IN_WEEK_COUNT),e=n.ZonedDate.fromUTCDate(a.toUTCDateTime(s),r),l=n.ZonedDate.fromUTCDate(a.toUTCDateTime(c),r),S=new Date(e.getTime()),v=new Date(l.getTime());return{start:S,end:v,zonedStart:e,zonedEnd:l}};exports.MonthView=b;
@@ -5,26 +5,25 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as k, createVNode as t } from "vue";
9
- import { BaseView as b } from "../../components/BaseView.mjs";
10
- import { firstDayInWeek as c, firstDayOfMonth as v, getDate as m, addDays as w, lastDayOfMonth as A, ZonedDate as p, MS_PER_DAY as h } from "@progress/kendo-date-math";
11
- import { VerticalResourceIterator as g } from "../common/VerticalResourceIterator.mjs";
12
- import { HorizontalResourceIterator as f } from "../common/HorizontalResourceIterator.mjs";
13
- import { orderSort as C, mapItemsToSlots as O, mapSlotsToItems as T, toUTCDateTime as I } from "../../utils/main.mjs";
14
- import { monthViewTitle as S, messages as E } from "../../messages/main.mjs";
15
- import { SchedulerEditSlot as j } from "../../slots/SchedulerEditSlot.mjs";
16
- import { provideLocalizationService as x, provideIntlService as D } from "@progress/kendo-vue-intl";
17
- import { DAYS_IN_WEEK_COUNT as $ } from "../../constants/main.mjs";
18
- import { toRanges as M } from "../../services/rangeService.mjs";
19
- import { toSlots as F } from "../../services/slotsService.mjs";
20
- import { toOccurrences as V } from "../../services/occurrenceService.mjs";
21
- import { toItems as H } from "../../services/itemsService.mjs";
22
- import { MonthViewHead as z } from "./MonthViewHead.mjs";
23
- import { MonthViewBody as N } from "./MonthViewBody.mjs";
24
- import { SchedulerEditItem as P } from "../../items/SchedulerEditItem.mjs";
25
- import { SchedulerResize as y } from "../common/SchedulerResize.mjs";
26
- import { SchedulerDrag as R } from "../common/SchedulerDrag.mjs";
27
- const ae = /* @__PURE__ */ k({
8
+ import { defineComponent as w, createVNode as r } from "vue";
9
+ import { BaseView as k } from "../../components/BaseView.mjs";
10
+ import { firstDayInWeek as l, firstDayOfMonth as y, getDate as h, addDays as z, lastDayOfMonth as R, ZonedDate as d, MS_PER_DAY as p } from "@progress/kendo-date-math";
11
+ import { VerticalResourceIterator as u } from "../common/VerticalResourceIterator.mjs";
12
+ import { HorizontalResourceIterator as c } from "../common/HorizontalResourceIterator.mjs";
13
+ import { orderSort as b, mapItemsToSlots as $, mapSlotsToItems as C, toUTCDateTime as m } from "../../utils/main.mjs";
14
+ import { monthViewTitle as g, messages as A } from "../../messages/main.mjs";
15
+ import { SchedulerEditSlot as O } from "../../slots/SchedulerEditSlot.mjs";
16
+ import { provideLocalizationService as T, provideIntlService as f } from "@progress/kendo-vue-intl";
17
+ import { DAYS_IN_WEEK_COUNT as v } from "../../constants/main.mjs";
18
+ import { toRanges as E } from "../../services/rangeService.mjs";
19
+ import { toSlots as M } from "../../services/slotsService.mjs";
20
+ import { toOccurrences as P } from "../../services/occurrenceService.mjs";
21
+ import { toItems as V } from "../../services/itemsService.mjs";
22
+ import { MonthViewHead as S } from "./MonthViewHead.mjs";
23
+ import { MonthViewBody as j } from "./MonthViewBody.mjs";
24
+ import { MoreEventsPopover as x } from "../../components/MoreEventsPopover.mjs";
25
+ import { SchedulerEditItem as N } from "../../items/SchedulerEditItem.mjs";
26
+ const se = /* @__PURE__ */ w({
28
27
  name: "KendoMonthView",
29
28
  props: {
30
29
  itemsPerSlot: {
@@ -38,7 +37,7 @@ const ae = /* @__PURE__ */ k({
38
37
  dateRange: {
39
38
  type: [Function, Object],
40
39
  default: function() {
41
- return _;
40
+ return F;
42
41
  }
43
42
  },
44
43
  slotDuration: {
@@ -70,7 +69,7 @@ const ae = /* @__PURE__ */ k({
70
69
  },
71
70
  selectedShortDateFormat: {
72
71
  type: String,
73
- default: "{0:Y}"
72
+ default: "{0:y}"
74
73
  },
75
74
  dateHeaderCell: [String, Function, Object],
76
75
  slotRender: [String, Function, Object],
@@ -87,6 +86,12 @@ const ae = /* @__PURE__ */ k({
87
86
  ks: {
88
87
  default: {}
89
88
  },
89
+ setActiveDate: {
90
+ default: null
91
+ },
92
+ setActiveViewName: {
93
+ default: null
94
+ },
90
95
  kendoLocalizationService: {
91
96
  default: null
92
97
  },
@@ -95,7 +100,7 @@ const ae = /* @__PURE__ */ k({
95
100
  }
96
101
  },
97
102
  created() {
98
- this.intl = D(this);
103
+ this.intl = f(this);
99
104
  },
100
105
  mounted() {
101
106
  this.hasMounted = !0;
@@ -104,39 +109,42 @@ const ae = /* @__PURE__ */ k({
104
109
  return {
105
110
  hasMounted: !1,
106
111
  currentDragItem: void 0,
107
- currentResizeItem: void 0
112
+ currentResizeItem: void 0,
113
+ popoverShow: !1,
114
+ popoverAnchor: null,
115
+ popoverSlot: null
108
116
  };
109
117
  },
110
118
  computed: {
111
119
  ranges() {
112
- return M(this.ks.dateRange, {
113
- step: h * $,
120
+ return E(this.ks.dateRange, {
121
+ step: p * v,
114
122
  timezone: this.ks.timezone
115
123
  });
116
124
  },
117
125
  monthSlots() {
118
- return F(this.ks.dateRange, {
119
- step: h
126
+ return M(this.ks.dateRange, {
127
+ step: p
120
128
  }, {
121
129
  groups: this.ks.groups,
122
130
  ranges: this.ranges
123
131
  });
124
132
  },
125
133
  occurrences() {
126
- return V(this.ks.dataItems, {
134
+ return P(this.ks.dataItems, {
127
135
  dateRange: this.ks.dateRange,
128
136
  fields: this.ks.fields,
129
137
  timezone: this.ks.timezone
130
138
  });
131
139
  },
132
140
  items() {
133
- const r = H(this.occurrences, {
141
+ const t = V(this.occurrences, {
134
142
  timezone: this.ks.timezone
135
143
  }, {
136
144
  groups: this.ks.groups,
137
145
  ranges: this.ranges
138
146
  });
139
- return O(r, this.monthSlots, !0), T(r, this.monthSlots, !0), r;
147
+ return $(t, this.monthSlots, !0), C(t, this.monthSlots, !0), t;
140
148
  },
141
149
  compDragItem() {
142
150
  return this.dragItem !== void 0 ? this.dragItem : this.currentDragItem;
@@ -146,61 +154,28 @@ const ae = /* @__PURE__ */ k({
146
154
  }
147
155
  },
148
156
  render() {
149
- this.localization = x(this), this.localization.toLanguageString(S, E[S]);
150
- const r = this.$props.editItem || P;
151
- this.$props.editSlot || j;
152
- const n = this.items, s = this.monthSlots, l = function(e) {
153
- return this.compDragItem && this.$props.editable.drag && (Array.isArray(this.compDragItem) ? this.compDragItem.map(function(o, u) {
154
- return t(R, {
155
- key: u,
156
- ignoreIsAllDay: !0,
157
- dataItem: o,
158
- vertical: e,
159
- item: this.$props.dataItem
160
- }, null);
161
- }, this) : t(R, {
162
- ignoreIsAllDay: !0,
163
- dataItem: this.compDragItem,
164
- vertical: e,
165
- item: this.$props.dataItem
166
- }, null));
167
- }, d = function(e) {
168
- return this.compResizeItem && this.editable.resize && (Array.isArray(this.compResizeItem) ? this.compResizeItem.map(function(o, u) {
169
- return t(y, {
170
- key: u,
171
- format: this.$props.format,
172
- ignoreIsAllDay: !0,
173
- dataItem: o,
174
- viewItem: this.$props.viewItem,
175
- item: this.$props.item,
176
- vertical: e
177
- }, null);
178
- }, this) : t(y, {
179
- format: this.$props.format,
180
- ignoreIsAllDay: !0,
181
- dataItem: this.compResizeItem,
182
- viewItem: this.$props.viewItem,
183
- item: this.$props.item,
184
- vertical: e
185
- }, null));
186
- };
187
- this.intl = D(this);
188
- const i = this.$props.itemsPerSlot, a = this.ks.orientation === "horizontal" ? this.ranges.map(function(e, o) {
189
- return t(f, {
157
+ this.localization = T(this), this.localization.toLanguageString(g, A[g]);
158
+ const t = this.$props.editItem || N;
159
+ this.$props.editSlot || O;
160
+ const n = this.items, o = this.monthSlots;
161
+ this.intl = f(this);
162
+ const s = this.$props.itemsPerSlot, a = this.ks.orientation === "horizontal" ? this.ranges.map(function(e, i) {
163
+ return r(c, {
190
164
  resources: this.ks.props.resources,
191
165
  group: this.ks.props.group
192
166
  }, {
193
- default: () => [t(N, {
167
+ default: () => [r(j, {
194
168
  editable: this.$props.editable,
195
169
  slotRender: this.$props.slotRender,
196
170
  viewSlot: this.$props.viewSlot,
197
- monthSlots: s,
198
- rangeIndex: o,
199
- itemsPerSlot: i,
200
- onDataaction: this.handleDataAction
171
+ monthSlots: o,
172
+ rangeIndex: i,
173
+ itemsPerSlot: s,
174
+ onDataaction: this.handleDataAction,
175
+ onShowmoreitems: this.handleShowMoreItemsClick
201
176
  }, null)]
202
177
  });
203
- }, this) : t(g, {
178
+ }, this) : r(u, {
204
179
  nested: !0,
205
180
  resources: this.ks.props.resources,
206
181
  group: this.ks.props.group,
@@ -208,43 +183,44 @@ const ae = /* @__PURE__ */ k({
208
183
  more: {
209
184
  slotRender: this.$props.slotRender,
210
185
  viewSlot: this.$props.viewSlot,
211
- monthSlots: s,
186
+ monthSlots: o,
212
187
  ranges: this.ranges,
213
- itemsPerSlot: i,
214
- editable: this.$props.editable
188
+ itemsPerSlot: s,
189
+ editable: this.$props.editable,
190
+ onShowmoreitems: this.handleShowMoreItemsClick
215
191
  }
216
192
  }, null);
217
- return t(b, {
193
+ return r(k, {
218
194
  viewProps: {
219
195
  ...this.$props
220
196
  },
221
- baseSlots: s,
197
+ baseSlots: o,
222
198
  ranges: this.ranges,
223
199
  class: "k-scheduler-monthview"
224
200
  }, {
225
- default: () => [t("div", {
201
+ default: () => [r("div", {
226
202
  class: "k-scheduler-head"
227
- }, [this.ks.orientation === "horizontal" ? t(f, {
203
+ }, [this.ks.orientation === "horizontal" ? r(c, {
228
204
  nested: !0,
229
205
  resources: this.ks.props.resources,
230
206
  group: this.ks.props.group
231
207
  }, {
232
- default: () => [t(z, {
233
- monthSlots: s,
208
+ default: () => [r(S, {
209
+ monthSlots: o,
234
210
  dateHeaderCell: this.$props.dateHeaderCell
235
211
  }, null)]
236
- }) : t(g, {
212
+ }) : r(u, {
237
213
  resources: this.ks.props.resources,
238
214
  group: this.ks.props.group
239
215
  }, {
240
- default: () => [t(z, {
241
- monthSlots: s,
216
+ default: () => [r(S, {
217
+ monthSlots: o,
242
218
  dateHeaderCell: this.$props.dateHeaderCell
243
219
  }, null)]
244
- })]), t("div", {
220
+ })]), r("div", {
245
221
  class: "k-scheduler-body"
246
- }, [a, this.hasMounted && n.filter((e) => e.order === null || e.order < i).sort(C).map(function(e) {
247
- return t(r, {
222
+ }, [a, this.hasMounted && n.filter((e) => e.order === null || e.order < s).sort(b).map(function(e) {
223
+ return r(t, {
248
224
  item: this.$props.item,
249
225
  viewItem: this.$props.viewItem,
250
226
  form: this.$props.form,
@@ -274,6 +250,7 @@ const ae = /* @__PURE__ */ k({
274
250
  range: e.range,
275
251
  isException: e.isException,
276
252
  isRecurring: e.isRecurring,
253
+ readonly: e.readonly,
277
254
  onDragitemchange: this.handleDragItemChange,
278
255
  onResizeitemchange: this.handleResizeItemChange,
279
256
  onDataaction: this.handleDataAction,
@@ -281,33 +258,62 @@ const ae = /* @__PURE__ */ k({
281
258
  editable: this.$props.editable,
282
259
  ignoreIsAllDay: !0
283
260
  }, null);
284
- }, this), this.compDragItem && l.call(this, !1), this.compResizeItem && d.call(this, !1)])]
261
+ }, this)]), r(x, {
262
+ show: this.popoverShow,
263
+ anchor: this.popoverAnchor,
264
+ slot: this.popoverSlot,
265
+ items: n,
266
+ itemsPerSlot: s,
267
+ onDayclick: this.handlePopoverDayClick,
268
+ onClose: this.handlePopoverClose
269
+ }, null)]
285
270
  });
286
271
  },
287
272
  methods: {
288
- handleDataAction(r) {
289
- this.$emit("dataaction", r);
273
+ handleShowMoreItemsClick({
274
+ event: t,
275
+ slot: n
276
+ }) {
277
+ var s;
278
+ const o = ((s = t.target) == null ? void 0 : s.element) || null;
279
+ if (this.popoverShow && this.popoverAnchor === o) {
280
+ this.popoverShow = !1, this.popoverAnchor = null, this.popoverSlot = null;
281
+ return;
282
+ }
283
+ this.popoverShow = !0, this.popoverAnchor = o, this.popoverSlot = n || null;
284
+ },
285
+ handlePopoverClose() {
286
+ this.popoverShow = !1, this.popoverAnchor = null, this.popoverSlot = null;
287
+ },
288
+ handlePopoverDayClick(t) {
289
+ const o = this.ks.views.find((s) => s.name === "day");
290
+ !this.setActiveViewName || !o || !o.name || (this.popoverShow = !1, this.popoverAnchor = null, this.popoverSlot = null, this.$nextTick(() => {
291
+ this.setActiveViewName(o.name), this.setActiveDate(t.start);
292
+ }));
293
+ },
294
+ handleDataAction(t) {
295
+ this.$emit("dataaction", t);
290
296
  },
291
- handleDragItemChange(r) {
292
- this.currentDragItem = r;
297
+ handleDragItemChange(t) {
298
+ this.currentDragItem = t;
293
299
  },
294
- handleResizeItemChange(r) {
295
- this.currentResizeItem = r;
300
+ handleResizeItemChange(t) {
301
+ this.currentResizeItem = t;
296
302
  }
297
303
  }
298
- }), _ = ({
299
- intl: r,
304
+ }), F = ({
305
+ intl: t,
300
306
  date: n,
301
- timezone: s
307
+ timezone: o
302
308
  }) => {
303
- const l = c(v(m(n)), r.firstDay()), d = w(c(A(m(n)), r.firstDay()), $), i = p.fromUTCDate(I(l), s), a = p.fromUTCDate(I(d), s), e = new Date(i.getTime()), o = new Date(a.getTime());
309
+ const s = l(y(h(n)), t.firstDay()), a = z(l(R(h(n)), t.firstDay()), v), e = d.fromUTCDate(m(s), o), i = d.fromUTCDate(m(a), o), D = new Date(e.getTime()), I = new Date(i.getTime());
304
310
  return {
305
- start: e,
306
- end: o,
307
- zonedStart: i,
308
- zonedEnd: a
311
+ start: D,
312
+ end: I,
313
+ zonedStart: e,
314
+ zonedEnd: i
309
315
  };
310
316
  };
311
317
  export {
312
- ae as MonthView
318
+ se as MonthView
313
319
  };
@@ -31,6 +31,7 @@ declare const MonthViewBody: import('vue').DefineComponent<import('vue').Extract
31
31
  slotRender: PropType<any>;
32
32
  viewSlot: PropType<any>;
33
33
  onDataaction: PropType<(action: DataAction) => void>;
34
+ onShowmoreitems: PropType<(event: any) => void>;
34
35
  }>, {}, {
35
36
  ksSlots: {
36
37
  cSlots: any[];
@@ -41,7 +42,7 @@ declare const MonthViewBody: import('vue').DefineComponent<import('vue').Extract
41
42
  handleShowMoreItemsClick(event: ShowMoreItemsButtonMouseEvent, slot: any): void;
42
43
  handleDataAction(action: DataAction): void;
43
44
  isOtherMonth(slot: any, currentDate: Date): boolean;
44
- }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
45
+ }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("showmoreitems" | "dataaction")[], "showmoreitems" | "dataaction", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
45
46
  editable: PropType<boolean | object>;
46
47
  groupIndex: PropType<number>;
47
48
  rangeIndex: PropType<number>;
@@ -51,7 +52,11 @@ declare const MonthViewBody: import('vue').DefineComponent<import('vue').Extract
51
52
  slotRender: PropType<any>;
52
53
  viewSlot: PropType<any>;
53
54
  onDataaction: PropType<(action: DataAction) => void>;
54
- }>> & Readonly<{}>, {}, {}, {}, {}, string, () => {
55
+ onShowmoreitems: PropType<(event: any) => void>;
56
+ }>> & Readonly<{
57
+ onShowmoreitems?: (...args: any[]) => any;
58
+ onDataaction?: (...args: any[]) => any;
59
+ }>, {}, {}, {}, {}, string, () => {
55
60
  ksSlots: any;
56
61
  }, true, {}, any>;
57
62
  export { MonthViewBody };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("vue"),a=require("../../slots/SchedulerEditSlot.js"),d=require("@progress/kendo-vue-common"),h=require("@progress/kendo-vue-intl"),u=i.defineComponent({name:"KendoMonthViewBody",props:{editable:[Object,Boolean],groupIndex:Number,rangeIndex:Number,itemsPerSlot:Number,monthSlots:Array,ranges:Array,slotRender:[String,Function,Object],viewSlot:[String,Function,Object],onDataaction:Function},inject:{ri:{default:{}},ks:{default:null},setActiveDate:{default:null},setActiveViewName:{default:null},setSlots:{default:null},kendoIntlService:{default:null}},provide(){return{ksSlots:this.ksSlots}},data(){const t=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return{ksSlots:{cSlots:this.monthSlots.filter(e=>e.group.index===t&&e.range.index===this.rangeIndex)}}},watch:{currentCellSlots(t){this.ksSlots.cSlots=t}},computed:{currentCellSlots(){const t=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return this.monthSlots.filter(e=>e.group.index===t&&e.range.index===this.rangeIndex)}},render(){this.intl=h.provideIntlService(this);const t=this.$props.editSlot||a.SchedulerEditSlot,e=this,n=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return i.createVNode("div",{class:"k-scheduler-row",key:this.rangeIndex},[this.currentCellSlots.map(function(o,r,s){return i.createVNode(t,{className:d.classNames({"k-other-month":this.isOtherMonth(o,this.ks.currentDate)}),slotRender:this.$props.slotRender,viewSlot:e.$props.viewSlot,form:e.$props.form,index:r,navDay:!0,itemsPerSlot:e.itemsPerSlot,expandable:{offsetTop:30,offsetBottom:e.itemsPerSlot<o.items.length?15:0},onDataaction:e.handleDataAction,col:e.ks.orientation==="horizontal"?s.length*(n||0)+r:r,row:e.ks.orientation==="horizontal"?e.rangeIndex:e.ranges.length*(n||0)+e.rangeIndex,editable:e.$props.editable,onShowmoreitems:l=>e.handleShowMoreItemsClick(l,o)},null)},this)])},methods:{handleShowMoreItemsClick(t,e){const n=this.ks.views.find(o=>o.name==="day");!this.setActiveViewName||!n||!n.name||!e||(this.setActiveViewName(n.name,t),this.setActiveDate(e.start,t))},handleDataAction(t){this.$emit("dataaction",t)},isOtherMonth(t,e){return t.start.getMonth()<e.getMonth()||t.start.getMonth()>e.getMonth()}}});exports.MonthViewBody=u;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("vue"),d=require("../../slots/SchedulerEditSlot.js"),a=require("@progress/kendo-vue-common"),h=require("@progress/kendo-vue-intl"),u=r.defineComponent({name:"KendoMonthViewBody",emits:["dataaction","showmoreitems"],props:{editable:[Object,Boolean],groupIndex:Number,rangeIndex:Number,itemsPerSlot:Number,monthSlots:Array,ranges:Array,slotRender:[String,Function,Object],viewSlot:[String,Function,Object],onDataaction:Function,onShowmoreitems:Function},inject:{ri:{default:{}},ks:{default:null},setActiveDate:{default:null},setActiveViewName:{default:null},setSlots:{default:null},kendoIntlService:{default:null}},provide(){return{ksSlots:this.ksSlots}},data(){const t=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return{ksSlots:{cSlots:this.monthSlots.filter(e=>e.group.index===t&&e.range.index===this.rangeIndex)}}},watch:{currentCellSlots(t){this.ksSlots.cSlots=t}},computed:{currentCellSlots(){const t=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return this.monthSlots.filter(e=>e.group.index===t&&e.range.index===this.rangeIndex)}},render(){this.intl=h.provideIntlService(this);const t=this.$props.editSlot||d.SchedulerEditSlot,e=this,i=this.groupIndex!==void 0?this.groupIndex:this.ri.groupIndex;return r.createVNode("div",{class:"k-scheduler-row",key:this.rangeIndex},[this.currentCellSlots.map(function(n,o,s){return r.createVNode(t,{className:a.classNames({"k-other-month":this.isOtherMonth(n,this.ks.currentDate)}),slotRender:this.$props.slotRender,viewSlot:e.$props.viewSlot,form:e.$props.form,index:o,navDay:!0,itemsPerSlot:e.itemsPerSlot,expandable:{offsetTop:30,offsetBottom:e.itemsPerSlot<n.items.length?15:0},onDataaction:e.handleDataAction,col:e.ks.orientation==="horizontal"?s.length*(i||0)+o:o,row:e.ks.orientation==="horizontal"?e.rangeIndex:e.ranges.length*(i||0)+e.rangeIndex,editable:e.$props.editable,onShowmoreitems:l=>e.handleShowMoreItemsClick(l,n)},null)},this)])},methods:{handleShowMoreItemsClick(t,e){this.$emit("showmoreitems",{event:t,slot:e})},handleDataAction(t){this.$emit("dataaction",t)},isOtherMonth(t,e){return t.start.getMonth()<e.getMonth()||t.start.getMonth()>e.getMonth()}}});exports.MonthViewBody=u;
@@ -5,12 +5,13 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as l, createVNode as i } from "vue";
8
+ import { defineComponent as a, createVNode as i } from "vue";
9
9
  import { SchedulerEditSlot as d } from "../../slots/SchedulerEditSlot.mjs";
10
10
  import { classNames as h } from "@progress/kendo-vue-common";
11
11
  import { provideIntlService as u } from "@progress/kendo-vue-intl";
12
- const S = /* @__PURE__ */ l({
12
+ const S = /* @__PURE__ */ a({
13
13
  name: "KendoMonthViewBody",
14
+ emits: ["dataaction", "showmoreitems"],
14
15
  props: {
15
16
  editable: [Object, Boolean],
16
17
  groupIndex: Number,
@@ -20,7 +21,8 @@ const S = /* @__PURE__ */ l({
20
21
  ranges: Array,
21
22
  slotRender: [String, Function, Object],
22
23
  viewSlot: [String, Function, Object],
23
- onDataaction: Function
24
+ onDataaction: Function,
25
+ onShowmoreitems: Function
24
26
  },
25
27
  inject: {
26
28
  ri: {
@@ -68,11 +70,11 @@ const S = /* @__PURE__ */ l({
68
70
  },
69
71
  render() {
70
72
  this.intl = u(this);
71
- const e = this.$props.editSlot || d, t = this, n = this.groupIndex !== void 0 ? this.groupIndex : this.ri.groupIndex;
73
+ const e = this.$props.editSlot || d, t = this, r = this.groupIndex !== void 0 ? this.groupIndex : this.ri.groupIndex;
72
74
  return i("div", {
73
75
  class: "k-scheduler-row",
74
76
  key: this.rangeIndex
75
- }, [this.currentCellSlots.map(function(o, r, s) {
77
+ }, [this.currentCellSlots.map(function(o, n, s) {
76
78
  return i(e, {
77
79
  className: h({
78
80
  "k-other-month": this.isOtherMonth(o, this.ks.currentDate)
@@ -80,7 +82,7 @@ const S = /* @__PURE__ */ l({
80
82
  slotRender: this.$props.slotRender,
81
83
  viewSlot: t.$props.viewSlot,
82
84
  form: t.$props.form,
83
- index: r,
85
+ index: n,
84
86
  navDay: !0,
85
87
  itemsPerSlot: t.itemsPerSlot,
86
88
  expandable: {
@@ -88,17 +90,19 @@ const S = /* @__PURE__ */ l({
88
90
  offsetBottom: t.itemsPerSlot < o.items.length ? 15 : 0
89
91
  },
90
92
  onDataaction: t.handleDataAction,
91
- col: t.ks.orientation === "horizontal" ? s.length * (n || 0) + r : r,
92
- row: t.ks.orientation === "horizontal" ? t.rangeIndex : t.ranges.length * (n || 0) + t.rangeIndex,
93
+ col: t.ks.orientation === "horizontal" ? s.length * (r || 0) + n : n,
94
+ row: t.ks.orientation === "horizontal" ? t.rangeIndex : t.ranges.length * (r || 0) + t.rangeIndex,
93
95
  editable: t.$props.editable,
94
- onShowmoreitems: (a) => t.handleShowMoreItemsClick(a, o)
96
+ onShowmoreitems: (l) => t.handleShowMoreItemsClick(l, o)
95
97
  }, null);
96
98
  }, this)]);
97
99
  },
98
100
  methods: {
99
101
  handleShowMoreItemsClick(e, t) {
100
- const n = this.ks.views.find((o) => o.name === "day");
101
- !this.setActiveViewName || !n || !n.name || !t || (this.setActiveViewName(n.name, e), this.setActiveDate(t.start, e));
102
+ this.$emit("showmoreitems", {
103
+ event: e,
104
+ slot: t
105
+ });
102
106
  },
103
107
  handleDataAction(e) {
104
108
  this.$emit("dataaction", e);
@@ -245,6 +245,8 @@ declare const MultiDayTimelineView: import('vue').DefineComponent<import('vue').
245
245
  hasMounted: boolean;
246
246
  currentDragItem: any;
247
247
  currentResizeItem: any;
248
+ rowSyncTimeout: any;
249
+ rowSyncObserver: any;
248
250
  }, {
249
251
  viewStart(): any;
250
252
  viewEnd(): any;
@@ -255,6 +257,9 @@ declare const MultiDayTimelineView: import('vue').DefineComponent<import('vue').
255
257
  compDragItem(): any;
256
258
  compResizeItem(): any;
257
259
  }, {
260
+ scheduleRowSync(): void;
261
+ runRowSync(): void;
262
+ observeSlotChanges(): void;
258
263
  handleDataAction(action: DataAction): void;
259
264
  handleDragItemChange(item: any): void;
260
265
  handleResizeItemChange(item: any): void;
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("vue"),z=require("../../components/BaseView.js"),o=require("@progress/kendo-date-math"),S=require("../common/HorizontalResourceIterator.js"),T=require("./TimelineViewRowContent.js"),v=require("./TimelineViewAllEventsRowContent.js"),f=require("../common/VerticalResourceIterator.js"),n=require("../../utils/main.js"),$=require("../../services/rangeService.js"),b=require("../../services/slotsService.js"),E=require("../../services/occurrenceService.js"),V=require("../../services/itemsService.js"),C=require("./TimelineViewBody.js"),N=require("../../constants/main.js"),D=require("@progress/kendo-vue-intl"),q=require("../../items/SchedulerEditItem.js"),y=require("../common/SchedulerResize.js"),I=require("../common/SchedulerDrag.js"),A=require("../../components/DateHeaderCell.js"),M=require("../../components/TimeHeaderCell.js"),w=require("../../hooks/useCellSync.js"),k=require("../../hooks/useRowSync.js");function R(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!r.isVNode(t)}const O="t",x=0,H=r.defineComponent({name:"KendoMultiDayTimelineView",props:{name:{type:String,default:"multi-day-timeline"},title:{type:String,default:"Multi Day Timeline"},currentTimeMarker:{type:Boolean,default:!0},dragItem:{type:Object,default:function(){}},resizeItem:{type:Object,default:function(){}},showWorkHours:{type:Boolean,default:!0},dateRange:{type:[Function,Object],default:function(){return j}},selectedDateFormat:{type:String,default:"{0:D} - {1:D}"},selectedShortDateFormat:{type:String,default:"{0:d} - {1:d}"},step:{type:Number,default:1},numberOfDays:{type:Number,default:1},startTime:{type:String,default:"00:00"},endTime:{type:String,default:"00:00"},workDayStart:{type:String,default:"8:00"},workDayEnd:{type:String,default:"17:00"},workWeekStart:{type:Number,default:o.Day.Monday},workWeekEnd:{type:Number,default:o.Day.Friday},slotDivisions:{type:Number,default:2},slotDuration:{type:Number,default:60},defaultShowWorkHours:{type:Boolean,default:!0},columnWidth:{type:Number,default:100},dateHeaderCell:[String,Function,Object],timeHeaderCell:[String,Function,Object],slotRender:[String,Function,Object],viewSlot:[String,Function,Object],resizeHint:[String,Function,Object],item:[String,Function,Object],viewItem:[String,Function,Object],editable:{type:[Boolean,Object],default:!1},onDataaction:Function},data(){return{hasMounted:!1,currentDragItem:void 0,currentResizeItem:void 0}},inject:{ks:{default:null},kendoIntlService:{default:null}},computed:{viewStart(){this.intl=D.provideIntlService(this);const t=this.intl.parseDate(this.$props.workDayStart),i=this.intl.parseDate(this.$props.startTime);return this.showWorkHours?t:i},viewEnd(){this.intl=D.provideIntlService(this);const t=this.intl.parseDate(this.$props.workDayEnd),i=this.intl.parseDate(this.$props.endTime);return this.showWorkHours?t:i},ranges(){return $.toRanges(this.ks.dateRange,{step:o.MS_PER_DAY,timezone:this.ks.timezone})},timelineSlots(){return b.toSlots(this.ks.dateRange,{step:this.slotDuration/this.slotDivisions*o.MS_PER_MINUTE},{groups:this.ks.groups,ranges:this.ranges}).filter(i=>n.isInTimeRange(i.zonedStart,this.viewStart,this.viewEnd)||this.viewStart.getTime()===this.viewEnd.getTime())},occurrences(){return E.toOccurrences(this.ks.dataItems,{dateRange:this.ks.dateRange,fields:this.ks.fields,timezone:this.ks.timezone})},items(){const t=V.toItems(this.occurrences,{timezone:this.ks.timezone},{groups:this.ks.groups,ranges:this.ranges}).filter(i=>this.viewStart.getTime()===this.viewEnd.getTime()||n.isInTimeRange(i.zonedStart,this.viewStart,this.viewEnd)||n.isInTimeRange(i.zonedEnd,this.viewStart,this.viewEnd)||n.isInTimeRange(new Date(i.zonedEnd.getTime()-(i.zonedEnd.getTime()-i.zonedStart.getTime())/2),this.viewStart,this.viewEnd));return n.mapItemsToSlots(t,this.timelineSlots,!0),n.mapSlotsToItems(t,this.timelineSlots,!0),t},compDragItem(){return this.dragItem!==void 0?this.dragItem:this.currentDragItem},compResizeItem(){return this.resizeItem!==void 0?this.resizeItem:this.currentResizeItem}},mounted(){this.timeRef=null,this.bodyRef=null,this.hasMounted=!0,w.useCellSync({element:this.$el,selector:".k-resource-cell",attribute:"data-depth-index",explicitDepth:!0}),k.useRowSync({element:this.$el})},updated(){w.useCellSync({element:this.$el,selector:".k-resource-cell",attribute:"data-depth-index",explicitDepth:!0}),k.useRowSync({element:this.$el})},render(){const t=D.provideIntlService(this),i=this.$props.slotDuration,u=t.parseDate(this.$props.workDayStart),h=t.parseDate(this.$props.workDayEnd),p=[...this.items],a=[...this.timelineSlots],c=(this.ks.orientation==="horizontal"?a.length:a.length/this.ks.groups.length)*(this.$props.columnWidth+N.BORDER_WIDTH),m=function(e){return this.compDragItem&&this.$props.editable.drag&&(Array.isArray(this.compDragItem)?this.compDragItem.map(function(d,s){return r.createVNode(I.SchedulerDrag,{key:s,ignoreIsAllDay:!0,dataItem:d,vertical:e,item:this.$props.dataItem},null)},this):r.createVNode(I.SchedulerDrag,{ignoreIsAllDay:!0,dataItem:this.compDragItem,vertical:e,item:this.$props.dataItem},null))},g=function(e){return this.compResizeItem&&this.editable.resize&&(Array.isArray(this.compResizeItem)?this.compResizeItem.map(function(d,s){return r.createVNode(y.SchedulerResize,{key:s,format:this.$props.format,ignoreIsAllDay:!0,dataItem:d,viewItem:this.$props.viewItem,item:this.$props.item,vertical:e},null)},this):r.createVNode(y.SchedulerResize,{format:this.$props.format,ignoreIsAllDay:!0,dataItem:this.compResizeItem,viewItem:this.$props.viewItem,item:this.$props.item,vertical:e},null))},l=[r.createVNode("div",{class:"k-scheduler-row"},[this.ranges.map(function(e,d){return r.createVNode(A.DateHeaderCell,{as:this.$props.dateHeaderCell,key:d,date:e.zonedStart,start:e.start,end:e.end,format:"m"},null)},this)]),r.createVNode("div",{class:"k-scheduler-row",ref:"timeRef"},[this.ranges.map(function(e,d){return a.filter(s=>s.group.index===x&&s.range.index===d).map(function(s){return s.zonedStart.getMinutes()%i===0?r.createVNode(M.TimeHeaderCell,{key:s.index,as:this.$props.timeHeaderCell,format:O,date:s.zonedStart,start:s.zonedStart,end:s.zonedEnd},null):null},this)},this)])];return r.createVNode(z.BaseView,{id:this.$props.id,class:"k-scheduler-timeline-view",viewProps:{...this.$props},baseSlots:a,ranges:this.ranges},{default:()=>[r.createVNode("div",{class:"k-scheduler-head",style:{width:c+"px"}},[this.ks.orientation==="horizontal"?r.createVNode(S.HorizontalResourceIterator,{nested:!0,group:this.ks.props.group,resources:this.ks.props.resources,rowContent:T.TimelineViewRowContent},R(l)?l:{default:()=>[l]}):r.createVNode(f.VerticalResourceIterator,{wrapGroup:!0,group:this.ks.props.group,resources:this.ks.props.resources,editable:this.$props.editable},R(l)?l:{default:()=>[l]})]),r.createVNode("div",{class:"k-scheduler-body",style:{width:c+"px"},ref:"bodyRef"},[this.ks.orientation==="horizontal"?r.createVNode(S.HorizontalResourceIterator,{group:this.ks.props.group,resources:this.ks.props.resources,rowContent:v.TimelineViewAllEventsRowContent},{default:()=>[r.createVNode(C.TimelineViewBody,{editable:this.$props.editable,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,ranges:this.ranges,workDayStart:u,workDayEnd:h,timelineSlots:a,onDataaction:this.handleDataAction},null)]}):r.createVNode(f.VerticalResourceIterator,{nested:!0,wrapGroup:!0,group:this.ks.props.group,resources:this.ks.props.resources,onDataaction:this.handleDataAction,more:{ranges:this.ranges,workDayStart:u,workDayEnd:h,timelineSlots:a,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,editable:this.$props.editable,currentTimeMarker:this.$props.currentTimeMarker}},null),this.hasMounted&&p.sort(n.orderSort).map(function(e){return r.createVNode(q.SchedulerEditItem,{key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,uid:e.uid,start:e.start,end:e.end,originalStart:e.originalStart,startTimezone:e.startTimezone,endTimezone:e.endTimezone,isAllDay:e.isAllDay,title:e.title,description:e.description,occurrenceId:e.occurrenceId,recurrenceExceptions:e.recurrenceExceptions,recurrenceRule:e.recurrenceRule,recurrenceId:e.recurrenceId,dataItem:e.dataItem,itemRef:e.itemRef,head:e.head,tail:e.tail,order:e.order,zonedStart:e.zonedStart,zonedEnd:e.zonedEnd,slots:e.slots,group:e.group,range:e.range,isException:e.isException,isRecurring:e.isRecurring,format:"t",form:this.$props.form,onDragitemchange:this.handleDragItemChange,onResizeitemchange:this.handleResizeItemChange,onDataaction:this.handleDataAction,item:this.$props.item,viewItem:this.$props.viewItem,editable:this.$props.editable,ignoreIsAllDay:!0,vertical:!1},null)},this),this.compDragItem&&m.call(this,!1),this.compResizeItem&&g.call(this,!1)])]})},methods:{handleDataAction(t){this.$emit("dataaction",t)},handleDragItemChange(t){this.currentDragItem=t},handleResizeItemChange(t){this.currentResizeItem=t}}}),j=({date:t,numberOfDays:i=1,timezone:u})=>{const h=o.ZonedDate.fromLocalDate(t,u),p=o.getDate(h),a=o.addDays(p,i),c=o.ZonedDate.fromUTCDate(n.toUTCDateTime(p),u),m=o.ZonedDate.fromUTCDate(n.toUTCDateTime(a),u),g=new Date(c.getTime()),l=new Date(m.getTime());return{start:g,end:l,zonedStart:c,zonedEnd:m}};exports.MultiDayTimelineView=H;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),f=require("../../components/BaseView.js"),o=require("@progress/kendo-date-math"),S=require("../common/HorizontalResourceIterator.js"),D=require("./TimelineViewRowContent.js"),k=require("./TimelineViewAllEventsRowContent.js"),g=require("../common/VerticalResourceIterator.js"),s=require("../../utils/main.js"),T=require("../../services/rangeService.js"),R=require("../../services/slotsService.js"),v=require("../../services/occurrenceService.js"),b=require("../../services/itemsService.js"),I=require("./TimelineViewBody.js"),z=require("../../constants/main.js"),m=require("@progress/kendo-vue-intl"),$=require("../../items/SchedulerEditItem.js"),E=require("../../components/DateHeaderCell.js"),C=require("../../components/TimeHeaderCell.js"),V=require("../../hooks/useRowSync.js"),w=require("../../hooks/useCellSync.js");function y(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!n.isVNode(t)}const O="t",q=0,N=n.defineComponent({name:"KendoMultiDayTimelineView",props:{name:{type:String,default:"multi-day-timeline"},title:{type:String,default:"Multi Day Timeline"},currentTimeMarker:{type:Boolean,default:!0},dragItem:{type:Object,default:function(){}},resizeItem:{type:Object,default:function(){}},showWorkHours:{type:Boolean,default:!0},dateRange:{type:[Function,Object],default:function(){return M}},selectedDateFormat:{type:String,default:"{0:M}"},selectedShortDateFormat:{type:String,default:"{0:m}"},step:{type:Number,default:1},numberOfDays:{type:Number,default:1},startTime:{type:String,default:"00:00"},endTime:{type:String,default:"00:00"},workDayStart:{type:String,default:"8:00"},workDayEnd:{type:String,default:"17:00"},workWeekStart:{type:Number,default:o.Day.Monday},workWeekEnd:{type:Number,default:o.Day.Friday},slotDivisions:{type:Number,default:2},slotDuration:{type:Number,default:60},defaultShowWorkHours:{type:Boolean,default:!0},columnWidth:{type:Number,default:100},dateHeaderCell:[String,Function,Object],timeHeaderCell:[String,Function,Object],slotRender:[String,Function,Object],viewSlot:[String,Function,Object],resizeHint:[String,Function,Object],item:[String,Function,Object],viewItem:[String,Function,Object],editable:{type:[Boolean,Object],default:!1},onDataaction:Function},data(){return{hasMounted:!1,currentDragItem:void 0,currentResizeItem:void 0,rowSyncTimeout:void 0,rowSyncObserver:null}},inject:{ks:{default:null},kendoIntlService:{default:null}},computed:{viewStart(){this.intl=m.provideIntlService(this);const t=this.intl.parseDate(this.$props.workDayStart),r=this.intl.parseDate(this.$props.startTime);return this.showWorkHours?t:r},viewEnd(){this.intl=m.provideIntlService(this);const t=this.intl.parseDate(this.$props.workDayEnd),r=this.intl.parseDate(this.$props.endTime);return this.showWorkHours?t:r},ranges(){return T.toRanges(this.ks.dateRange,{step:o.MS_PER_DAY,timezone:this.ks.timezone})},timelineSlots(){return R.toSlots(this.ks.dateRange,{step:this.slotDuration/this.slotDivisions*o.MS_PER_MINUTE},{groups:this.ks.groups,ranges:this.ranges}).filter(r=>s.isInTimeRange(r.zonedStart,this.viewStart,this.viewEnd)||this.viewStart.getTime()===this.viewEnd.getTime())},occurrences(){return v.toOccurrences(this.ks.dataItems,{dateRange:this.ks.dateRange,fields:this.ks.fields,timezone:this.ks.timezone})},items(){const t=b.toItems(this.occurrences,{timezone:this.ks.timezone},{groups:this.ks.groups,ranges:this.ranges}).filter(r=>this.viewStart.getTime()===this.viewEnd.getTime()||s.isInTimeRange(r.zonedStart,this.viewStart,this.viewEnd)||s.isInTimeRange(r.zonedEnd,this.viewStart,this.viewEnd)||s.isInTimeRange(new Date(r.zonedEnd.getTime()-(r.zonedEnd.getTime()-r.zonedStart.getTime())/2),this.viewStart,this.viewEnd));return s.mapItemsToSlots(t,this.timelineSlots,!0),s.mapSlotsToItems(t,this.timelineSlots,!0),t},compDragItem(){return this.dragItem!==void 0?this.dragItem:this.currentDragItem},compResizeItem(){return this.resizeItem!==void 0?this.resizeItem:this.currentResizeItem}},mounted(){this.timeRef=null,this.bodyRef=null,this.hasMounted=!0,w.useCellSync({element:this.$el,selector:".k-resource-cell",attribute:"data-depth-index",explicitDepth:!0}),this.scheduleRowSync(),this.observeSlotChanges()},unmounted(){this.rowSyncTimeout!==void 0&&window.cancelAnimationFrame(this.rowSyncTimeout),this.rowSyncObserver&&(this.rowSyncObserver.disconnect(),this.rowSyncObserver=null)},updated(){w.useCellSync({element:this.$el,selector:".k-resource-cell",attribute:"data-depth-index",explicitDepth:!0}),this.scheduleRowSync()},render(){const t=m.provideIntlService(this),r=this.$props.slotDuration,u=t.parseDate(this.$props.workDayStart),d=t.parseDate(this.$props.workDayEnd),p=[...this.items],a=[...this.timelineSlots],c=(this.ks.orientation==="horizontal"?a.length:a.length/this.ks.groups.length)*(this.$props.columnWidth+z.BORDER_WIDTH),i=[n.createVNode("div",{class:"k-scheduler-row"},[this.ranges.map(function(e,h){return n.createVNode(E.DateHeaderCell,{as:this.$props.dateHeaderCell,key:h,date:e.zonedStart,start:e.start,end:e.end,format:"m"},null)},this)]),n.createVNode("div",{class:"k-scheduler-row",ref:"timeRef"},[this.ranges.map(function(e,h){return a.filter(l=>l.group.index===q&&l.range.index===h).map(function(l){return l.zonedStart.getMinutes()%r===0?n.createVNode(C.TimeHeaderCell,{key:l.index,as:this.$props.timeHeaderCell,format:O,date:l.zonedStart,start:l.zonedStart,end:l.zonedEnd},null):null},this)},this)])];return n.createVNode(f.BaseView,{id:this.$props.id,class:"k-scheduler-timelineview",viewProps:{...this.$props},baseSlots:a,ranges:this.ranges},{default:()=>[n.createVNode("div",{class:"k-scheduler-head",style:{width:c+"px"}},[this.ks.orientation==="horizontal"?n.createVNode(S.HorizontalResourceIterator,{nested:!0,group:this.ks.props.group,resources:this.ks.props.resources,rowContent:D.TimelineViewRowContent},y(i)?i:{default:()=>[i]}):n.createVNode(g.VerticalResourceIterator,{wrapGroup:!0,group:this.ks.props.group,resources:this.ks.props.resources,editable:this.$props.editable},y(i)?i:{default:()=>[i]})]),n.createVNode("div",{class:"k-scheduler-body",style:{width:c+"px"},ref:"bodyRef"},[this.ks.orientation==="horizontal"?n.createVNode(S.HorizontalResourceIterator,{group:this.ks.props.group,resources:this.ks.props.resources,rowContent:k.TimelineViewAllEventsRowContent},{default:()=>[n.createVNode(I.TimelineViewBody,{editable:this.$props.editable,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,ranges:this.ranges,workDayStart:u,workDayEnd:d,timelineSlots:a,onDataaction:this.handleDataAction},null)]}):n.createVNode(g.VerticalResourceIterator,{nested:!0,wrapGroup:!0,group:this.ks.props.group,resources:this.ks.props.resources,onDataaction:this.handleDataAction,more:{ranges:this.ranges,workDayStart:u,workDayEnd:d,timelineSlots:a,slotRender:this.$props.slotRender,viewSlot:this.$props.viewSlot,editable:this.$props.editable,currentTimeMarker:this.$props.currentTimeMarker}},null),this.hasMounted&&p.sort(s.orderSort).map(function(e){return n.createVNode($.SchedulerEditItem,{key:e.isRecurring?`${e.uid}:${e.group.index}:${e.range.index}:${e.originalStart}`:`${e.uid}:${e.group.index}:${e.range.index}`,uid:e.uid,start:e.start,end:e.end,originalStart:e.originalStart,startTimezone:e.startTimezone,endTimezone:e.endTimezone,isAllDay:e.isAllDay,title:e.title,description:e.description,occurrenceId:e.occurrenceId,recurrenceExceptions:e.recurrenceExceptions,recurrenceRule:e.recurrenceRule,recurrenceId:e.recurrenceId,dataItem:e.dataItem,itemRef:e.itemRef,head:e.head,tail:e.tail,order:e.order,zonedStart:e.zonedStart,zonedEnd:e.zonedEnd,slots:e.slots,group:e.group,range:e.range,isException:e.isException,isRecurring:e.isRecurring,readonly:e.readonly,format:"t",form:this.$props.form,onDragitemchange:this.handleDragItemChange,onResizeitemchange:this.handleResizeItemChange,onDataaction:this.handleDataAction,item:this.$props.item,viewItem:this.$props.viewItem,editable:this.$props.editable,ignoreIsAllDay:!0,vertical:!1},null)},this)])]})},methods:{scheduleRowSync(){this.rowSyncTimeout!==void 0&&window.cancelAnimationFrame(this.rowSyncTimeout),this.rowSyncTimeout=window.requestAnimationFrame(()=>{this.rowSyncTimeout=window.requestAnimationFrame(()=>{this.runRowSync()})})},runRowSync(){const t=this.$el?this.$el.closest(".k-scheduler-layout"):null;t&&V.useRowSync({element:t,selector:".k-resource-row",horizontalAttribute:"data-depth-index",verticalAttribute:"data-resource-index",applyTo:".k-resource-cell"})},observeSlotChanges(){const t=this.$el?this.$el.querySelector(".k-scheduler-body"):null;t&&(this.rowSyncObserver=new MutationObserver(r=>{r.some(d=>d.target instanceof HTMLElement&&d.target.classList.contains("k-slot-cell"))&&this.scheduleRowSync()}),this.rowSyncObserver.observe(t,{attributes:!0,attributeFilter:["style"],subtree:!0}))},handleDataAction(t){this.$emit("dataaction",t)},handleDragItemChange(t){this.currentDragItem=t},handleResizeItemChange(t){this.currentResizeItem=t}}}),M=({date:t,numberOfDays:r=1,timezone:u})=>{const d=o.ZonedDate.fromLocalDate(t,u),p=o.getDate(d),a=o.addDays(p,r),c=o.ZonedDate.fromUTCDate(s.toUTCDateTime(p),u),i=o.ZonedDate.fromUTCDate(s.toUTCDateTime(a),u),e=new Date(c.getTime()),h=new Date(i.getTime());return{start:e,end:h,zonedStart:c,zonedEnd:i}};exports.MultiDayTimelineView=N;