@progress/kendo-vue-scheduler 3.2.6 → 3.2.8-dev.202205030909

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 (72) hide show
  1. package/dist/cdn/js/kendo-vue-scheduler.js +2 -2
  2. package/dist/es/Scheduler.js +3 -0
  3. package/dist/es/components/BaseView.js +14 -12
  4. package/dist/es/components/header/view-selector/ViewSelectorList.js +9 -7
  5. package/dist/es/hooks/use-items-focus.js +8 -8
  6. package/dist/es/hooks/use-items-selection.js +11 -11
  7. package/dist/es/hooks/use-slots-focus.js +20 -20
  8. package/dist/es/hooks/use-slots-selection.js +4 -4
  9. package/dist/es/hooks/useSlotExpand.js +1 -1
  10. package/dist/es/items/SchedulerEditItem.d.ts +1 -1
  11. package/dist/es/items/SchedulerEditItem.js +260 -205
  12. package/dist/es/items/SchedulerItem.d.ts +1 -0
  13. package/dist/es/items/SchedulerItem.js +409 -168
  14. package/dist/es/items/SchedulerViewItem.d.ts +1 -0
  15. package/dist/es/items/SchedulerViewItem.js +17 -17
  16. package/dist/es/items/hooks/use-drag-item.js +5 -3
  17. package/dist/es/items/hooks/use-resize-item.d.ts +2 -4
  18. package/dist/es/items/hooks/use-resize-item.js +278 -176
  19. package/dist/es/models/SchedulerView.d.ts +2 -0
  20. package/dist/es/package-metadata.js +1 -1
  21. package/dist/es/slots/SchedulerEditSlot.js +21 -16
  22. package/dist/es/slots/SchedulerSlot.js +20 -1
  23. package/dist/es/slots/SchedulerViewSlot.js +30 -5
  24. package/dist/es/utils/index.d.ts +4 -0
  25. package/dist/es/utils/index.js +23 -14
  26. package/dist/es/views/common/SchedulerDrag.js +1 -0
  27. package/dist/es/views/common/SchedulerResize.js +70 -21
  28. package/dist/es/views/common/VerticalResourceIterator.js +2 -2
  29. package/dist/es/views/day/DayView.js +5 -1
  30. package/dist/es/views/day/MultiDayView.d.ts +4 -0
  31. package/dist/es/views/day/MultiDayView.js +87 -15
  32. package/dist/es/views/month/MonthView.js +1 -0
  33. package/dist/es/views/time/MultiDayTimelineView.js +1 -0
  34. package/dist/es/views/time/TimelineView.js +3 -0
  35. package/dist/es/views/week/WeekView.js +5 -1
  36. package/dist/es/views/week/WorkWeekView.js +3 -0
  37. package/dist/npm/Scheduler.js +3 -0
  38. package/dist/npm/components/BaseView.js +14 -12
  39. package/dist/npm/components/header/view-selector/ViewSelectorList.js +9 -7
  40. package/dist/npm/hooks/use-items-focus.js +8 -8
  41. package/dist/npm/hooks/use-items-selection.js +11 -11
  42. package/dist/npm/hooks/use-slots-focus.js +20 -20
  43. package/dist/npm/hooks/use-slots-selection.js +4 -4
  44. package/dist/npm/hooks/useSlotExpand.js +1 -1
  45. package/dist/npm/items/SchedulerEditItem.d.ts +1 -1
  46. package/dist/npm/items/SchedulerEditItem.js +258 -203
  47. package/dist/npm/items/SchedulerItem.d.ts +1 -0
  48. package/dist/npm/items/SchedulerItem.js +408 -167
  49. package/dist/npm/items/SchedulerViewItem.d.ts +1 -0
  50. package/dist/npm/items/SchedulerViewItem.js +17 -17
  51. package/dist/npm/items/hooks/use-drag-item.js +5 -3
  52. package/dist/npm/items/hooks/use-resize-item.d.ts +2 -4
  53. package/dist/npm/items/hooks/use-resize-item.js +281 -176
  54. package/dist/npm/models/SchedulerView.d.ts +2 -0
  55. package/dist/npm/package-metadata.js +1 -1
  56. package/dist/npm/slots/SchedulerEditSlot.js +20 -15
  57. package/dist/npm/slots/SchedulerSlot.js +20 -1
  58. package/dist/npm/slots/SchedulerViewSlot.js +30 -5
  59. package/dist/npm/utils/index.d.ts +4 -0
  60. package/dist/npm/utils/index.js +24 -15
  61. package/dist/npm/views/common/SchedulerDrag.js +1 -0
  62. package/dist/npm/views/common/SchedulerResize.js +70 -21
  63. package/dist/npm/views/common/VerticalResourceIterator.js +2 -2
  64. package/dist/npm/views/day/DayView.js +5 -1
  65. package/dist/npm/views/day/MultiDayView.d.ts +4 -0
  66. package/dist/npm/views/day/MultiDayView.js +88 -15
  67. package/dist/npm/views/month/MonthView.js +1 -0
  68. package/dist/npm/views/time/MultiDayTimelineView.js +1 -0
  69. package/dist/npm/views/time/TimelineView.js +3 -0
  70. package/dist/npm/views/week/WeekView.js +5 -1
  71. package/dist/npm/views/week/WorkWeekView.js +3 -0
  72. package/package.json +12 -12
