@progress/kendo-vue-scheduler 3.1.4 → 3.1.5-dev.202204110939

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/components/SchedulerForm.js +6 -0
  3. package/dist/es/components/SchedulerOccurrenceDialog.js +52 -7
  4. package/dist/es/components/SchedulerRemoveDialog.js +52 -7
  5. package/dist/es/editors/ResourceEditor.js +13 -11
  6. package/dist/es/editors/SchedulerFormEditor.js +11 -10
  7. package/dist/es/editors/ZonedDateTime.d.ts +1 -0
  8. package/dist/es/editors/ZonedDateTime.js +5 -2
  9. package/dist/es/items/SchedulerEditItem.js +401 -211
  10. package/dist/es/items/SchedulerItem.js +104 -95
  11. package/dist/es/items/SchedulerViewItem.js +8 -2
  12. package/dist/es/items/hooks/use-drag-item.d.ts +2 -6
  13. package/dist/es/items/hooks/use-drag-item.js +228 -153
  14. package/dist/es/items/hooks/use-show-occurrence-dialog.d.ts +1 -0
  15. package/dist/es/items/hooks/use-show-occurrence-dialog.js +1 -2
  16. package/dist/es/items/hooks/use-show-remove-item-dialog.d.ts +1 -0
  17. package/dist/es/items/hooks/use-show-remove-item-dialog.js +1 -2
  18. package/dist/es/package-metadata.js +1 -1
  19. package/dist/es/recurrence/RecurrenceEditor.d.ts +1 -0
  20. package/dist/es/recurrence/RecurrenceEditor.js +5 -0
  21. package/dist/es/recurrence/RecurrenceFrequencyEditor.js +4 -0
  22. package/dist/es/recurrence/RecurrenceRepeatOnWeekEditor.js +4 -0
  23. package/dist/es/tasks/SchedulerEditTask.d.ts +9 -0
  24. package/dist/es/tasks/SchedulerEditTask.js +118 -35
  25. package/dist/es/tasks/SchedulerTask.js +3 -2
  26. package/dist/es/tasks/SchedulerViewTask.js +15 -3
  27. package/dist/es/views/agenda/AgendaView.js +21 -9
  28. package/dist/es/views/agenda/AgendaViewBody.d.ts +1 -0
  29. package/dist/es/views/agenda/AgendaViewBody.js +6 -1
  30. package/dist/es/views/common/SchedulerDrag.js +62 -11
  31. package/dist/es/views/day/DayView.js +4 -0
  32. package/dist/es/views/month/MonthView.js +5 -1
  33. package/dist/es/views/time/MultiDayTimelineView.js +28 -9
  34. package/dist/es/views/time/TimelineView.js +4 -0
  35. package/dist/es/views/week/WeekView.js +12 -2
  36. package/dist/es/views/week/WorkWeekView.js +12 -2
  37. package/dist/npm/components/SchedulerForm.js +6 -0
  38. package/dist/npm/components/SchedulerOccurrenceDialog.js +52 -7
  39. package/dist/npm/components/SchedulerRemoveDialog.js +52 -7
  40. package/dist/npm/editors/ResourceEditor.js +12 -10
  41. package/dist/npm/editors/SchedulerFormEditor.js +11 -11
  42. package/dist/npm/editors/ZonedDateTime.d.ts +1 -0
  43. package/dist/npm/editors/ZonedDateTime.js +4 -1
  44. package/dist/npm/items/SchedulerEditItem.js +400 -207
  45. package/dist/npm/items/SchedulerItem.js +104 -95
  46. package/dist/npm/items/SchedulerViewItem.js +8 -2
  47. package/dist/npm/items/hooks/use-drag-item.d.ts +2 -6
  48. package/dist/npm/items/hooks/use-drag-item.js +231 -153
  49. package/dist/npm/items/hooks/use-show-occurrence-dialog.d.ts +1 -0
  50. package/dist/npm/items/hooks/use-show-occurrence-dialog.js +2 -2
  51. package/dist/npm/items/hooks/use-show-remove-item-dialog.d.ts +1 -0
  52. package/dist/npm/items/hooks/use-show-remove-item-dialog.js +2 -2
  53. package/dist/npm/package-metadata.js +1 -1
  54. package/dist/npm/recurrence/RecurrenceEditor.d.ts +1 -0
  55. package/dist/npm/recurrence/RecurrenceEditor.js +5 -0
  56. package/dist/npm/recurrence/RecurrenceFrequencyEditor.js +4 -0
  57. package/dist/npm/recurrence/RecurrenceRepeatOnWeekEditor.js +4 -0
  58. package/dist/npm/tasks/SchedulerEditTask.d.ts +9 -0
  59. package/dist/npm/tasks/SchedulerEditTask.js +120 -35
  60. package/dist/npm/tasks/SchedulerTask.js +3 -2
  61. package/dist/npm/tasks/SchedulerViewTask.js +15 -3
  62. package/dist/npm/views/agenda/AgendaView.js +21 -9
  63. package/dist/npm/views/agenda/AgendaViewBody.d.ts +1 -0
  64. package/dist/npm/views/agenda/AgendaViewBody.js +6 -1
  65. package/dist/npm/views/common/SchedulerDrag.js +62 -11
  66. package/dist/npm/views/day/DayView.js +4 -0
  67. package/dist/npm/views/month/MonthView.js +5 -1
  68. package/dist/npm/views/time/MultiDayTimelineView.js +27 -8
  69. package/dist/npm/views/time/TimelineView.js +4 -0
  70. package/dist/npm/views/week/WeekView.js +12 -2
  71. package/dist/npm/views/week/WorkWeekView.js +12 -2
  72. package/package.json +12 -12
