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

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 (78) hide show
  1. package/dist/cdn/js/kendo-vue-scheduler.js +2 -2
  2. package/dist/es/Scheduler.d.ts +14 -0
  3. package/dist/es/Scheduler.js +21 -4
  4. package/dist/es/components/{CurrentTimeMarket.d.ts → CurrentTimeMarker.d.ts} +0 -0
  5. package/dist/es/components/CurrentTimeMarker.js +160 -0
  6. package/dist/es/components/CurrentTimeMarkerArrow.d.ts +43 -0
  7. package/dist/es/components/CurrentTimeMarkerArrow.js +135 -0
  8. package/dist/es/components/DateHeaderCell.js +15 -2
  9. package/dist/es/components/SchedulerForm.d.ts +0 -18
  10. package/dist/es/components/SchedulerForm.js +73 -174
  11. package/dist/es/components/TimeHeaderCell.js +15 -2
  12. package/dist/es/items/SchedulerViewItem.js +9 -6
  13. package/dist/es/main.d.ts +2 -1
  14. package/dist/es/main.js +2 -1
  15. package/dist/es/package-metadata.js +1 -1
  16. package/dist/es/slots/SchedulerEditSlot.js +60 -45
  17. package/dist/es/slots/SchedulerSlot.d.ts +4 -0
  18. package/dist/es/slots/SchedulerViewSlot.d.ts +0 -1
  19. package/dist/es/slots/SchedulerViewSlot.js +12 -4
  20. package/dist/es/views/agenda/AgendaViewBody.js +0 -1
  21. package/dist/es/views/common/VerticalResourceIterator.js +10 -2
  22. package/dist/es/views/day/DayView.js +9 -1
  23. package/dist/es/views/day/DayViewAllDaySlots.d.ts +1 -0
  24. package/dist/es/views/day/DayViewAllDaySlots.js +1 -0
  25. package/dist/es/views/day/DayViewMiddleRow.d.ts +1 -0
  26. package/dist/es/views/day/DayViewMiddleRow.js +1 -0
  27. package/dist/es/views/day/DayViewVerticalSlotsRow.d.ts +3 -0
  28. package/dist/es/views/day/DayViewVerticalSlotsRow.js +25 -5
  29. package/dist/es/views/day/MultiDayView.js +36 -23
  30. package/dist/es/views/month/MonthView.js +8 -0
  31. package/dist/es/views/month/MonthViewBody.d.ts +1 -0
  32. package/dist/es/views/month/MonthViewBody.js +2 -1
  33. package/dist/es/views/time/MultiDayTimelineView.js +23 -5
  34. package/dist/es/views/time/TimelineView.js +9 -1
  35. package/dist/es/views/time/TimelineViewBody.d.ts +2 -0
  36. package/dist/es/views/time/TimelineViewBody.js +19 -7
  37. package/dist/es/views/week/WeekView.js +9 -1
  38. package/dist/es/views/week/WorkWeekView.js +12 -1
  39. package/dist/npm/Scheduler.d.ts +14 -0
  40. package/dist/npm/Scheduler.js +21 -4
  41. package/dist/npm/components/{CurrentTimeMarket.d.ts → CurrentTimeMarker.d.ts} +0 -0
  42. package/dist/npm/components/CurrentTimeMarker.js +171 -0
  43. package/dist/npm/components/CurrentTimeMarkerArrow.d.ts +43 -0
  44. package/dist/npm/components/CurrentTimeMarkerArrow.js +147 -0
  45. package/dist/npm/components/DateHeaderCell.js +16 -2
  46. package/dist/npm/components/SchedulerForm.d.ts +0 -18
  47. package/dist/npm/components/SchedulerForm.js +74 -174
  48. package/dist/npm/components/TimeHeaderCell.js +16 -2
  49. package/dist/npm/items/SchedulerViewItem.js +9 -6
  50. package/dist/npm/main.d.ts +2 -1
  51. package/dist/npm/main.js +3 -1
  52. package/dist/npm/package-metadata.js +1 -1
  53. package/dist/npm/slots/SchedulerEditSlot.js +59 -44
  54. package/dist/npm/slots/SchedulerSlot.d.ts +4 -0
  55. package/dist/npm/slots/SchedulerViewSlot.d.ts +0 -1
  56. package/dist/npm/slots/SchedulerViewSlot.js +12 -4
  57. package/dist/npm/views/agenda/AgendaViewBody.js +0 -1
  58. package/dist/npm/views/common/VerticalResourceIterator.js +10 -2
  59. package/dist/npm/views/day/DayView.js +9 -1
  60. package/dist/npm/views/day/DayViewAllDaySlots.d.ts +1 -0
  61. package/dist/npm/views/day/DayViewAllDaySlots.js +1 -0
  62. package/dist/npm/views/day/DayViewMiddleRow.d.ts +1 -0
  63. package/dist/npm/views/day/DayViewMiddleRow.js +1 -0
  64. package/dist/npm/views/day/DayViewVerticalSlotsRow.d.ts +3 -0
  65. package/dist/npm/views/day/DayViewVerticalSlotsRow.js +28 -6
  66. package/dist/npm/views/day/MultiDayView.js +37 -23
  67. package/dist/npm/views/month/MonthView.js +8 -0
  68. package/dist/npm/views/month/MonthViewBody.d.ts +1 -0
  69. package/dist/npm/views/month/MonthViewBody.js +2 -1
  70. package/dist/npm/views/time/MultiDayTimelineView.js +23 -5
  71. package/dist/npm/views/time/TimelineView.js +9 -1
  72. package/dist/npm/views/time/TimelineViewBody.d.ts +2 -0
  73. package/dist/npm/views/time/TimelineViewBody.js +20 -7
  74. package/dist/npm/views/week/WeekView.js +9 -1
  75. package/dist/npm/views/week/WorkWeekView.js +12 -1
  76. package/package.json +12 -12
  77. package/dist/es/components/CurrentTimeMarket.js +0 -187
  78. package/dist/npm/components/CurrentTimeMarket.js +0 -199
