@progress/kendo-vue-scheduler 3.1.4 → 3.2.0-dev.202204120815

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 (76) hide show
  1. package/dist/cdn/js/kendo-vue-scheduler.js +2 -2
  2. package/dist/es/components/SchedulerActionButtons.js +7 -1
  3. package/dist/es/components/SchedulerForm.js +68 -9
  4. package/dist/es/components/SchedulerOccurrenceDialog.js +52 -7
  5. package/dist/es/components/SchedulerRemoveDialog.js +52 -7
  6. package/dist/es/editors/ResourceEditor.js +13 -11
  7. package/dist/es/editors/SchedulerFormEditor.js +689 -334
  8. package/dist/es/editors/ZonedDateTime.d.ts +1 -0
  9. package/dist/es/editors/ZonedDateTime.js +5 -2
  10. package/dist/es/items/SchedulerEditItem.js +401 -211
  11. package/dist/es/items/SchedulerItem.js +104 -95
  12. package/dist/es/items/SchedulerViewItem.js +8 -2
  13. package/dist/es/items/hooks/use-drag-item.d.ts +2 -6
  14. package/dist/es/items/hooks/use-drag-item.js +228 -153
  15. package/dist/es/items/hooks/use-show-occurrence-dialog.d.ts +1 -0
  16. package/dist/es/items/hooks/use-show-occurrence-dialog.js +1 -2
  17. package/dist/es/items/hooks/use-show-remove-item-dialog.d.ts +1 -0
  18. package/dist/es/items/hooks/use-show-remove-item-dialog.js +1 -2
  19. package/dist/es/messages/index.js +1 -1
  20. package/dist/es/package-metadata.js +1 -1
  21. package/dist/es/recurrence/RecurrenceEditor.d.ts +1 -0
  22. package/dist/es/recurrence/RecurrenceEditor.js +5 -0
  23. package/dist/es/recurrence/RecurrenceFrequencyEditor.js +4 -0
  24. package/dist/es/recurrence/RecurrenceRepeatOnWeekEditor.js +4 -0
  25. package/dist/es/tasks/SchedulerEditTask.d.ts +9 -0
  26. package/dist/es/tasks/SchedulerEditTask.js +118 -35
  27. package/dist/es/tasks/SchedulerTask.js +3 -2
  28. package/dist/es/tasks/SchedulerViewTask.js +15 -3
  29. package/dist/es/views/agenda/AgendaView.js +21 -9
  30. package/dist/es/views/agenda/AgendaViewBody.d.ts +1 -0
  31. package/dist/es/views/agenda/AgendaViewBody.js +6 -1
  32. package/dist/es/views/common/SchedulerDrag.js +62 -11
  33. package/dist/es/views/day/DayView.js +4 -0
  34. package/dist/es/views/month/MonthView.js +9 -13
  35. package/dist/es/views/time/MultiDayTimelineView.js +28 -9
  36. package/dist/es/views/time/TimelineView.js +4 -0
  37. package/dist/es/views/week/WeekView.js +12 -2
  38. package/dist/es/views/week/WorkWeekView.js +12 -2
  39. package/dist/npm/components/SchedulerActionButtons.js +7 -1
  40. package/dist/npm/components/SchedulerForm.js +68 -9
  41. package/dist/npm/components/SchedulerOccurrenceDialog.js +52 -7
  42. package/dist/npm/components/SchedulerRemoveDialog.js +52 -7
  43. package/dist/npm/editors/ResourceEditor.js +12 -10
  44. package/dist/npm/editors/SchedulerFormEditor.js +674 -319
  45. package/dist/npm/editors/ZonedDateTime.d.ts +1 -0
  46. package/dist/npm/editors/ZonedDateTime.js +4 -1
  47. package/dist/npm/items/SchedulerEditItem.js +400 -207
  48. package/dist/npm/items/SchedulerItem.js +104 -95
  49. package/dist/npm/items/SchedulerViewItem.js +8 -2
  50. package/dist/npm/items/hooks/use-drag-item.d.ts +2 -6
  51. package/dist/npm/items/hooks/use-drag-item.js +231 -153
  52. package/dist/npm/items/hooks/use-show-occurrence-dialog.d.ts +1 -0
  53. package/dist/npm/items/hooks/use-show-occurrence-dialog.js +2 -2
  54. package/dist/npm/items/hooks/use-show-remove-item-dialog.d.ts +1 -0
  55. package/dist/npm/items/hooks/use-show-remove-item-dialog.js +2 -2
  56. package/dist/npm/messages/index.js +1 -1
  57. package/dist/npm/package-metadata.js +1 -1
  58. package/dist/npm/recurrence/RecurrenceEditor.d.ts +1 -0
  59. package/dist/npm/recurrence/RecurrenceEditor.js +5 -0
  60. package/dist/npm/recurrence/RecurrenceFrequencyEditor.js +4 -0
  61. package/dist/npm/recurrence/RecurrenceRepeatOnWeekEditor.js +4 -0
  62. package/dist/npm/tasks/SchedulerEditTask.d.ts +9 -0
  63. package/dist/npm/tasks/SchedulerEditTask.js +120 -35
  64. package/dist/npm/tasks/SchedulerTask.js +3 -2
  65. package/dist/npm/tasks/SchedulerViewTask.js +15 -3
  66. package/dist/npm/views/agenda/AgendaView.js +21 -9
  67. package/dist/npm/views/agenda/AgendaViewBody.d.ts +1 -0
  68. package/dist/npm/views/agenda/AgendaViewBody.js +6 -1
  69. package/dist/npm/views/common/SchedulerDrag.js +62 -11
  70. package/dist/npm/views/day/DayView.js +4 -0
  71. package/dist/npm/views/month/MonthView.js +9 -13
  72. package/dist/npm/views/time/MultiDayTimelineView.js +27 -8
  73. package/dist/npm/views/time/TimelineView.js +4 -0
  74. package/dist/npm/views/week/WeekView.js +12 -2
  75. package/dist/npm/views/week/WorkWeekView.js +12 -2
  76. package/package.json +12 -12