@@ -29,6 +29,12 @@ import { messages, editorValidationRequired, editorValidationStart, editorValida
29
29
 
30
30
  var SchedulerFormVue2 = {
31
31
  name: 'KendoSchedulerForm',
32
+ // @ts-ignore
33
+ emits: {
34
+ cancel: null,
35
+ close: null,
36
+ submit: null
37
+ },
32
38
  props: {
33
39
  dataItem: Object,
34
40
  renderForm: Object,
@@ -56,35 +56,80 @@ var SchedulerOccurrenceDialogVue2 = {
56
56
  h(Dialog, {
57
57
  title: titleMessage,
58
58
  attrs: this.v3 ? undefined : {
59
- title: titleMessage
59
+ title: titleMessage,
60
+ appendTo: 'body'
60
61
  },
62
+ appendTo: 'body',
61
63
  onClose: this.handleClose,
62
64
  on: this.v3 ? undefined : {
63
65
  "close": this.handleClose
64
66
  }
65
67
  }, this.v3 ? function () {
66
- return [confirmationMessage, h(DialogActionsBar, [h(Button, {
68
+ return [confirmationMessage, // @ts-ignore function children
69
+ h(DialogActionsBar, _this.v3 ? function () {
70
+ return [// @ts-ignore function children
71
+ h(Button, {
72
+ onClick: _this.handleOccurrenceClick,
73
+ on: _this.v3 ? undefined : {
74
+ "click": _this.handleOccurrenceClick
75
+ }
76
+ }, _this.v3 ? function () {
77
+ return [occurrenceMessage];
78
+ } : [occurrenceMessage]), // @ts-ignore function children
79
+ h(Button, {
80
+ onClick: _this.handleSeriesClick,
81
+ on: _this.v3 ? undefined : {
82
+ "click": _this.handleSeriesClick
83
+ }
84
+ }, _this.v3 ? function () {
85
+ return [seriesMessage];
86
+ } : [seriesMessage])];
87
+ } : [h(Button, {
67
88
  onClick: _this.handleOccurrenceClick,
68
89
  on: _this.v3 ? undefined : {
69
90
  "click": _this.handleOccurrenceClick
70
91
  }
71
- }, [occurrenceMessage]), h(Button, {
92
+ }, _this.v3 ? function () {
93
+ return [occurrenceMessage];
94
+ } : [occurrenceMessage]), h(Button, {
72
95
  onClick: _this.handleSeriesClick,
73
96
  on: _this.v3 ? undefined : {
74
97
  "click": _this.handleSeriesClick
75
98
  }
76
- }, [seriesMessage])])];
77
- } : [confirmationMessage, h(DialogActionsBar, [h(Button, {
99
+ }, _this.v3 ? function () {
100
+ return [seriesMessage];
101
+ } : [seriesMessage])])];
102
+ } : [confirmationMessage, h(DialogActionsBar, _this.v3 ? function () {
103
+ return [h(Button, {
104
+ onClick: _this.handleOccurrenceClick,
105
+ on: _this.v3 ? undefined : {
106
+ "click": _this.handleOccurrenceClick
107
+ }
108
+ }, _this.v3 ? function () {
109
+ return [occurrenceMessage];
110
+ } : [occurrenceMessage]), h(Button, {
111
+ onClick: _this.handleSeriesClick,
112
+ on: _this.v3 ? undefined : {
113
+ "click": _this.handleSeriesClick
114
+ }
115
+ }, _this.v3 ? function () {
116
+ return [seriesMessage];
117
+ } : [seriesMessage])];
118
+ } : [h(Button, {
78
119
  onClick: _this.handleOccurrenceClick,
79
120
  on: _this.v3 ? undefined : {
80
121
  "click": _this.handleOccurrenceClick
81
122
  }
82
- }, [occurrenceMessage]), h(Button, {
123
+ }, _this.v3 ? function () {
124
+ return [occurrenceMessage];
125
+ } : [occurrenceMessage]), h(Button, {
83
126
  onClick: _this.handleSeriesClick,
84
127
  on: _this.v3 ? undefined : {
85
128
  "click": _this.handleSeriesClick
86
129
  }
87
- }, [seriesMessage])])])
130
+ }, _this.v3 ? function () {
131
+ return [seriesMessage];
132
+ } : [seriesMessage])])])
88
133
  );
89
134
  },
