@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,15 +5,15 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as a, createVNode as e } from "vue";
9
- import { provideLocalizationService as d } from "@progress/kendo-vue-intl";
10
- import { deleteTitle as c, messages as u } from "../messages/main.mjs";
11
- import { getDefaultSlots as m, Icon as r } from "@progress/kendo-vue-common";
12
- import { SchedulerOccurrenceDialog as h } from "../components/SchedulerOccurrenceDialog.mjs";
13
- import { SchedulerRemoveDialog as k } from "../components/SchedulerRemoveDialog.mjs";
14
- import { arrowRotateCwIcon as p, arrowsNoRepeatIcon as g, xIcon as f } from "@progress/kendo-svg-icons";
8
+ import { defineComponent as d, createVNode as e } from "vue";
9
+ import { provideLocalizationService as u } from "@progress/kendo-vue-intl";
10
+ import { deleteTitle as a, messages as m } from "../messages/main.mjs";
11
+ import { getDefaultSlots as h, Icon as r } from "@progress/kendo-vue-common";
12
+ import { SchedulerOccurrenceDialog as k } from "../components/SchedulerOccurrenceDialog.mjs";
13
+ import { SchedulerRemoveDialog as p } from "../components/SchedulerRemoveDialog.mjs";
14
+ import { arrowRotateCwIcon as g, arrowsNoRepeatIcon as f, xIcon as b } from "@progress/kendo-svg-icons";
15
15
  import { useEditable as C } from "../hooks/useEditable.mjs";
