@progress/kendo-vue-scheduler 9.3.0-develop.5 → 9.3.0-develop.6

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 (160) hide show
  1. package/Scheduler.d.ts +67 -4
  2. package/Scheduler.js +1 -1
  3. package/Scheduler.mjs +267 -115
  4. package/components/BaseView.js +1 -1
  5. package/components/BaseView.mjs +10 -4
  6. package/components/CurrentTimeMarker.js +1 -1
  7. package/components/CurrentTimeMarker.mjs +9 -9
  8. package/components/CurrentTimeMarkerArrow.js +1 -1
  9. package/components/CurrentTimeMarkerArrow.mjs +3 -3
  10. package/components/DateHeaderCell.js +1 -1
  11. package/components/DateHeaderCell.mjs +22 -13
  12. package/components/MoreEventsPopover.d.ts +77 -0
  13. package/components/MoreEventsPopover.js +8 -0
  14. package/components/MoreEventsPopover.mjs +125 -0
  15. package/components/SchedulerActionButtons.d.ts +6 -0
  16. package/components/SchedulerActionButtons.js +1 -1
  17. package/components/SchedulerActionButtons.mjs +25 -19
  18. package/components/SchedulerForm.d.ts +7 -0
  19. package/components/SchedulerForm.js +1 -1
  20. package/components/SchedulerForm.mjs +69 -61
  21. package/components/SchedulerOccurrenceDialog.d.ts +4 -4
  22. package/components/SchedulerOccurrenceDialog.js +1 -1
  23. package/components/SchedulerOccurrenceDialog.mjs +35 -26
  24. package/components/SchedulerRemoveDialog.d.ts +6 -0
  25. package/components/SchedulerRemoveDialog.js +1 -1
  26. package/components/SchedulerRemoveDialog.mjs +24 -23
  27. package/components/ShowMoreItemsButton.d.ts +10 -1
  28. package/components/ShowMoreItemsButton.js +1 -1
  29. package/components/ShowMoreItemsButton.mjs +40 -18
  30. package/components/footer/bussiness-hours/BusinessHours.js +1 -1
  31. package/components/footer/bussiness-hours/BusinessHours.mjs +16 -21
  32. package/components/header/SchedulerAdaptiveHeader.js +1 -1
  33. package/components/header/SchedulerAdaptiveHeader.mjs +28 -26
  34. package/components/header/SchedulerHeader.d.ts +5 -1
  35. package/components/header/SchedulerHeader.js +1 -1
  36. package/components/header/SchedulerHeader.mjs +11 -7
  37. package/components/header/navigation/NavigationDatePicker.d.ts +22 -3
  38. package/components/header/navigation/NavigationDatePicker.js +1 -1
  39. package/components/header/navigation/NavigationDatePicker.mjs +27 -30
  40. package/components/header/view-selector/ViewSelectorList.d.ts +26 -6
  41. package/components/header/view-selector/ViewSelectorList.js +1 -1
  42. package/components/header/view-selector/ViewSelectorList.mjs +55 -49
  43. package/dist/cdn/js/kendo-vue-scheduler.js +1 -1
  44. package/editors/RemoveRecurrenceConfirmDialog.d.ts +29 -0
  45. package/editors/RemoveRecurrenceConfirmDialog.js +8 -0
  46. package/editors/RemoveRecurrenceConfirmDialog.mjs +65 -0
  47. package/editors/ResourceEditor.d.ts +3 -0
  48. package/editors/ResourceEditor.js +1 -1
  49. package/editors/ResourceEditor.mjs +12 -10
  50. package/editors/SchedulerFormEditor.d.ts +1067 -2953
  51. package/editors/SchedulerFormEditor.js +1 -1
  52. package/editors/SchedulerFormEditor.mjs +297 -365
  53. package/editors/SchedulerRecurrenceDialog.d.ts +143 -0
  54. package/editors/SchedulerRecurrenceDialog.js +8 -0
  55. package/editors/SchedulerRecurrenceDialog.mjs +575 -0
  56. package/editors/TimezoneDropDownList.d.ts +46 -0
  57. package/editors/TimezoneDropDownList.js +8 -0
  58. package/editors/TimezoneDropDownList.mjs +63 -0
  59. package/editors/ZonedSplitDateTime.d.ts +65 -0
  60. package/editors/ZonedSplitDateTime.js +8 -0
  61. package/editors/ZonedSplitDateTime.mjs +100 -0
  62. package/hooks/main.d.ts +1 -0
  63. package/hooks/useGroupRowHeightSync.d.ts +10 -0
  64. package/hooks/useRecurrenceSummary.d.ts +10 -0
  65. package/hooks/useRecurrenceSummary.js +8 -0
  66. package/hooks/useRecurrenceSummary.mjs +74 -0
  67. package/hooks/useRowSync.js +1 -1
  68. package/hooks/useRowSync.mjs +23 -4
  69. package/hooks/useSlotExpand.js +1 -1
  70. package/hooks/useSlotExpand.mjs +36 -28
  71. package/index.d.mts +9 -3
  72. package/index.d.ts +9 -3
  73. package/index.js +1 -1
  74. package/index.mjs +83 -71
  75. package/items/SchedulerEditItem.d.ts +14 -3
  76. package/items/SchedulerEditItem.js +1 -1
  77. package/items/SchedulerEditItem.mjs +130 -72
  78. package/items/SchedulerItem.d.ts +10 -0
  79. package/items/SchedulerItem.js +1 -1
  80. package/items/SchedulerItem.mjs +153 -135
  81. package/items/SchedulerProportionalViewItem.d.ts +183 -0
  82. package/items/SchedulerProportionalViewItem.js +8 -0
  83. package/items/SchedulerProportionalViewItem.mjs +378 -0
  84. package/items/SchedulerViewItem.d.ts +3 -0
  85. package/items/SchedulerViewItem.js +1 -1
  86. package/items/SchedulerViewItem.mjs +107 -67
  87. package/messages/main.d.ts +186 -0
  88. package/messages/main.js +1 -1
  89. package/messages/main.mjs +226 -102
  90. package/models/Item.d.ts +2 -0
  91. package/models/Occurrence.d.ts +2 -0
  92. package/models/SchedulerModelFields.d.ts +5 -0
  93. package/models/SchedulerResource.d.ts +6 -0
  94. package/models/SchedulerView.d.ts +2 -0
  95. package/package-metadata.js +1 -1
  96. package/package-metadata.mjs +2 -2
  97. package/package.json +12 -11
  98. package/recurrence/common.js +1 -1
  99. package/recurrence/common.mjs +36 -39
  100. package/services/itemsService.js +1 -1
  101. package/services/itemsService.mjs +31 -27
  102. package/services/occurrenceService.js +1 -1
  103. package/services/occurrenceService.mjs +41 -35
  104. package/slots/SchedulerEditSlot.d.ts +2 -0
  105. package/slots/SchedulerEditSlot.js +1 -1
  106. package/slots/SchedulerEditSlot.mjs +27 -28
  107. package/slots/SchedulerSlot.d.ts +4 -0
  108. package/slots/SchedulerSlot.js +1 -1
  109. package/slots/SchedulerSlot.mjs +10 -1
  110. package/slots/SchedulerViewSlot.d.ts +5 -0
  111. package/slots/SchedulerViewSlot.js +1 -1
  112. package/slots/SchedulerViewSlot.mjs +70 -50
  113. package/tasks/SchedulerEditTask.d.ts +6 -0
  114. package/tasks/SchedulerEditTask.js +1 -1
  115. package/tasks/SchedulerEditTask.mjs +64 -23
  116. package/tasks/SchedulerTask.d.ts +15 -0
  117. package/tasks/SchedulerTask.js +1 -1
  118. package/tasks/SchedulerTask.mjs +39 -28
  119. package/tasks/SchedulerViewTask.d.ts +9 -0
  120. package/tasks/SchedulerViewTask.js +1 -1
  121. package/tasks/SchedulerViewTask.mjs +10 -5
  122. package/utils/main.d.ts +4 -1
  123. package/utils/main.js +1 -1
  124. package/utils/main.mjs +133 -112
  125. package/views/agenda/AgendaView.js +1 -1
  126. package/views/agenda/AgendaView.mjs +28 -22
  127. package/views/agenda/AgendaViewBody.js +1 -1
  128. package/views/agenda/AgendaViewBody.mjs +44 -42
  129. package/views/agenda/AgendaViewHead.js +1 -1
  130. package/views/agenda/AgendaViewHead.mjs +14 -10
  131. package/views/common/SchedulerDrag.d.ts +12 -0
  132. package/views/common/SchedulerResize.d.ts +12 -0
  133. package/views/common/VerticalResourceIterator.d.ts +3 -0
  134. package/views/common/VerticalResourceIterator.js +1 -1
  135. package/views/common/VerticalResourceIterator.mjs +16 -9
  136. package/views/day/DayView.js +1 -1
  137. package/views/day/DayView.mjs +2 -2
  138. package/views/day/MultiDayView.js +1 -1
  139. package/views/day/MultiDayView.mjs +98 -127
  140. package/views/month/MonthView.d.ts +8 -2
  141. package/views/month/MonthView.js +1 -1
  142. package/views/month/MonthView.mjs +115 -109
  143. package/views/month/MonthViewBody.d.ts +7 -2
  144. package/views/month/MonthViewBody.js +1 -1
  145. package/views/month/MonthViewBody.mjs +15 -11
  146. package/views/time/MultiDayTimelineView.d.ts +5 -0
  147. package/views/time/MultiDayTimelineView.js +1 -1
  148. package/views/time/MultiDayTimelineView.mjs +125 -132
  149. package/views/time/TimelineView.js +1 -1
  150. package/views/time/TimelineView.mjs +2 -2
  151. package/views/week/WeekView.js +1 -1
  152. package/views/week/WeekView.mjs +2 -2
  153. package/views/week/WorkWeekView.js +1 -1
  154. package/views/week/WorkWeekView.mjs +9 -9
  155. package/components/header/navigation/DatePickerToggleButton.d.ts +0 -16
  156. package/editors/FilterableComboBox.d.ts +0 -38
  157. package/editors/FilterableComboBox.js +0 -8
  158. package/editors/FilterableComboBox.mjs +0 -61
  159. package/editors/ZonedDateTime.js +0 -8
  160. package/editors/ZonedDateTime.mjs +0 -57
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),Y=require("@progress/kendo-date-math"),o=require("@progress/kendo-vue-labels"),ee=require("@progress/kendo-vue-intl"),i=require("@progress/kendo-vue-form"),u=require("@progress/kendo-vue-inputs"),t=require("@progress/kendo-vue-common"),n=require("../messages/main.js"),E=require("./FilterableComboBox.js"),te=require("../recurrence/RecurrenceEditor.js"),ie=require("./ResourceEditor.js"),L=require("./ZonedDateTime.js");function a(r){return typeof r=="function"||Object.prototype.toString.call(r)==="[object Object]"&&!e.isVNode(r)}const ne=e.defineComponent({name:"KendoSchedulerFormEditor",props:{as:[String,Function,Object],id:String,tabIndex:Number,titleLabel:{type:[String,Function,Object],default:function(){return o.Label}},titleError:{type:[String,Function,Object],default:function(){return o.Error}},titleEditor:{type:[String,Function,Object],default:function(){return u.TextBox}},startLabel:{type:[String,Function,Object],default:function(){return o.Label}},startError:{type:[String,Function,Object],default:function(){return o.Error}},startEditor:{type:[String,Function,Object],default:function(){return L.ZonedDateTime}},startTimezoneLabel:{type:[String,Function,Object],default:function(){return o.Label}},startTimezoneError:{type:[String,Function,Object],default:function(){return o.Error}},startTimezoneEditor:{type:[String,Function,Object],default:function(){return E.FilterableComboBox}},startTimezoneCheckedLabel:{type:[String,Function,Object],default:function(){return o.Label}},startTimezoneCheckedEditor:{type:[String,Function,Object],default:function(){return u.Checkbox}},endLabel:{type:[String,Function,Object],default:function(){return o.Label}},endError:{type:[String,Function,Object],default:function(){return o.Error}},endEditor:{type:[String,Function,Object],default:function(){return L.ZonedDateTime}},endTimezoneLabel:{type:[String,Function,Object],default:function(){return o.Label}},endTimezoneError:{type:[String,Function,Object],default:function(){return o.Error}},endTimezoneEditor:{type:[String,Function,Object],default:function(){return E.FilterableComboBox}},endTimezoneCheckedLabel:{type:[String,Function,Object],default:function(){return o.Label}},endTimezoneCheckedEditor:{type:[String,Function,Object],default:function(){return u.Checkbox}},allDayLabel:{type:[String,Function,Object],default:function(){return o.Label}},allDayEditor:{type:[String,Function,Object],default:function(){return u.Checkbox}},recurrenceEditor:{type:[String,Function,Object],default:function(){return te.RecurrenceEditor}},descriptionLabel:{type:[String,Function,Object],default:function(){return o.Label}},descriptionError:{type:[String,Function,Object],default:function(){return o.Error}},descriptionEditor:{type:[String,Function,Object],default:function(){return u.TextArea}},resourceLabel:{type:[String,Function,Object],default:function(){return o.Label}},resourcesError:{type:[String,Function,Object],default:function(){return o.Label}},resourceEditor:{type:[String,Function,Object],default:function(){return ie.ResourceEditor}},errors:Object,valid:Boolean,touched:Boolean,visited:Boolean,modified:Boolean,submitted:Boolean,allowSubmit:Boolean,valueGetter:Function},created(){this.requiredValidationMessage=void 0},inject:{ks:{default:null},kendoForm:{default:{}},kendoLocalizationService:{default:null}},data(){const r=this.kendoForm,s=this.ks;return{startZoneChecked:!!r.valueGetter(s.fields.startTimezone),endZoneChecked:!!r.valueGetter(s.fields.endTimezone)}},render(){let r,s,h,m,f,k,p,g,b;const T=t.getDefaultSlots(this),F=Y.timezoneNames(),d=ee.provideLocalizationService(this),{as:re,...oe}=this.$props,{startTimezoneCheckedLabel:z,startTimezoneCheckedEditor:V,endTimezoneCheckedLabel:S,endTimezoneCheckedEditor:v}=this.$props,y=t.templateRendering.call(this,this.titleLabel,t.getListeners.call(this)),N=t.templateRendering.call(this,this.titleError,t.getListeners.call(this)),C=t.templateRendering.call(this,this.titleEditor,t.getListeners.call(this)),j=t.templateRendering.call(this,this.startLabel,t.getListeners.call(this)),O=t.templateRendering.call(this,this.startError,t.getListeners.call(this)),R=t.templateRendering.call(this,this.startEditor,t.getListeners.call(this)),Z=t.templateRendering.call(this,this.startTimezoneLabel,t.getListeners.call(this)),D=t.templateRendering.call(this,this.startTimezoneError,t.getListeners.call(this)),x=t.templateRendering.call(this,this.startTimezoneEditor,t.getListeners.call(this)),q=t.templateRendering.call(this,this.endLabel,t.getListeners.call(this)),I=t.templateRendering.call(this,this.endError,t.getListeners.call(this)),w=t.templateRendering.call(this,this.endEditor,t.getListeners.call(this)),B=t.templateRendering.call(this,this.endTimezoneLabel,t.getListeners.call(this)),_=t.templateRendering.call(this,this.endTimezoneError,t.getListeners.call(this)),A=t.templateRendering.call(this,this.endTimezoneEditor,t.getListeners.call(this)),W=t.templateRendering.call(this,this.allDayLabel,t.getListeners.call(this)),G=t.templateRendering.call(this,this.allDayEditor,t.getListeners.call(this)),M=t.templateRendering.call(this,this.recurrenceEditor,t.getListeners.call(this)),$=t.templateRendering.call(this,this.descriptionLabel,t.getListeners.call(this)),K=t.templateRendering.call(this,this.descriptionEditor,t.getListeners.call(this)),P=t.templateRendering.call(this,this.descriptionError,t.getListeners.call(this)),H=t.templateRendering.call(this,this.resourceLabel,t.getListeners.call(this)),J=t.templateRendering.call(this,this.resourceEditor,t.getListeners.call(this)),Q=this.kendoForm.valueGetter(this.ks.fields.start)||new Date,U=this.kendoForm.valueGetter(this.ks.fields.startTimezone)||this.ks.timezone||"",X=this.kendoForm.valueGetter(this.ks.fields.endTimezone)||this.ks.timezone||"";this.requiredValidationMessage=d.toLanguageString(n.editorValidationRequired,n.messages[n.editorValidationRequired]);const c=this.ks.fields.title;return e.createVNode(i.FormElement,{class:"k-scheduler-edit-form"},{default:()=>[e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:c,component:y,editorId:"k-scheduler-editor-title"},a(r=d.toLanguageString(n.editorEventTitle,n.messages[n.editorEventTitle]))?r:{default:()=>[r]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{id:"k-scheduler-editor-title",name:c,field:c,component:C},null),this.kendoForm.errors[c]&&e.createVNode(i.Field,{name:c,component:N},{default:()=>[this.kendoForm.errors[c]]})])]}),e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.start,component:j,editorId:"k-scheduler-editor-start",class:"k-form-label"},a(s=d.toLanguageString(n.editorEventStart,n.messages[n.editorEventStart]))?s:{default:()=>[s]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{id:"k-scheduler-editor-start",name:this.ks.fields.start,width:"auto",component:R,isAllDay:!!this.kendoForm.values.isAllDay,timezone:this.ks.timezone},null),this.kendoForm.errors[this.ks.fields.start]&&e.createVNode(i.Field,{name:this.ks.fields.start,component:O},{default:()=>[this.kendoForm.errors[this.ks.fields.start]]})])]}),e.createVNode(i.FieldWrapper,null,{default:()=>[F.length>0&&e.createVNode("div",null,[e.createVNode(V,{id:"k-scheduler-editor-set-start-timezone",onChange:this.handleStartZoneCheckboxChange,value:this.startZoneChecked},null),e.createVNode(z,{class:"k-checkbox-label",editorId:"k-scheduler-editor-set-start-timezone",style:{display:"inline-flex"}},a(h=d.toLanguageString(n.editorEventTimeZone,n.messages[n.editorEventTimeZone]))?h:{default:()=>[h]})])]}),this.startZoneChecked&&e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.start,component:Z},a(m=d.toLanguageString(n.editorEventStartTimeZone,n.messages[n.editorEventStartTimeZone]))?m:{default:()=>[m]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{component:x,value:U,validator:this.startTimezoneValidator,dataItems:F,name:this.ks.fields.startTimezone},null),this.kendoForm.errors[this.ks.fields.startTimezone]&&e.createVNode(i.Field,{name:this.ks.fields.startTimezone,component:D},{default:()=>[this.kendoForm.errors[this.ks.fields.startTimezone]]})])]}),e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.end,component:q,editorId:"k-scheduler-editor-end",class:"k-form-label"},a(f=d.toLanguageString(n.editorEventEnd,n.messages[n.editorEventEnd]))?f:{default:()=>[f]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{id:"k-scheduler-editor-end",name:this.ks.fields.end,width:"auto",component:w,isAllDay:!!this.kendoForm.values.isAllDay,timezone:this.ks.timezone},null),this.kendoForm.errors[this.ks.fields.end]&&e.createVNode(i.Field,{name:this.ks.fields.end,component:I},{default:()=>[this.kendoForm.errors[this.ks.fields.end]]})])]}),this.startZoneChecked&&e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(v,{id:"k-scheduler-editor-set-end-timezone",onChange:this.handleEndZoneCheckboxChange,value:this.endZoneChecked},null)]),e.createVNode(S,{class:"k-checkbox-label",editorId:"k-scheduler-editor-set-end-timezone",style:{display:"inline-flex"}},a(k=d.toLanguageString(n.editorEventSeparateTimeZones,n.messages[n.editorEventSeparateTimeZones]))?k:{default:()=>[k]})]}),this.endZoneChecked&&e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.endTimezone,component:B,class:"k-form-label"},a(p=d.toLanguageString(n.editorEventEndTimeZone,n.messages[n.editorEventEndTimeZone]))?p:{default:()=>[p]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{value:X,dataItems:F,validator:this.endTimezoneValidator,component:A,name:this.ks.fields.endTimezone},null),this.kendoForm.errors[this.ks.fields.endTimezone]&&e.createVNode(i.Field,{name:this.ks.fields.endTimezone,component:_},{default:()=>[this.kendoForm.errors[this.ks.fields.endTimezone]]})])]}),e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.isAllDay,component:o.Label,class:"k-form-label"},null),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{id:"k-is-allday-checkbox",name:this.ks.fields.isAllDay,component:G},null),e.createVNode(i.Field,{name:this.ks.fields.isAllDay,field:this.ks.fields.isAllDay,editorId:"k-is-allday-checkbox",class:"k-checkbox-label",component:W},a(g=d.toLanguageString(n.editorEventAllDay,n.messages[n.editorEventAllDay]))?g:{default:()=>[g]})])]}),e.createVNode("div",{class:"k-recurrence-editor"},[e.createVNode(i.Field,{component:M,changeOnInput:!1,field:this.ks.fields.recurrenceRule,name:this.ks.fields.recurrenceRule,start:Q},null)]),e.createVNode(i.FieldWrapper,null,{default:()=>[e.createVNode(i.Field,{name:this.ks.fields.description,component:$,class:"k-form-label"},a(b=d.toLanguageString(n.editorEventDescription,n.messages[n.editorEventDescription]))?b:{default:()=>[b]}),e.createVNode("div",{class:"k-form-field-wrap"},[e.createVNode(i.Field,{component:K,name:this.ks.fields.description,rows:1,id:"k-event-description"},null),this.kendoForm.errors[this.ks.fields.description]&&e.createVNode(i.Field,{name:this.ks.fields.description,component:P},{default:()=>[this.kendoForm.errors[this.ks.fields.description]]})])]}),(this.ks.props.resources||[]).map(function(l){return e.createVNode(i.FieldWrapper,{key:l.field},{default:()=>[e.createVNode(i.Field,{name:l.field,component:H,class:"k-form-label"},null),e.createVNode(o.Label,{class:"k-form-label"},{default:()=>[l.name]}),e.createVNode(i.Field,{name:l.field,component:J,resource:l,multiple:l.multiple,dataItems:l.data,textField:l.textField,valueField:l.valueField,colorField:l.colorField},null),this.kendoForm.errors[l.field]&&e.createVNode(i.Field,{name:l.field,component:o.Error},{default:()=>[this.kendoForm.errors[l.field]]})]})},this),T]})},methods:{handleStartZoneCheckboxChange(r){r.value||(this.$emit("change",this.ks.fields.startTimezone,{value:null}),this.$emit("change",this.ks.fields.endTimezone,{value:null}),this.endZoneChecked=r.value),this.startZoneChecked=r.value},handleEndZoneCheckboxChange(r){r.value||this.$emit("change",this.ks.fields.endTimezone,{value:null}),this.endZoneChecked=r.value},requiredValidator(r){return r?void 0:this.requiredValidationMessage},startTimezoneValidator(r,s){return this.startZoneChecked?this.requiredValidator(s(this.ks.fields.startTimezone)):void 0},endTimezoneValidator(r,s){return this.startZoneChecked&&this.endZoneChecked?this.requiredValidator(s(this.ks.fields.endTimezone))||this.requiredValidator(s(this.ks.fields.startTimezone)):void 0}}});exports.SchedulerFormEditor=ne;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),w=require("@progress/kendo-date-math"),h=require("@progress/kendo-vue-labels"),T=require("@progress/kendo-vue-intl"),n=require("@progress/kendo-vue-form"),p=require("@progress/kendo-vue-inputs"),d=require("@progress/kendo-vue-common"),a=require("@progress/kendo-svg-icons"),c=require("@progress/kendo-vue-buttons"),v=require("@progress/kendo-vue-dialogs"),e=require("../messages/main.js"),C=require("../recurrence/RecurrenceEditor.js"),I=require("./ResourceEditor.js"),R=require("./ZonedSplitDateTime.js"),S=require("./TimezoneDropDownList.js"),q=require("./SchedulerRecurrenceDialog.js"),A=require("./RemoveRecurrenceConfirmDialog.js"),B=require("../hooks/useRecurrenceSummary.js");function g(r){return typeof r=="function"||Object.prototype.toString.call(r)==="[object Object]"&&!t.isVNode(r)}const j=t.defineComponent({name:"KendoSchedulerFormEditor",props:{as:[String,Function,Object],id:String,tabIndex:Number,titleEditor:{type:[String,Function,Object],default:function(){return p.TextBox}},startEditor:{type:[String,Function,Object],default:function(){return R.ZonedSplitDateTime}},startTimezoneEditor:{type:[String,Function,Object],default:function(){return S.TimezoneDropDownList}},endEditor:{type:[String,Function,Object],default:function(){return R.ZonedSplitDateTime}},endTimezoneEditor:{type:[String,Function,Object],default:function(){return S.TimezoneDropDownList}},allDayLabel:{type:[String,Function,Object],default:function(){return"span"}},allDayEditor:{type:[String,Function,Object],default:function(){return p.Switch}},recurrenceEditor:{type:[String,Function,Object],default:function(){return C.RecurrenceEditor}},descriptionEditor:{type:[String,Function,Object],default:function(){return p.TextArea}},resourceEditor:{type:[String,Function,Object],default:function(){return I.ResourceEditor}},recurrenceButtonTextTemplate:[Object,Function],recurrenceSummaryTemplate:[Object,Function],errors:Object,valid:Boolean,touched:Boolean,visited:Boolean,modified:Boolean,submitted:Boolean,allowSubmit:Boolean,valueGetter:Function},created(){this.requiredValidationMessage=void 0},inject:{ks:{default:null},kendoForm:{default:{}},kendoLocalizationService:{default:null}},data(){const r=this.kendoForm,o=this.ks;return{showTimezones:!!r.valueGetter(o.fields.startTimezone),showTimezoneResetDialog:!1,showRecurrenceDialog:!1,showRemoveRecurrenceDialog:!1}},computed:{isAllDay(){return!!this.kendoForm.valueGetter(this.ks.fields.isAllDay)},start(){return this.kendoForm.valueGetter(this.ks.fields.start)||new Date},startTimezone(){return this.kendoForm.valueGetter(this.ks.fields.startTimezone)||""},recurrenceRule(){return this.kendoForm.valueGetter(this.ks.fields.recurrenceRule)},recurrenceId(){return this.kendoForm.valueGetter(this.ks.fields.recurrenceId)},isEditingOccurrence(){return this.recurrenceId!==void 0&&this.recurrenceId!==null},showRecurrenceButton(){return!this.isEditingOccurrence},recurrenceButtonText(){const r=T.provideIntlService(this),o=T.provideLocalizationService(this),l=(m,i)=>o.toLanguageString(m,i),u=o.toLanguageString(e.editorRecurrenceMakeRecurring,e.messages[e.editorRecurrenceMakeRecurring]);return this.recurrenceRule&&B.getRecurrenceSummary(this.recurrenceRule,this.start,r,l)||u}},render(){let r,o,l;const u=d.getDefaultSlots(this),m=w.timezoneNames(),i=T.provideLocalizationService(this),k=this.$props.startEditor,z=this.$props.endEditor,F=this.$props.startTimezoneEditor,E=this.$props.endTimezoneEditor,D=this.$props.allDayEditor,V=this.$props.allDayLabel,b=this.$props.descriptionEditor,L=this.$props.resourceEditor,N=this.$props.titleEditor,y=this.startTimezone;this.requiredValidationMessage=i.toLanguageString(e.editorValidationRequired,e.messages[e.editorValidationRequired]);const f=i.toLanguageString(e.editorEventAllDay,e.messages[e.editorEventAllDay]);return t.createVNode(t.Fragment,null,[t.createVNode(n.FormElement,{horizontal:!0,class:"k-scheduler-edit-form"},{default:()=>[t.createVNode(n.FieldWrapper,null,{default:()=>[t.createVNode(h.Label,{class:"k-form-label"},{default:()=>[t.createVNode(d.SvgIcon,{icon:a.rightDoubleQuotesIcon,size:"xlarge"},null)]}),t.createVNode("div",{class:"k-form-field-wrap"},[t.createVNode(n.Field,{id:"k-scheduler-editor-title",name:this.ks.fields.title,field:this.ks.fields.title,component:N,placeholder:i.toLanguageString(e.editorEventTitle,e.messages[e.editorEventTitle]),"aria-label":i.toLanguageString(e.editorEventTitle,e.messages[e.editorEventTitle])},null)])]}),t.createVNode(n.FieldWrapper,null,{default:()=>[t.createVNode(h.Label,{class:"k-form-label"},{default:()=>[t.createVNode(d.SvgIcon,{icon:a.clockIcon,size:"xlarge"},null)]}),t.createVNode("div",{class:"k-form-field-wrap"},[t.createVNode("div",{class:"k-scheduler-datetime-section"},[t.createVNode("div",{class:"k-scheduler-edit-form-row"},[t.createVNode(n.Field,{name:this.ks.fields.isAllDay,component:D,onLabel:"",offLabel:""},null),t.createVNode(V,null,g(f)?f:{default:()=>[f]})]),t.createVNode("div",{class:"k-scheduler-datetime-grid"},[this.isAllDay?t.createVNode("div",{class:"k-scheduler-edit-form-row"},[t.createVNode(n.Field,{name:this.ks.fields.start,component:k,isAllDay:this.isAllDay,fieldError:this.kendoForm.errors[this.ks.fields.start],ariaLabel:i.toLanguageString(e.editorEventStart,e.messages[e.editorEventStart]),timezone:this.ks.timezone},null),t.createVNode("span",{class:"k-scheduler-datetime-label"},[i.toLanguageString(e.editorDateConnectorTo,e.messages[e.editorDateConnectorTo])]),t.createVNode(n.Field,{name:this.ks.fields.end,component:z,isAllDay:this.isAllDay,fieldError:this.kendoForm.errors[this.ks.fields.end],ariaLabel:i.toLanguageString(e.editorEventEnd,e.messages[e.editorEventEnd]),timezone:this.ks.timezone},null)]):t.createVNode(t.Fragment,null,[t.createVNode("div",{class:"k-scheduler-edit-form-row"},[t.createVNode(n.Field,{name:this.ks.fields.start,component:k,isAllDay:this.isAllDay,connector:i.toLanguageString(e.editorDateConnectorFrom,e.messages[e.editorDateConnectorFrom]),fieldError:this.kendoForm.errors[this.ks.fields.start],ariaLabel:i.toLanguageString(e.editorEventStart,e.messages[e.editorEventStart]),timeAriaLabel:i.toLanguageString(e.editorStartTimeAriaLabel,e.messages[e.editorStartTimeAriaLabel]),timezone:this.ks.timezone},null)]),!this.showTimezones&&t.createVNode(c.Button,{class:"k-col-span-2",fillMode:"flat",themeColor:"primary",title:i.toLanguageString(e.editorSetTimezoneTitle,e.messages[e.editorSetTimezoneTitle]),onClick:this.handleTimezoneToggle,svgIcon:a.globeIcon},g(r=i.toLanguageString(e.editorTimezoneButton,e.messages[e.editorTimezoneButton]))?r:{default:()=>[r]}),this.showTimezones&&t.createVNode(t.Fragment,null,[t.createVNode(n.Field,{name:this.ks.fields.startTimezone,component:F,dataItems:m,value:y,ariaLabel:i.toLanguageString(e.editorEventStartTimeZone,e.messages[e.editorEventStartTimeZone])},null),t.createVNode(c.Button,{title:i.toLanguageString(e.editorResetTimezoneTitle,e.messages[e.editorResetTimezoneTitle]),"aria-label":i.toLanguageString(e.editorResetTimezoneAriaLabel,e.messages[e.editorResetTimezoneAriaLabel]),onClick:this.handleTimezoneToggle,svgIcon:a.globeIcon,fillMode:"flat",themeColor:"primary"},null)]),t.createVNode("div",{class:"k-scheduler-edit-form-row"},[t.createVNode(n.Field,{name:this.ks.fields.end,component:z,isAllDay:this.isAllDay,connector:i.toLanguageString(e.editorDateConnectorTo,e.messages[e.editorDateConnectorTo]),fieldError:this.kendoForm.errors[this.ks.fields.end],ariaLabel:i.toLanguageString(e.editorEventEnd,e.messages[e.editorEventEnd]),timeAriaLabel:i.toLanguageString(e.editorEndTimeAriaLabel,e.messages[e.editorEndTimeAriaLabel]),timezone:this.ks.timezone},null)]),this.showTimezones&&t.createVNode(n.Field,{name:this.ks.fields.endTimezone,component:E,dataItems:m,value:this.kendoForm.valueGetter(this.ks.fields.endTimezone)||"",ariaLabel:i.toLanguageString(e.editorEventEndTimeZone,e.messages[e.editorEventEndTimeZone])},null)])]),this.showRecurrenceButton&&t.createVNode("div",{class:"k-scheduler-edit-form-row"},[t.createVNode(c.Button,{class:"k-scheduler-recurrence-button",type:"button",fillMode:"flat",themeColor:"primary",svgIcon:a.arrowRotateCwIcon,onClick:this.handleMakeRecurringClick},{default:()=>[this.recurrenceButtonTextTemplate?this.renderRecurrenceButtonTextTemplate():this.recurrenceButtonText]})])])])]}),t.createVNode(n.FieldWrapper,null,{default:()=>[t.createVNode(h.Label,{class:"k-form-label"},{default:()=>[t.createVNode(d.SvgIcon,{icon:a.commentIcon,size:"xlarge"},null)]}),t.createVNode("div",{class:"k-form-field-wrap"},[t.createVNode(n.Field,{component:b,name:this.ks.fields.description,id:"k-event-description",resizable:"vertical",placeholder:i.toLanguageString(e.editorEventDescription,e.messages[e.editorEventDescription]),"aria-label":i.toLanguageString(e.editorEventDescription,e.messages[e.editorEventDescription])},null)])]}),(this.ks.props.resources||[]).map(s=>t.createVNode(n.FieldWrapper,{key:s.field},{default:()=>[s.svgIcon&&t.createVNode(h.Label,{class:"k-form-label"},{default:()=>[t.createVNode(d.SvgIcon,{icon:s.svgIcon,size:"xlarge"},null)]}),t.createVNode("div",{class:"k-form-field-wrap"},[t.createVNode(n.Field,{name:s.field,component:L,resource:s,multiple:s.multiple,dataItems:s.data,textField:s.textField,valueField:s.valueField,colorField:s.colorField,ariaLabel:s.name||s.field},null)])]})),u]}),this.showRecurrenceDialog&&t.createVNode(q.SchedulerRecurrenceDialog,{value:this.recurrenceRule,start:this.start,timezone:this.ks.timezone||"",onSave:this.handleRecurrenceSave,onCancel:this.handleRecurrenceCancel,onRemoveRecurrence:this.handleRemoveRecurrenceClick,recurrenceSummaryTemplate:this.recurrenceSummaryTemplate,recurrenceEditor:this.recurrenceEditor},null),this.showRemoveRecurrenceDialog&&t.createVNode(A.RemoveRecurrenceConfirmDialog,{onConfirm:this.handleRemoveRecurrenceConfirm,onCancel:this.handleRemoveRecurrenceCancel},null),this.showTimezoneResetDialog&&t.createVNode(v.Dialog,{title:i.toLanguageString(e.resetTimezoneDialogTitle,e.messages[e.resetTimezoneDialogTitle]),onClose:this.handleTimezoneResetClose},{default:()=>[i.toLanguageString(e.resetTimezoneConfirmation,e.messages[e.resetTimezoneConfirmation]),t.createVNode(v.DialogActionsBar,null,{default:()=>[t.createVNode(c.Button,{onClick:this.handleTimezoneResetClose},g(o=i.toLanguageString(e.resetTimezoneNo,e.messages[e.resetTimezoneNo]))?o:{default:()=>[o]}),t.createVNode(c.Button,{themeColor:"primary",onClick:this.handleTimezoneResetConfirm},g(l=i.toLanguageString(e.resetTimezoneYes,e.messages[e.resetTimezoneYes]))?l:{default:()=>[l]})]})]})])},methods:{renderRecurrenceButtonTextTemplate(){const r=this.recurrenceButtonTextTemplate;return r?t.createVNode(r,{recurrenceRule:this.recurrenceRule},null):null},handleTimezoneToggle(r){r.preventDefault(),this.showTimezones?this.showTimezoneResetDialog=!0:(this.updateFormField(this.ks.fields.startTimezone,null),this.updateFormField(this.ks.fields.endTimezone,null),this.showTimezones=!0)},handleTimezoneResetConfirm(){this.updateFormField(this.ks.fields.startTimezone,null),this.updateFormField(this.ks.fields.endTimezone,null),this.showTimezones=!1,this.showTimezoneResetDialog=!1},handleTimezoneResetClose(){this.showTimezoneResetDialog=!1},handleMakeRecurringClick(){this.showRecurrenceDialog=!0},handleRecurrenceSave(r){this.updateFormField(this.ks.fields.recurrenceRule,r),this.showRecurrenceDialog=!1},handleRecurrenceCancel(){this.showRecurrenceDialog=!1},handleRemoveRecurrenceClick(){this.showRemoveRecurrenceDialog=!0},handleRemoveRecurrenceConfirm(){this.updateFormField(this.ks.fields.recurrenceRule,null),this.updateFormField(this.ks.fields.recurrenceExceptions,null),this.showRemoveRecurrenceDialog=!1,this.showRecurrenceDialog=!1},handleRemoveRecurrenceCancel(){this.showRemoveRecurrenceDialog=!1},updateFormField(r,o){this.kendoForm.onChange(r,{value:o}),this.$emit("change",r,{value:o})},requiredValidator(r){return r?void 0:this.requiredValidationMessage},startTimezoneValidator(r,o){return this.showTimezones?this.requiredValidator(o(this.ks.fields.startTimezone)):void 0},endTimezoneValidator(r,o){return this.showTimezones?this.requiredValidator(o(this.ks.fields.endTimezone))||this.requiredValidator(o(this.ks.fields.startTimezone)):void 0}},watch:{startTimezone(r,o){this.showTimezones&&r&&r!==o&&this.updateFormField(this.ks.fields.endTimezone,r)}}});exports.SchedulerFormEditor=j;