90
135
  methods: {
@@ -41,35 +41,80 @@ var SchedulerRemoveDialogVue2 = {
41
41
  h(Dialog, {
42
42
  title: deleteDialogTitleMessage,
43
43
  attrs: this.v3 ? undefined : {
44
- title: deleteDialogTitleMessage
44
+ title: deleteDialogTitleMessage,
45
+ appendTo: 'body'
45
46
  },
47
+ appendTo: 'body',
46
48
  onClose: this.handleClose,
47
49
  on: this.v3 ? undefined : {
48
50
  "close": this.handleClose
49
51
  }
50
52
  }, this.v3 ? function () {
51
- return [removeMessage, h(DialogActionsBar, [h(Button, {
53
+ return [removeMessage, // @ts-ignore function children
54
+ h(DialogActionsBar, _this.v3 ? function () {
55
+ return [// @ts-ignore function children
56
+ h(Button, {
57
+ onClick: _this.handleCancel,
58
+ on: _this.v3 ? undefined : {
59
+ "click": _this.handleCancel
60
+ }
61
+ }, _this.v3 ? function () {
62
+ return [removeCancelMessage];
63
+ } : [removeCancelMessage]), // @ts-ignore function children
64
+ h(Button, {
65
+ onClick: _this.handleConfirm,
66
+ on: _this.v3 ? undefined : {
67
+ "click": _this.handleConfirm
68
+ }
69
+ }, _this.v3 ? function () {
70
+ return [removeConfirmMessage];
71
+ } : [removeConfirmMessage])];
72
+ } : [h(Button, {
52
73
  onClick: _this.handleCancel,
53
74
  on: _this.v3 ? undefined : {
54
75
  "click": _this.handleCancel
55
76
  }
56
- }, [removeCancelMessage]), h(Button, {
77
+ }, _this.v3 ? function () {
78
+ return [removeCancelMessage];
79
+ } : [removeCancelMessage]), h(Button, {
57
80
  onClick: _this.handleConfirm,
58
81
  on: _this.v3 ? undefined : {
59
82
  "click": _this.handleConfirm
60
83
  }
61
- }, [removeConfirmMessage])])];
62
- } : [removeMessage, h(DialogActionsBar, [h(Button, {
84
+ }, _this.v3 ? function () {
85
+ return [removeConfirmMessage];
86
+ } : [removeConfirmMessage])])];
87
+ } : [removeMessage, h(DialogActionsBar, _this.v3 ? function () {
88
+ return [h(Button, {
89
+ onClick: _this.handleCancel,
90
+ on: _this.v3 ? undefined : {
91
+ "click": _this.handleCancel
92
+ }
93
+ }, _this.v3 ? function () {
94
+ return [removeCancelMessage];
95
+ } : [removeCancelMessage]), h(Button, {
96
+ onClick: _this.handleConfirm,
97
+ on: _this.v3 ? undefined : {
98
+ "click": _this.handleConfirm
99
+ }
100
+ }, _this.v3 ? function () {
101
+ return [removeConfirmMessage];
102
+ } : [removeConfirmMessage])];
103
+ } : [h(Button, {
63
104
  onClick: _this.handleCancel,
64
105
  on: _this.v3 ? undefined : {
65
106
  "click": _this.handleCancel
66
107
  }
67
- }, [removeCancelMessage]), h(Button, {
108
+ }, _this.v3 ? function () {
109
+ return [removeCancelMessage];
110
+ } : [removeCancelMessage]), h(Button, {
68
111
  onClick: _this.handleConfirm,
69
112
  on: _this.v3 ? undefined : {
70
113
  "click": _this.handleConfirm
71
114
  }
72
- }, [removeConfirmMessage])])])
115
+ }, _this.v3 ? function () {
116
+ return [removeConfirmMessage];
117
+ } : [removeConfirmMessage])])])
73
118
  );