@@ -119,6 +119,7 @@ var SchedulerVue2 = {
119
119
  footer: [String, Function, Object],
120
120
  slotRender: [String, Function, Object],
121
121
  item: [String, Function, Object],
122
+ viewItem: [String, Function, Object],
122
123
  task: [String, Function, Object]
123
124
  },
124
125
  computed: {
@@ -228,6 +229,7 @@ var SchedulerVue2 = {
228
229
  var footer = templateRendering.call(this, view.footer || this.$props.footer, getListeners.call(this));
229
230
  var slotRender = templateRendering.call(this, view.slot || this.$props.slotRender, {});
230
231
  var item = templateRendering.call(this, view.item || this.$props.item, {});
232
+ var viewItem = templateRendering.call(this, view.viewItem || this.$props.viewItem, {});
231
233
  var task = templateRendering.call(this, view.task || this.$props.task, {});
232
234
  var ViewSelector = SchedulerViewSelector;
233
235
  var viewComponent = this.getViewComponentByName(this.ks.activeViewName || view.name);
@@ -240,6 +242,7 @@ var SchedulerVue2 = {
240
242
  dateRange: this.ks.dateRange,
241
243
  slotRender: slotRender,
242
244
  item: item,
245
+ viewItem: viewItem,
243
246
  task: task
244
247
  });
245
248
 
@@ -29,10 +29,10 @@ var BaseViewVue2 = {
29
29
  bv: this.bv,
30
30
  setItems: this.dispatchItems,
31
31
  setSlots: this.dispatchSlots,
32
- setSelectedSlots: dispatchSelectedSlots,
33
- setSelectedItems: dispatchSelectedItems,
34
- setFocusedItems: dispatchFocusedItems,
35
- setFocusedSlots: dispatchFocusedSlots // setActiveViewName: this.handleActiveViewNameChange
32
+ dispatchSelectedSlots: this.handleSchedulerSlotsSelectAction,
33
+ dispatchSelectedItems: this.handleSchedulerItemsSelectAction,
34
+ dispatchFocusedItems: this.setFocusedItems,
35
+ dispatchFocusedSlots: this.setFocusedSlots // setActiveViewName: this.handleActiveViewNameChange
36
36
 
37
37
  };
38
38
  },
@@ -94,21 +94,23 @@ var BaseViewVue2 = {
94
94
  });
95
95
  },
