@progress/kendo-vue-scheduler 3.10.2 → 3.11.0-dev.202305230751

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 (38) hide show
  1. package/dist/cdn/js/kendo-vue-scheduler.js +1 -1
  2. package/dist/es/Scheduler.js +17 -9
  3. package/dist/es/components/SchedulerActionButtons.js +34 -5
  4. package/dist/es/components/SchedulerForm.js +1 -1
  5. package/dist/es/components/header/view-selector/SchedulerViewSelector.js +1 -13
  6. package/dist/es/components/header/view-selector/ViewSelectorItem.js +1 -0
  7. package/dist/es/components/header/view-selector/ViewSelectorList.js +31 -80
  8. package/dist/es/editors/SchedulerFormEditor.js +869 -169
  9. package/dist/es/items/SchedulerItem.js +48 -28
  10. package/dist/es/package-metadata.js +1 -1
  11. package/dist/es/recurrence/RecurrenceEditor.js +313 -100
  12. package/dist/es/recurrence/RecurrenceFrequencyEditor.js +1 -0
  13. package/dist/es/views/agenda/AgendaViewBody.js +8 -8
  14. package/dist/esm/Scheduler.js +17 -9
  15. package/dist/esm/components/SchedulerActionButtons.js +34 -5
  16. package/dist/esm/components/SchedulerForm.js +1 -1
  17. package/dist/esm/components/header/view-selector/SchedulerViewSelector.js +1 -13
  18. package/dist/esm/components/header/view-selector/ViewSelectorItem.js +1 -0
  19. package/dist/esm/components/header/view-selector/ViewSelectorList.js +31 -80
  20. package/dist/esm/editors/SchedulerFormEditor.js +869 -169
  21. package/dist/esm/items/SchedulerItem.js +48 -28
  22. package/dist/esm/package-metadata.js +1 -1
  23. package/dist/esm/recurrence/RecurrenceEditor.js +313 -100
  24. package/dist/esm/recurrence/RecurrenceFrequencyEditor.js +1 -0
  25. package/dist/esm/views/agenda/AgendaViewBody.js +8 -8
  26. package/dist/npm/Scheduler.js +16 -8
  27. package/dist/npm/components/SchedulerActionButtons.js +34 -5
  28. package/dist/npm/components/SchedulerForm.js +1 -1
  29. package/dist/npm/components/header/view-selector/SchedulerViewSelector.js +1 -12
  30. package/dist/npm/components/header/view-selector/ViewSelectorItem.js +1 -0
  31. package/dist/npm/components/header/view-selector/ViewSelectorList.js +30 -79
  32. package/dist/npm/editors/SchedulerFormEditor.js +868 -168
  33. package/dist/npm/items/SchedulerItem.js +48 -28
  34. package/dist/npm/package-metadata.js +1 -1
  35. package/dist/npm/recurrence/RecurrenceEditor.js +313 -100
  36. package/dist/npm/recurrence/RecurrenceFrequencyEditor.js +1 -0
  37. package/dist/npm/views/agenda/AgendaViewBody.js +8 -8
  38. package/package.json +12 -12
@@ -32,14 +32,14 @@ var gh = allVue.h;
32
32
  var isV3 = allVue.version && allVue.version[0] === '3';
33
33
  var main_1 = require("./utils/main");
34
34
  var kendo_vue_common_1 = require("@progress/kendo-vue-common");
35
- var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
36
35
  var SchedulerHeader_1 = require("./components/header/SchedulerHeader");
36
+ var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
37
37
  var SchedulerNavigation_1 = require("./components/header/navigation/SchedulerNavigation");
38
- var SchedulerViewSelector_1 = require("./components/header/view-selector/SchedulerViewSelector");
39
38
  var kendo_date_math_1 = require("@progress/kendo-date-math");
40
39
  var SchedulerFooter_1 = require("./components/footer/SchedulerFooter");
41
40
  var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
42
41
  var NavigationDatePicker_1 = require("./components/header/navigation/NavigationDatePicker");
42
+ var ViewSelectorList_1 = require("./components/header/view-selector/ViewSelectorList");
43
43
  var BusinessHours_1 = require("./components/footer/bussiness-hours/BusinessHours");
44
44
  var DayView_1 = require("./views/day/DayView");
45
45
  var kendo_vue_common_2 = require("@progress/kendo-vue-common");
@@ -127,9 +127,12 @@ var SchedulerVue2 = {
127
127
  timeHeaderCell: [String, Function, Object]
128
128
  },