74
119
  },
75
120
  methods: {
@@ -3,10 +3,14 @@ import * as Vue from 'vue';
3
3
  var allVue = Vue;
4
4
  var gh = allVue.h;
5
5
  var inject = allVue.inject;
6
- import { DropDownList } from '@progress/kendo-vue-dropdowns'; // tslint:enable:max-line-length
6
+ import { DropDownList, MultiSelect } from '@progress/kendo-vue-dropdowns'; // tslint:enable:max-line-length
7
7
 
8
8
  var ResourceEditorVue2 = {
9
9
  name: 'KendoResourceEditor',
10
+ // @ts-ignore
11
+ emits: {
12
+ change: null
13
+ },
10
14
  props: {
11
15
  resource: Object,
12
16
  dataItems: Array,
@@ -33,10 +37,7 @@ var ResourceEditorVue2 = {
33
37
  render: function render(createElement) {
34
38
  var _this = this;
35
39
 
36
- var h = gh || createElement; // const Component = this.$props.multiple
37
- // ? MultiSelect
38
- // : DropDownList;
39
- // const itemRenderer = React.useCallback(
40
+ var h = gh || createElement; // const itemRenderer = React.useCallback(
40
41
  // (element, itemProps) => {
41
42
  // const children = (
42
43
  // <>
@@ -94,11 +95,12 @@ var ResourceEditorVue2 = {
94
95
  }) : this.$props.dataItems.find(function (item) {
95
96
  return item[_this.$props.valueField] === _this.$props.value;
96
97
  });
97
- return h(DropDownList, {
98
+ var DropDownEditor = this.$props.multiple ? MultiSelect : DropDownList;
99
+ return h(DropDownEditor, {
98
100
  value: value,
99
101
  attrs: this.v3 ? undefined : {
100
102
  value: value,
101
- data: this.$props.dataItems,
103
+ dataItems: this.$props.dataItems,
102
104
  textField: this.$props.textField,
103
105
  dataItemKey: this.$props.valueField,
104
106
  valid: this.$props.valid,
@@ -108,7 +110,7 @@ var ResourceEditorVue2 = {
108
110
  on: this.v3 ? undefined : {
109
111
  "change": this.handleChange
110
112
  },
111
- data: this.$props.dataItems,
113
+ dataItems: this.$props.dataItems,
112
114
  textField: this.$props.textField,
113
115
  dataItemKey: this.$props.valueField,
114
116
  valid: this.$props.valid,
@@ -117,10 +119,10 @@ var ResourceEditorVue2 = {
117
119
  },
118
120
  methods: {
119
121
  handleChange: function handleChange(event) {
120
- var valueField = event.target.props.dataItemKey;
121
- var newValue = this.$props.multiple ? (event.target.value || []).map(function (item) {
122
+ var valueField = event.component.$props.dataItemKey;
123
+ var newValue = this.$props.multiple ? (event.value || []).map(function (item) {
122
124
  return item[valueField];
123
- }) : event.target.value[valueField];
125
+ }) : event.value[valueField];
124
126
  this.$emit('change', {
125
127
  value: newValue
126
128
  });
@@ -21,7 +21,6 @@ import { Error, Label } from '@progress/kendo-vue-labels';
21
21
  import { provideLocalizationService } from '@progress/kendo-vue-intl';
22
22
  import { Field } from '@progress/kendo-vue-form';
23
23
  import { Input, Checkbox, TextArea } from '@progress/kendo-vue-inputs';
24
- import { DatePicker, DateTimePicker } from '@progress/kendo-vue-dateinputs';
25
24
  import { messages, editorEventTitle, editorEventStart, editorEventEnd, editorEventDescription, editorEventAllDay, editorEventTimeZone, editorEventSeparateTimeZones, editorEventStartTimeZone, editorEventEndTimeZone, editorValidationRequired } from '../messages'; // import { useSchedulerPropsContext, useSchedulerFieldsContext } from '../context';
26
25
 
27
26
  import { FilterableComboBox } from './FilterableComboBox';
@@ -351,13 +350,13 @@ var SchedulerFormEditorVue2 = {
351
350
  name: this.ks.fields.start,
352
351
  width: "auto",
353
352
  component: StartEditor,
354
- as: this.kendoForm.valueGetter(this.ks.fields.isAllDay) ? DatePicker : DateTimePicker,
353
+ isAllDay: !!this.kendoForm.values.isAllDay,
355
354
  timezone: this.ks.timezone
356
355
  },
357
356
  name: this.ks.fields.start,
358
357
  width: "auto",
359
358
  component: StartEditor,
360
- as: this.kendoForm.valueGetter(this.ks.fields.isAllDay) ? DatePicker : DateTimePicker,
359
+ isAllDay: !!this.kendoForm.values.isAllDay,
361
360
  timezone: this.ks.timezone
362
361
  }), this.kendoForm.errors[this.ks.fields.start] && // @ts-ignore function children
363
362
  h(Field, {
@@ -369,7 +368,7 @@ var SchedulerFormEditorVue2 = {
369
368
  component: StartError
370
369
  }, this.v3 ? function () {
371
370
  return [_this.kendoForm.errors[_this.ks.fields.start]];
372
- } : [_this.kendoForm.errors[_this.ks.fields.start]])]), "\xA0", h("div", [h(StartTimezoneCheckedEditor, {
371
+ } : [_this.kendoForm.errors[_this.ks.fields.start]])]), "\xA0", timezones.length > 0 && h("div", [h(StartTimezoneCheckedEditor, {
373
372
  id: 'k-scheduler-editor-set-start-timezone',
374
373
  attrs: this.v3 ? undefined : {
375
374
  id: 'k-scheduler-editor-set-start-timezone',
@@ -455,13 +454,13 @@ var SchedulerFormEditorVue2 = {
455
454
  name: this.ks.fields.end,
456
455
  width: "auto",
457
456
  component: EndEditor,
458
- as: this.kendoForm.valueGetter(this.ks.fields.isAllDay) ? DatePicker : DateTimePicker,
457
+ isAllDay: !!this.kendoForm.values.isAllDay,
459
458
  timezone: this.ks.timezone
460
459
  },
461
460
  name: this.ks.fields.end,
462
461
  width: "auto",
463
462
  component: EndEditor,
464
- as: this.kendoForm.valueGetter(this.ks.fields.isAllDay) ? DatePicker : DateTimePicker,
463
+ isAllDay: !!this.kendoForm.values.isAllDay,
465
464
  timezone: this.ks.timezone
466
465
  }), this.kendoForm.errors[this.ks.fields.end] && // @ts-ignore function children
467
466
  h(Field, {
@@ -572,10 +571,12 @@ var SchedulerFormEditorVue2 = {
572
571
  component: RecurrenceEditor,
573
572
  attrs: this.v3 ? undefined : {
574
573
  component: RecurrenceEditor,
574
+ changeOnInput: false,
575
575
  field: this.ks.fields.recurrenceRule,
576
576
  name: this.ks.fields.recurrenceRule,
577
577
  start: start
578
578
  },
579
+ changeOnInput: false,
579
580
  field: this.ks.fields.recurrenceRule,
580
581
  name: this.ks.fields.recurrenceRule,
581
582
  start: start
@@ -617,7 +618,7 @@ var SchedulerFormEditorVue2 = {
617
618
  component: DescriptionError
618
619
  }, this.v3 ? function () {
619
620
  return [_this.kendoForm.errors[_this.ks.fields.description]];
620
- } : [_this.kendoForm.errors[_this.ks.fields.description]])])]), (this.ks.resources || []).map(function (resource) {
621
+ } : [_this.kendoForm.errors[_this.ks.fields.description]])])]), (this.ks.props.resources || []).map(function (resource) {
621
622
  return h("div", {
622
623
  key: resource.field
623
624
  }, [h("div", {
@@ -639,7 +640,7 @@ var SchedulerFormEditorVue2 = {
639
640
  component: ResourceEditor,
640
641
  resource: resource,
641
642
  multiple: resource.multiple,
642
- data: resource.data,
643
+ dataItems: resource.data,
643
644
  textField: resource.textField,
644
645
  valueField: resource.valueField,
645
646
  colorField: resource.colorField
@@ -647,12 +648,12 @@ var SchedulerFormEditorVue2 = {
647
648
  component: ResourceEditor,
648
649
  resource: resource,
649
650
  multiple: resource.multiple,
650
- data: resource.data,
651
+ dataItems: resource.data,
651
652
  textField: resource.textField,
652
653
  valueField: resource.valueField,
653
654
  colorField: resource.colorField
654
655
  })])]);
655
- })]);
656
+ }, this)]);
656
657
  },