96
96
  handleSchedulerItemsSelectAction: function handleSchedulerItemsSelectAction(action, event) {
97
- this.dispatchSelectedSlots({
97
+ dispatchSelectedSlots.call(this, {
98
98
  type: SLOTS_SELECT_ACTION.reset
99
99
  });
100
- this.dispatchSelectedItems(action, event);
100
+ dispatchSelectedItems.call(this, action, event);
101
101
  },
102
102
  handleSchedulerSlotsSelectAction: function handleSchedulerSlotsSelectAction(action, event) {
103
- this.dispatchSelectedItems({
103
+ dispatchSelectedItems.call(this, {
104
104
  type: ITEMS_SELECT_ACTION.reset
105
105
  }, event);
106
- this.dispatchSelectedSlots(action);
106
+ dispatchSelectedSlots.call(this, action);
107
+ },
108
+ setFocusedItems: function setFocusedItems(action, event) {
109
+ dispatchFocusedItems.call(this, action, event);
110
+ },
111
+ setFocusedSlots: function setFocusedSlots(action, event) {
112
+ dispatchFocusedSlots.call(this, action, event);
107
113
  },
108
- dispatchSelectedSlots: dispatchSelectedSlots,
109
- dispatchSelectedItems: dispatchSelectedItems,
110
- dispatchFocusedItems: dispatchFocusedItems,
111
- dispatchFocusedSlots: dispatchFocusedSlots,
112
114
  dispatchItems: function dispatchItems(action) {
113
115
  switch (action.type) {
114
116
  case COLLECTION_ACTION.add:
@@ -86,14 +86,9 @@ var ViewSelectorListVue2 = {
86
86
  }, [activeView && this.media === 'mobile' && // @ts-ignore function children
87
87
  h(DropDownButton, {
88
88
  "class": "k-views-dropdown",
89
- onItemclick: this.handleItemClick,
90
- on: this.v3 ? undefined : {
91
- "itemclick": this.handleItemClick
92
- },
93
- popupSettings: {
94
- popupClass: 'k-scheduler-toolbar'
95
- },
89
+ tabIndex: -1,
96
90
  attrs: this.v3 ? undefined : {
91
+ tabIndex: -1,
97
92
  popupSettings: {
98
93
  popupClass: 'k-scheduler-toolbar'
99
94
  },
@@ -109,6 +104,13 @@ var ViewSelectorListVue2 = {
109
104
  }, this),
110
105
  text: activeView.title || activeName
111
106
  },
107
+ onItemclick: this.handleItemClick,
108
+ on: this.v3 ? undefined : {
109
+ "itemclick": this.handleItemClick
110
+ },
111
+ popupSettings: {
112
+ popupClass: 'k-scheduler-toolbar'
113
+ },
112
114
  textField: "title",
113
115
  items: views.map(function (v) {
114
116
  var nameTitle = 'scheduler.' + v.name + 'ViewTitle';
@@ -20,15 +20,15 @@ export var dispatchFocusedItems = function dispatchFocusedItems(action, event) {
20
20
  switch (action.type) {
21
21
  case ITEMS_FOCUS_ACTION.next:
22
22
  {
23
- if (!action.item || !action.item.current || !this.items) {
23
+ if (!action.item || !this.bv.items) {
24
24
  return;
25
25
  }
26
26
 
27
- var next = findNextItem(action.item, this.items, action.ignoreIsAllDay, false);
27
+ var next = findNextItem(action.item, this.bv.items, action.ignoreIsAllDay, false);
28
28
 
29
- if (next && next.current && next.current.element) {
29
+ if (next && next.element) {
30
30
  event.preventDefault();
31
- next.current.element.focus();
31
+ next.element.focus();
32
32
  }
33
33
 
34
34
  break;
@@ -36,15 +36,15 @@ export var dispatchFocusedItems = function dispatchFocusedItems(action, event) {
36
36
 
37
37
  case ITEMS_FOCUS_ACTION.prev:
38
38
  {
39
- if (!action.item || !action.item.current || !this.items) {
39
+ if (!action.item || !this.bv.items) {
40
40
  return;
41
41
  }
42
42
 
43
- var next = findNextItem(action.item, this.items, action.ignoreIsAllDay, true);
43
+ var next = findNextItem(action.item, this.bv.items, action.ignoreIsAllDay, true);
44
44
 
45
- if (next && next.current && next.current.element) {
45
+ if (next && next.element) {
46
46
  event.preventDefault();
47
- next.current.element.focus();
47
+ next.element.focus();
48
48
  }
49
49
 
50
50
  break;
@@ -45,20 +45,20 @@ export var dispatchSelectedItems = function dispatchSelectedItems(action, event)
45
45
  return;
46
46
  }
47
47
 
48
- this.selectedItems = [action.item];
48
+ this.bv.selectedItems = [action.item];
49
49
  break;
50
50
 
51
51
  case ITEMS_SELECT_ACTION.selectNext:
52
52
  {
53
- if (!action.item || !action.item.current || !this.items) {
53
+ if (!action.item || !this.bv.items) {
54
54
  return;
55
55
  }
56
56
 
57
- var next = findNextItem(action.item, this.items, action.ignoreIsAllDay, false);
57
+ var next = findNextItem(action.item, this.bv.items, action.ignoreIsAllDay, false);
58
58
 
59
59
  if (next) {
60
60
  event.preventDefault();
61
- this.selectedItems = [next];
61
+ this.bv.selectedItems = [next];
62
62
  }
63
63
 
64
64
  break;
@@ -66,22 +66,22 @@ export var dispatchSelectedItems = function dispatchSelectedItems(action, event)
66
66
 
67
67
  case ITEMS_SELECT_ACTION.selectPrev:
68
68
  {
69
- if (!action.item || !action.item.current || !this.items) {
69
+ if (!action.item || !this.bv.items) {
70
70
  return;
71
71
  }
72
72
 
73
- var next = findNextItem(action.item, this.items, action.ignoreIsAllDay, true);
73
+ var next = findNextItem(action.item, this.bv.items, action.ignoreIsAllDay, true);
74
74
 
75
75
  if (next) {
76
76
  event.preventDefault();
77
- this.selectedItems = [next];
77
+ this.bv.selectedItems = [next];
78
78
  }
79
79
 
80
80
  break;
81
81
  }
82
82
 
83
83
  case ITEMS_SELECT_ACTION.reset:
84
- this.selectedItems = [];
84
+ this.bv.selectedItems = [];
85
85
  break;
86
86
 
87
87
  case ITEMS_SELECT_ACTION.add:
@@ -89,10 +89,10 @@ export var dispatchSelectedItems = function dispatchSelectedItems(action, event)
89
89
  return;
90
90
  }
91
91
 
92
- if (!this.selectedItems.some(function (si) {
92
+ if (!this.bv.selectedItems.some(function (si) {
93
93
  return si === action.item;
94
94
  })) {
95
- this.selectedItems = __spreadArrays(this.selectedItems, [action.item]);
95
+ this.bv.selectedItems = __spreadArrays(this.bv.selectedItems, [action.item]);
96
96
  }
97
97
 
98
98
  break;
@@ -102,7 +102,7 @@ export var dispatchSelectedItems = function dispatchSelectedItems(action, event)
102
102
  return;
103
103
  }
104
104
 
105
- this.selectedItems = __spreadArrays(this.selectedItems.filter(function (si) {
105
+ this.bv.selectedItems = __spreadArrays(this.bv.selectedItems.filter(function (si) {
106
106
  return si !== action.item;
107
107
  }));
108
108
  break;
@@ -22,15 +22,15 @@ export var dispatchFocusedSlots = function dispatchFocusedSlots(action, event) {
22
22
  switch (action.type) {
23
23
  case SLOTS_FOCUS_ACTION.up:
24
24
  {
25
- if (!action.slot.current || !this.slots) {
25
+ if (!action.slot || !this.bv.slots) {
26
26
  return;
27
27
  }
28
28
 
29
- var next = findUpSlot(action.slot, this.slots);
29
+ var next = findUpSlot(action.slot, this.bv.slots);
30
30
 
31
- if (next && next.current && next.current.element) {
31
+ if (next && next.$el) {
32
32
  event.preventDefault();
33
- next.current.element.focus();
33
+ next.$el.focus();
34
34
  }
35
35
 
36
36
  break;
@@ -38,15 +38,15 @@ export var dispatchFocusedSlots = function dispatchFocusedSlots(action, event) {
38
38
 
39
39
  case SLOTS_FOCUS_ACTION.down:
40
40
  {
41
- if (!action.slot || !this.slots) {
41
+ if (!action.slot || !this.bv.slots) {
42
42
  return;
43
43
  }
44
44
 
45
- var next = findDownSlot(action.slot, this.slots);
45
+ var next = findDownSlot(action.slot, this.bv.slots);
46
46
 
47
- if (next && next.current && next.current.element) {
47
+ if (next && next.$el) {
48
48
  event.preventDefault();
49
- next.current.element.focus();
49
+ next.$el.focus();
50
50
  }
51
51
 
52
52
  break;
@@ -54,15 +54,15 @@ export var dispatchFocusedSlots = function dispatchFocusedSlots(action, event) {
54
54
 
55
55
  case SLOTS_FOCUS_ACTION.left:
56
56
  {
57
- if (!action.slot || !this.slots) {
57
+ if (!action.slot || !this.bv.slots) {
58
58
  return;
59
59
  }
60
60
 
61
- var next = findLeftSlot(action.slot, this.slots);
61
+ var next = findLeftSlot(action.slot, this.bv.slots);
62
62
 
63
- if (next && next.current && next.current.element) {
63
+ if (next && next.$el) {
64
64
  event.preventDefault();
65
- next.current.element.focus();
65
+ next.$el.focus();
66
66
  }
67
67
 
68
68
  break;
@@ -70,15 +70,15 @@ export var dispatchFocusedSlots = function dispatchFocusedSlots(action, event) {
70
70
 
71
71
  case SLOTS_FOCUS_ACTION.right:
72
72
  {
73
- if (!action.slot || !this.slots) {
73
+ if (!action.slot || !this.bv.slots) {
74
74
  return;
75
75
  }
76
76
 
77
- var next = findRightSlot(action.slot, this.slots);
77
+ var next = findRightSlot(action.slot, this.bv.slots);
78
78
 
79
- if (next && next.current && next.current.element) {
79
+ if (next && next.$el) {
80
80
  event.preventDefault();
81
- next.current.element.focus();
81
+ next.$el.focus();
82
82
  }
83
83
 
84
84
  break;
@@ -92,27 +92,27 @@ export var dispatchFocusedSlots = function dispatchFocusedSlots(action, event) {
92
92
 
93
93
  export var findUpSlot = function findUpSlot(target, all) {
94
94
  return all.find(function (slot) {
95
- return slot.current !== null && target.current !== null && slot.current.props.row === target.current.props.row - 1 && slot.current.props.col === target.current.props.col;
95
+ return slot !== null && target !== null && slot.$props.row === target.$props.row - 1 && slot.$props.col === target.$props.col;
96
96
  });
97
97
  };
98
98
  /** @hidden */
99
99
 
100
100
  export var findLeftSlot = function findLeftSlot(target, all) {
101
101
  return all.find(function (slot) {
102
- return slot.current !== null && target.current !== null && slot.current.props.row === target.current.props.row && slot.current.props.col === target.current.props.col - 1;
102
+ return slot !== null && target !== null && slot.$props.row === target.$props.row && slot.$props.col === target.$props.col - 1;
103
103
  });
104
104
  };
105
105
  /** @hidden */
106
106
 
107
107
  export var findRightSlot = function findRightSlot(target, all) {
108
108
  return all.find(function (slot) {
109
- return slot.current !== null && target.current !== null && slot.current.props.row === target.current.props.row && slot.current.props.col === target.current.props.col + 1;
109
+ return slot !== null && target !== null && slot.$props.row === target.$props.row && slot.$props.col === target.$props.col + 1;
110
110
  });
111
111
  };
112
112
  /** @hidden */
113
113
 
114
114
  export var findDownSlot = function findDownSlot(target, all) {
115
115
  return all.find(function (slot) {
116
- return slot.current !== null && target.current !== null && slot.current.props.row === target.current.props.row + 1 && slot.current.props.col === target.current.props.col;
116
+ return slot !== null && target !== null && slot.$props.row === target.$props.row + 1 && slot.$props.col === target.$props.col;
117
117
  });
118
118
  };
@@ -38,11 +38,11 @@ export var dispatchSelectedSlots = function dispatchSelectedSlots(action) {
38
38
  return;
39
39
  }
40
40
 
41
- this.selectedSlots([action.slot]);
41
+ this.bv.selectedSlots = [action.slot];
42
42
  break;
43
43
 
44
44
  case SLOTS_SELECT_ACTION.reset:
45
- this.selectedSlots([]);
45
+ this.bv.selectedSlots = [];
46
46
  break;
47
47
 
48
48
  case SLOTS_SELECT_ACTION.add:
@@ -50,10 +50,10 @@ export var dispatchSelectedSlots = function dispatchSelectedSlots(action) {
50
50
  return;
51
51
  }
52
52
 
53
- if (!this.selectedSlots.some(function (ss) {
53
+ if (!this.bv.selectedSlots.some(function (ss) {
54
54
  return ss === action.slot;
55
55
  })) {
56
- this.selectedSlots(__spreadArrays(this.selectedSlots, [action.slot]));
56
+ this.bv.selectedSlots = __spreadArrays(this.bv.selectedSlots, [action.slot]);
57
57
  }
58
58
 
59
59
  break;
@@ -49,7 +49,7 @@ export var useSlotExpand = function useSlotExpand(slot, _scheduler, config) {
49
49
  return;
50
50
  }
51
51
 
52
- var height = getRect(currentItem.$el).height;
52
+ var height = getRect(currentItem.getElement()).height;
53
53
  highest += height;
54
54
  });
55
55
  var minHeight = existing.length * BORDER_WIDTH * 2 + highest - (slotPadding || 0) + ((typeof config === "undefined" ? "undefined" : _typeof(config)) === 'object' && config.offsetTop ? config.offsetTop : 0) + ((typeof config === "undefined" ? "undefined" : _typeof(config)) === 'object' && config.offsetBottom ? config.offsetBottom : 0);
@@ -330,6 +330,7 @@ export interface SchedulerEditItemState {
330
330
  */
331
331
  export interface SchedulerEditItemComputed {
332
332
  [key: string]: any;
333
+ currentTabIndex: number | undefined | null;
333
334
  }
334
335
  /**
335
336
  * @hidden
@@ -341,7 +342,6 @@ export interface SchedulerEditItemMethods {
341
342
  * @hidden
342
343
  */
343
344
  export interface SchedulerEditItemData {
344
- currentTabIndex: number | undefined | null;
345
345
  }
346
346
  /**
347
347
  * @hidden