@@ -71,6 +71,16 @@ export interface SchedulerProps {
71
71
  * For more information on customizing the scheduler tasks, refer to the [Task Customization]({% slug overview_tasks_scheduler %}) article.
72
72
  */
73
73
  task?: any;
74
+ /**
75
+ *
76
+ * Represents component based on the DateHeaderCellProps.
77
+ */
78
+ dateHeaderCell?: any;
79
+ /**
80
+ *
81
+ * Represents component based on the TimeHeaderCellProps.
82
+ */
83
+ timeHeaderCell?: any;
74
84
  /**
75
85
  * Overrides the default viewTask. Specifying the `viewTask` property of a specific view will override this property.
76
86
  * Currently, the `viewTask` is being used in the [AgendaView]({% slug agenda_view_scheduler %}) only.
@@ -131,6 +141,10 @@ export interface SchedulerProps {
131
141
  editSlot?: any;
132
142
  /** @hidden */
133
143
  form?: any;
144
+ /** @hidden */
145
+ dialogProps?: any;
146
+ /** @hidden */
147
+ formProps?: any;
134
148
  /**
135
149
  * Sets the currently visible views.
136
150
  */
@@ -101,7 +101,9 @@ var SchedulerVue2 = {
101
101
  },
102
102
  defaultDate: {
103
103
  type: Date,
104
- default: new Date()
104
+ default: function _default() {
105
+ return new Date();
106
+ }
105
107
  },
106
108
  validator: {
107
109
  type: Function,
@@ -118,9 +120,15 @@ var SchedulerVue2 = {
118
120
  header: [String, Function, Object],
119
121
  footer: [String, Function, Object],
120
122
  slotRender: [String, Function, Object],
123
+ viewSlot: [String, Function, Object],
121
124
  item: [String, Function, Object],
122
125
  viewItem: [String, Function, Object],
123
- task: [String, Function, Object]
126
+ task: [String, Function, Object],
127
+ form: [String, Function, Object],
128
+ dialogProps: Object,
129
+ formProps: Object,
130
+ dateHeaderCell: [String, Function, Object],
131
+ timeHeaderCell: [String, Function, Object]
124
132
  },
125
133
  computed: {
126
134
  wrapperClassName: function wrapperClassName() {
@@ -184,7 +192,7 @@ var SchedulerVue2 = {
184
192
  orientation: this.$props.group && this.$props.group.orientation ? this.$props.group.orientation : 'horizontal',
185
193
  dateFormat: dateFormat,
186
194
  shortDateFormat: shortDateFormat,
187
- scheduler: null,
195
+ scheduler: this,
188
196
  dataItems: this.dataItems
189
197
  }
190
198
  };
@@ -228,9 +236,15 @@ var SchedulerVue2 = {
228
236
  var header = templateRendering.call(this, view.header || this.$props.header, getListeners.call(this));
229
237
  var footer = templateRendering.call(this, view.footer || this.$props.footer, getListeners.call(this));
230
238
  var slotRender = templateRendering.call(this, view.slot || this.$props.slotRender, {});
239
+ var viewSlot = templateRendering.call(this, view.viewSlot || this.$props.viewSlot, {});
231
240
  var item = templateRendering.call(this, view.item || this.$props.item, {});
232
241
  var viewItem = templateRendering.call(this, view.viewItem || this.$props.viewItem, {});
233
242
  var task = templateRendering.call(this, view.task || this.$props.task, {});
243
+ var dateHeaderCell = templateRendering.call(this, view.dateHeaderCell || this.$props.dateHeaderCell, {});
244
+ var timeHeaderCell = templateRendering.call(this, view.timeHeaderCell || this.$props.timeHeaderCell, {});
245
+ this.ks.form = templateRendering.call(this, view.form || this.$props.form, {});
246
+ this.ks.dialogProps = view.dialogProps || this.$props.dialogProps;
247
+ this.ks.formProps = view.formProps || this.$props.formProps;
234
248
  var ViewSelector = SchedulerViewSelector;
235
249
  var viewComponent = this.getViewComponentByName(this.ks.activeViewName || view.name);
236
250
 
@@ -241,9 +255,12 @@ var SchedulerVue2 = {
241
255
  defaultDate: undefined,
242
256
  dateRange: this.ks.dateRange,
243
257
  slotRender: slotRender,
258
+ viewSlot: viewSlot,
244
259
  item: item,
245
260
  viewItem: viewItem,
246
- task: task
261
+ task: task,
262
+ dateHeaderCell: dateHeaderCell,
263
+ timeHeaderCell: timeHeaderCell
247
264
  });
248
265
 
249
266
  var headerRender;
@@ -0,0 +1,160 @@
1
+ // @ts-ignore
2
+ import * as Vue from 'vue';
3
+ var allVue = Vue;
4
+ var gh = allVue.h;
5
+ import { cloneDate } from '@progress/kendo-date-math'; // import { useSchedulerElementContext, useSchedulerPropsContext, useSchedulerViewSlotsContext } from '../context';
6
+
7
+ import { first, isInTimeRange, intersects } from '../utils';
8
+ import { getRect } from '../views/common/utils';
9
+
10
+ var combineWidths = function combineWidths(slots) {
11
+ var result = 0;
12
+ slots.forEach(function (slot) {
13
+ if (slot) {
14
+ var rect = getRect(slot.$el);
15
+ result += rect.width;
16
+ }
17
+ });
18
+ return result;
19
+ };
20
+
21
+ var combineHeights = function combineHeights(slots) {
22
+ var result = 0;
23
+ slots.forEach(function (slot) {
24
+ if (slot) {
25
+ var rect = getRect(slot.$el);
26
+ result += rect.height;
27
+ }
28
+ });
29
+ return result;
30
+ };
31
+
32
+ var setTime = function setTime(origin, candidate) {
33
+ var date = cloneDate(origin);
34
+ date.setHours(candidate.getHours(), candidate.getMinutes(), candidate.getSeconds(), candidate.getMilliseconds());
35
+ return date;
36
+ }; // tslint:enable:max-line-length
37
+
38
+
39
+ var CurrentTimeMarkerVue2 = {
40
+ name: 'KendoCurrentTimeMarker',
41
+ props: {
42
+ updateInterval: {
43
+ type: Number,
44
+ default: 60000
45
+ },
46
+ groupIndex: Number,
47
+ vertical: Boolean,
48
+ attachArrow: Object
49
+ },
50
+ inject: {
51
+ ks: {
52
+ default: null
53
+ },
54
+ bv: {
55
+ default: null
56
+ }
57
+ },
58
+ created: function created() {
59
+ this.interval = undefined;
60
+ this.arrowRef = null;
61
+ this.observer = null;
62
+ this.line = null;
63
+ },
64
+ data: function data() {
65
+ return {
66
+ show: false
67
+ };
68
+ },
69
+ mounted: function mounted() {
70
+ this.line = this.$el;
71
+ var that = this;
72
+ this.$nextTick(function () {
73
+ that.position();
74
+ });
75
+
76
+ if (!this.ks.scheduler || !this.ks.scheduler.$el || !window) {
77
+ return;
78
+ }
79
+
80
+ clearInterval(this.interval);
81
+ this.interval = window.setInterval(this.position, this.updateInterval);
82
+ this.observer = new window.ResizeObserver(this.position);
83
+ this.observer.observe(this.ks.scheduler.$el);
84
+ },
85
+ destroyed: !!gh ? undefined : function () {
86
+ if (this.observer) {
87
+ this.observer.disconnect();
88
+ }
89
+ },
90
+ // @ts-ignore
91
+ unmounted: function unmounted() {
92
+ if (this.observer) {
93
+ this.observer.disconnect();
94
+ }
95
+ },
96
+ // @ts-ignore
97
+ setup: !gh ? undefined : function () {
98
+ var v3 = !!gh;
99
+ return {
100
+ v3: v3
101
+ };
102
+ },
103
+ // @ts-ignore
104
+ render: function render(createElement) {
105
+ var _a;
106
+
107
+ var h = gh || createElement; // const dir = useDir(line, schedulerProps.rtl === true ? 'rtl' : undefined);
108
+
109
+ return h("div", {
110
+ "class": "k-current-time",
111
+ style: (_a = {
112
+ transform: this.$props.vertical ? 'translateX(-50%)' : 'translateY(-50%)'
113
+ }, _a[this.$props.vertical ? 'width' : 'height'] = '1px', _a.visibility = !this.show ? 'hidden' : undefined, _a)
114
+ });
115
+ },
116
+ methods: {
117
+ position: function position() {
118
+ var _this = this;
119
+
120
+ if (!this.bv.slots) {
121
+ return;
122
+ }
123
+
124
+ var sameTimeSlots = this.bv.slots.filter(function (s) {
125
+ return (_this.$props.groupIndex === undefined || _this.$props.groupIndex === null || s.group.index === _this.$props.groupIndex) && (_this.$props.vertical ? intersects(new Date(), new Date(), s.start, s.end, true) : isInTimeRange(new Date(), s.start, s.end)) && !s.isAllDay;
126
+ });
127
+
128
+ if (sameTimeSlots && sameTimeSlots.length && this.line) {
129
+ var firstSlot = first(sameTimeSlots);
130
+
131
+ if (!firstSlot) {
132
+ return;
133
+ }
134
+
135
+ var size = this.$props.vertical ? combineHeights(sameTimeSlots) : combineWidths(sameTimeSlots);
136
+ var rect = getRect(firstSlot.$el);
137
+ var arrowRect = getRect(this.arrowRef);
138
+ var pxPerMillisecond = (this.$props.vertical ? rect.width : rect.height) / (firstSlot.end.getTime() - firstSlot.start.getTime());
139
+ var offset = (Date.now() - setTime(new Date(), firstSlot.start).getTime()) * pxPerMillisecond;
140
+ var rtl = this.$props.dir === 'rtl';
141
+ var top_1 = this.$props.vertical ? rect.top : rect.top + offset - arrowRect.height / 2;
142
+ var horizontalDimension = rtl ? 'right' : 'left';
143
+ var horizontalMeasure = this.$props.vertical ? rect[horizontalDimension] + offset - arrowRect.width / 2 : rect[horizontalDimension]; // if (this.$props.vertical) {
144
+ // this.arrowRef.style[horizontalDimension] = `${horizontalMeasure}px`;
145
+ // } else {
146
+ // this.arrowRef.style.top = `${top}px`;
147
+ // }
148
+
149
+ this.line.style[horizontalDimension] = horizontalMeasure + "px";
150
+ this.line.style.top = top_1 + "px";
151
+ this.line.style[this.$props.vertical ? 'height' : 'width'] = size - 1 + "px";
152
+ this.show = true;
153
+ } else {
154
+ this.show = false;
155
+ }
156
+ }
157
+ }
158
+ };
159
+ var CurrentTimeMarker = CurrentTimeMarkerVue2;
160
+ export { CurrentTimeMarker, CurrentTimeMarkerVue2 };
@@ -0,0 +1,43 @@
1
+ import { DefineComponent, RecordPropsDefinition, ComponentOptions, Vue2type } from '../additionalTypes';
2
+ declare type DefaultData<V> = object | ((this: V) => {});
3
+ declare type DefaultMethods<V> = {
4
+ [key: string]: (this: V, ...args: any[]) => any;
5
+ };
6
+ declare type CurrentTimeMarkerArrowProps = {
7
+ updateInterval?: number;
8
+ groupIndex?: number | null;
9
+ vertical?: boolean;
10
+ attachArrow?: HTMLElement;
11
+ };
12
+ /**
13
+ * @hidden
14
+ */
15
+ export interface CurrentTimeMarkerArrowState {
16
+ interval: number | undefined;
17
+ arrowRef: HTMLElement | null;
18
+ }
19
+ /**
20
+ * @hidden
21
+ */
22
+ export interface CurrentTimeMarkerArrowComputed {
23
+ [key: string]: any;
24
+ }
25
+ /**
26
+ * @hidden
27
+ */
28
+ export interface CurrentTimeMarkerArrowMethods {
29
+ [key: string]: any;
30
+ }
31
+ /**
32
+ * @hidden
33
+ */
34
+ export interface CurrentTimeMarkerArrowData {
35
+ }
36
+ /**
37
+ * @hidden
38
+ */
39
+ export interface CurrentTimeMarkerArrowAll extends Vue2type, CurrentTimeMarkerArrowMethods, CurrentTimeMarkerArrowData, CurrentTimeMarkerArrowComputed, CurrentTimeMarkerArrowState {
40
+ }
41
+ declare let CurrentTimeMarkerArrowVue2: ComponentOptions<CurrentTimeMarkerArrowAll, DefaultData<CurrentTimeMarkerArrowData>, DefaultMethods<CurrentTimeMarkerArrowAll>, CurrentTimeMarkerArrowComputed, RecordPropsDefinition<CurrentTimeMarkerArrowProps>>;
42
+ declare const CurrentTimeMarkerArrow: DefineComponent<CurrentTimeMarkerArrowProps, any, CurrentTimeMarkerArrowData, CurrentTimeMarkerArrowComputed, CurrentTimeMarkerArrowMethods, {}, {}, {}, string, CurrentTimeMarkerArrowProps, CurrentTimeMarkerArrowProps, {}>;
43
+ export { CurrentTimeMarkerArrow, CurrentTimeMarkerArrowVue2 };
@@ -0,0 +1,135 @@
1
+ // @ts-ignore
2
+ import * as Vue from 'vue';
3
+ var allVue = Vue;
4
+ var gh = allVue.h;
5
+ import { cloneDate } from '@progress/kendo-date-math';
6
+ import { classNames } from '@progress/kendo-vue-common'; // import { useSchedulerElementContext, useSchedulerPropsContext, useSchedulerViewSlotsContext } from '../context';
7
+
8
+ import { first, isInTimeRange, intersects } from '../utils';
9
+ import { getRect } from '../views/common/utils';
10
+
11
+ var setTime = function setTime(origin, candidate) {
12
+ var date = cloneDate(origin);
13
+ date.setHours(candidate.getHours(), candidate.getMinutes(), candidate.getSeconds(), candidate.getMilliseconds());
14
+ return date;
15
+ }; // tslint:enable:max-line-length
16
+
17
+
18
+ var CurrentTimeMarkerArrowVue2 = {
19
+ name: 'KendoCurrentTimeMarkerArrow',
20
+ props: {
21
+ updateInterval: {
22
+ type: Number,
23
+ default: 60000
24
+ },
25
+ groupIndex: Number,
26
+ vertical: Boolean,
27
+ attachArrow: Object
28
+ },
29
+ inject: {
30
+ ks: {
31
+ default: null
32
+ },
33
+ bv: {
34
+ default: null
35
+ }
36
+ },
37
+ created: function created() {
38
+ this.interval = undefined;
39
+ this.arrowRef = null;
40
+ },
41
+ data: function data() {
42
+ return {
43
+ show: false
44
+ };
45
+ },
46
+ mounted: function mounted() {
47
+ this.arrowRef = this.$el;
48
+ this.position();
49
+
50
+ if (!this.ks.scheduler || !this.ks.scheduler.$el || !window) {
51
+ return;
52
+ }
53
+
54
+ clearInterval(this.interval);
55
+ this.interval = window.setInterval(this.position, this.updateInterval);
56
+ this.observer = new window.ResizeObserver(this.position);
57
+ this.observer.observe(this.ks.scheduler.$el);
58
+ },
59
+ destroyed: !!gh ? undefined : function () {
60
+ if (this.observer) {
61
+ this.observer.disconnect();
62
+ }
63
+ },
64
+ // @ts-ignore
65
+ unmounted: function unmounted() {
66
+ if (this.observer) {
67
+ this.observer.disconnect();
68
+ }
69
+ },
70
+ // @ts-ignore
71
+ setup: !gh ? undefined : function () {
72
+ var v3 = !!gh;
73
+ return {
74
+ v3: v3
75
+ };
76
+ },
77
+ // @ts-ignore
78
+ render: function render(createElement) {
79
+ var h = gh || createElement; // const dir = useDir(line, schedulerProps.rtl === true ? 'rtl' : undefined);
80
+
81
+ return h("div", {
82
+ "class": classNames('k-current-time', {
83
+ 'k-current-time-arrow-right': !this.$props.vertical && this.$props.dir !== 'rtl',
84
+ 'k-current-time-arrow-left': !this.$props.vertical && this.$props.dir === 'rtl',
85
+ 'k-current-time-arrow-down': this.$props.vertical
86
+ }),
87
+ style: {
88
+ transform: this.$props.vertical ? this.$props.dir === 'rtl' ? 'translateX(50%)' : 'translateX(-50%)' : 'translateY(-50%)',
89
+ visibility: !this.show ? 'hidden' : undefined
90
+ }
91
+ });
92
+ },
93
+ methods: {
94
+ position: function position() {
95
+ var _this = this;
96
+
97
+ if (!this.bv.slots) {
98
+ return;
99
+ }
100
+
101
+ var sameTimeSlots = this.bv.slots.filter(function (s) {
102
+ return (_this.$props.groupIndex === undefined || _this.$props.groupIndex === null || s.group.index === _this.$props.groupIndex) && (_this.$props.vertical ? intersects(new Date(), new Date(), s.start, s.end, true) : isInTimeRange(new Date(), s.start, s.end)) && !s.isAllDay;
103
+ });
104
+
105
+ if (sameTimeSlots && sameTimeSlots.length && this.$el) {
106
+ var firstSlot = first(sameTimeSlots);
107
+
108
+ if (!firstSlot) {
109
+ return;
110
+ }
111
+
112
+ var rect = getRect(firstSlot.$el);
113
+ var arrowRect = getRect(this.arrowRef);
114
+ var pxPerMillisecond = (this.$props.vertical ? rect.width : rect.height) / (firstSlot.end.getTime() - firstSlot.start.getTime());
115
+ var offset = (Date.now() - setTime(new Date(), firstSlot.start).getTime()) * pxPerMillisecond;
116
+ var rtl = this.$props.dir === 'rtl';
117
+ var top_1 = this.$props.vertical ? rect.top : rect.top + offset - arrowRect.height / 2;
118
+ var horizontalDimension = rtl ? 'right' : 'left';
119
+ var horizontalMeasure = this.$props.vertical ? rect[horizontalDimension] + offset - arrowRect.width / 2 : rect[horizontalDimension];
120
+
121
+ if (this.$props.vertical) {
122
+ this.arrowRef.style[horizontalDimension] = horizontalMeasure + "px";
123
+ } else {
124
+ this.arrowRef.style.top = top_1 + "px";
125
+ }
126
+
127
+ this.show = true;
128
+ } else {
129
+ this.show = false;
130
+ }
131
+ }
132
+ }
133
+ };
134
+ var CurrentTimeMarkerArrow = CurrentTimeMarkerArrowVue2;
135
+ export { CurrentTimeMarkerArrow, CurrentTimeMarkerArrowVue2 };
@@ -3,7 +3,8 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var inject = allVue.inject;
6
- import { provideIntlService } from '@progress/kendo-vue-intl'; // tslint:enable:max-line-length
6
+ import { provideIntlService } from '@progress/kendo-vue-intl';
7
+ import { getTemplate } from '@progress/kendo-vue-common'; // tslint:enable:max-line-length
7
8
 
8
9
  var DateHeaderCellVue2 = {
9
10
  name: 'KendoDateHeaderCell',
@@ -35,11 +36,23 @@ var DateHeaderCellVue2 = {
35
36
  render: function render(createElement) {
36
37
  var h = gh || createElement;
37
38
  var intl = provideIntlService(this);
39
+ var renderAs;
40
+ var defaultRendering = intl.formatDate(this.$props.date, this.$props.format);
41
+ renderAs = getTemplate.call(this, {
42
+ h: h,
43
+ template: this.$props.as,
44
+ defaultRendering: defaultRendering,
45
+ additionalProps: {
46
+ default: defaultRendering,
47
+ date: this.$props.date,
48
+ format: this.$props.format
49
+ }
50
+ });
38
51
  return h("div", {
39
52
  "class": 'k-scheduler-cell k-heading-cell'
40
53
  }, [h("span", {
41
54
  "class": "k-link k-nav-day"
42
- }, [intl.formatDate(this.$props.date, this.$props.format)])]);
55
+ }, [renderAs])]);
43
56
  }
44
57
  };
