@progress/kendo-vue-scheduler 3.2.5 → 3.2.7-dev.202205021145

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/BaseView.js +14 -12
  3. package/dist/es/components/SchedulerForm.js +1 -1
  4. package/dist/es/components/header/view-selector/ViewSelectorList.js +9 -7
  5. package/dist/es/editors/SchedulerFormEditor.js +25 -2
  6. package/dist/es/hooks/use-items-focus.js +8 -8
  7. package/dist/es/hooks/use-items-selection.js +11 -11
  8. package/dist/es/hooks/use-slots-focus.js +20 -20
  9. package/dist/es/hooks/use-slots-selection.js +4 -4
  10. package/dist/es/hooks/useSlotExpand.js +1 -1
  11. package/dist/es/items/SchedulerEditItem.d.ts +1 -1
  12. package/dist/es/items/SchedulerEditItem.js +145 -119
  13. package/dist/es/items/SchedulerItem.d.ts +1 -0
  14. package/dist/es/items/SchedulerItem.js +408 -167
  15. package/dist/es/items/SchedulerViewItem.d.ts +1 -0
  16. package/dist/es/items/SchedulerViewItem.js +17 -17
  17. package/dist/es/items/hooks/use-drag-item.js +5 -3
  18. package/dist/es/items/hooks/use-resize-item.d.ts +2 -4
  19. package/dist/es/items/hooks/use-resize-item.js +278 -176
  20. package/dist/es/models/SchedulerView.d.ts +2 -0
  21. package/dist/es/package-metadata.js +1 -1
  22. package/dist/es/slots/SchedulerEditSlot.js +36 -48
  23. package/dist/es/slots/SchedulerSlot.d.ts +2 -0
  24. package/dist/es/slots/SchedulerSlot.js +46 -3
  25. package/dist/es/slots/SchedulerViewSlot.js +33 -5
  26. package/dist/es/tasks/SchedulerEditTask.js +14 -64
  27. package/dist/es/tasks/SchedulerTask.d.ts +12 -2
  28. package/dist/es/tasks/SchedulerTask.js +54 -3
  29. package/dist/es/tasks/SchedulerViewTask.js +21 -3
  30. package/dist/es/utils/index.d.ts +4 -0
  31. package/dist/es/utils/index.js +23 -14
  32. package/dist/es/views/common/SchedulerDrag.js +1 -0
  33. package/dist/es/views/common/SchedulerResize.js +69 -21
  34. package/dist/es/views/common/VerticalResourceIterator.js +2 -2
  35. package/dist/es/views/day/DayView.js +2 -1
  36. package/dist/es/views/day/MultiDayView.d.ts +4 -0
  37. package/dist/es/views/day/MultiDayView.js +86 -15
  38. package/dist/es/views/week/WeekView.js +2 -1
  39. package/dist/npm/components/BaseView.js +14 -12
  40. package/dist/npm/components/SchedulerForm.js +1 -1
  41. package/dist/npm/components/header/view-selector/ViewSelectorList.js +9 -7
  42. package/dist/npm/editors/SchedulerFormEditor.js +25 -2
  43. package/dist/npm/hooks/use-items-focus.js +8 -8
  44. package/dist/npm/hooks/use-items-selection.js +11 -11
  45. package/dist/npm/hooks/use-slots-focus.js +20 -20
  46. package/dist/npm/hooks/use-slots-selection.js +4 -4
  47. package/dist/npm/hooks/useSlotExpand.js +1 -1
  48. package/dist/npm/items/SchedulerEditItem.d.ts +1 -1
  49. package/dist/npm/items/SchedulerEditItem.js +144 -118
  50. package/dist/npm/items/SchedulerItem.d.ts +1 -0
  51. package/dist/npm/items/SchedulerItem.js +407 -166
  52. package/dist/npm/items/SchedulerViewItem.d.ts +1 -0
  53. package/dist/npm/items/SchedulerViewItem.js +17 -17
  54. package/dist/npm/items/hooks/use-drag-item.js +5 -3
  55. package/dist/npm/items/hooks/use-resize-item.d.ts +2 -4
  56. package/dist/npm/items/hooks/use-resize-item.js +281 -176
  57. package/dist/npm/models/SchedulerView.d.ts +2 -0
  58. package/dist/npm/package-metadata.js +1 -1
  59. package/dist/npm/slots/SchedulerEditSlot.js +35 -48
  60. package/dist/npm/slots/SchedulerSlot.d.ts +2 -0
  61. package/dist/npm/slots/SchedulerSlot.js +47 -3
  62. package/dist/npm/slots/SchedulerViewSlot.js +33 -5
  63. package/dist/npm/tasks/SchedulerEditTask.js +14 -66
  64. package/dist/npm/tasks/SchedulerTask.d.ts +12 -2
  65. package/dist/npm/tasks/SchedulerTask.js +56 -3
  66. package/dist/npm/tasks/SchedulerViewTask.js +21 -3
  67. package/dist/npm/utils/index.d.ts +4 -0
  68. package/dist/npm/utils/index.js +24 -15
  69. package/dist/npm/views/common/SchedulerDrag.js +1 -0
  70. package/dist/npm/views/common/SchedulerResize.js +69 -21
  71. package/dist/npm/views/common/VerticalResourceIterator.js +2 -2
  72. package/dist/npm/views/day/DayView.js +2 -1
  73. package/dist/npm/views/day/MultiDayView.d.ts +4 -0
  74. package/dist/npm/views/day/MultiDayView.js +87 -15
  75. package/dist/npm/views/week/WeekView.js +2 -1
  76. package/package.json +12 -12