@@ -44,13 +44,16 @@ var SchedulerDragVue2 = {
44
44
  inject: {
45
45
  ks: {
46
46
  default: null
47
+ },
48
+ bv: {
49
+ default: null
47
50
  }
48
51
  },
49
52
  computed: {
50
53
  occurrences: function occurrences() {
51
54
  return services_1.toOccurrences([this.$props.dataItem], {
52
- dateRange: this.dateRange,
53
- fields: this.fields,
55
+ dateRange: this.ks.dateRange,
56
+ fields: this.ks.fields,
54
57
  timezone: this.ks.timezone
55
58
  });
56
59
  },
@@ -58,8 +61,8 @@ var SchedulerDragVue2 = {
58
61
  return services_1.toItems(this.occurrences, {
59
62
  timezone: this.ks.timezone
60
63
  }, {
61
- groups: this.groups,
62
- ranges: this.ranges
64
+ groups: this.ks.groups,
65
+ ranges: this.bv.ranges
63
66
  });
64
67
  }
65
68
  },
@@ -79,22 +82,70 @@ var SchedulerDragVue2 = {
79
82
  // const dateRange = useSchedulerDateRangeContext();
80
83
  // const [viewSlots] = useSchedulerViewSlotsContext();
81
84
 
82
- var slots = (this.viewSlots || []).map(function (s) {
83
- return s.current.props;
85
+ var slots = (this.bv.slots || []).map(function (s) {
86
+ return s;
84
87
  });
85
88
  utils_1.mapItemsToSlots(this.items, slots);
86
89
  return (// fragment
87
- h("div", [this.items.map(function (_item, idx) {
90
+ h("div", [this.items.map(function (item, idx) {
88
91
  return h(SchedulerViewItem_1.SchedulerViewItem, {
89
- key: idx // {...item}
90
- ,
91
- item: this.$props.item,
92
+ key: idx,
93
+ uid: item.uid,
92
94
  attrs: this.v3 ? undefined : {
93
- item: this.$props.item,
95
+ uid: item.uid,
96
+ start: item.start,
97
+ end: item.end,
98
+ originalStart: item.originalStart,
99
+ startTimezone: item.startTimezone,
100
+ endTimezone: item.endTimezone,
101
+ isAllDay: item.isAllDay,
102
+ title: item.title,
103
+ description: item.description,
104
+ occurrenceId: item.occurrenceId,
105
+ recurrenceExceptions: item.recurrenceExceptions,
106
+ recurrenceRule: item.recurrenceRule,
107
+ recurrenceId: item.recurrenceId,
108
+ dataItem: item.dataItem,
109
+ itemRef: item.itemRef,
110
+ head: item.head,
111
+ tail: item.tail,
112
+ order: item.order,
113
+ zonedStart: item.zonedStart,
114
+ zonedEnd: item.zonedEnd,
115
+ slots: item.slots,
116
+ group: item.group,
117
+ range: item.range,
118
+ isException: item.isException,
119
+ isRecurring: item.isRecurring // item={this.$props.item}
120
+ ,
94
121
  dragHint: true,
95
122
  vertical: this.$props.vertical,
96
123
  ignoreIsAllDay: this.$props.ignoreIsAllDay
97
124
  },
125
+ start: item.start,
126
+ end: item.end,
127
+ originalStart: item.originalStart,
128
+ startTimezone: item.startTimezone,
129
+ endTimezone: item.endTimezone,
130
+ isAllDay: item.isAllDay,
131
+ title: item.title,
132
+ description: item.description,
133
+ occurrenceId: item.occurrenceId,
134
+ recurrenceExceptions: item.recurrenceExceptions,
135
+ recurrenceRule: item.recurrenceRule,
136
+ recurrenceId: item.recurrenceId,
137
+ dataItem: item.dataItem,
138
+ itemRef: item.itemRef,
139
+ head: item.head,
140
+ tail: item.tail,
141
+ order: item.order,
142
+ zonedStart: item.zonedStart,
143
+ zonedEnd: item.zonedEnd,
144
+ slots: item.slots,
145
+ group: item.group,
146
+ range: item.range,
147
+ isException: item.isException,
148
+ isRecurring: item.isRecurring,
98
149
  dragHint: true,
99
150
  vertical: this.$props.vertical,
100
151
  ignoreIsAllDay: this.$props.ignoreIsAllDay
@@ -22,6 +22,10 @@ var kendo_date_math_1 = require("@progress/kendo-date-math"); // tslint:enable:m
22
22
 
23
23
  var DayViewVue2 = {
24
24
  name: 'KendoDayView',
25
+ // @ts-ignore
26
+ emits: {
27
+ dataaction: null
28
+ },
25
29
  props: {
26
30
  name: {
27
31
  type: String,
@@ -86,7 +86,11 @@ var MonthViewVue2 = {
86
86
  default: '{0:Y}'
87
87
  },
88
88
  slotRender: [String, Function, Object],
89
- item: [String, Function, Object]
89
+ item: [String, Function, Object],
90
+ editable: {
91
+ type: [Boolean, Object],
92
+ default: false
93
+ }
90
94
  },
91
95
  inject: {
92
96
  ks: {
@@ -131,8 +135,8 @@ var MonthViewVue2 = {
131
135
  groups: this.ks.groups,
132
136
  ranges: this.ranges
133
137
  });
134
- utils_1.mapItemsToSlots(items, this.monthSlots, false);
135
- utils_1.mapSlotsToItems(items, this.monthSlots, false);
138
+ utils_1.mapItemsToSlots(items, this.monthSlots, true);
139
+ utils_1.mapSlotsToItems(items, this.monthSlots, true);
136
140
  return items;
137
141
  }
138
142
  },
@@ -158,16 +162,8 @@ var MonthViewVue2 = {
158
162
  var EditItem = this.$props.editItem || SchedulerEditItem_1.SchedulerEditItem;
159
163
  var EditSlot = this.$props.editSlot || SchedulerEditSlot_1.SchedulerEditSlot;
160
164
  var items = this.items;
161
- var monthSlots = this.monthSlots; // const [dataItems] = useSchedulerDataContext();
162
- // const [, setDate] = useSchedulerDateContext();
163
- // const [, setView] = useSchedulerActiveViewContext();
164
- // const views = useSchedulerViewsContext();
165
- // const groups = useSchedulerGroupsContext();
166
- // const orientation = useSchedulerOrientationContext();
167
- // const dateRange = useSchedulerDateRangeContext();
168
-
169
- this.intl = kendo_vue_intl_1.provideIntlService(this); // const fields = useSchedulerFieldsContext();
170
-
165
+ var monthSlots = this.monthSlots;
166
+ this.intl = kendo_vue_intl_1.provideIntlService(this);
171
167
  var itemsPerSlot = this.$props.itemsPerSlot;
172
168
  var body = this.ks.orientation === 'horizontal' ? this.ranges.map(function (_, rangeIndex) {
173
169
  var _this = this;
@@ -1,5 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ var __spreadArrays = undefined && undefined.__spreadArrays || function () {
4
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) {
5
+ s += arguments[i].length;
6
+ }
7
+
8
+ for (var r = Array(s), k = 0, i = 0; i < il; i++) {
9
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) {
10
+ r[k] = a[j];
11
+ }
12
+ }
13
+
14
+ return r;
15
+ };
16
+
3
17
  Object.defineProperty(exports, "__esModule", {
4
18
  value: true
5
19
  });
@@ -133,7 +147,11 @@ var MultiDayTimelineViewVue2 = {
133
147
  default: 100
134
148
  },
135
149
  slotRender: [String, Function, Object],
136
- item: [String, Function, Object]
150
+ item: [String, Function, Object],
151
+ editable: {
152
+ type: [Boolean, Object],
153
+ default: false
154
+ }
137
155
  },
138
156
  inject: {
139
157
  ks: {
@@ -192,9 +210,9 @@ var MultiDayTimelineViewVue2 = {
192
210
  ranges: this.ranges
193
211
  }).filter(function (item) {
194
212
  return _this.viewStart.getTime() === _this.viewEnd.getTime() || utils_1.isInTimeRange(item.zonedStart, _this.viewStart, _this.viewEnd) || utils_1.isInTimeRange(item.zonedEnd, _this.viewStart, _this.viewEnd) || utils_1.isInTimeRange(new Date(item.zonedEnd.getTime() - (item.zonedEnd.getTime() - item.zonedStart.getTime()) / 2), _this.viewStart, _this.viewEnd);
195
- }); // mapItemsToSlots(items, this.timelineSlots, false);
196
- // mapSlotsToItems(items, this.timelineSlots, false);
197
-
213
+ });
214
+ utils_1.mapItemsToSlots(items, this.timelineSlots, true);
215
+ utils_1.mapSlotsToItems(items, this.timelineSlots, true);
198
216
  return items;
199
217
  }
200
218
  },
@@ -248,10 +266,11 @@ var MultiDayTimelineViewVue2 = {
248
266
  var slotDuration = this.$props.slotDuration;
249
267
  var workDayStart = intl.parseDate(this.$props.workDayStart);
250
268
  var workDayEnd = intl.parseDate(this.$props.workDayEnd);
251
- var items = this.items;
252
- var timelineSlots = this.timelineSlots;
253
- utils_1.mapItemsToSlots(items, timelineSlots, true);
254
- utils_1.mapSlotsToItems(items, timelineSlots, true);
269
+
270
+ var items = __spreadArrays(this.items);
271
+
272
+ var timelineSlots = __spreadArrays(this.timelineSlots);
273
+
255
274
  var width = (this.ks.orientation === 'horizontal' ? timelineSlots.length : timelineSlots.length / this.ks.groups.length) * (this.$props.columnWidth + constants_1.BORDER_WIDTH);
256
275
  var head = [h("div", {
257
276
  "class": "k-scheduler-row"
@@ -18,6 +18,10 @@ var kendo_date_math_1 = require("@progress/kendo-date-math"); // tslint:enable:m
18
18
 
19
19
  var TimelineViewVue2 = {
20
20
  name: 'KendoTimelineView',
21
+ // @ts-ignore
22
+ emits: {
23
+ dataaction: null
24
+ },
21
25
  props: {
22
26
  name: {
23
27
  type: String,
@@ -26,6 +26,10 @@ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl"); // tslint:enable:max
26
26
 
27
27
  var WeekViewVue2 = {
28
28
  name: 'KendoWeekView',
29
+ // @ts-ignore
30
+ emits: {
31
+ dataaction: null
32
+ },
29
33
  props: {
30
34
  name: {
31
35
  type: String,
@@ -96,7 +100,11 @@ var WeekViewVue2 = {
96
100
  },
97
101
  timeHeaderCell: String,
98
102
  slotRender: [String, Function, Object],
99
- item: [String, Function, Object]
103
+ item: [String, Function, Object],
104
+ editable: {
105
+ type: [Boolean, Object],
106
+ default: false
107
+ }
100
108
  },
101
109
  inject: {
102
110
  kendoLocalizationService: {
@@ -138,7 +146,8 @@ var WeekViewVue2 = {
138
146
  defaultShowWorkHours: this.$props.defaultShowWorkHours,
139
147
  timeHeaderCell: this.$props.timeHeaderCell,
140
148
  slotRender: this.$props.slotRender,
141
- item: this.$props.item
149
+ item: this.$props.item,
150
+ editable: this.$props.editable
142
151
  },
143
152
  dateRange: this.$props.dateRange,
144
153
  numberOfDays: this.$props.numberOfDays,
@@ -160,6 +169,7 @@ var WeekViewVue2 = {
160
169
  timeHeaderCell: this.$props.timeHeaderCell,
161
170
  slotRender: this.$props.slotRender,
162
171
  item: this.$props.item,
172
+ editable: this.$props.editable,
163
173
  onDataaction: this.handleDataAction,
164
174
  on: this.v3 ? undefined : {
165
175
  "dataaction": this.handleDataAction
@@ -40,6 +40,10 @@ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl"); // tslint:enable:max
40
40
 
41
41
  var WorkWeekViewVue2 = {
42
42
  name: 'KendoWorkWeekView',
43
+ // @ts-ignore
44
+ emits: {
45
+ dataaction: null
46
+ },
43
47
  props: {
44
48
  name: {
45
49
  type: String,
@@ -85,7 +89,11 @@ var WorkWeekViewVue2 = {
85
89
  default: true
86
90
  },
87
91
  slotRender: [String, Function, Object],
88
- item: [String, Function, Object]
92
+ item: [String, Function, Object],
93
+ editable: {
94
+ type: [Boolean, Object],
95
+ default: false
96
+ }
89
97
  },
90
98
  inject: {
91
99
  kendoLocalizationService: {
@@ -123,7 +131,8 @@ var WorkWeekViewVue2 = {
123
131
  title: title,
124
132
  step: constants_1.DAYS_IN_WEEK_COUNT,
125
133
  slotRender: this.$props.slotRender,
126
- item: this.$props.item
134
+ item: this.$props.item,
135
+ editable: this.$props.editable
127
136
  },
128
137
  dateRange: this.$props.dateRange,
129
138
  numberOfDays: numberOfDays,
@@ -136,6 +145,7 @@ var WorkWeekViewVue2 = {
136
145
  step: constants_1.DAYS_IN_WEEK_COUNT,
137
146
  slotRender: this.$props.slotRender,
138
147
  item: this.$props.item,
148
+ editable: this.$props.editable,
139
149
  onDataaction: this.handleDataAction,
140
150
  on: this.v3 ? undefined : {
141
151
  "dataaction": this.handleDataAction
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@progress/kendo-vue-scheduler",
3
3
  "description": "Kendo UI for Vue Scheduler package",
4
- "version": "3.1.4",
4
+ "version": "3.2.0-dev.202204120815",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/telerik/kendo-vue.git"
@@ -42,7 +42,7 @@
42
42
  "dependencies": {
43
43
  "@progress/kendo-data-query": "^1.5.1",
44
44
  "@progress/kendo-recurrence": "^1.0.1",
45
- "@progress/kendo-vue-common": "3.1.4",
45
+ "@progress/kendo-vue-common": "3.2.0-dev.202204120815",
46
46
  "@telerik/kendo-draggable": "^2.2.1"
47
47
  },
48
48
  "@progress": {
@@ -58,16 +58,16 @@
58
58
  "@progress/kendo-date-math": "^1.4.1",
59
59
  "@progress/kendo-drawing": "^1.8.0",
60
60
  "@progress/kendo-licensing": "^1.0.1",
61
- "@progress/kendo-vue-buttons": "3.1.4",
62
- "@progress/kendo-vue-dateinputs": "3.1.4",
63
- "@progress/kendo-vue-dialogs": "3.1.4",
64
- "@progress/kendo-vue-dropdowns": "3.1.4",
65
- "@progress/kendo-vue-form": "3.1.4",
66
- "@progress/kendo-vue-inputs": "3.1.4",
67
- "@progress/kendo-vue-intl": "3.1.4",
68
- "@progress/kendo-vue-labels": "3.1.4",
69
- "@progress/kendo-vue-popup": "3.1.4",
70
- "@progress/kendo-vue-progressbars": "3.1.4",
61
+ "@progress/kendo-vue-buttons": "3.2.0-dev.202204120815",
62
+ "@progress/kendo-vue-dateinputs": "3.2.0-dev.202204120815",
63
+ "@progress/kendo-vue-dialogs": "3.2.0-dev.202204120815",
64
+ "@progress/kendo-vue-dropdowns": "3.2.0-dev.202204120815",
65
+ "@progress/kendo-vue-form": "3.2.0-dev.202204120815",
66
+ "@progress/kendo-vue-inputs": "3.2.0-dev.202204120815",
67
+ "@progress/kendo-vue-intl": "3.2.0-dev.202204120815",
68
+ "@progress/kendo-vue-labels": "3.2.0-dev.202204120815",
69
+ "@progress/kendo-vue-popup": "3.2.0-dev.202204120815",
70
+ "@progress/kendo-vue-progressbars": "3.2.0-dev.202204120815",
71
71
  "cldr-core": "36.0.0",
72
72
  "cldr-dates-full": "36.0.0",
73
73
  "cldr-numbers-full": "36.0.0"