16
- const j = /* @__PURE__ */ a({
16
+ const x = /* @__PURE__ */ d({
17
17
  name: "KendoSchedulerTask",
18
18
  props: {
19
19
  refTo: [Function, Object],
@@ -45,6 +45,7 @@ const j = /* @__PURE__ */ a({
45
45
  dataItem: Object,
46
46
  removeItem: Object,
47
47
  editable: [Object, Boolean],
48
+ readonly: Boolean,
48
49
  showOccurrenceDialog: {
49
50
  type: Boolean,
50
51
  default: void 0
@@ -53,6 +54,10 @@ const j = /* @__PURE__ */ a({
53
54
  type: Boolean,
54
55
  default: void 0
55
56
  },
57
+ isSeries: {
58
+ type: Boolean,
59
+ default: void 0
60
+ },
56
61
  onRemoveclick: Function
57
62
  },
58
63
  inject: {
@@ -82,7 +87,10 @@ const j = /* @__PURE__ */ a({
82
87
  this.task = null;
83
88
  },
84
89
  render() {
85
- const t = m(this), o = C(this.$props.editable), s = d(this).toLanguageString(c, u[c]), i = this.$props.group.resources.find((n) => !!(n.colorField && n[n.colorField] !== void 0)), l = i && i.colorField && i[i.colorField];
90
+ const o = h(this), t = C(this.$props.editable), c = this.$props.readonly ? {
91
+ remove: !1,
92
+ select: t.select
93
+ } : t, s = u(this).toLanguageString(a, m[a]), i = this.$props.group.resources.find((n) => !!(n.colorField && n[n.colorField] !== void 0)), l = i && i.colorField && i[i.colorField];
86
94
  return e("div", {
87
95
  id: this.$props.id,
88
96
  class: "k-task",
@@ -97,41 +105,44 @@ const j = /* @__PURE__ */ a({
97
105
  }
98
106
  }, null), this.$props.isRecurring && e(r, {
99
107
  name: "arrow-rotate-cw",
100
- icon: p
108
+ icon: g
101
109
  }, null), this.$props.isException && e(r, {
102
110
  name: "arrows-no-repeat",
103
- icon: g
104
- }, null), this.$props.title, t, o.remove && e("a", {
111
+ icon: f
112
+ }, null), e("span", {
113
+ class: "k-scheduler-task-text"
114
+ }, [this.$props.title]), o, c.remove && e("a", {
105
115
  class: "k-link k-event-delete",
106
116
  title: s,
107
117
  "aria-label": s,
108
118
  onClick: this.handleRemoveClick
109
119
  }, [e(r, {
110
120
  name: "x",
111
- icon: f
112
- }, null)]), this.showOccurrenceDialog && e(h, {
121
+ icon: b
122
+ }, null)]), this.showOccurrenceDialog && e(k, {
113
123
  dataItem: this.removeItem,
114
124
  isRemove: this.removeItem !== null,
115
125
  onClose: this.ksCancel,
116
- onOccurrenceclose: this.ksOccurrenceClick,
117
- onSeriesclose: this.ksSeriesClick
118
- }, null), this.showRemoveDialog && e(k, {
126
+ onOccurrenceclick: this.ksOccurrenceClick,
127
+ onSeriesclick: this.ksSeriesClick
128
+ }, null), this.showRemoveDialog && e(p, {
119
129
  dataItem: this.removeItem,
130
+ isSeries: this.isSeries,
120
131
  onClose: this.ksCancel,
121
132
  onCancel: this.ksCancel,
122
133
  onConfirm: this.ksRemoveConfirm
123
134
  }, null)]);
124
135
  },
125
136
  methods: {
126
- handleRemoveClick(t) {
137
+ handleRemoveClick(o) {
127
138
  this.$emit("removeclick", {
128
- event: t,
139
+ event: o,
129
140
  target: this.task
130
141
  });
131
142
  },
132
- handleClick(t) {
133
- const o = {
134
- event: t,
143
+ handleClick(o) {
144
+ const t = {
145
+ event: o,
135
146
  target: {
136
147
  props: {
137
148
  ...this.$props
@@ -139,11 +150,11 @@ const j = /* @__PURE__ */ a({
139
150
  element: this.$el
140
151
  }
141
152
  };
142
- this.$emit("click", o), this.taskClick(o);
153
+ this.$emit("click", t), this.taskClick(t);
143
154
  },
144
- handleDoubleClick(t) {
145
- const o = {
146
- event: t,
155
+ handleDoubleClick(o) {
156
+ const t = {
157
+ event: o,
147
158
  target: {
148
159
  props: {
149
160
  ...this.$props
@@ -151,10 +162,10 @@ const j = /* @__PURE__ */ a({
151
162
  element: this.$el
152
163
  }
153
164
  };
154
- this.$emit("doubleclick", o), this.taskDoubleClick(o);
165
+ this.$emit("doubleclick", t), this.taskDoubleClick(t);
155
166
  }
156
167
  }
157
168
  });
158
169
  export {
159
- j as SchedulerTask
170
+ x as SchedulerTask
160
171
  };
@@ -68,6 +68,10 @@ declare const SchedulerViewTask: import('vue').DefineComponent<import('vue').Ext
68
68
  type: PropType<boolean>;
69
69
  default: any;
70
70
  };
71
+ isSeries: {
72
+ type: PropType<boolean>;
73
+ default: any;
74
+ };
71
75
  onRemoveclick: PropType<Function>;
72
76
  }>, {}, {}, {}, {
73
77
  handleRemoveClick(event: SchedulerTaskMouseEvent): void;
@@ -110,10 +114,15 @@ declare const SchedulerViewTask: import('vue').DefineComponent<import('vue').Ext
110
114
  type: PropType<boolean>;
111
115
  default: any;
112
116
  };
117
+ isSeries: {
118
+ type: PropType<boolean>;
119
+ default: any;
120
+ };
113
121
  onRemoveclick: PropType<Function>;
114
122
  }>> & Readonly<{
115
123
  onRemoveclick?: (...args: any[]) => any;
116
124
  }>, {
125
+ isSeries: boolean;
117
126
  showOccurrenceDialog: boolean;
118
127
  showRemoveDialog: boolean;
119
128
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
@@ -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"),n=require("./SchedulerTask.js"),o=require("@progress/kendo-vue-common");function s(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const c=t.defineComponent({name:"KendoSchedulerViewTask",emits:["removeclick"],props:{itemRef:[Function,Object],id:String,tabIndex:Number,head:Boolean,tail:Boolean,order:Number,zonedStart:Object,zonedEnd:Object,slots:Array,group:Object,range:Object,isException:Boolean,isRecurring:Boolean,isAllDay:Boolean,uid:[String,Number],start:Date,end:Date,originalStart:Date,startTimezone:String,endTimezone:String,title:String,description:String,occurrenceId:String,recurrenceExceptions:Array,recurrenceRule:String,recurrenceId:[String,Number],dataItem:Object,removeItem:Object,task:[String,Function,Object],editable:[Object,Boolean],showOccurrenceDialog:{type:Boolean,default:void 0},showRemoveDialog:{type:Boolean,default:void 0},onRemoveclick:Function},render(){const e=o.getDefaultSlots(this);let r;const i=t.createVNode(n.SchedulerTask,{id:this.$props.id,tabIndex:this.$props.tabIndex,head:this.$props.head,tail:this.$props.tail,order:this.$props.order,zonedStart:this.$props.zonedStart,zonedEnd:this.$props.zonedEnd,slots:this.$props.slots,group:this.$props.group,range:this.$props.range,isException:this.$props.isException,isRecurring:this.$props.isRecurring,isAllDay:this.$props.isAllDay,uid:this.$props.uid,start:this.$props.start,end:this.$props.end,originalStart:this.$props.originalStart,startTimezone:this.$props.startTimezone,endTimezone:this.$props.endTimezone,title:this.$props.title,description:this.$props.description,occurrenceId:this.$props.occurrenceId,recurrenceExceptions:this.$props.recurrenceExceptions,recurrenceRule:this.$props.recurrenceRule,recurrenceId:this.$props.recurrenceId,dataItem:this.$props.dataItem,removeItem:this.removeItem,editable:this.$props.editable,showOccurrenceDialog:this.showOccurrenceDialog,showRemoveDialog:this.showRemoveDialog,onRemoveclick:this.handleRemoveClick},s(e)?e:{default:()=>[e]});return r=o.getTemplate.call(this,{h:t.h,template:this.$props.task,defaultRendering:i,defaultSlots:e,additionalListeners:{removeclick:this.handleRemoveClick}}),r},methods:{handleRemoveClick(e){this.$emit("removeclick",e)}}});exports.SchedulerViewTask=c;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),s=require("./SchedulerTask.js"),i=require("@progress/kendo-vue-common");function n(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}const c=t.defineComponent({name:"KendoSchedulerViewTask",emits:["removeclick"],props:{itemRef:[Function,Object],id:String,tabIndex:Number,head:Boolean,tail:Boolean,order:Number,zonedStart:Object,zonedEnd:Object,slots:Array,group:Object,range:Object,isException:Boolean,isRecurring:Boolean,isAllDay:Boolean,uid:[String,Number],start:Date,end:Date,originalStart:Date,startTimezone:String,endTimezone:String,title:String,description:String,occurrenceId:String,recurrenceExceptions:Array,recurrenceRule:String,recurrenceId:[String,Number],dataItem:Object,removeItem:Object,task:[String,Function,Object],editable:[Object,Boolean],showOccurrenceDialog:{type:Boolean,default:void 0},showRemoveDialog:{type:Boolean,default:void 0},isSeries:{type:Boolean,default:void 0},onRemoveclick:Function},render(){const e=i.getDefaultSlots(this);let r;const o=t.createVNode(s.SchedulerTask,{id:this.$props.id,tabIndex:this.$props.tabIndex,head:this.$props.head,tail:this.$props.tail,order:this.$props.order,zonedStart:this.$props.zonedStart,zonedEnd:this.$props.zonedEnd,slots:this.$props.slots,group:this.$props.group,range:this.$props.range,isException:this.$props.isException,isRecurring:this.$props.isRecurring,isAllDay:this.$props.isAllDay,uid:this.$props.uid,start:this.$props.start,end:this.$props.end,originalStart:this.$props.originalStart,startTimezone:this.$props.startTimezone,endTimezone:this.$props.endTimezone,title:this.$props.title,description:this.$props.description,occurrenceId:this.$props.occurrenceId,recurrenceExceptions:this.$props.recurrenceExceptions,recurrenceRule:this.$props.recurrenceRule,recurrenceId:this.$props.recurrenceId,dataItem:this.$props.dataItem,removeItem:this.removeItem,editable:this.$props.editable,showOccurrenceDialog:this.showOccurrenceDialog,showRemoveDialog:this.showRemoveDialog,isSeries:this.isSeries,onRemoveclick:this.handleRemoveClick},n(e)?e:{default:()=>[e]});return r=i.getTemplate.call(this,{h:t.h,template:this.$props.task,defaultRendering:o,defaultSlots:e,additionalListeners:{removeclick:this.handleRemoveClick}}),r},methods:{handleRemoveClick(e){this.$emit("removeclick",e)}}});exports.SchedulerViewTask=c;
@@ -5,13 +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 o, createVNode as i, h as n, isVNode as s } from "vue";
8
+ import { defineComponent as i, createVNode as o, h as s, isVNode as n } from "vue";
9
9
  import { SchedulerTask as c } from "./SchedulerTask.mjs";
10
10
  import { getDefaultSlots as a, getTemplate as p } from "@progress/kendo-vue-common";
11
11
  function d(e) {
12
- return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !s(e);
12
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !n(e);
13
13
  }
14
- const m = /* @__PURE__ */ o({
14
+ const m = /* @__PURE__ */ i({
15
15
  name: "KendoSchedulerViewTask",
16
16
  emits: ["removeclick"],
17
17
  props: {
@@ -53,12 +53,16 @@ const m = /* @__PURE__ */ o({
53
53
  type: Boolean,
54
54
  default: void 0
55
55
  },
56
+ isSeries: {
57
+ type: Boolean,
58
+ default: void 0
59
+ },
56
60
  onRemoveclick: Function
57
61
  },
58
62
  render() {
59
63
  const e = a(this);
60
64
  let t;
61
- const r = i(c, {
65
+ const r = o(c, {
62
66
  id: this.$props.id,
63
67
  tabIndex: this.$props.tabIndex,
64
68
  head: this.$props.head,
@@ -89,12 +93,13 @@ const m = /* @__PURE__ */ o({
89
93
  editable: this.$props.editable,
90
94
  showOccurrenceDialog: this.showOccurrenceDialog,
91
95
  showRemoveDialog: this.showRemoveDialog,
96
+ isSeries: this.isSeries,
92
97
  onRemoveclick: this.handleRemoveClick
93
98
  }, d(e) ? e : {
94
99
  default: () => [e]
95
100
  });
96
101
  return t = p.call(this, {
97
- h: n,
102
+ h: s,
98
103
  template: this.$props.task,
99
104
  defaultRendering: r,
100
105
  defaultSlots: e,
package/utils/main.d.ts CHANGED
@@ -27,7 +27,7 @@ export declare const isGroupped: (resources: any) => boolean;
27
27
  /**
28
28
  * @hidden
29
29
  */
30
- export declare function formatEventTime(intl: IntlService, start: Date, end: Date, isAllDay: boolean): string;
30
+ export declare function formatEventTime(intl: IntlService, start: Date, end: Date, isAllDay: boolean, allDayText?: string): string;
31
31
  /**
32
32
  * @hidden
33
33
  * TODO Move to date-math
@@ -122,6 +122,7 @@ export declare const defaultModelFields: {
122
122
  recurrenceRule: string;
123
123
  recurrenceId: string;
124
124
  recurrenceExceptions: string;
125
+ readonly: string;
125
126
  };
126
127
  /** @hidden */
127
128
  export declare const getModelFields: (modelFields: any) => {
@@ -164,6 +165,8 @@ export declare const findMissing: (orderNumbers: number[]) => number;
164
165
  /** @hidden */
165
166
  export declare const calculateOrder: (current: any, items: any[], slots: any[], ignoreIsAllDay?: boolean) => any;
166
167
  /** @hidden */
168
+ export declare const calculateProportionalOrder: (current: any, siblings: any[]) => number;
169
+ /** @hidden */
167
170
  export declare const mapSlotsToItems: (items: Item[], slots: Slot[], ignoreIsAllDay?: boolean) => void;
168
171
  /** @hidden */
169
172
  export declare const mapItemsToSlots: (items: Item[], slots: Slot[], ignoreIsAllDay?: boolean) => void;
package/utils/main.js CHANGED
@@ -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 v=require("@progress/kendo-date-math"),m=require("../views/common/utils.js"),M=require("@progress/kendo-vue-common"),A=require("@progress/kendo-data-query");var T=(e=>(e[e.add=0]="add",e[e.remove=1]="remove",e))(T||{});const $=e=>e[0],H=e=>e[e.length-1],R=e=>{const t=new Set;return e.forEach(n=>{t.add(n.field)}),t.size===e.length};function k(e,t,n,r){const s={skeleton:"yMMMMEEEEdhm"},o={skeleton:"yMMMMEEEEd"};return r?`${e.formatDate(t,o)}`:`${e.formatDate(t,s)}–${e.formatDate(n,"t")}`}const b=()=>v.getDate(new Date),I=(e,t,n,r=0)=>{if(r===n)return null;let s=null;const o=document.elementFromPoint(e,t);if(!o)return s;if(o.getAttribute("data-slot")==="true")return o;{const u=o.style.pointerEvents;o.style.pointerEvents="none",s=I(e,t,n,r+1),o.style.pointerEvents=u}return s},d=(e,t)=>M.getter(t)(e),G=(e,t,n)=>{if(t)return M.setter(t)(e,n)},z=e=>e!=null;function B(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}const P=(e,t,n)=>{const r=h(e,t)?d(e,t.id):d(e,t.recurrenceId);return n.find(s=>d(s,t.id)===r)},h=(e,t)=>{const n=d(e,t.id),r=d(e,t.recurrenceId),s=d(e,t.recurrenceRule);return!!(n&&s&&r==null)},x=(e,t)=>Math.max(e.getTime(),t.getTime()),S=(e,t)=>Math.min(e.getTime(),t.getTime()),l=(e,t,n,r,s=!1)=>s?x(t,r)-S(e,n)<=t.getTime()-e.getTime()+(r.getTime()-n.getTime()):x(t,r)-S(e,n)<t.getTime()-e.getTime()+(r.getTime()-n.getTime()),y={id:"id",start:"start",startTimezone:"startTimezone",originalStart:"originalStart",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions"},q=e=>({fields:{...y,...e}}),w=(e,t,n)=>(t.getHours()<e.getHours()||t.getHours()===e.getHours()&&t.getMinutes()<=e.getMinutes())&&(e.getHours()<n.getHours()||n.getHours()===e.getHours()&&e.getMinutes()<n.getMinutes()),U=(e,t)=>{const n=m.toGroupResources(e,t),r=m.toFlatGroupResources(n);return r.length===1?[{index:0,resources:(t||[]).reduce((s,o)=>[...s,...o.data.map(i=>({...i,field:o.field,valueField:o.valueField,colorField:o.colorField,multiple:o.multiple}))],[])}]:r.map((s,o)=>({index:o,resources:s}))},E=e=>e==null,C=e=>E(e)||e.trim&&e.trim().length===0,g=e=>{let t=0;const n=e.slice();return n.sort((r,s)=>r-s).forEach((r,s)=>{n[s]===s&&(t=s+1)}),t},N=(e,t,n,r=!1)=>{let s;return n.forEach(o=>{const i=[];t.sort((c,f)=>c.$props.start.getTime()-f.$props.start.getTime()).forEach(c=>{if((r||c.$props.isAllDay===o.cSlot.isAllDay)&&c.$props.range.index===o.cSlot.range.index&&c.$props.group.index===o.cSlot.group.index&&l(c.$props.start,c.$props.end,o.cSlot.start,o.cSlot.end)){const a=g(i);c===e&&s===void 0&&(s=a),i.splice(a,0,a)}})}),s},j=(e,t,n=!1)=>{t.forEach(r=>r.items.splice(0,r.items.length)),t.forEach(r=>{const s=[];e.forEach(o=>{const i=r.cSlot?r.cSlot:r;if((n||o.isAllDay===i.isAllDay)&&o.range.index===i.range.index&&o.group.index===i.group.index&&l(o.start,o.end,i.start,i.end)){const c=g(s);(o.order===null||o.order===void 0||o.order<c)&&(o.order=c),s.splice(o.order,0,o.order),i.items.push(o)}})})},Q=(e,t,n=!1)=>{e.forEach(r=>r.slots.splice(0,r.slots.length)),e.forEach(r=>{t.forEach(s=>{const o=s.cSlot?s.cSlot:s;(n||r.isAllDay===o.isAllDay)&&r.range.index===o.range.index&&r.group.index===o.group.index&&l(r.start,r.end,o.start,o.end)&&r.slots.push(s)})})},V=function(e){return e.props.items.find(n=>n.order===0)||e.props.items[0]},D=(e,t,n)=>!!(e.uid===t.uid&&(e.occurrenceId===void 0||e.occurrenceId===t.occurrenceId)&&e.group.index===t.group.index&&e.range.index===t.range.index&&(n||e.isAllDay===t.isAllDay)),F=(e,t)=>{const n=e.filter(s=>s.element!==null);return A.orderBy(n,[{field:"group.index",dir:"asc"},{field:"range.index",dir:"asc"},t?{field:""}:{field:"isAllDay",dir:"desc"},{field:"start",dir:"asc"}])},Y=(e,t)=>e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()&&e.index===t.index&&e.group.index===t.group.index&&e.range.index===t.range.index&&e.isAllDay===t.isAllDay,p=(e,t,n=!1)=>{const r=e,s=F(t,n);return{currentIndex:s.findIndex(i=>D(i,r,n)),sorted:s}},J=(e,t,n=!1)=>{if(!e||!t)return null;const{currentIndex:r,sorted:s}=p(e,t,n)||{};return s[r]},K=(e,t,n=!1,r=!1)=>{const{currentIndex:s,sorted:o}=p(e,t,n);return o[s+(r?-1:1)]},W=(e,t)=>(e.order||0)-(t.order||0);exports.COLLECTION_ACTION=T;exports.calculateOrder=N;exports.compareItems=D;exports.compareSlots=Y;exports.defaultModelFields=y;exports.findCurrentItem=J;exports.findFirstItem=V;exports.findMaster=P;exports.findMissing=g;exports.findNextItem=K;exports.first=$;exports.formatEventTime=k;exports.getCurrentItemIndex=p;exports.getField=d;exports.getModelFields=q;exports.getSortedSlots=F;exports.getToday=b;exports.intersects=l;exports.isBlank=E;exports.isGroupped=R;exports.isInTimeRange=w;exports.isMaster=h;exports.isNullOrEmptyString=C;exports.isPresent=z;exports.last=H;exports.mapItemsToSlots=Q;exports.mapSlotsToItems=j;exports.orderSort=W;exports.setField=G;exports.slotDive=I;exports.toSchedulerGroups=U;exports.toUTCDateTime=B;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("@progress/kendo-date-math");const p=require("../views/common/utils.js"),y=require("@progress/kendo-vue-common"),v=require("@progress/kendo-data-query");var D=(e=>(e[e.add=0]="add",e[e.remove=1]="remove",e))(D||{});const $=e=>e[0],H=e=>e[e.length-1],R=e=>{const t=new Set;return e.forEach(r=>{t.add(r.field)}),t.size===e.length};function P(e,t,r,s,n="all day"){const o={skeleton:"yMMMMEEEEdhm"},i={skeleton:"yMMMMEEEEd"},c="t",l=t.getFullYear()===r.getFullYear()&&t.getMonth()===r.getMonth()&&t.getDate()===r.getDate();if(s){const d=r.getHours()===0&&r.getMinutes()===0&&r.getSeconds()===0&&r.getTime()-t.getTime()===864e5;return l||d?`${e.formatDate(t,i)} (${n})`:`${e.formatDate(t,i)} to ${e.formatDate(r,i)} (${n})`}return l?`${e.formatDate(t,o)}–${e.formatDate(r,c)}`:`${e.formatDate(t,o)}-${e.formatDate(r,o)}`}const M=(e,t,r,s=0)=>{if(s===r)return null;let n=null;const o=document.elementFromPoint(e,t);if(!o)return n;if(o.getAttribute("data-slot")==="true")return o;{const c=o.style.pointerEvents;o.style.pointerEvents="none",n=M(e,t,r,s+1),o.style.pointerEvents=c}return n},a=(e,t)=>y.getter(t)(e),k=(e,t,r)=>{if(t)return y.setter(t)(e,r)},G=e=>e!=null;function b(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}const z=(e,t,r)=>{const s=h(e,t)?a(e,t.id):a(e,t.recurrenceId);return r.find(n=>a(n,t.id)===s)},h=(e,t)=>{const r=a(e,t.id),s=a(e,t.recurrenceId),n=a(e,t.recurrenceRule);return!!(r&&n&&s==null)},x=(e,t)=>Math.max(e.getTime(),t.getTime()),S=(e,t)=>Math.min(e.getTime(),t.getTime()),g=(e,t,r,s,n=!1)=>n?x(t,s)-S(e,r)<=t.getTime()-e.getTime()+(s.getTime()-r.getTime()):x(t,s)-S(e,r)<t.getTime()-e.getTime()+(s.getTime()-r.getTime()),T={id:"id",start:"start",startTimezone:"startTimezone",originalStart:"originalStart",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions",readonly:"readonly"},B=e=>({fields:{...T,...e}}),q=(e,t,r)=>(t.getHours()<e.getHours()||t.getHours()===e.getHours()&&t.getMinutes()<=e.getMinutes())&&(e.getHours()<r.getHours()||r.getHours()===e.getHours()&&e.getMinutes()<r.getMinutes()),N=(e,t)=>{const r=p.toGroupResources(e,t),s=p.toFlatGroupResources(r);return s.length===1?[{index:0,resources:(t||[]).reduce((n,o)=>[...n,...o.data.map(i=>({...i,field:o.field,valueField:o.valueField,colorField:o.colorField,multiple:o.multiple}))],[])}]:s.map((n,o)=>({index:o,resources:n}))},I=e=>e==null,w=e=>I(e)||e.trim&&e.trim().length===0,f=e=>{let t=0;const r=e.slice();return r.sort((s,n)=>s-n).forEach((s,n)=>{r[n]===n&&(t=n+1)}),t},U=(e,t,r,s=!1)=>{let n;return r.forEach(o=>{const i=[];t.sort((l,d)=>l.$props.start.getTime()-d.$props.start.getTime()).forEach(l=>{if((s||l.$props.isAllDay===o.cSlot.isAllDay)&&l.$props.range.index===o.cSlot.range.index&&l.$props.group.index===o.cSlot.group.index&&g(l.$props.start,l.$props.end,o.cSlot.start,o.cSlot.end)){const u=f(i);l===e&&n===void 0&&(n=u),i.splice(u,0,u)}})}),n},Y=(e,t)=>{const r=new Set;return t.forEach(n=>{n._order!==void 0&&n._order!==null&&r.add(n._order)}),f(Array.from(r))},C=(e,t,r=!1)=>{e.forEach(n=>{n.order=null}),t.forEach(n=>{const o=n.cSlot?n.cSlot:n;o.items.splice(0,o.items.length)});const s=[...e].sort((n,o)=>n.start.getTime()-o.start.getTime());t.forEach(n=>{const o=n.cSlot?n.cSlot:n,i=[];s.forEach(c=>{if((r||c.isAllDay===o.isAllDay)&&c.range.index===o.range.index&&(c.range.isAllDay===void 0||o.range.isAllDay===void 0||c.range.isAllDay===o.range.isAllDay)&&c.group.index===o.group.index&&g(c.start,c.end,o.start,o.end)){if(c.order!==null&&c.order!==void 0)i.includes(c.order)||(i.push(c.order),i.sort((d,u)=>d-u));else{const d=f(i);c.order=d,i.push(d),i.sort((u,A)=>u-A)}o.items.push(c)}})})},_=(e,t,r=!1)=>{e.forEach(s=>s.slots.splice(0,s.slots.length)),e.forEach(s=>{t.forEach(n=>{const o=n.cSlot?n.cSlot:n;(r||s.isAllDay===o.isAllDay)&&s.range.index===o.range.index&&(s.range.isAllDay===void 0||o.range.isAllDay===void 0||s.range.isAllDay===o.range.isAllDay)&&s.group.index===o.group.index&&g(s.start,s.end,o.start,o.end)&&s.slots.push(n)})})},j=function(e){return e.props.items.find(r=>r.order===0)||e.props.items[0]},E=(e,t,r)=>!!(e.uid===t.uid&&(e.occurrenceId===void 0||e.occurrenceId===t.occurrenceId)&&e.group.index===t.group.index&&e.range.index===t.range.index&&(r||e.isAllDay===t.isAllDay)),F=(e,t)=>{const r=e.filter(n=>n.element!==null);return v.orderBy(r,[{field:"group.index",dir:"asc"},{field:"range.index",dir:"asc"},t?{field:""}:{field:"isAllDay",dir:"desc"},{field:"start",dir:"asc"}])},O=(e,t)=>e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()&&e.index===t.index&&e.group.index===t.group.index&&e.range.index===t.range.index&&e.isAllDay===t.isAllDay,m=(e,t,r=!1)=>{const s=e,n=F(t,r);return{currentIndex:n.findIndex(i=>E(i,s,r)),sorted:n}},Q=(e,t,r=!1)=>{if(!e||!t)return null;const{currentIndex:s,sorted:n}=m(e,t,r)||{};return n[s]},V=(e,t,r=!1,s=!1)=>{const{currentIndex:n,sorted:o}=m(e,t,r);return o[n+(s?-1:1)]},J=(e,t)=>(e.order||0)-(t.order||0);exports.COLLECTION_ACTION=D;exports.calculateOrder=U;exports.calculateProportionalOrder=Y;exports.compareItems=E;exports.compareSlots=O;exports.defaultModelFields=T;exports.findCurrentItem=Q;exports.findFirstItem=j;exports.findMaster=z;exports.findMissing=f;exports.findNextItem=V;exports.first=$;exports.formatEventTime=P;exports.getCurrentItemIndex=m;exports.getField=a;exports.getModelFields=B;exports.getSortedSlots=F;exports.intersects=g;exports.isBlank=I;exports.isGroupped=R;exports.isInTimeRange=q;exports.isMaster=h;exports.isNullOrEmptyString=w;exports.isPresent=G;exports.last=H;exports.mapItemsToSlots=_;exports.mapSlotsToItems=C;exports.orderSort=J;exports.setField=k;exports.slotDive=M;exports.toSchedulerGroups=N;exports.toUTCDateTime=b;
package/utils/main.mjs CHANGED
@@ -5,40 +5,44 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { getDate as h } from "@progress/kendo-date-math";
9
- import { toGroupResources as M, toFlatGroupResources as S } from "../views/common/utils.mjs";
10
- import { setter as E, getter as y } from "@progress/kendo-vue-common";
11
- import { orderBy as T } from "@progress/kendo-data-query";
12
- var D = /* @__PURE__ */ ((e) => (e[e.add = 0] = "add", e[e.remove = 1] = "remove", e))(D || {});
13
- const G = (e) => e[0], k = (e) => e[e.length - 1], w = (e) => {
14
- const t = /* @__PURE__ */ new Set();
15
- return e.forEach((n) => {
16
- t.add(n.field);
17
- }), t.size === e.length;
8
+ import "@progress/kendo-date-math";
9
+ import { toGroupResources as y, toFlatGroupResources as D } from "../views/common/utils.mjs";
10
+ import { setter as S, getter as M } from "@progress/kendo-vue-common";
11
+ import { orderBy as E } from "@progress/kendo-data-query";
12
+ var T = /* @__PURE__ */ ((e) => (e[e.add = 0] = "add", e[e.remove = 1] = "remove", e))(T || {});
13
+ const P = (e) => e[0], b = (e) => e[e.length - 1], k = (e) => {
14
+ const r = /* @__PURE__ */ new Set();
15
+ return e.forEach((t) => {
16
+ r.add(t.field);
17
+ }), r.size === e.length;
18
18
  };
19
- function P(e, t, n, r) {
20
- const s = { skeleton: "yMMMMEEEEdhm" }, o = { skeleton: "yMMMMEEEEd" };
21
- return r ? `${e.formatDate(t, o)}` : `${e.formatDate(t, s)}–${e.formatDate(n, "t")}`;
19
+ function w(e, r, t, s, n = "all day") {
20
+ const o = { skeleton: "yMMMMEEEEdhm" }, c = { skeleton: "yMMMMEEEEd" }, i = "t", l = r.getFullYear() === t.getFullYear() && r.getMonth() === t.getMonth() && r.getDate() === t.getDate();
21
+ if (s) {
22
+ const d = t.getHours() === 0 && t.getMinutes() === 0 && t.getSeconds() === 0 && t.getTime() - r.getTime() === 864e5;
23
+ return l || d ? `${e.formatDate(r, c)} (${n})` : `${e.formatDate(r, c)} to ${e.formatDate(t, c)} (${n})`;
24
+ }
25
+ return l ? `${e.formatDate(r, o)}–${e.formatDate(t, i)}` : `${e.formatDate(r, o)}-${e.formatDate(t, o)}`;
22
26
  }
23
- const U = () => h(/* @__PURE__ */ new Date()), F = (e, t, n, r = 0) => {
24
- if (r === n)
27
+ const A = (e, r, t, s = 0) => {
28
+ if (s === t)
25
29
  return null;
26
- let s = null;
27
- const o = document.elementFromPoint(e, t);
30
+ let n = null;
31
+ const o = document.elementFromPoint(e, r);
28
32
  if (!o)
29
- return s;
33
+ return n;
30
34
  if (o.getAttribute("data-slot") === "true")
31
35
  return o;
32
36
  {
33
- const u = o.style.pointerEvents;
34
- o.style.pointerEvents = "none", s = F(e, t, n, r + 1), o.style.pointerEvents = u;
37
+ const i = o.style.pointerEvents;
38
+ o.style.pointerEvents = "none", n = A(e, r, t, s + 1), o.style.pointerEvents = i;
35
39
  }
36
- return s;
37
- }, d = (e, t) => y(t)(e), Y = (e, t, n) => {
38
- if (t)
39
- return E(t)(e, n);
40
- }, j = (e) => e != null;
41
- function q(e) {
40
+ return n;
41
+ }, a = (e, r) => M(r)(e), Y = (e, r, t) => {
42
+ if (r)
43
+ return S(r)(e, t);
44
+ }, U = (e) => e != null;
45
+ function _(e) {
42
46
  return new Date(Date.UTC(
43
47
  e.getFullYear(),
44
48
  e.getMonth(),
@@ -49,13 +53,13 @@ function q(e) {
49
53
  e.getMilliseconds()
50
54
  ));
51
55
  }
52
- const J = (e, t, n) => {
53
- const r = I(e, t) ? d(e, t.id) : d(e, t.recurrenceId);
54
- return n.find((s) => d(s, t.id) === r);
55
- }, I = (e, t) => {
56
- const n = d(e, t.id), r = d(e, t.recurrenceId), s = d(e, t.recurrenceRule);
57
- return !!(n && s && r == null);
58
- }, p = (e, t) => Math.max(e.getTime(), t.getTime()), f = (e, t) => Math.min(e.getTime(), t.getTime()), a = (e, t, n, r, s = !1) => s ? p(t, r) - f(e, n) <= t.getTime() - e.getTime() + (r.getTime() - n.getTime()) : p(t, r) - f(e, n) < t.getTime() - e.getTime() + (r.getTime() - n.getTime()), A = {
56
+ const j = (e, r, t) => {
57
+ const s = F(e, r) ? a(e, r.id) : a(e, r.recurrenceId);
58
+ return t.find((n) => a(n, r.id) === s);
59
+ }, F = (e, r) => {
60
+ const t = a(e, r.id), s = a(e, r.recurrenceId), n = a(e, r.recurrenceRule);
61
+ return !!(t && n && s == null);
62
+ }, p = (e, r) => Math.max(e.getTime(), r.getTime()), m = (e, r) => Math.min(e.getTime(), r.getTime()), g = (e, r, t, s, n = !1) => n ? p(r, s) - m(e, t) <= r.getTime() - e.getTime() + (s.getTime() - t.getTime()) : p(r, s) - m(e, t) < r.getTime() - e.getTime() + (s.getTime() - t.getTime()), I = {
59
63
  id: "id",
60
64
  start: "start",
61
65
  startTimezone: "startTimezone",
@@ -67,14 +71,15 @@ const J = (e, t, n) => {
67
71
  description: "description",
68
72
  recurrenceRule: "recurrenceRule",
69
73
  recurrenceId: "recurrenceId",
70
- recurrenceExceptions: "recurrenceExceptions"
71
- }, K = (e) => ({ fields: { ...A, ...e } }), Q = (e, t, n) => (t.getHours() < e.getHours() || t.getHours() === e.getHours() && t.getMinutes() <= e.getMinutes()) && (e.getHours() < n.getHours() || n.getHours() === e.getHours() && e.getMinutes() < n.getMinutes()), V = (e, t) => {
72
- const n = M(e, t), r = S(n);
73
- return r.length === 1 ? [{
74
+ recurrenceExceptions: "recurrenceExceptions",
75
+ readonly: "readonly"
76
+ }, q = (e) => ({ fields: { ...I, ...e } }), J = (e, r, t) => (r.getHours() < e.getHours() || r.getHours() === e.getHours() && r.getMinutes() <= e.getMinutes()) && (e.getHours() < t.getHours() || t.getHours() === e.getHours() && e.getMinutes() < t.getMinutes()), K = (e, r) => {
77
+ const t = y(e, r), s = D(t);
78
+ return s.length === 1 ? [{
74
79
  index: 0,
75
80
  // resources: []
76
- resources: (t || []).reduce(
77
- (s, o) => [...s, ...o.data.map((c) => ({
81
+ resources: (r || []).reduce(
82
+ (n, o) => [...n, ...o.data.map((c) => ({
78
83
  ...c,
79
84
  field: o.field,
80
85
  valueField: o.valueField,
@@ -83,104 +88,120 @@ const J = (e, t, n) => {
83
88
  }))],
84
89
  []
85
90
  )
86
- }] : r.map((s, o) => ({
91
+ }] : s.map((n, o) => ({
87
92
  index: o,
88
- resources: s
93
+ resources: n
89
94
  }));
90
- }, $ = (e) => e == null, W = (e) => $(e) || e.trim && e.trim().length === 0, m = (e) => {
91
- let t = 0;
92
- const n = e.slice();
93
- return n.sort((r, s) => r - s).forEach((r, s) => {
94
- n[s] === s && (t = s + 1);
95
- }), t;
96
- }, X = (e, t, n, r = !1) => {
97
- let s;
98
- return n.forEach((o) => {
95
+ }, $ = (e) => e == null, N = (e) => $(e) || e.trim && e.trim().length === 0, f = (e) => {
96
+ let r = 0;
97
+ const t = e.slice();
98
+ return t.sort((s, n) => s - n).forEach((s, n) => {
99
+ t[n] === n && (r = n + 1);
100
+ }), r;
101
+ }, Q = (e, r, t, s = !1) => {
102
+ let n;
103
+ return t.forEach((o) => {
99
104
  const c = [];
100
- t.sort((i, g) => i.$props.start.getTime() - g.$props.start.getTime()).forEach((i) => {
101
- if ((r || i.$props.isAllDay === o.cSlot.isAllDay) && i.$props.range.index === o.cSlot.range.index && i.$props.group.index === o.cSlot.group.index && a(i.$props.start, i.$props.end, o.cSlot.start, o.cSlot.end)) {
102
- const l = m(c);
103
- i === e && s === void 0 && (s = l), c.splice(l, 0, l);
105
+ r.sort((l, d) => l.$props.start.getTime() - d.$props.start.getTime()).forEach((l) => {
106
+ if ((s || l.$props.isAllDay === o.cSlot.isAllDay) && l.$props.range.index === o.cSlot.range.index && l.$props.group.index === o.cSlot.group.index && g(l.$props.start, l.$props.end, o.cSlot.start, o.cSlot.end)) {
107
+ const u = f(c);
108
+ l === e && n === void 0 && (n = u), c.splice(u, 0, u);
104
109
  }
105
110
  });
106
- }), s;
107
- }, Z = (e, t, n = !1) => {
108
- t.forEach((r) => r.items.splice(0, r.items.length)), t.forEach((r) => {
109
- const s = [];
110
- e.forEach((o) => {
111
- const c = r.cSlot ? r.cSlot : r;
112
- if ((n || o.isAllDay === c.isAllDay) && o.range.index === c.range.index && o.group.index === c.group.index && a(o.start, o.end, c.start, c.end)) {
113
- const i = m(s);
114
- (o.order === null || o.order === void 0 || o.order < i) && (o.order = i), s.splice(o.order, 0, o.order), c.items.push(o);
111
+ }), n;
112
+ }, V = (e, r) => {
113
+ const t = /* @__PURE__ */ new Set();
114
+ return r.forEach((n) => {
115
+ n._order !== void 0 && n._order !== null && t.add(n._order);
116
+ }), f(Array.from(t));
117
+ }, W = (e, r, t = !1) => {
118
+ e.forEach((n) => {
119
+ n.order = null;
120
+ }), r.forEach((n) => {
121
+ const o = n.cSlot ? n.cSlot : n;
122
+ o.items.splice(0, o.items.length);
123
+ });
124
+ const s = [...e].sort((n, o) => n.start.getTime() - o.start.getTime());
125
+ r.forEach((n) => {
126
+ const o = n.cSlot ? n.cSlot : n, c = [];
127
+ s.forEach((i) => {
128
+ if ((t || i.isAllDay === o.isAllDay) && i.range.index === o.range.index && (i.range.isAllDay === void 0 || o.range.isAllDay === void 0 || i.range.isAllDay === o.range.isAllDay) && i.group.index === o.group.index && g(i.start, i.end, o.start, o.end)) {
129
+ if (i.order !== null && i.order !== void 0)
130
+ c.includes(i.order) || (c.push(i.order), c.sort((d, u) => d - u));
131
+ else {
132
+ const d = f(c);
133
+ i.order = d, c.push(d), c.sort((u, h) => u - h);
134
+ }
135
+ o.items.push(i);
115
136
  }
116
137
  });
117
138
  });
118
- }, N = (e, t, n = !1) => {
119
- e.forEach((r) => r.slots.splice(0, r.slots.length)), e.forEach((r) => {
120
- t.forEach((s) => {
121
- const o = s.cSlot ? s.cSlot : s;
122
- (n || r.isAllDay === o.isAllDay) && r.range.index === o.range.index && r.group.index === o.group.index && a(r.start, r.end, o.start, o.end) && r.slots.push(s);
139
+ }, X = (e, r, t = !1) => {
140
+ e.forEach((s) => s.slots.splice(0, s.slots.length)), e.forEach((s) => {
141
+ r.forEach((n) => {
142
+ const o = n.cSlot ? n.cSlot : n;
143
+ (t || s.isAllDay === o.isAllDay) && s.range.index === o.range.index && (s.range.isAllDay === void 0 || o.range.isAllDay === void 0 || s.range.isAllDay === o.range.isAllDay) && s.group.index === o.group.index && g(s.start, s.end, o.start, o.end) && s.slots.push(n);
123
144
  });
124
145
  });
125
- }, _ = function(e) {
126
- return e.props.items.find((n) => n.order === 0) || e.props.items[0];
127
- }, H = (e, t, n) => !!(e.uid === t.uid && (e.occurrenceId === void 0 || e.occurrenceId === t.occurrenceId) && e.group.index === t.group.index && e.range.index === t.range.index && (n || e.isAllDay === t.isAllDay)), v = (e, t) => {
128
- const n = e.filter((s) => s.element !== null);
129
- return T(
130
- n,
146
+ }, Z = function(e) {
147
+ return e.props.items.find((t) => t.order === 0) || e.props.items[0];
148
+ }, v = (e, r, t) => !!(e.uid === r.uid && (e.occurrenceId === void 0 || e.occurrenceId === r.occurrenceId) && e.group.index === r.group.index && e.range.index === r.range.index && (t || e.isAllDay === r.isAllDay)), H = (e, r) => {
149
+ const t = e.filter((n) => n.element !== null);
150
+ return E(
151
+ t,
131
152
  [
132
153
  { field: "group.index", dir: "asc" },
133
154
  { field: "range.index", dir: "asc" },
134
- t ? { field: "" } : { field: "isAllDay", dir: "desc" },
155
+ r ? { field: "" } : { field: "isAllDay", dir: "desc" },
135
156
  { field: "start", dir: "asc" }
136
157
  ]
137
158
  );
138
- }, C = (e, t) => e.start.getTime() === t.start.getTime() && e.end.getTime() === t.end.getTime() && e.index === t.index && e.group.index === t.group.index && e.range.index === t.range.index && e.isAllDay === t.isAllDay, x = (e, t, n = !1) => {
139
- const r = e, s = v(t, n);
159
+ }, C = (e, r) => e.start.getTime() === r.start.getTime() && e.end.getTime() === r.end.getTime() && e.index === r.index && e.group.index === r.group.index && e.range.index === r.range.index && e.isAllDay === r.isAllDay, x = (e, r, t = !1) => {
160
+ const s = e, n = H(r, t);
140
161
  return {
141
- currentIndex: s.findIndex((c) => H(c, r, n)),
142
- sorted: s
162
+ currentIndex: n.findIndex((c) => v(c, s, t)),
163
+ sorted: n
143
164
  };
144
- }, L = (e, t, n = !1) => {
145
- if (!e || !t)
165
+ }, L = (e, r, t = !1) => {
166
+ if (!e || !r)
146
167
  return null;
147
- const { currentIndex: r, sorted: s } = x(e, t, n) || {};
148
- return s[r];
149
- }, O = (e, t, n = !1, r = !1) => {
150
- const { currentIndex: s, sorted: o } = x(e, t, n);
151
- return o[s + (r ? -1 : 1)];
152
- }, ee = (e, t) => (e.order || 0) - (t.order || 0);
168
+ const { currentIndex: s, sorted: n } = x(e, r, t) || {};
169
+ return n[s];
170
+ }, O = (e, r, t = !1, s = !1) => {
171
+ const { currentIndex: n, sorted: o } = x(e, r, t);
172
+ return o[n + (s ? -1 : 1)];
173
+ }, ee = (e, r) => (e.order || 0) - (r.order || 0);
153
174
  export {
154
- D as COLLECTION_ACTION,
155
- X as calculateOrder,
156
- H as compareItems,
175
+ T as COLLECTION_ACTION,
176
+ Q as calculateOrder,
177
+ V as calculateProportionalOrder,
178
+ v as compareItems,
157
179
  C as compareSlots,
158
- A as defaultModelFields,
180
+ I as defaultModelFields,
159
181
  L as findCurrentItem,
160
- _ as findFirstItem,
161
- J as findMaster,
162
- m as findMissing,
182
+ Z as findFirstItem,
183
+ j as findMaster,
184
+ f as findMissing,
163
185
  O as findNextItem,
164
- G as first,
165
- P as formatEventTime,
186
+ P as first,
187
+ w as formatEventTime,
166
188
  x as getCurrentItemIndex,
167
- d as getField,
168
- K as getModelFields,
169
- v as getSortedSlots,
170
- U as getToday,
171
- a as intersects,
189
+ a as getField,
190
+ q as getModelFields,
191
+ H as getSortedSlots,
192
+ g as intersects,
172
193
  $ as isBlank,
173
- w as isGroupped,
174
- Q as isInTimeRange,
175
- I as isMaster,
176
- W as isNullOrEmptyString,
177
- j as isPresent,
178
- k as last,
179
- N as mapItemsToSlots,
180
- Z as mapSlotsToItems,
194
+ k as isGroupped,
195
+ J as isInTimeRange,
196
+ F as isMaster,
197
+ N as isNullOrEmptyString,
198
+ U as isPresent,
199
+ b as last,
200
+ X as mapItemsToSlots,
201
+ W as mapSlotsToItems,
181
202
  ee as orderSort,
182
203
  Y as setField,
183
- F as slotDive,
184
- V as toSchedulerGroups,
185
- q as toUTCDateTime
204
+ A as slotDive,
205
+ K as toSchedulerGroups,
206
+ _ as toUTCDateTime
186
207
  };