45
58
  var DateHeaderCell = DateHeaderCellVue2;
@@ -18,10 +18,6 @@ export interface SchedulerFormProps extends FormProps {
18
18
  * Specifies the `dataItem` to be visualized inside the form.
19
19
  */
20
20
  dataItem: DataItem;
21
- /**
22
- * Specifies the custom form.
23
- */
24
- renderForm: any;
25
21
  /**
26
22
  * Called when the `cancel` button is clicked.
27
23
  */
@@ -30,20 +26,6 @@ export interface SchedulerFormProps extends FormProps {
30
26
  * Called when the `close` button is clicked.
31
27
  */
32
28
  onClose?: (event: SchedulerFormStateChangeEvent<null>) => void;
33
- /**
34
- * Overrides the component used for visualizing the `editor`.
35
- * The [SchedulerFormEditor]({% slug api_scheduler_schedulerFormEditor %}) component is used, by default.
36
- *
37
- * For more information, please refer to the [`Scheduler Form Customization`]({% slug overview_customization_form_scheduler %}) article.
38
- */
39
- editor?: any;
40
- /**
41
- * Overrides the component used for visualizing the `dialog`.
42
- * The [Kendo UI for Vue Dialog]({% slug api_dialogs_dialog %}) component is used, by default.
43
- *
44
- * For more information, please refer to the [`Scheduler Form Customization`]({% slug overview_customization_form_scheduler %}) article.
45
- */
46
- dialog?: any;
47
29
  }
48
30
  /**
49
31
  * Represent the `ref` of the SchedulerForm component.