129
129
  computed: {
130
+ isRtl: function isRtl() {
131
+ return this.$props.rtl !== undefined ? this.$props.rtl : this.currentRtl;
132
+ },
130
133
  wrapperClassName: function wrapperClassName() {
131
134
  return {
132
- 'k-rtl': this.$props.rtl !== undefined ? this.$props.rtl : this.dir === 'rtl',
135
+ 'k-rtl': this.isRtl,
133
136
  'k-widget': true,
134
137
  'k-scheduler': true,
135
138
  'k-floatwrap': true
@@ -139,6 +142,9 @@ var SchedulerVue2 = {
139
142
  return (0, main_1.getModelFields)(this.$props.modelFields).fields;
140
143
  }
141
144
  },
145
+ mounted: function mounted() {
146
+ this.currentRtl = (0, kendo_vue_common_1.isRtl)(this.$el);
147
+ },
142
148
  provide: function provide() {
143
149
  return {
144
150
  ks: this.ks,
@@ -201,6 +207,9 @@ var SchedulerVue2 = {
201
207
  };
202
208
  },
203
209
  watch: {
210
+ isRtl: function isRtl(newRtl) {
211
+ this.ks.isRtl = newRtl;
212
+ },
204
213
  view: function view(newName) {
205
214
  this.updatePassedState(newName);
206
215
  },
@@ -230,7 +239,6 @@ var SchedulerVue2 = {
230
239
  var h = gh || createElement;
231
240
  (0, kendo_vue_common_2.validatePackage)(package_metadata_1.packageMetadata);
232
241
  var timezone = this.$props.timezone;
233
- // const dir = useDir(element);
234
242
  var view = this.views.find(function (currentView) {
235
243
  return currentView.name === _this.ks.activeViewName;
236
244
  }) || this.views[0] || h(DayView_1.DayView);
@@ -249,7 +257,6 @@ var SchedulerVue2 = {
249
257
  this.ks.dialogProps = view.dialogProps || this.$props.dialogProps;
250
258
  this.ks.formProps = view.formProps || this.$props.formProps;
251
259
  var currentEditable = (0, main_3.useEditable)(view.editable !== undefined ? view.editable : this.$props.editable);
252
- var ViewSelector = SchedulerViewSelector_1.SchedulerViewSelector;
253
260
  var viewComponent = this.getViewComponentByName(this.ks.activeViewName || view.name);
254
261
  var viewProps = __assign(__assign(__assign({}, this.$props), this.ks.view), {
255
262
  showWorkHours: this.ks.showWorkHours,
@@ -289,7 +296,7 @@ var SchedulerVue2 = {
289
296
  on: _this2.v3 ? undefined : {
290
297
  "change": _this2.handleDatePickerChange
291
298
  }
292
- }), h(kendo_vue_buttons_1.ToolbarSpacer), h(ViewSelector)];
299
+ }), h(kendo_vue_buttons_1.ToolbarSpacer), h(ViewSelectorList_1.ViewSelectorList)];
293
300
  } : [h(SchedulerNavigation_1.SchedulerNavigation, {
294
301
  onPrevclick: _this2.handlePrevClick,
295
302
  on: _this2.v3 ? undefined : {
@@ -308,7 +315,7 @@ var SchedulerVue2 = {
308
315
  on: _this2.v3 ? undefined : {
309
316
  "change": _this2.handleDatePickerChange
310
317
  }
311
- }), h(kendo_vue_buttons_1.ToolbarSpacer), h(ViewSelector)]);
318
+ }), h(kendo_vue_buttons_1.ToolbarSpacer), h(ViewSelectorList_1.ViewSelectorList)]);
312
319
  headerRender = kendo_vue_common_1.getTemplate.call(this, {
313
320
  h: h,
314
321
  template: header,
@@ -366,8 +373,8 @@ var SchedulerVue2 = {
366
373
  id: this.$props.id,
367
374
  tabindex: this.$props.tabIndex
368
375
  // Aria
369
- // dir={dir}
370
376
  ,
377
+ dir: this.isRtl && 'rtl',
371
378
  role: this.$props.role || 'application',
372
379
  "aria-label": this.$props.ariaLabel,
373
380
  "aria-labelledby": this.$props.ariaLabelledby
@@ -378,6 +385,7 @@ var SchedulerVue2 = {
378
385
  },
379
386
  "class": this.wrapperClassName,
380
387
  tabindex: this.$props.tabIndex,
388
+ dir: this.isRtl && 'rtl',
381
389
  role: this.$props.role || 'application',
382
390
  "aria-label": this.$props.ariaLabel,
383
391
  "aria-labelledby": this.$props.ariaLabelledby,
@@ -11,6 +11,7 @@ var gh = allVue.h;
11
11
  var isV3 = allVue.version && allVue.version[0] === '3';
12
12
  var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
13
13
  var kendo_vue_dialogs_1 = require("@progress/kendo-vue-dialogs");
14
+ var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
14
15
  /**
15
16
  * @hidden
16
17
  */
@@ -39,7 +40,11 @@ var SchedulerActionButtonsVue2 = {
39
40
  return (
40
41
  // @ts-ignore function children
41
42
  h(kendo_vue_dialogs_1.DialogActionsBar, {
42
- "class": 'k-form-buttons'
43
+ "class": 'k-form-buttons',
44
+ layout: 'start',
45
+ attrs: this.v3 ? undefined : {
46
+ layout: 'start'
47
+ }
43
48
  }, this.v3 ? function () {
44
49
  return [
45
50
  // @ts-ignore function children
@@ -47,9 +52,15 @@ var SchedulerActionButtonsVue2 = {
47
52
  type: "submit",
48
53
  attrs: _this.v3 ? undefined : {
49
54
  type: "submit",
50
- disabled: !_this.kendoForm.allowSubmit
55
+ themeColor: 'primary',
56
+ disabled: !_this.kendoForm.allowSubmit,
57
+ icon: 'save',
58
+ svgIcon: kendo_svg_icons_1.saveIcon
51
59
  },
60
+ themeColor: 'primary',
52
61
  disabled: !_this.kendoForm.allowSubmit,
62
+ icon: 'save',
63
+ svgIcon: kendo_svg_icons_1.saveIcon,
53
64
  onClick: _this.onSubmit,
54
65
  on: _this.v3 ? undefined : {
55
66
  "click": _this.onSubmit
@@ -62,7 +73,13 @@ var SchedulerActionButtonsVue2 = {
62
73
  onClick: _this.handleCancel,
63
74
  on: _this.v3 ? undefined : {
64
75
  "click": _this.handleCancel
65
- }
76
+ },
77
+ icon: 'cancel',
78
+ attrs: _this.v3 ? undefined : {
79
+ icon: 'cancel',
80
+ svgIcon: kendo_svg_icons_1.cancelIcon
81
+ },
82
+ svgIcon: kendo_svg_icons_1.cancelIcon
66
83
  }, _this.v3 ? function () {
67
84
  return [_this.editCancelMessage];
68
85
  } : [_this.editCancelMessage])];
@@ -70,9 +87,15 @@ var SchedulerActionButtonsVue2 = {
70
87
  type: "submit",
71
88
  attrs: _this.v3 ? undefined : {
72
89
  type: "submit",
73
- disabled: !_this.kendoForm.allowSubmit
90
+ themeColor: 'primary',
91
+ disabled: !_this.kendoForm.allowSubmit,
92
+ icon: 'save',
93
+ svgIcon: kendo_svg_icons_1.saveIcon
74
94
  },
95
+ themeColor: 'primary',
75
96
  disabled: !_this.kendoForm.allowSubmit,
97
+ icon: 'save',
98
+ svgIcon: kendo_svg_icons_1.saveIcon,
76
99
  onClick: _this.onSubmit,
77
100
  on: _this.v3 ? undefined : {
78
101
  "click": _this.onSubmit
@@ -83,7 +106,13 @@ var SchedulerActionButtonsVue2 = {
83
106
  onClick: _this.handleCancel,
84
107
  on: _this.v3 ? undefined : {
85
108
  "click": _this.handleCancel
86
- }
109
+ },
110
+ icon: 'cancel',
111
+ attrs: _this.v3 ? undefined : {
112
+ icon: 'cancel',
113
+ svgIcon: kendo_svg_icons_1.cancelIcon
114
+ },
115
+ svgIcon: kendo_svg_icons_1.cancelIcon
87
116
  }, _this.v3 ? function () {
88
117
  return [_this.editCancelMessage];
89
118
  } : [_this.editCancelMessage])])
@@ -140,7 +140,7 @@ var SchedulerFormVue2 = {
140
140
  var dialogProps = __assign({
141
141
  title: editorTitleMessage,
142
142
  appendTo: 'body',
143
- minWidth: this.media === 'desktop' ? 600 : '85%',
143
+ minWidth: this.media === 'desktop' ? 400 : '85%',
144
144
  wrapperId: this.dialogId
145
145
  }, this.ks.dialogProps);
146
146
  var formProps = __assign({
@@ -9,8 +9,6 @@ var Vue = require("vue");
9
9
  var allVue = Vue;
10
10
  var gh = allVue.h;
11
11
  var isV3 = allVue.version && allVue.version[0] === '3';
12
- var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
13
- var kendo_vue_common_1 = require("@progress/kendo-vue-common");
14
12
  var ViewSelectorList_1 = require("./ViewSelectorList");
15
13
  /**
16
14
  * @hidden
@@ -28,16 +26,7 @@ var SchedulerViewSelectorVue2 = {
28
26
  // @ts-ignore
29
27
  render: function render(createElement) {
30
28
  var h = gh || createElement;
31
- var defaultSlot = (0, kendo_vue_common_1.getDefaultSlots)(this);
32
- return (
33
- // @ts-ignore function children
34
- h(kendo_vue_buttons_1.ToolbarItem, {
35
- // ref={(item) => { if (item) { element.current = item.element; } }}
36
- "class": 'k-scheduler-views'
37
- }, this.v3 ? function () {
38
- return [h(ViewSelectorList_1.ViewSelectorList)];
39
- } : [h(ViewSelectorList_1.ViewSelectorList)])
40
- );
29
+ return h(ViewSelectorList_1.ViewSelectorList);
41
30
  }
42
31
  };
43
32
  exports.SchedulerViewSelectorVue2 = SchedulerViewSelectorVue2;
@@ -48,6 +48,7 @@ var ViewSelectorItemVue2 = {
48
48
  return (
49
49
  // @ts-ignore function children
50
50
  h(kendo_vue_buttons_1.Button, {
51
+ "class": "k-toolbar-button",
51
52
  role: "button",
52
53
  attrs: this.v3 ? undefined : {
53
54
  role: "button",
@@ -1,17 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var __assign = undefined && undefined.__assign || function () {
4
- __assign = Object.assign || function (t) {
5
- for (var s, i = 1, n = arguments.length; i < n; i++) {
6
- s = arguments[i];
7
- for (var p in s) {
8
- if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
9
- }
10
- }
11
- return t;
12
- };
13
- return __assign.apply(this, arguments);
14
- };
15
3
  Object.defineProperty(exports, "__esModule", {
16
4
  value: true
17
5
  });
@@ -25,8 +13,6 @@ var kendo_vue_buttons_1 = require("@progress/kendo-vue-buttons");
25
13
  var ViewSelectorItem_1 = require("./ViewSelectorItem");
26
14
  var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
27
15
  var main_1 = require("../../../messages/main");
28
- var kendo_vue_common_1 = require("@progress/kendo-vue-common");
29
- var kendo_svg_icons_1 = require("@progress/kendo-svg-icons");
30
16
  /**
31
17
  * @hidden
32
18
  */
@@ -46,7 +32,9 @@ var ViewSelectorListVue2 = {
46
32
  mounted: function mounted() {
47
33
  this.calculateMedia();
48
34
  this.observer = new window.ResizeObserver(this.calculateMedia);
49
- this.observer.observe(this.$el);
35
+ if (this.ks.scheduler) {
36
+ this.observer.observe(this.ks.scheduler.$el);
37
+ }
50
38
  },
51
39
  destroyed: !!isV3 ? undefined : function () {
52
40
  if (this.observer) {
@@ -83,70 +71,36 @@ var ViewSelectorListVue2 = {
83
71
  });
84
72
  var activeNameTitle = 'scheduler.' + activeView.name + 'ViewTitle';
85
73
  var activeName = this.localization.toLanguageString(activeNameTitle, main_1.messages[activeNameTitle]) || activeView.name;
86
- return h("div", {
87
- "class": "k-scheduler-views-wrapper"
88
- }, [activeView && this.media === 'mobile' &&
89
- // @ts-ignore function children
90
- h(kendo_vue_buttons_1.DropDownButton, {
91
- "class": "k-views-dropdown",
92
- "aria-label": this.localization.toLanguageString(main_1.dropdownlistSelectViewAriaLabel, main_1.messages[main_1.dropdownlistSelectViewAriaLabel]),
93
- attrs: this.v3 ? undefined : {
94
- "aria-label": this.localization.toLanguageString(main_1.dropdownlistSelectViewAriaLabel, main_1.messages[main_1.dropdownlistSelectViewAriaLabel]),
74
+ var dropdown = function dropdown() {
75
+ return h("select", {
95
76
  tabIndex: -1,
96
- popupSettings: {
97
- popupClass: 'k-scheduler-toolbar'
77
+ attrs: this.v3 ? undefined : {
78
+ tabIndex: -1,
79
+ ariaLabel: this.localization.toLanguageString(main_1.dropdownlistSelectViewAriaLabel, main_1.messages[main_1.dropdownlistSelectViewAriaLabel])
98
80
  },
99
- textField: "title",
100
- items: views.map(function (v) {
101
- var nameTitle = 'scheduler.' + v.name + 'ViewTitle';
102
- var name = this.localization.toLanguageString(nameTitle, main_1.messages[nameTitle]) || v.name;
103
- return __assign(__assign({}, v.props), {
104
- selected: v.name === this.ks.activeViewName,
105
- name: v.name,
106
- title: v.title || name
107
- });
108
- }, this),
109
- text: activeView.title || activeName
110
- },
111
- tabIndex: -1,
112
- onItemclick: this.handleItemClick,
113
- on: this.v3 ? undefined : {
114
- "itemclick": this.handleItemClick
115
- },
116
- popupSettings: {
117
- popupClass: 'k-scheduler-toolbar'
118
- },
119
- textField: "title",
120
- items: views.map(function (v) {
81
+ "class": 'k-views-dropdown k-dropdown k-picker k-picker-solid k-rounded-md k-picker-md',
82
+ ariaLabel: this.localization.toLanguageString(main_1.dropdownlistSelectViewAriaLabel, main_1.messages[main_1.dropdownlistSelectViewAriaLabel]),
83
+ onChange: this.ddlChange,
84
+ on: this.v3 ? undefined : {
85
+ "change": this.ddlChange
86
+ }
87
+ }, [views.map(function (v) {
121
88
  var nameTitle = 'scheduler.' + v.name + 'ViewTitle';
122
89
  var name = this.localization.toLanguageString(nameTitle, main_1.messages[nameTitle]) || v.name;
123
- return __assign(__assign({}, v.props), {
124
- selected: v.name === this.ks.activeViewName,
125
- name: v.name,
126
- title: v.title || name
127
- });
128
- }, this),
129
- text: activeView.title || activeName
130
- }, this.v3 ? function () {
131
- return [h(kendo_vue_common_1.Icon, {
132
- name: "caret-alt-down",
133
- attrs: _this2.v3 ? undefined : {
134
- name: "caret-alt-down",
135
- icon: kendo_svg_icons_1.caretAltDownIcon
136
- },
137
- icon: kendo_svg_icons_1.caretAltDownIcon
138
- })];
139
- } : [h(kendo_vue_common_1.Icon, {
140
- name: "caret-alt-down",
141
- attrs: _this2.v3 ? undefined : {
142
- name: "caret-alt-down",
143
- icon: kendo_svg_icons_1.caretAltDownIcon
144
- },
145
- icon: kendo_svg_icons_1.caretAltDownIcon
146
- })]), this.media === 'desktop' &&
90
+ return h("option", {
91
+ value: this.v3 ? v.name || v.title || name : null,
92
+ domProps: this.v3 ? undefined : {
93
+ "value": v.name || v.title || name,
94
+ "selected": v.name === this.ks.activeViewName
95
+ },
96
+ selected: this.v3 ? v.name === this.ks.activeViewName : null
97
+ }, [v.title || name]);
98
+ }, this)]);
99
+ };
100
+ return activeView && this.media === 'mobile' ? dropdown.call(this) :
147
101
  // @ts-ignore function children
148
102
  h(kendo_vue_buttons_1.ButtonGroup, {
149
- "class": "k-scheduler-views"
103
+ "class": "k-toolbar-button-group k-scheduler-views"
150
104
  }, this.v3 ? function () {
151
105
  return [views.map(function (view) {
152
106
  return h(ViewSelectorItem_1.ViewSelectorItem, {
@@ -165,14 +119,11 @@ var ViewSelectorListVue2 = {
165
119
  view: view
166
120
  }
167
121
  });
168
- }, _this2)])]);
122
+ }, _this2)]);
169
123
  },
170
124
  methods: {
171
- handleItemClick: function handleItemClick(event) {
172
- event.event.preventDefault();
173
- if (event.item.name || event.item.title) {
174
- this.setActiveViewName(event.item.name || event.item.title);
175
- }
125
+ ddlChange: function ddlChange(event) {
126
+ this.setActiveViewName(event.target.value);
176
127
  },
177
128
  calculateMedia: function calculateMedia() {
178
129
  this.media = window.matchMedia('(min-width: 1024px)').matches ? 'desktop' : 'mobile';