657
658
  methods: {
658
659
  handleStartZoneCheckboxChange: function handleStartZoneCheckboxChange(e) {
@@ -11,6 +11,7 @@ import { Omit } from '../models/Omit';
11
11
  export declare type ZonedDateTimeProps = Omit<(DatePickerProps | DateTimePickerProps), 'value'> & {
12
12
  as?: any;
13
13
  value?: string | Date;
14
+ isAllDay: boolean;
14
15
  };
15
16
  /**
16
17
  * @hidden
@@ -32,13 +32,14 @@ import * as Vue from 'vue';
32
32
  var allVue = Vue;
33
33
  var gh = allVue.h;
34
34
  var inject = allVue.inject;
35
- import { DateTimePicker } from '@progress/kendo-vue-dateinputs';
35
+ import { DatePicker, DateTimePicker } from '@progress/kendo-vue-dateinputs';
36
36
  import { ZonedDate, toLocalDate } from '@progress/kendo-date-math'; // tslint:enable:max-line-length
37
37
 
38
38
  var ZonedDateTimeVue2 = {
39
39
  name: 'KendoZonedDateTime',
40
40
  props: __assign(__assign({}, DateTimePicker.props), {
41
41
  value: [String, Date],
42
+ isAllDay: Boolean,
42
43
  as: [String, Function, Object]
43
44
  }),
44
45
  inject: {
@@ -64,10 +65,12 @@ var ZonedDateTimeVue2 = {
64
65
  var timezone = this.ks.timezone;
65
66
 
66
67
  var dtpProps = __assign(__assign({}, other), {
68
+ format: this.isAllDay ? 'd' : 'M/dd/yyyy HH:mm',
67
69
  value: this.readDateAsLocal(other.value, timezone)
68
70
  });
69
71
 
70
- var dtp = h(DateTimePicker, __assign({
72
+ var NeededPicker = this.isAllDay ? DatePicker : DateTimePicker;
73
+ var dtp = h(NeededPicker, __assign({
71
74
  onChange: this.handleChange,
72
75
  on: this.v3 ? undefined : {
73
76
  'change': this.handleChange