@@ -17,8 +17,6 @@ var Scheduler_1 = require("../Scheduler");
17
17
 
18
18
  var utils_1 = require("../utils");
19
19
 
20
- var SchedulerForm_1 = require("../components/SchedulerForm");
21
-
22
20
  var SchedulerViewSlot_1 = require("./SchedulerViewSlot");
23
21
 
24
22
  var hooks_1 = require("../hooks");
@@ -30,6 +28,10 @@ var SchedulerEditSlotVue2 = {
30
28
  name: 'KendoSchedulerEditSlot',
31
29
  props: {
32
30
  viewSlot: Object,
31
+ tabIndex: {
32
+ type: Number,
33
+ default: undefined
34
+ },
33
35
  form: Object,
34
36
  formItem: Object,
35
37
  refTo: [Function, Object],
@@ -63,12 +65,25 @@ var SchedulerEditSlotVue2 = {
63
65
  this.slot = null;
64
66
  this.editableSlot = null;
65
67
  },
68
+ provide: function provide() {
69
+ return {
70
+ ksEditFormSubmit: this.handleEditFormSubmit,
71
+ ksEditFormCancel: this.handleEditFormCancel,
72
+ ksEditFormClose: this.handleEditFormClose
73
+ };
74
+ },
66
75
  inject: {
67
76
  bv: {
68
77
  default: null
69
78
  },
70
79
  ks: {
71
80
  default: null
81
+ },
82
+ dispatchFocusedSlots: {
83
+ default: null
84
+ },
85
+ dispatchSelectedSlots: {
86
+ default: null
72
87
  }
73
88
  },
74
89
  data: function data() {
@@ -78,11 +93,14 @@ var SchedulerEditSlotVue2 = {
78
93
  },
79
94
  computed: {
80
95
  currentTabIndex: function currentTabIndex() {
81
- var isFirst = this.bv.slots.length && this.bv.slots[0].current === this.slot;
96
+ var isFirst = this.bv.slots.length && utils_1.compareSlots(this.bv.slots[0], this);
82
97
  return this.$props.tabIndex !== undefined ? this.$props.tabIndex === null ? undefined : this.$props.tabIndex : this.bv.selectedSlots.length === 0 ? isFirst && this.items.length === 0 ? 0 : undefined : undefined;
83
98
  },
84
99
  computedEditable: function computedEditable() {
85
100
  return hooks_1.useEditable(this.$props.editable);
101
+ },
102
+ compFormItem: function compFormItem() {
103
+ return this.formItem !== undefined ? this.formItem : this.currentFormItem;
86
104
  }
87
105
  },
88
106
  // @ts-ignore
@@ -94,8 +112,6 @@ var SchedulerEditSlotVue2 = {
94
112
  },
95
113
  // @ts-ignore
96
114
  render: function render(createElement) {
97
- var _this2 = this;
98
-
99
115
  var _this = this;
100
116
 
101
117
  var h = gh || createElement;
@@ -119,14 +135,9 @@ var SchedulerEditSlotVue2 = {
119
135
  zonedStart = _a.zonedStart,
120
136
  zonedEnd = _a.zonedEnd,
121
137
  navDay = _a.navDay,
122
- itemsPerSlot = _a.itemsPerSlot; // const fields = useSchedulerFieldsContext();
123
- // const [slots] = useSchedulerViewSlotsContext();
124
- // const [items] = useSchedulerViewItemsContext();
125
- // const [selectedSlots, dispatchSlotsSelection] = useSchedulerViewSelectedSlotsContext();
126
- // const [,dispatchFocusedSlots] = useSchedulerViewFocusedSlotsContext();
127
-
138
+ itemsPerSlot = _a.itemsPerSlot;
128
139
  var selected = this.bv.selectedSlots.some(function (s) {
129
- return Boolean(s.current && s.current.props.start.getTime() === _this.$props.start.getTime() && s.current.props.end.getTime() === _this.$props.end.getTime() && s.current.props.index === _this.$props.index && s.current.props.group.index === _this.$props.group.index && s.current.props.range.index === _this.$props.range.index && s.current.props.isAllDay === _this.$props.isAllDay);
140
+ return utils_1.compareSlots(s, _this);
130
141
  });
131
142
  return (// @ts-ignore function children
132
143
  h(SchedulerViewSlot_1.SchedulerViewSlot, {
@@ -151,7 +162,8 @@ var SchedulerEditSlotVue2 = {
151
162
  selected: selected,
152
163
  navDay: navDay,
153
164
  itemsPerSlot: itemsPerSlot,
154
- tabIndex: this.currentTabIndex // Focus
165
+ tabIndex: this.currentTabIndex,
166
+ formItem: this.compFormItem // Focus
155
167
 
156
168
  },
157
169
  isAllDay: this.isAllDay,
@@ -173,6 +185,7 @@ var SchedulerEditSlotVue2 = {
173
185
  navDay: navDay,
174
186
  itemsPerSlot: itemsPerSlot,
175
187
  tabIndex: this.currentTabIndex,
188
+ formItem: this.compFormItem,
176
189
  onFocus: this.handleFocus // Mouse
177
190
  ,
178
191
  on: this.v3 ? undefined : {
@@ -186,34 +199,8 @@ var SchedulerEditSlotVue2 = {
186
199
  onKeydown: this.handleKeyDown,
187
200
  onShowmoreitems: this.handleShowMoreItemsClick
188
201
  }, this.v3 ? function () {
189
- return [defaultSlot, _this2.currentFormItem && h(SchedulerForm_1.SchedulerForm, {
190
- dataItem: _this2.currentFormItem,
191
- attrs: _this2.v3 ? undefined : {
192
- dataItem: _this2.currentFormItem
193
- },
194
- onSubmit: _this2.handleEditFormSubmit,
195
- on: _this2.v3 ? undefined : {
196
- "submit": _this2.handleEditFormSubmit,
197
- "close": _this2.handleEditFormClose,
198
- "cancel": _this2.handleEditFormCancel
199
- },
200
- onClose: _this2.handleEditFormClose,
201
- onCancel: _this2.handleEditFormCancel
202
- })];
203
- } : [defaultSlot, _this2.currentFormItem && h(SchedulerForm_1.SchedulerForm, {
204
- dataItem: _this2.currentFormItem,
205
- attrs: _this2.v3 ? undefined : {
206
- dataItem: _this2.currentFormItem
207
- },
208
- onSubmit: _this2.handleEditFormSubmit,
209
- on: _this2.v3 ? undefined : {
210
- "submit": _this2.handleEditFormSubmit,
211
- "close": _this2.handleEditFormClose,
212
- "cancel": _this2.handleEditFormCancel
213
- },
214
- onClose: _this2.handleEditFormClose,
215
- onCancel: _this2.handleEditFormCancel
216
- })])
202
+ return [defaultSlot];
203
+ } : [defaultSlot])
217
204
  );
218
205
  },
219
206
  methods: {
@@ -243,9 +230,9 @@ var SchedulerEditSlotVue2 = {
243
230
  },
244
231
  handleFocus: function handleFocus(event) {
245
232
  if (this.computedEditable.select) {
246
- this.dispatchSlotsSelection({
233
+ this.dispatchSelectedSlots({
247
234
  type: use_slots_selection_1.SLOTS_SELECT_ACTION.select,
248
- slot: this.slotRender
235
+ slot: this
249
236
  }, event.event);
250
237
  }
251
238
 
@@ -271,7 +258,7 @@ var SchedulerEditSlotVue2 = {
271
258
  event.event.preventDefault();
272
259
  this.dispatchFocusedSlots({
273
260
  type: hooks_1.SLOTS_FOCUS_ACTION.left,
274
- slot: this.slot
261
+ slot: this
275
262
  }, event.event);
276
263
  break;
277
264
 
@@ -283,7 +270,7 @@ var SchedulerEditSlotVue2 = {
283
270
  event.event.preventDefault();
284
271
  this.dispatchFocusedSlots({
285
272
  type: hooks_1.SLOTS_FOCUS_ACTION.right,
286
- slot: this.slot
273
+ slot: this
287
274
  }, event.event);
288
275
  break;
289
276
 
@@ -295,7 +282,7 @@ var SchedulerEditSlotVue2 = {
295
282
  event.event.preventDefault();
296
283
  this.dispatchFocusedSlots({
297
284
  type: hooks_1.SLOTS_FOCUS_ACTION.up,
298
- slot: this.slot
285
+ slot: this
299
286
  }, event.event);
300
287
  break;
301
288
 
@@ -307,7 +294,7 @@ var SchedulerEditSlotVue2 = {
307
294
  event.event.preventDefault();
308
295
  this.dispatchFocusedSlots({
309
296
  type: hooks_1.SLOTS_FOCUS_ACTION.down,
310
- slot: this.slot
297
+ slot: this
311
298
  }, event.event);
312
299
  break;
313
300
 
@@ -321,7 +308,7 @@ var SchedulerEditSlotVue2 = {
321
308
  break;
322
309
 
323
310
  case kendo_vue_common_1.Keys.tab:
324
- nextItem = utils_1.findFirstItem(event.target);
311
+ nextItem = utils_1.findNextItem(utils_1.findFirstItem(event.target), this.bv.items, false);
325
312
  break;
326
313
 
327
314
  default:
@@ -14,6 +14,8 @@ export interface SchedulerSlotProps extends Slot {
14
14
  navDay?: boolean;
15
15
  /** @hidden */
16
16
  itemsPerSlot?: number;
17
+ /** @hidden */
18
+ formItem?: object;
17
19
  /**
18
20
  * Specifies the `id` of the wrapping element of the SchedulerSlot.
19
21
  */
@@ -35,12 +35,29 @@ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
35
35
 
36
36
  var ShowMoreItemsButton_1 = require("../components/ShowMoreItemsButton");
37
37
 
38
+ var SchedulerForm_1 = require("../components/SchedulerForm");
39
+
38
40
  var DAY_FORMAT = {
39
41
  skeleton: 'dd'
40
42
  }; // tslint:enable:max-line-length
41
43
 
42
44
  var SchedulerSlotVue2 = {
43
45
  name: 'KendoSchedulerSlot',
46
+ // @ts-ignore
47
+ emits: {
48
+ focus: null,
49
+ blur: null,
50
+ click: null,
51
+ showmoreitems: null,
52
+ mouseover: null,
53
+ mouseout: null,
54
+ mouseenter: null,
55
+ mouseleave: null,
56
+ doubleclick: null,
57
+ keydown: null,
58
+ keypress: null,
59
+ keyup: null
60
+ },
44
61
  props: {
45
62
  refTo: [Function, Object],
46
63
  items: Array,
@@ -56,6 +73,10 @@ var SchedulerSlotVue2 = {
56
73
  default: true
57
74
  },
58
75
  selected: Boolean,
76
+ tabIndex: {
77
+ type: Number,
78
+ default: undefined
79
+ },
59
80
  col: Number,
60
81
  index: Number,
61
82
  start: Date,
@@ -65,7 +86,8 @@ var SchedulerSlotVue2 = {
65
86
  isAllDay: Boolean,
66
87
  navDay: Boolean,
67
88
  editable: [Object, Boolean],
68
- itemsPerSlot: Number
89
+ itemsPerSlot: Number,
90
+ formItem: Object
69
91
  },
70
92
  computed: {
71
93
  currentTabIndex: function currentTabIndex() {
@@ -94,6 +116,15 @@ var SchedulerSlotVue2 = {
94
116
  },
95
117
  slotDoubleClick: {
96
118
  default: null
119
+ },
120
+ ksEditFormSubmit: {
121
+ default: null
122
+ },
123
+ ksEditFormCancel: {
124
+ default: null
125
+ },
126
+ ksEditFormClose: {
127
+ default: null
97
128
  }
98
129
  },
99
130
  created: function created() {
@@ -191,7 +222,20 @@ var SchedulerSlotVue2 = {
191
222
  on: this.v3 ? undefined : {
192
223
  "click": this.handleShowMoreItemsClick
193
224
  }
194
- }), defaultSlot]);
225
+ }), defaultSlot, this.formItem && h(SchedulerForm_1.SchedulerForm, {
226
+ dataItem: this.formItem,
227
+ attrs: this.v3 ? undefined : {
228
+ dataItem: this.formItem
229
+ },
230
+ onSubmit: this.ksEditFormSubmit,
231
+ on: this.v3 ? undefined : {
232
+ "submit": this.ksEditFormSubmit,
233
+ "close": this.ksEditFormClose,
234
+ "cancel": this.ksEditFormCancel
235
+ },
236
+ onClose: this.ksEditFormClose,
237
+ onCancel: this.ksEditFormCancel
238
+ })]);
195
239
  },
196
240
  methods: {
197
241
  handleShowMoreItemsClick: function handleShowMoreItemsClick(event) {
@@ -283,7 +327,7 @@ var SchedulerSlotVue2 = {
283
327
  });
284
328
  },
285
329
  handleKeyPress: function handleKeyPress(event) {
286
- this.$emit('keydown', {
330
+ this.$emit('keypress', {
287
331
  event: event,
288
332
  target: {
289
333
  props: __assign({}, this.$props),
@@ -20,6 +20,13 @@ var kendo_vue_common_1 = require("@progress/kendo-vue-common"); // tslint:enable
20
20
 
21
21
  var SchedulerViewSlotVue2 = {
22
22
  name: 'KendoSchedulerViewSlot',
23
+ // @ts-ignore
24
+ emits: {
25
+ focus: null,
26
+ showmoreitems: null,
27
+ doubleclick: null,
28
+ keydown: null
29
+ },
23
30
  props: {
24
31
  refTo: [Function, Object],
25
32
  items: Array,
@@ -46,7 +53,12 @@ var SchedulerViewSlotVue2 = {
46
53
  isAllDay: Boolean,
47
54
  navDay: Boolean,
48
55
  editable: [Object, Boolean],
49
- itemsPerSlot: Number
56
+ itemsPerSlot: Number,
57
+ formItem: Object,
58
+ tabIndex: {
59
+ type: Number,
60
+ default: undefined
61
+ }
50
62
  },
51
63
  created: function created() {
52
64
  this.viewSlot = null;
@@ -97,8 +109,9 @@ var SchedulerViewSlotVue2 = {
97
109
  var slotRender;
98
110
  var slotRenderDefaultRendering = // @ts-ignore function children
99
111
  h(SchedulerSlot_1.SchedulerSlot, {
100
- isAllDay: this.isAllDay,
112
+ tabIndex: this.tabIndex,
101
113
  attrs: this.v3 ? undefined : {
114
+ tabIndex: this.tabIndex,
102
115
  isAllDay: this.isAllDay,
103
116
  items: items,
104
117
  row: row,
@@ -114,8 +127,11 @@ var SchedulerViewSlotVue2 = {
114
127
  zonedEnd: zonedEnd,
115
128
  navDay: navDay,
116
129
  itemsPerSlot: itemsPerSlot,
117
- editable: editable
130
+ editable: editable,
131
+ formItem: this.formItem,
132
+ selected: this.selected
118
133
  },
134
+ isAllDay: this.isAllDay,
119
135
  items: items,
120
136
  row: row,
121
137
  group: group,
@@ -131,12 +147,18 @@ var SchedulerViewSlotVue2 = {
131
147
  navDay: navDay,
132
148
  itemsPerSlot: itemsPerSlot,
133
149
  editable: editable,
150
+ formItem: this.formItem,
134
151
  onShowmoreitems: this.handleShowMoreItemsClick,
135
152
  on: this.v3 ? undefined : {
136
153
  "showmoreitems": this.handleShowMoreItemsClick,
137
- "doubleclick": this.handleDoubleClick
154
+ "doubleclick": this.handleDoubleClick,
155
+ "keydown": this.handleKeyDown,
156
+ "focus": this.handleFocus
138
157
  },
139
- onDoubleclick: this.handleDoubleClick
158
+ onDoubleclick: this.handleDoubleClick,
159
+ onKeydown: this.handleKeyDown,
160
+ onFocus: this.handleFocus,
161
+ selected: this.selected
140
162
  }, this.v3 ? function () {
141
163
  return [defaultSlot];
142
164
  } : [defaultSlot]);
@@ -157,6 +179,12 @@ var SchedulerViewSlotVue2 = {
157
179
  },
158
180
  handleDoubleClick: function handleDoubleClick(args) {
159
181
  this.$emit('doubleclick', args);
182
+ },
183
+ handleKeyDown: function handleKeyDown(args) {
184
+ this.$emit('keydown', args);
185
+ },
186
+ handleFocus: function handleFocus(args) {
187
+ this.$emit('focus', args);
160
188
  }
161
189
  }
162
190
  };
@@ -32,10 +32,6 @@ var utils_1 = require("../utils");
32
32
 
33
33
  var Scheduler_1 = require("../Scheduler");
34
34
 
35
- var SchedulerRemoveDialog_1 = require("../components/SchedulerRemoveDialog");
36
-
37
- var SchedulerOccurrenceDialog_1 = require("../components/SchedulerOccurrenceDialog");
38
-
39
35
  var kendo_vue_common_1 = require("@progress/kendo-vue-common"); // tslint:enable:max-line-length
40
36
 
41
37
 
@@ -104,7 +100,11 @@ var SchedulerEditTaskVue2 = {
104
100
  et: this.et,
105
101
  removeTask: this.handleRemoveItemChange,
106
102
  removeDialog: this.handleRemoveDialogChange,
107
- occurrenceDialog: this.handleOccurrenceDialogChange
103
+ occurrenceDialog: this.handleOccurrenceDialogChange,
104
+ ksCancel: this.handleCancel,
105
+ ksSeriesClick: this.handleSeriesClick,
106
+ ksOccurrenceClick: this.handleOccurrenceClick,
107
+ ksRemoveConfirm: this.handleRemoveConfirm
108
108
  };
109
109
  },
110
110
  data: function data() {
@@ -144,8 +144,6 @@ var SchedulerEditTaskVue2 = {
144
144
  },
145
145
  // @ts-ignore
146
146
  render: function render(createElement) {
147
- var _this = this;
148
-
149
147
  var h = gh || createElement;
150
148
  var defaultSlot = kendo_vue_common_1.getDefaultSlots(this);
151
149
 
@@ -193,8 +191,11 @@ var SchedulerEditTaskVue2 = {
193
191
  recurrenceRule: this.$props.recurrenceRule,
194
192
  recurrenceId: this.$props.recurrenceId,
195
193
  dataItem: this.$props.dataItem,
194
+ removeItem: this.compRemoveItem,
196
195
  task: this.$props.task,
197
- editable: this.$props.editable
196
+ editable: this.$props.editable,
197
+ showOccurrenceDialog: this.compShowOccurrenceDialog,
198
+ showRemoveDialog: this.compShowRemoveDialog
198
199
  },
199
200
  tabIndex: this.$props.tabIndex,
200
201
  head: this.$props.head,
@@ -221,71 +222,18 @@ var SchedulerEditTaskVue2 = {
221
222
  recurrenceRule: this.$props.recurrenceRule,
222
223
  recurrenceId: this.$props.recurrenceId,
223
224
  dataItem: this.$props.dataItem,
225
+ removeItem: this.compRemoveItem,
224
226
  task: this.$props.task,
225
227
  editable: this.$props.editable,
228
+ showOccurrenceDialog: this.compShowOccurrenceDialog,
229
+ showRemoveDialog: this.compShowRemoveDialog,
226
230
  onRemoveclick: this.handleRemoveClick,
227
231
  on: this.v3 ? undefined : {
228
232
  "removeclick": this.handleRemoveClick
229
233
  }
230
234
  }, this.v3 ? function () {
231
- return [defaultSlot, _this.compShowOccurrenceDialog && h(SchedulerOccurrenceDialog_1.SchedulerOccurrenceDialog, {
232
- dataItem: _this.compRemoveItem,
233
- attrs: _this.v3 ? undefined : {
234
- dataItem: _this.compRemoveItem,
235
- isRemove: _this.compRemoveItem !== null
236
- },
237
- isRemove: _this.compRemoveItem !== null,
238
- onClose: _this.handleCancel,
239
- on: _this.v3 ? undefined : {
240
- "close": _this.handleCancel,
241
- "occurrenceclose": _this.handleOccurrenceClick,
242
- "seriesclose": _this.handleSeriesClick
243
- },
244
- onOccurrenceclose: _this.handleOccurrenceClick,
245
- onSeriesclose: _this.handleSeriesClick
246
- }), _this.compShowRemoveDialog && h(SchedulerRemoveDialog_1.SchedulerRemoveDialog, {
247
- dataItem: _this.compRemoveItem,
248
- attrs: _this.v3 ? undefined : {
249
- dataItem: _this.compRemoveItem
250
- },
251
- onClose: _this.handleCancel,
252
- on: _this.v3 ? undefined : {
253
- "close": _this.handleCancel,
254
- "cancel": _this.handleCancel,
255
- "confirm": _this.handleRemoveConfirm
256
- },
257
- onCancel: _this.handleCancel,
258
- onConfirm: _this.handleRemoveConfirm
259
- })];
260
- } : [defaultSlot, _this.compShowOccurrenceDialog && h(SchedulerOccurrenceDialog_1.SchedulerOccurrenceDialog, {
261
- dataItem: _this.compRemoveItem,
262
- attrs: _this.v3 ? undefined : {
263
- dataItem: _this.compRemoveItem,
264
- isRemove: _this.compRemoveItem !== null
265
- },
266
- isRemove: _this.compRemoveItem !== null,
267
- onClose: _this.handleCancel,
268
- on: _this.v3 ? undefined : {
269
- "close": _this.handleCancel,
270
- "occurrenceclose": _this.handleOccurrenceClick,
271
- "seriesclose": _this.handleSeriesClick
272
- },
273
- onOccurrenceclose: _this.handleOccurrenceClick,
274
- onSeriesclose: _this.handleSeriesClick
275
- }), _this.compShowRemoveDialog && h(SchedulerRemoveDialog_1.SchedulerRemoveDialog, {
276
- dataItem: _this.compRemoveItem,
277
- attrs: _this.v3 ? undefined : {
278
- dataItem: _this.compRemoveItem
279
- },
280
- onClose: _this.handleCancel,
281
- on: _this.v3 ? undefined : {
282
- "close": _this.handleCancel,
283
- "cancel": _this.handleCancel,
284
- "confirm": _this.handleRemoveConfirm
285
- },
286
- onCancel: _this.handleCancel,
287
- onConfirm: _this.handleRemoveConfirm
288
- })])
235
+ return [defaultSlot];
236
+ } : [defaultSlot])
289
237
  );
290
238
  },
291
239
  methods: {
@@ -8,8 +8,6 @@ import { Item, SchedulerTaskMouseEvent, EditableProp } from '../models';
8
8
  * Represents the props of the Kendo UI for Vue [SchedulerTask]({% slug api_scheduler_schedulertask %}) component.
9
9
  */
10
10
  export interface SchedulerTaskProps extends Item {
11
- /** @hidden */
12
- refTo: any;
13
11
  /**
14
12
  * Specifies the `id` of the wrapping element of the SchedulerTask.
15
13
  */
@@ -35,6 +33,18 @@ export interface SchedulerTaskProps extends Item {
35
33
  * The `delete` icon is rendered only when `props.editable` or `props.editable.remove` is `true`
36
34
  */
37
35
  onRemoveClick?: (event: SchedulerTaskMouseEvent) => void;
36
+ /** @hidden */
37
+ refTo: any;
38
+ /** @hidden */
39
+ removeDialog?: any;
40
+ /** @hidden */
41
+ occurrenceDialog?: any;
42
+ /** @hidden */
43
+ showRemoveDialog?: boolean;
44
+ /** @hidden */
45
+ showOccurrenceDialog?: boolean;
46
+ /** @hidden */
47
+ removeItem?: object;
38
48
  }
39
49
  /**
40
50
  * Represents the props of the Kendo UI for Vue [SchedulerTask]({% slug api_scheduler_schedulertask %}) component.
@@ -33,7 +33,11 @@ var messages_1 = require("../messages");
33
33
 
34
34
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
35
35
 
36
- var hooks_1 = require("../hooks"); // tslint:enable:max-line-length
36
+ var hooks_1 = require("../hooks");
37
+
38
+ var SchedulerOccurrenceDialog_1 = require("../components/SchedulerOccurrenceDialog");
39
+
40
+ var SchedulerRemoveDialog_1 = require("../components/SchedulerRemoveDialog"); // tslint:enable:max-line-length
37
41
 
38
42
 
39
43
  var SchedulerTaskVue2 = {
@@ -66,7 +70,16 @@ var SchedulerTaskVue2 = {
66
70
  recurrenceRule: String,
67
71
  recurrenceId: [String, Number],
68
72
  dataItem: Object,
69
- editable: [Object, Boolean]
73
+ removeItem: Object,
74
+ editable: [Object, Boolean],
75
+ showOccurrenceDialog: {
76
+ type: Boolean,
77
+ default: undefined
78
+ },
79
+ showRemoveDialog: {
80
+ type: Boolean,
81
+ default: undefined
82
+ }
70
83
  },
71
84
  inject: {
72
85
  kendoLocalizationService: {
@@ -77,6 +90,18 @@ var SchedulerTaskVue2 = {
77
90
  },
78
91
  taskDoubleClick: {
79
92
  default: null
93
+ },
94
+ ksCancel: {
95
+ default: null
96
+ },
97
+ ksSeriesClick: {
98
+ default: null
99
+ },
100
+ ksOccurrenceClick: {
101
+ default: null
102
+ },
103
+ ksRemoveConfirm: {
104
+ default: null
80
105
  }
81
106
  },
82
107
  created: function created() {
@@ -139,7 +164,35 @@ var SchedulerTaskVue2 = {
139
164
  }
140
165
  }, [h("span", {
141
166
  "class": "k-icon k-i-close"
142
- })])]);
167
+ })]), this.showOccurrenceDialog && h(SchedulerOccurrenceDialog_1.SchedulerOccurrenceDialog, {
168
+ dataItem: this.removeItem,
169
+ attrs: this.v3 ? undefined : {
170
+ dataItem: this.removeItem,
171
+ isRemove: this.removeItem !== null
172
+ },
173
+ isRemove: this.removeItem !== null,
174
+ onClose: this.ksCancel,
175
+ on: this.v3 ? undefined : {
176
+ "close": this.ksCancel,
177
+ "occurrenceclose": this.ksOccurrenceClick,
178
+ "seriesclose": this.ksSeriesClick
179
+ },
180
+ onOccurrenceclose: this.ksOccurrenceClick,
181
+ onSeriesclose: this.ksSeriesClick
182
+ }), this.showRemoveDialog && h(SchedulerRemoveDialog_1.SchedulerRemoveDialog, {
183
+ dataItem: this.removeItem,
184
+ attrs: this.v3 ? undefined : {
185
+ dataItem: this.removeItem
186
+ },
187
+ onClose: this.ksCancel,
188
+ on: this.v3 ? undefined : {
189
+ "close": this.ksCancel,
190
+ "cancel": this.ksCancel,
191
+ "confirm": this.ksRemoveConfirm
192
+ },
193
+ onCancel: this.ksCancel,
194
+ onConfirm: this.ksRemoveConfirm
195
+ })]);
143
196
  },
144
197
  methods: {
145
198
  handleRemoveClick: function handleRemoveClick(event) {
@@ -46,8 +46,17 @@ var SchedulerViewTaskVue2 = {
46
46
  recurrenceRule: String,
47
47
  recurrenceId: [String, Number],
48
48
  dataItem: Object,
49
+ removeItem: Object,
49
50
  task: [String, Function, Object],
50
- editable: [Object, Boolean]
51
+ editable: [Object, Boolean],
52
+ showOccurrenceDialog: {
53
+ type: Boolean,
54
+ default: undefined
55
+ },
56
+ showRemoveDialog: {
57
+ type: Boolean,
58
+ default: undefined
59
+ }
51
60
  },
52
61
  // @ts-ignore
53
62
  setup: !gh ? undefined : function () {
@@ -91,7 +100,10 @@ var SchedulerViewTaskVue2 = {
91
100
  recurrenceRule: this.$props.recurrenceRule,
92
101
  recurrenceId: this.$props.recurrenceId,
93
102
  dataItem: this.$props.dataItem,
94
- editable: this.$props.editable
103
+ removeItem: this.removeItem,
104
+ editable: this.$props.editable,
105
+ showOccurrenceDialog: this.showOccurrenceDialog,
106
+ showRemoveDialog: this.showRemoveDialog
95
107
  },
96
108
  tabIndex: this.$props.tabIndex,
97
109
  head: this.$props.head,
@@ -118,7 +130,10 @@ var SchedulerViewTaskVue2 = {
118
130
  recurrenceRule: this.$props.recurrenceRule,
119
131
  recurrenceId: this.$props.recurrenceId,
120
132
  dataItem: this.$props.dataItem,
133
+ removeItem: this.removeItem,
121
134
  editable: this.$props.editable,
135
+ showOccurrenceDialog: this.showOccurrenceDialog,
136
+ showRemoveDialog: this.showRemoveDialog,
122
137
  onRemoveclick: this.handleRemoveClick,
123
138
  on: this.v3 ? undefined : {
124
139
  "removeclick": this.handleRemoveClick
@@ -130,7 +145,10 @@ var SchedulerViewTaskVue2 = {
130
145
  h: h,
131
146
  template: this.$props.task,
132
147
  defaultRendering: taskRenderDefaultRendering,
133
- defaultSlots: defaultSlot
148
+ defaultSlots: defaultSlot,
149
+ additionalListeners: {
150
+ 'removeclick': this.handleRemoveClick
151
+ }
134
152
  });
135
153
  return taskRender;
136
154
  },
@@ -165,6 +165,10 @@ export declare const noop: (..._args: any) => void;
165
165
  /** @hidden */
166
166
  export declare const findFirstItem: (current: any) => SchedulerItemHandle | null;
167
167
  /** @hidden */
168
+ export declare const compareItems: (f: any, s: any, ignoreIsAllDay?: boolean) => boolean;
169
+ /** @hidden */
170
+ export declare const compareSlots: (f: any, s: any) => boolean;
171
+ /** @hidden */
168
172
  export declare const findNextItem: (ref: any, all: any, ignoreIsAllDay?: boolean | undefined, backwards?: boolean) => any;
169
173
  /**
170
174
  * @hidden