UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

8 lines 106 kB
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("kendo.dropdownlist.min.js"),require("kendo.editable.min.js"),require("kendo.multiselect.min.js"),require("kendo.window.min.js"),require("kendo.datetimepicker.min.js"),require("kendo.scheduler.recurrence.min.js"),require("kendo.scheduler.view.min.js"),require("kendo.scheduler.dayview.min.js"),require("kendo.scheduler.agendaview.min.js"),require("kendo.scheduler.monthview.min.js"),require("kendo.scheduler.timelineview.min.js"),require("kendo.scheduler.yearview.min.js"),require("kendo.dialog.min.js"),require("kendo.pane.min.js"),require("kendo.pdf.min.js"),require("kendo.switch.min.js"),require("kendo.toolbar.min.js"),require("kendo.html.button.min.js"),require("kendo.icons.min.js"),require("kendo.segmentedcontrol.min.js")):typeof define==`function`&&define.amd?define([`exports`,`kendo.dropdownlist.min`,`kendo.editable.min`,`kendo.multiselect.min`,`kendo.window.min`,`kendo.datetimepicker.min`,`kendo.scheduler.recurrence.min`,`kendo.scheduler.view.min`,`kendo.scheduler.dayview.min`,`kendo.scheduler.agendaview.min`,`kendo.scheduler.monthview.min`,`kendo.scheduler.timelineview.min`,`kendo.scheduler.yearview.min`,`kendo.dialog.min`,`kendo.pane.min`,`kendo.pdf.min`,`kendo.switch.min`,`kendo.toolbar.min`,`kendo.html.button.min`,`kendo.icons.min`,`kendo.segmentedcontrol.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Scheduler={}),e.kendo._globals.Dropdownlist,e.kendo._globals.Editable,e.kendo._globals.Multiselect,e.kendo._globals.Window,e.kendo._globals.Datetimepicker,e.kendo._globals.SchedulerRecurrence,e.kendo._globals.SchedulerView,e.kendo._globals.SchedulerDayview,e.kendo._globals.SchedulerAgendaview,e.kendo._globals.SchedulerMonthview,e.kendo._globals.SchedulerTimelineview,e.kendo._globals.SchedulerYearview,e.kendo._globals.Dialog,e.kendo._globals.Pane,e.kendo._globals.Pdf,e.kendo._globals.Switch,e.kendo._globals.Toolbar,e.kendo._globals.HtmlButton,e.kendo._globals.Icons,e.kendo._globals.Segmentedcontrol))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let x={id:`scheduler`,name:`Scheduler`,category:`web`,description:`The Scheduler is an event calendar.`,depends:[`dropdownlist`,`editable`,`multiselect`,`window`,`dialog`,`datepicker`,`datetimepicker`,`toolbar`,`scheduler.recurrence`,`scheduler.view`,`html.button`,`icons`,`segmentedcontrol`],features:[{id:`scheduler-dayview`,name:`Scheduler Day View`,description:`Scheduler Day View`,depends:[`scheduler.dayview`]},{id:`scheduler-agendaview`,name:`Scheduler Agenda View`,description:`Scheduler Agenda View`,depends:[`scheduler.agendaview`]},{id:`scheduler-monthview`,name:`Scheduler Month View`,description:`Scheduler Month View`,depends:[`scheduler.monthview`]},{id:`scheduler-timelineview`,name:`Scheduler Timeline View`,description:`Scheduler Timeline View`,depends:[`scheduler.timelineview`]},{id:`scheduler-yearview`,name:`Scheduler Year View`,description:`Scheduler Year View`,depends:[`scheduler.yearview`]},{id:`scheduler-mobile`,name:`Scheduler adaptive rendering`,description:`Support for adaptive rendering`,depends:[`dialog`,`pane`,`switch`]},{id:`scheduler-pdf-export`,name:`PDF export`,description:`Export the scheduler events as PDF`,depends:[`pdf`,`drawing`]},{id:`scheduler-timezones`,name:`Timezones`,description:`Allow selecting timezones different than Etc/UTC`,depends:[`timezones`]}]};(function(e,t){var n=window.kendo,r=n.date,i=r.MS_PER_DAY,a=r.getDate,o=n.date.getMilliseconds,s=n.recurrence,c=n.htmlEncode,l=n.keys,u=n.ui,d=u.Widget,f=u.DataBoundWidget,p=`string`,m=u.Popup,h=u.Calendar,g=n.data.DataSource,_=e.isPlainObject,v=e.extend,y=Object.prototype.toString,b=Array.isArray,x=`.kendoScheduler`,S=`click`,C=`mousedown`,w=n.support.pointers?`pointerdown`:`touchstart`,ee=n.support.pointers?`pointermove`:`touchmove`,te=n.support.pointers?`pointerup`:`touchend`,ne=n.support.mousemove,T=`change`,E=`progress`,D=`error`,O=`cancel`,k=`remove`,A=`resetSeries`,j=`save`,re=`add`,M=`edit`,N=`disabled`,ie=`option`,P=`k-focus`,ae=`k-event-inverse`,oe=/(?:value:start|value:end)(?:,|$)/,se=`(min-width: 1024px)`,F=a(new Date),I=`,`,ce=/\;/g,L=`recurrenceException`,le=`Are you sure you want to delete this event?`,ue=`Do you want to delete only this event occurrence or the whole series?`,de=`Do you want to edit only this event occurrence or the whole series?`,fe=`Are you sure you want to delete this event occurrence?`,pe=`Are you sure you want to reset the whole series?`,me=`Are you sure you want to delete the whole series?`,he=`Are you sure you want to reset the timezone?`,ge=20,_e=`k-event-ongoing`,ve=({className:e,attr:t,text:r,icon:i,fillMode:a,themeColor:o})=>n.html.renderButton(`<button type="button" class="${e}" ${t}>${r}</button>`,{icon:i,fillMode:a,themeColor:o}),ye=n.template(({label:e,views:t,type:n})=>`<select aria-label="${e}" class="k-picker k-dropdown-list k-dropdown ${n}">`+Object.keys(t).map(e=>`<option value="${e}">${t[e].title}</option>`).join(``)+`</select>`),be={pdf:{name:`pdf`,type:`button`,icon:`file-pdf`,attributes:{class:`k-pdf`}},pdfMobile:{name:`pdf`,type:`button`,icon:`file-pdf`,showText:`overflow`,attributes:{class:`k-pdf`}},today:{name:`today`,type:`button`,fillMode:`flat`,attributes:{"ref-nav-today":``}},previous:{name:`previous`,type:`button`,icon:`chevron-left`,fillMode:`flat`,showText:`overflow`,attributes:{"ref-nav-prev":``},groupClass:`k-button-group-flat`},next:{name:`next`,type:`button`,icon:`chevron-right`,fillMode:`flat`,showText:`overflow`,attributes:{"ref-nav-next":``},groupClass:`k-button-group-flat`},current:{name:`current`,type:`button`,icon:`calendar`,fillMode:`flat`,text:`placeholder`,attributes:{"aria-live":`polite`,class:`k-nav-current`}},search:{template:`<span class="k-scheduler-search k-textbox k-input"><input tabindex="-1" autocomplete="off" class="k-input-inner k-scheduler-search-input k-input-inner" /><span class="k-input-suffix">${n.ui.icon(`search`)}</span></span>`},refresh:{name:`refresh`,type:`button`,icon:`arrow-rotate-cw`,showText:`overflow`,attributes:{class:`k-scheduler-refresh`}},create:{name:`create`,type:`button`,icon:`plus`,text:`New Event`,attributes:{class:`k-toolbar-button  k-button k-button-primary`,"ref-toolbar-create":``}},createMobile:{name:`create`,type:`button`,icon:`plus`,text:`New Event`,showText:`overflow`,attributes:{class:`k-toolbar-button k-button`,"ref-toolbar-create":``}},calendar:{name:`calendar`,type:`button`,icon:`calendar`,attributes:{class:`k-nav-calendar`}},previousMobile:{name:`previous`,type:`button`,icon:`chevron-left`,showText:`overflow`,attributes:{"ref-nav-prev":``},groupClass:`k-scheduler-navigation`},nextMobile:{name:`next`,type:`button`,icon:`chevron-right`,showText:`overflow`,attributes:{"ref-nav-next":``},groupClass:`k-scheduler-navigation`},currentMobile:{template:`<span class="k-scheduler-navigation"><span class="k-nav-current"><span class="k-m-date-format"></span><span class="k-y-date-format"></span></span></span>`},view:{name:`view`,type:`button`,togglable:!0,group:`views`}},xe=[`create`,`today`,[`previous`,`next`],`current`,{type:`spacer`}],Se=[[`calendar`],{type:`spacer`}],Ce=[`previousMobile`,{type:`spacer`},`currentMobile`,{type:`spacer`},`nextMobile`],we=function(t,r){var i={name:r.field,title:r.title},a=r.model.isAllDay,o=n.attr(`validate`)+`='`+!a+`'`,s=n.attr(`validate`)+`='`+!!a+`'`;Fe(i,r),Ie(i,r),Le(i,r),e(`<input type="datetime-local" required `+n.attr(`type`)+`="datetime-local" `+n.attr(`bind`)+`="value:`+r.field+`, invisible:isAllDay" `+o+`/>`).attr(i).appendTo(t),e(`<input type="date" required `+n.attr(`type`)+`="date" `+n.attr(`bind`)+`="value:`+r.field+`,visible:isAllDay" `+s+`/>`).attr(i).appendTo(t),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg"/>`).hide().appendTo(t)},Te=function(t,r){var i={name:r.field,title:r.title},a=r.field===`start`,o=r.field===`end`;Fe(i,r),Ie(i,r),Le(i,r);var s=e(`<div class="k-scheduler-edit-form-row k-pos-relative"></div>`).appendTo(t);e(`<input type="hidden" required `+n.attr(`bind`)+`="value:`+r.field+`" `+n.attr(`validate`)+`="true"/>`).attr(i).attr(`data-scheduler-date-part`,`owner`).appendTo(s),e(`<span `+n.attr(`for`)+`="`+r.field+`" class="k-invalid-msg"/>`).hide().appendTo(s),e(`<input type="text" `+n.attr(`type`)+`="date" `+n.attr(`role`)+`="datepicker" `+n.attr(`validate`)+`="false"/>`).attr({name:r.field,title:r.title}).attr(n.attr(`skip`),`true`).attr(`data-scheduler-field`,r.field).attr(`data-scheduler-date-part`,`date`).appendTo(s),e(`<span class="k-scheduler-datetime-separator k-scheduler-datetime-label" 
                    ${o?`data-bind="invisible:isAllDay"`:``} 
                    ${a?`data-separator-for='start'`:`data-separator-for='end'`}>
              </span>`).text(a?`from`:`to`).appendTo(s),e(`<input type="text" `+n.attr(`type`)+`="time" `+n.attr(`role`)+`="timepicker" `+n.attr(`bind`)+`="invisible:isAllDay" `+n.attr(`validate`)+`="false"/>`).attr({name:r.field,title:r.title}).attr(n.attr(`skip`),`true`).attr(`data-scheduler-field`,r.field).attr(`data-scheduler-date-part`,`time`).appendTo(s),a&&!n.timezone.windows_zones&&e(`<span class="k-col-span-2" data-bind="invisible:isAllDay"></span>`).appendTo(t)},R=function(e){var t=e.find(`.k-callout`),r=e.attr(n.attr(`for`)),i=e.parent().find(`[data-scheduler-field='`+r+`'][data-scheduler-date-part=date]`).data(`kendoDatePicker`);!t.length||!i||(t.removeClass(`k-callout-n`).addClass(`k-callout-s`),e[0].style.removeProperty(`right`),e[0].style.removeProperty(`inset-inline-end`),e[0].style.setProperty(`left`,i.wrapper.position().left+`px`),e[0].style.setProperty(`inset-block-start`,`auto`),e[0].style.setProperty(`inset-block-end`,`calc(100% + `+t.outerHeight()/2+`px)`),e[0].style.setProperty(`margin-block-start`,`0px`))},Ee=function(t,r){e(`<div `+n.attr(`bind`)+`="value:`+r.field+`" />`).attr({name:r.field,"aria-label":r.title}).appendTo(t).kendoRecurrenceEditor({start:r.model.start,timezone:r.timezone,messages:r.messages,recurrenceRuleLabelTemplate:r.recurrenceRuleLabelTemplate})},De=function(t,r){e(`<div `+n.attr(`bind`)+`="value:`+r.field+`" />`).attr({name:r.field}).appendTo(t).kendoMobileRecurrenceEditor({start:r.model.start,timezone:r.timezone,messages:r.messages,pane:r.pane,value:r.model[r.field]})},Oe=function(t,r){e(`<input type="checkbox" data-role="switch"`+n.attr(`bind`)+`="value:`+r.field+`" />`).attr(n.attr(`messages`),`{"checked":"","unchecked":""}`).appendTo(t)},ke=function(t,r){var i=e(`<div class="k-scheduler-edit-form-row"></div>`).appendTo(t);e(`<input type="checkbox" data-role="switch"`+n.attr(`bind`)+`="value:`+r.field+`" />`).attr({id:r.field,name:r.field,title:r.title?r.title:r.field,"aria-label":r.title?r.title:r.field}).attr(n.attr(`messages`),`{"checked":"","unchecked":""}`).appendTo(i),e(`<span></span>`).text(r.title||r.field).appendTo(i)},Ae=function(t,r){var i=Pe(r.model,r.messages.noTimezone);e(`<span class="k-timezone-label"></span>`).text(i).appendTo(t),e(n.ui.icon(`arrow-chevron-right`)).appendTo(t),t.closest(`li.k-item label`).on(S,r.click)},je=function(t,r){let i=e(t).parent().parent().find(`.k-scheduler-datetime-grid`);i.length&&(i=i.find(`div[data-container-for='start']`).length?i.find(`div[data-container-for='start']`):i),z(e(`<a href="#" class="k-col-span-2 k-button k-button-flat k-button-primary k-icon-button k-timezone-btn" title="`+c(r.messages.timezone)+`" data-bind="invisible:isAllDay"><span class="k-button-text">`+c(r.messages.timezoneEditorButton)+`</span></a>`).append(e(n.ui.icon(`globe`)).addClass(`k-button-icon`)).on(S,r.click).appendTo(i),!r.model.isTimezoneInvisible,r.messages),e(t).parent(`.k-form-field`).remove()},Me=function(t,r){e(`<div class="k-mobiletimezoneeditor" `+n.attr(`bind`)+`="value:`+r.field+`" />`).attr({name:r.field}).appendTo(t).kendoMobileTimezoneEditor({optionLabel:r.noTimezone})},Ne=function(t,r){t.attr(n.attr(`bind`),`invisible: isTimezoneInvisible`),e(`<div `+n.attr(`bind`)+`="value:`+r.field+`"  />`).attr({name:r.field}).appendTo(t).kendoTimezoneEditor({optionLabel:r.noTimezone,title:r.title})};function z(e,t,n){e.find(`.k-button-text`).toggleClass(`k-hidden`,t),e.toggleClass(`k-col-span-2`,!t),e.attr(`title`,t?n.resetTimezoneWindowTitle:n.timezone),t?e.attr(`aria-label`,n.resetTimezoneWindowTitle):e.removeAttr(`aria-label`)}function Pe(e,t){return t||=``,e.startTimezone&&(t=e.startTimezone,e.endTimezone&&(t+=` | `+e.endTimezone)),t}function Fe(e,t){var r=t.timezone;r&&(e[n.attr(`timezone`)]=r)}function Ie(e,t){var r=t.model.fields[t.field].validation;if(r){var i=r.validDateValidator;i&&_(i)&&i.message&&(e[n.attr(`validDate-msg`)]=i.message)}}function Le(e,t){var r=t.model.fields[t.field].validation;if(r){var i=r.dateCompare;i&&_(i)&&i.message&&(e[n.attr(`dateCompare-msg`)]=i.message)}}function Re(e,t){return function(n){return n=e(n),B(n,`apply`,t),n||[]}}function ze(e,t){return function(r){return r&&y.call(r)!==`[object Array]`&&!(r instanceof n.data.ObservableArray)&&(r=[r]),B(r,`remove`,t,!0),r=e(r),r||[]}}function B(e,t,r,i){var a,o,s,c,l;for(e||=[],o=0,s=e.length;o<s;o++)a=e[o],c=a.start?a.start.getTimezoneOffset():null,l=a.start?a.end.getTimezoneOffset():null,i?a.startTimezone||a.endTimezone?r?(a.start=n.timezone.convert(a.start,a.startTimezone||a.endTimezone,r),a.end=n.timezone.convert(a.end,a.endTimezone||a.startTimezone,r),a.start=n.timezone[t](a.start,r),a.end=n.timezone[t](a.end,r)):(a.start=n.timezone[t](a.start,a.startTimezone||a.endTimezone),a.end=n.timezone[t](a.end,a.endTimezone||a.startTimezone)):r&&(a.start=n.timezone[t](a.start,r),a.end=n.timezone[t](a.end,r)):a.startTimezone||a.endTimezone?(a.start=n.timezone[t](a.start,a.startTimezone||a.endTimezone),a.end=n.timezone[t](a.end,a.endTimezone||a.startTimezone),r&&(a.start=n.timezone.convert(a.start,a.startTimezone||a.endTimezone,r),a.end=n.timezone.convert(a.end,a.endTimezone||a.startTimezone,r))):r&&(a.start=n.timezone[t](a.start,r),a.end=n.timezone[t](a.end,r)),i&&delete a.uid,t===`remove`&&a.start&&c&&c!==a.start.getTimezoneOffset()&&(a.start=new Date(a.start.getTime()+(c-a.start.getTimezoneOffset())*6e4)),t===`remove`&&a.end&&l&&l!==a.end.getTimezoneOffset()&&(a.end=new Date(a.end.getTime()+(l-a.end.getTimezoneOffset())*6e4));return e}function V(e,t){for(var n=e.length,r=0,i;r<n;r++)if(i=e[r],i.uid===t)return i}var H=n.Class.extend({init:function(e,t){var n=e.timezone;this.reader=t,t.model&&(this.model=t.model),this.timezone=n,this.data=Re(this.data.bind(this),n),this.serialize=ze(this.serialize.bind(this),n)},errors:function(e){return this.reader.errors(e)},parse:function(e){return this.reader.parse(e)},data:function(e){return this.reader.data(e)},total:function(e){return this.reader.total(e)},groups:function(e){return this.reader.groups(e)},aggregates:function(e){return this.reader.aggregates(e)},serialize:function(e){return this.reader.serialize(e)}});function U(e,t,r){return e=r?n.timezone.convert(e,t,r):n.timezone.remove(e,t),e}function Be(t){var n;return t.parents().each(function(){return n=e(this).data(`kendoEditable`),!n}),n}function W(e){if(e.filter(`[data-scheduler-date-part=owner]`).length){var t=Be(e),r=t&&t._validationEventInProgress?e.data(`schedulerValue`):t&&t.options.model.get(e.attr(`name`));return r instanceof Date&&!isNaN(r.getTime())}if(e.filter(`[name=start]`).length&&e.filter(`[title=Start]`).length||e.filter(`[name=end]`).length&&e.filter(`[title=End]`).length||e.filter(`.k-recur-until`).length){var i,a=n.widgetInstance(e,n.ui);return a?(i=n.parseDate(e.val(),a.options.format),!!i&&a.value()):(i=n.parseDate(e.val()),!!i)}return!0}function Ve(e){if(e.filter(`[data-scheduler-date-part=owner][name=end]`).length){var t=Be(e);if(t&&t._validationEventInProgress)return!0;var r=t&&t.options.model,i=r&&r.get(`start`),a=r&&r.get(`end`);if(i instanceof Date&&a instanceof Date){var o=e.attr(n.attr(`timezone`)),s=r.startTimezone,c=r.endTimezone;return s||=c,c||=s,s&&(i=U(i,s,o),a=U(a,c,o)),i<=a}return!0}if(e.filter(`[name=end]`).length){var l=e.closest(`.k-scheduler-edit-form`),u=l.find(`[name=start]:visible`),d=l.find(`[name=end]:visible`);if(d[0]&&u[0]){var i,a,f=n.widgetInstance(u,n.ui),p=n.widgetInstance(d,n.ui),t=l.data(`kendoEditable`),r=t?t.options.model:null;if(f&&p?(i=f.value(),a=p.value()):(i=n.parseDate(u.val()),a=n.parseDate(d.val())),i&&a){if(r){var o=u.attr(n.attr(`timezone`)),s=r.startTimezone,c=r.endTimezone;s||=c,c||=s,s&&(i=U(i,s,o),a=U(a,c,o))}return i<=a}}}return!0}function He(e){var t,r,i,a,o,s;return e.filter(`.k-recur-until`).length&&(t=n.widgetInstance(e,n.ui),r=t.value(),i=e.closest(`.k-scheduler-edit-form`),a=i.find(`[name=start]:visible`),a[0]&&(s=n.widgetInstance(a,n.ui),o=s?s.value():n.parseDate(a.val()),o&&r))?o<=r:!0}var G=n.data.Model.define({init:function(e){var t=this;n.data.Model.fn.init.call(t,e),t._defaultId=t.defaults[t.idField]},_time:function(e){var t=this[e],r=`_`+e+`Time`;return this[r]?this[r]-n.date.toUtcTime(n.date.getDate(t)):o(t)},_date:function(e){var t=`_`+e+`Time`;return this[t]?this[t]-this._time(e):n.date.getDate(this[e])},clone:function(t,n){var r=this.uid,i=new this.constructor(e.extend({},this.toJSON(),t));return n||(i.uid=r),i},duration:function(){var e=this.end,t=this.start,r=(e.getTimezoneOffset()-t.getTimezoneOffset())*n.date.MS_PER_MINUTE;return e-t-r},expand:function(e,t,n){return s?s.expand(this,e,t,n):[this]},update:function(e){for(var t in e)this.set(t,e[t]);this._startTime&&this.set(`_startTime`,n.date.toUtcTime(this.start)),this._endTime&&this.set(`_endTime`,n.date.toUtcTime(this.end))},isMultiDay:function(){return this.isAllDay||this.duration()>=n.date.MS_PER_DAY},isException:function(){return!this.isNew()&&this.recurrenceId},isOccurrence:function(){return this.isNew()&&this.recurrenceId},isRecurring:function(){return!!(this.recurrenceRule||this.recurrenceId)},isRecurrenceHead:function(){return!!(this.id&&this.recurrenceRule)},toOccurrence:function(t){return t=e.extend(t,{recurrenceException:null,recurrenceRule:null,recurrenceId:this.id||this.recurrenceId}),t[this.idField]=this.defaults[this.idField],this.clone(t,!0)},toJSON:function(){var e=n.data.Model.fn.toJSON.call(this);return e.uid=this.uid,delete e._startTime,delete e._endTime,e},shouldSerialize:function(e){return n.data.Model.fn.shouldSerialize.call(this,e)&&e!==`_defaultId`},set:function(e,t){var r=this.isAllDay||!1;if(n.data.Model.fn.set.call(this,e,t),e==`isAllDay`&&t!=r){var a=n.date.getDate(this.start),o=new Date(this.end),s=n.date.getMilliseconds(o);s===0&&t&&(s=i),this._normalizingAllDay=!0;try{this.set(`start`,a),t===!0?(n.date.setTime(o,-s),o<a&&(o=a)):n.date.setTime(o,i-s),this.set(`end`,o)}finally{delete this._normalizingAllDay}}},id:`id`,fields:{id:{type:`number`},title:{defaultValue:``,type:`string`},start:{type:`date`,validation:{required:!0,validDate:{value:W}}},startTimezone:{type:`string`},end:{type:`date`,validation:{required:!0,validDate:{value:W},dateCompare:{value:Ve}}},endTimezone:{type:`string`},recurrenceRule:{defaultValue:``,type:`string`,validation:{validDate:{value:W},untilDateCompare:{value:He}}},recurrenceException:{defaultValue:``,type:`string`},isReadonly:{type:`boolean`,defaultValue:!1},isAllDay:{type:`boolean`,defaultValue:!1},description:{type:`string`}}}),K=g.extend({init:function(e){g.fn.init.call(this,v(!0,{},{schema:{modelBase:G,model:G}},e)),this.reader=new H(this.options.schema,this.reader)},expand:function(e,t){var r=this.view(),a={},o;return e&&t&&(o=t.getTimezoneOffset(),t=new Date(t.getTime()+i-1),t.getTimezoneOffset()!==o&&(t=n.timezone.apply(t,o)),a={logic:`or`,filters:[{logic:`and`,filters:[{field:`start`,operator:`gte`,value:e},{field:`end`,operator:`gte`,value:e},{field:`start`,operator:`lte`,value:t}]},{logic:`and`,filters:[{field:`start`,operator:`lte`,value:new Date(e.getTime()+i-1)},{field:`end`,operator:`gte`,value:e}]}]},r=new n.data.Query(Ue(r,e,t,this.reader.timezone)).filter(a).toArray()),r},cancelChanges:function(e){e&&e.isOccurrence()&&this._removeExceptionDate(e),g.fn.cancelChanges.call(this,e)},insert:function(e,t){if(t){if(!(t instanceof G)){var n=t;t=this._createNewModel(),t.accept(n)}return(!this._pushCreated&&t.isRecurrenceHead()||t.recurrenceId)&&(t=t.recurrenceId?t:t.toOccurrence(),this._addExceptionDate(t)),g.fn.insert.call(this,e,t)}},pushCreate:function(e){this._pushCreated=!0,g.fn.pushCreate.call(this,e),this._pushCreated=!1},remove:function(e){return e.isRecurrenceHead()?this._removeExceptions(e):e.isRecurring()&&this._addExceptionDate(e),g.fn.remove.call(this,e)},_removeExceptions:function(e){for(var t=this.data().slice(0),n=t.shift(),r=e.id;n;)n.recurrenceId===r&&g.fn.remove.call(this,n),n=t.shift();e.set(L,``)},_removeExceptionDate:function(e){if(e.recurrenceId){var t=this.get(e.recurrenceId);if(t){var n=e.defaults.start,r=RegExp(`(\\`+I+`?)`+s.toExceptionString(n,this.reader.timezone)),i=(t.recurrenceException||``).replace(ce,I).replace(/\,$/,``);r.test(i)?t.set(L,i.replace(r,``)):(n=e.start,r=RegExp(`(\\`+I+`?)`+s.toExceptionString(n,this.reader.timezone)),t.set(L,i.replace(r,``)))}}},_addExceptionDate:function(e){var t=e.start,n=this.reader.timezone,r=this.get(e.recurrenceId),i=(r.recurrenceException||``).replace(ce,I).replace(/\,$/,``);if(!s.isException(i,t,n)){var a=s.toExceptionString(t,n);e.defaults.start=t,r.set(L,i+(i&&a?I:``)+a)}}});function Ue(e,t,n,r){for(var i=e.length,a=[],o=0;o<i;o++)a=a.concat(e[o].expand(t,n,r));return a}K.create=function(e){(b(e)||e instanceof n.data.ObservableArray)&&(e={data:e});var t=e||{};if(t.data=t.data,!(t instanceof K)&&t instanceof n.data.DataSource)throw Error(`Incorrect DataSource type. Only SchedulerDataSource instances are supported`);return t instanceof K?t:new K(t)},v(!0,n.data,{SchedulerDataSource:K,SchedulerDataReader:H,SchedulerEvent:G});var We={update:{text:`Save`,className:`k-button-primary k-scheduler-update`},canceledit:{text:`Cancel`,className:`k-scheduler-cancel`},destroy:{text:`Delete`,icon:`trash`,imageClass:`k-i-trash`,className:`k-button-primary k-scheduler-delete`,iconClass:`k-icon`}};function Ge(e,t){for(var n in delete e.name,delete e.prefix,delete e.remove,delete e.edit,delete e.add,delete e.navigate,t)e[n]=t[n];return e}function Ke(t){var n=q(t.model,t.field);return function(t,r){e(`<textarea name="description" placeholder="Add Description" class="k-input-inner !k-resize-y" title="`+r.title+`"/>`).attr(n).appendTo(t).wrap(`<span class="k-input k-textarea"></span>`)}}function q(t,r){var i=(t.fields||t)[r],a=[`url`,`email`,`number`,`date`,`boolean`],o=i?i.validation:{},s=n.attr(`type`),c=e.inArray,l,u,d={};for(l in o)u=o[l],c(l,a)>=0?d[s]=l:n.isFunction(u)||(d[l]=_(u)?u.value||l:u),d[n.attr(l+`-msg`)]=u.message;return d}function J(e,n,r,i){var a=e.value(),o=Array.isArray(a),s=o?JSON.parse(JSON.stringify(a)):[a.toString()];e.dataSource.data().forEach(function(a){if(a[r]===null||a[r]===t||a[r]==n)a.set(N,!1);else{var c=a.get(i);a.set(N,!0),(s.indexOf(c)>=0||s.indexOf(c.toString())>=0)&&(o?s.splice(s.indexOf(c),1):(e.value(null),e.trigger(T)))}}),o&&s.length<a.length&&(e.value(s),e.trigger(T))}function Y(e,t,r,i){var a=e.closest(`.k-scheduler-edit-form, .k-edit-form-container`).find(`[data-`+n.ns+`bind='value:`+i+`']`),o=a.getKendoDropDownList();o?o.bind(T,function(e){J(t,e.sender.value(),r.dataParentValueField,r.dataValueField)}):a.on(T,function(e){var n=e.target.value;J(t,n,r.dataParentValueField,r.dataValueField)})}function X(e,r,i){var a=r.find(ie),o=r.val(),s=Array.isArray(o),c=s?JSON.parse(JSON.stringify(o)):[o];e.dataSource.view().forEach(function(o,l){var u=n.getter(e.dataParentValueField)(o);if(u===null||u===t||u==i)a[l].removeAttribute(N);else{a[l].setAttribute(N,N);var d=``+o.get(e.dataValueField);c.indexOf(d)>=0&&(s?c.splice(c.indexOf(d),1):(r.val(null),r.trigger(T)))}}),s&&c.length<o.length&&(r.val(c),r.trigger(T))}function qe(t,r,i){var a=q(r,t.field),o=t.icon?`aria-label="`+c(t.title||t.field)+`"`:`aria-labelledby="`+t.field+`_label"`;return function(s){var c;i&&setTimeout(function(){J(c,r[i],t.dataParentValueField,t.dataValueField),Y(s,c,t,i)}),c=e(n.format(`<select `+o+` data-{0}bind="value:{1}" title="`+r.title+`">`,n.ns,t.field)).appendTo(s).attr(a).kendoDropDownList({dataTextField:t.dataTextField,dataValueField:t.dataValueField,dataSource:t.dataSource.data(),valuePrimitive:t.valuePrimitive,optionLabel:`None`,template:e=>`<span ${e.disabled?`data-disabled`:``}><span class="k-scheduler-mark" ${n.attr(`style-background-color`)}="${e[t.dataColorField]||`none`}"></span>${e[t.dataTextField]}</span>`,select:function(e){e.dataItem&&e.dataItem.disabled&&e.preventDefault()},dataBound:function(e){let t=e.sender.list.find(`li`);for(let e=0;e<t.length;e++){var n=t.eq(e);n.find(`[data-disabled]`).length>0&&n.addClass(`k-disabled`)}}}).data(`kendoDropDownList`)}}function Je(t,r,i){var a=q(r,t.field);return function(o){for(var s=``,c=t.dataSource.view(),l=0,u=c.length;l<u;l++)s+=n.format(`<option value="{0}">{1}</option>`,n.getter(t.dataValueField)(c[l]),n.getter(t.dataTextField)(c[l]));var d=e(n.format(`<select aria-labelledby="`+t.field+`_label" data-{0}bind="value:{1}">{2}</select>`,n.ns,t.field,s)).appendTo(o).attr(a);i&&setTimeout(function(){var e=o.closest(`.k-stretched-view`).find(`[data-`+n.ns+`bind='value:`+i+`']`),a=r[i];X(t,d,a),e.on(T,function(e){var n=e.target.value;X(t,d,n)})})}}function Ye(t,r,i){var a=q(r,t.field),o=t.icon?`aria-label="`+c(t.title||t.field)+`"`:`aria-labelledby="`+t.field+`_label"`;return function(s){var c;i&&setTimeout(function(){J(c,r[i],t.dataParentValueField,t.dataValueField),Y(s,c,t,i)}),c=e(n.format(`<select `+o+` data-{0}bind="value:{1}">`,n.ns,t.field)).appendTo(s).attr(a).kendoMultiSelect({dataTextField:t.dataTextField,dataValueField:t.dataValueField,dataSource:t.dataSource.data(),valuePrimitive:t.valuePrimitive,itemTemplate:e=>`<span ${e.disabled?`data-disabled`:``}><span class="k-scheduler-mark" ${n.attr(`style-background-color`)}="${e[t.dataColorField]||`none`}"></span>${e[t.dataTextField]}</span>`,tagTemplate:e=>`<span class="k-scheduler-mark" ${n.attr(`style-background-color`)}="${e[t.dataColorField]||`none`}"></span>${e[t.dataTextField]}`,select:function(e){e.dataItem&&e.dataItem.disabled&&e.preventDefault()},dataBound:function(e){let t=e.sender.list.find(`li`);for(let e=0;e<t.length;e++){let n=t.eq(e);n.find(`[data-disabled]`).length>0&&n.addClass(`k-disabled`)}}}).data(`kendoMultiSelect`)}}function Xe(t,r,i){var a=q(r,t.field);return function(o){for(var s=``,c=t.dataSource.view(),l=0,u=c.length;l<u;l++)s+=n.format(`<option value="{0}">{1}</option>`,n.getter(t.dataValueField)(c[l]),n.getter(t.dataTextField)(c[l]));var d=e(n.format(`<select aria-labelledby="`+t.field+`_label" data-{0}bind="value:{1}" multiple="multiple">{2}</select>`,n.ns,t.field,s)).appendTo(o).attr(a);i&&setTimeout(function(){var e=o.closest(`.k-stretched-view`).find(`[data-`+n.ns+`bind='value:`+i+`']`),a=r[i];X(t,d,a),e.on(T,function(e){var n=e.target.value;X(t,d,n)})})}}function Z(e,t){var r=e.end.getTime()-e.start.getTime(),i=new Date(e.start.getTime());n.date.setTime(i,t);var a=new Date(i.getTime());return n.date.setTime(a,r,!0),{start:i,end:a}}var Ze={mobile:{dateRange:we,timezonePopUp:Ae,timezone:Me,recurrence:De,description:Ke,multipleResources:Xe,resources:Je,isAllDay:Oe},desktop:{dateRange:Te,timezonePopUp:je,timezone:Ne,recurrence:Ee,description:Ke,multipleResources:Ye,resources:qe,isAllDay:ke}},Q=n.Observable.extend({init:function(e,t){n.Observable.fn.init.call(this),this.element=e,this.options=v(!0,{},this.options,t),this.createButton=this.options.createButton,this.toggleDateValidationHandler=this._toggleDateValidation.bind(this)},_editorTitle:function(e){var t=this.options.messages.editor||{};return e&&e.isNew&&e.isNew()?t.newEvent||t.editorTitle:t.editEvent||t.editorTitle},_toggleDateValidation:function(t){if(t.field==`isAllDay`){var r=this.container,i=this.editable.options.model.isAllDay,a=this.options.mobile,o=n.attr(`bind`),s,c,l;r.find(`[`+o+`*=end],[`+o+`*=start]`).each(function(){s=e(this),oe.test(s.attr(o))&&(c=s.is(`[`+n.attr(`role`)+`=datetimepicker],[`+n.attr(`role`)+`=timepicker],[type*=datetime],[type=time]`),l=c?!i:!a||i,s.attr(n.attr(`validate`),l.toString()))})}},_initDateRangeEditors:function(t){var r=this,i=r.container,a=i.data(`kendoValidator`),o=t.get(`start`),s=t.get(`end`);if(r._dateRangeWidgets=[],r._dateRangeDuration=o instanceof Date&&s instanceof Date?n.isFunction(t.duration)?t.duration():s.getTime()-o.getTime():null,a&&!n.isFunction(a.options.rules.dateCompare)&&(a.options.rules.dateCompare=Ve),[`start`,`end`].forEach(function(e){var o=i.find(`[data-scheduler-field='`+e+`'][data-scheduler-date-part=date]`),s=i.find(`[data-scheduler-field='`+e+`'][data-scheduler-date-part=time]`),c=o.data(`kendoDatePicker`),l=s.data(`kendoTimePicker`);if(!(!c||!l)){if(a){var u=i.find(`[data-scheduler-date-part=owner][name='`+e+`']`),d=a.options.messages.required;d=n.isFunction(d)?d(u):d,u.attr(n.attr(`required-msg`),n.format(d,u.attr(`title`)))}var f=function(){r._setDateRangePart(t,e,`date`,c.value())},p=function(){r._setDateRangePart(t,e,`time`,l.value())};c.value(t.get(e)),l.value(t.get(e)),c.bind(T,f),l.bind(T,p),r._dateRangeWidgets.push({field:e,datePicker:c,timePicker:l,dateChange:f,timeChange:p})}}),!r._dateRangeWidgets.length){r._dateRangeWidgets=null;return}r._dateRangeModel=t,r._dateRangeValidator=a,r._dateRangeValidateProxy=function(e){(!t._normalizingAllDay||e.field!==`start`&&e.field!==`end`)&&r.editable._validateProxy(e)},a&&(r._dateRangeValidateInput=a.validateInput,a.validateInput=function(t){var a=r._dateRangeValidateInput.call(this,t),o=e(t);if(!a&&o.is(`[data-scheduler-date-part=owner]`)){var s=o.attr(`name`);R(i.find(`.k-invalid-msg[`+n.attr(`for`)+`='`+s+`']`))}return a}),r._dateRangeModelChangeHandler=function(e){if(e.field===`start`||e.field===`end`){var n=t.get(e.field),r=i.find(`[data-scheduler-date-part=owner][name='`+e.field+`']`),a=i.find(`[data-scheduler-field='`+e.field+`'][data-scheduler-date-part=date]`).data(`kendoDatePicker`),o=i.find(`[data-scheduler-field='`+e.field+`'][data-scheduler-date-part=time]`).data(`kendoTimePicker`);r.val(n||``),a&&a.value(n),o&&o.value(n)}},r._dateRangeValidationHandler=function(e){if(e.input.is(`[data-scheduler-date-part=owner]`)){var r=e.input.attr(`name`),a=t.get(`isAllDay`),o=i.find(`[data-scheduler-field='`+r+`'][data-scheduler-date-part=date]`),s=i.find(`[data-scheduler-field='`+r+`'][data-scheduler-date-part=time]`),c=o.data(`kendoDatePicker`).wrapper,l=s.data(`kendoTimePicker`).wrapper,u=i.find(`.k-invalid-msg[`+n.attr(`for`)+`='`+r+`']`),d=u.attr(`id`);e.valid||R(u),c.toggleClass(`k-invalid`,!e.valid),l.toggleClass(`k-invalid`,!e.valid&&!a),o.attr(`aria-invalid`,(!e.valid).toString()),s.attr(`aria-invalid`,(!e.valid&&!a).toString()),c.attr(`aria-invalid`,(!e.valid).toString()),l.attr(`aria-invalid`,(!e.valid&&!a).toString()),!e.valid&&d?(o.attr(`aria-describedby`,d),a||s.attr(`aria-describedby`,d)):(o.removeAttr(`aria-describedby`),s.removeAttr(`aria-describedby`))}},r._dateRangeModelSetHandler=function(e){(e.field===`start`||e.field===`end`)&&i.find(`[data-scheduler-date-part=owner][name='`+e.field+`']`).val(e.value||``).data(`schedulerValue`,e.value)},t.unbind(`set`,r.editable._validateProxy),t.unbind(`equalSet`,r.editable._validateProxy),t.bind(`set`,r._dateRangeModelSetHandler),t.bind(`set`,r._dateRangeValidateProxy),t.bind(`equalSet`,r._dateRangeValidateProxy),t.bind(T,r._dateRangeModelChangeHandler),a&&a.bind(`validateInput`,r._dateRangeValidationHandler)},_setDateRangePart:function(e,t,r,i){if(!(i instanceof Date)||isNaN(i.getTime())){e.set(t,null);return}var a=e.get(t),o=a instanceof Date&&!isNaN(a.getTime())?new Date(a.getTime()):new Date(i.getTime()),s=t===`start`?this._dateRangeDuration:null;if(r===`date`?o.setFullYear(i.getFullYear(),i.getMonth(),i.getDate()):o.setHours(i.getHours(),i.getMinutes(),i.getSeconds(),i.getMilliseconds()),e.set(t,o),s!==null){var c=new Date(o.getTime());n.date.setTime(c,s),e.set(`end`,c)}var l=this.container&&this.container.find(`[data-scheduler-date-part=owner][name='end']`);if(this._dateRangeValidator&&l&&l.length){var u=this.container.find(`.k-invalid-msg[`+n.attr(`for`)+`='end']`);this._dateRangeValidator.validateInput(l);var d=this.container.find(`.k-invalid-msg[`+n.attr(`for`)+`='end']`);u.length&&d.length&&u[0]!==d[0]&&(u.attr(`class`,d.attr(`class`)).attr(`id`,d.attr(`id`)).removeAttr(`style`).empty().append(d.contents()),d.replaceWith(u),R(u))}},_destroyDateRangeEditors:function(){var e=this;e._dateRangeWidgets&&=(e._dateRangeWidgets.forEach(function(e){e.datePicker.unbind(T,e.dateChange),e.timePicker.unbind(T,e.timeChange)}),null);var t=e._dateRangeModel,n=e._dateRangeValidator;t&&e._dateRangeModelChangeHandler&&t.unbind(T,e._dateRangeModelChangeHandler),t&&e._dateRangeModelSetHandler&&t.unbind(`set`,e._dateRangeModelSetHandler),t&&e._dateRangeValidateProxy&&(t.unbind(`set`,e._dateRangeValidateProxy),t.unbind(`equalSet`,e._dateRangeValidateProxy)),n&&e._dateRangeValidationHandler&&n.unbind(`validateInput`,e._dateRangeValidationHandler),n&&e._dateRangeValidateInput&&(n.validateInput=e._dateRangeValidateInput),e._dateRangeModel=null,e._dateRangeValidator=null,e._dateRangeDuration=null,e._dateRangeValidateInput=null,e._dateRangeValidateProxy=null,e._dateRangeModelChangeHandler=null,e._dateRangeModelSetHandler=null,e._dateRangeValidationHandler=null},fields:function(t,r){var i=this,a=i.options.messages,o=i.options.timezone,s=function(){i._toggleTimeZones(i.editable.element,r)},c=[{field:`title`,title:a.editor.title},{field:`isAllDay`,title:a.editor.allDayEvent,editor:t.isAllDay,change:function(t){var o=e(i.editable.element),s=o.find(`span[data-separator-for="start"]`),c=o.find(`div[data-container-for="start"] > .k-scheduler-edit-form-row`),l=o.find(`div[data-container-for="end"] > .k-scheduler-edit-form-row`);if(t.checked){s.text(`to`),r.set(`isTimezoneInvisible`,!0);var u=o.find(`.k-timezone-btn`);u.length&&z(u,!1,a.editor);var d=c.add(l).find(`[data-scheduler-field=end][data-scheduler-date-part=date]`).closest(`.k-datepicker`),f=o.find(`.k-invalid-msg[`+n.attr(`for`)+`=end]`);f.insertAfter(s),d.insertAfter(f)}else{s.text(`from`);var d=c.find(`[data-scheduler-field=end][data-scheduler-date-part=date]`).closest(`.k-datepicker`),f=o.find(`.k-invalid-msg[`+n.attr(`for`)+`=end]`);d.add(f).prependTo(l)}}},{field:`start`,title:a.editor.start,editor:t.dateRange,timezone:o},{field:`end`,title:a.editor.end,editor:t.dateRange,timezone:o}],l=function(e){return!!e[d.dataParentValueField]};n.timezone.windows_zones&&(c.push({field:`timezone`,title:a.editor.timezone,editor:t.timezonePopUp,click:s,messages:a.editor,model:r}),r._set(`isTimezoneInvisible`,!(r.startTimezone||r.endTimezone)),c.push({field:`startTimezone`,title:a.editor.startTimezone,editor:t.timezone,noTimezone:a.editor.noTimezone}),c.push({field:`endTimezone`,title:a.editor.endTimezone,editor:t.timezone,noTimezone:a.editor.noTimezone})),r.recurrenceId||c.push({field:`recurrenceRule`,title:a.editor.repeat,editor:t.recurrence,timezone:o,messages:a.recurrenceEditor,pane:this.pane,recurrenceRuleLabelTemplate:i.options.recurrenceRuleLabelTemplate}),`description`in r&&c.push({field:`description`,title:a.editor.description,editor:t.description({model:r,field:`description`})});for(var u=0;u<this.options.resources.length;u++){var d=this.options.resources[u],f=d.dataSource.view().some(l),p,m;f&&(p=this.options.resources[u-1],p&&(m=p.field)),c.push({field:d.field,title:d.title,icon:d.icon,editor:d.multiple?t.multipleResources(d,r,m):t.resources(d,r,m)})}return c},end:function(){var e=this;return e._dateRangeWidgets&&e._dateRangeWidgets.map(function(e){return{item:e,dateValue:e.datePicker.value()||n.parseDate(e.datePicker.element.val(),e.datePicker.options.parseFormats,e.datePicker.options.culture),timeValue:e.timePicker.value()||n.parseDate(e.timePicker.element.val(),e.timePicker.options.parseFormats,e.timePicker.options.culture)}}).forEach(function(t){var n=t.item,r=t.dateValue,i=t.timeValue;r&&i?(e._setDateRangePart(e._dateRangeModel,n.field,`date`,r),e._setDateRangePart(e._dateRangeModel,n.field,`time`,i)):e._dateRangeModel.set(n.field,null);var a=e._dateRangeModel.get(n.field);e.container.find(`[data-scheduler-date-part=owner][name='`+n.field+`']`).val(a||``).data(`schedulerValue`,a)}),this.editable.end()},_buildDesktopEditTemplate:function(e,t,r){this.options.messages;let i=t=>!e.editable||e.editable(t)?`<div ${n.attr(`container-for`)}="${t}" class="k-form-field-wrap"></div>`:`<div class="k-form-field-wrap">${t&&n.getter(t)(e)||``}</div>`,a=!1,o=new Set([`isAllDay`,`start`,`end`,`timezone`,`startTimezone`,`endTimezone`,`recurrenceRule`]);return`<div class="k-scheduler-edit-form k-form k-form-horizontal">${t.map(t=>{let s=t.field,c=t.title,l=!e.editable||e.editable(s);l&&r.push(t);let u=``;if(a&&!o.has(s)&&(u=`</div></div></div>`,a=!1),s===`isAllDay`)return a=!0,`<div class="k-form-field"><label class="k-label k-form-label" id="${s}_label" aria-hidden="true">${n.ui.icon({icon:`clock`,size:`xlarge`})}</label><div class="k-form-field-wrap"><div class="k-scheduler-datetime-section">${i(s)}`;if((s===`start`||s===`end`)&&a){let t=l?`<div ${n.attr(`container-for`)}="${s}" class="k-form-field-wrap" style="display:contents"></div>`:`<div class="k-form-field-wrap" style="display:contents">${n.getter(s)(e)||``}</div>`;return s===`end`?t+`</div>`:`<div class="k-scheduler-datetime-grid" ${n.attr(`style-grid-template-columns`)}="minmax(0, 2.5fr) minmax(0, 1fr) min-content">`+t}if(s===`startTimezone`||s===`endTimezone`)return`${i(s)}`;if(s===`recurrenceRule`)return a=!1,`<div class='k-scheduler-edit-form-row'>${i(s)}</div></div></div></div>`;let d=`<label class="k-label k-form-label" for="${s}" id="${s}_label" ${t.icon?`aria-hidden="true"`:``}>
                            ${n.isPresent(t.icon)?n.ui.icon({icon:t.icon,size:`xlarge`}):c||s||``}
                </label>`;return u+`<div class="k-form-field">${d}${i(s)}</div>`}).join(``)}${a?`</div></div></div>`:``}</div>`},_buildMobileEditTemplate:function(e,t,r){var i=this.options.messages;let a=`<div class="k-popup-edit-form k-scheduler-edit-form k-scheduler-timezones" ${n.attr(`style-display`)}="none"><ul class="k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-row">`+c(i.editor.separateTimezones)+`</span><span class="k-listgroup-form-field-wrapper"><input class="k-timezone-toggle" data-role="switch" type="checkbox" /></span></label></li>`,o=t=>{let r=t.field,i=t.title,a=!e.editable||e.editable(r),o;return o=a?`${r===`timezone`?`<label class="k-label k-listgroup-form-row" data-bind="css: { k-disabled: isAllDay }">`:`<label class="k-label k-listgroup-form-row">`}<span class="k-item-title k-listgroup-form-field-label">${i||r||``}</span><div class="k-listgroup-form-field-wrapper" ${n.attr(`container-for`)}="${r}"></div>`:`<li class="k-item k-listgroup-item"><label class="k-label k-no-click k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${i||r||``}</span><span class="k-no-editor k-listgroup-form-field-wrapper">${r&&n.getter(r)(e)||``}</span>`,`<li class="k-item k-listgroup-item">`+o+`</label></li>`};return`<ul class="k-listgroup k-listgroup-flush">`+t.map(t=>{let n=t.field;return(!e.editable||e.editable(n))&&r.push(t),(n===`timezone`||n===`recurrenceRule`?`</ul><ul class="k-listgroup k-listgroup-flush">`:``)+(n===`startTimezone`?a:``)+o(t)+(n===`recurrenceRule`?`</ul><ul class="k-listgroup k-listgroup-flush">`:``)+(n===`endTimezone`?`</ul></div>`:``)}).join(``)+`</ul>`},_buildEditTemplate:function(e,t,r,i){var a=v({},n.Template,this.options.templateSettings),o=this.options.editable.template,s=``;return o?(typeof o===p&&(o=n.unescape(o)),s+=n.template(o,a)(e)):i?s+=`<div data-role="content">`+this._buildMobileEditTemplate(e,t,r)+`</div>`:s+=this._buildDesktopEditTemplate(e,t,r),s},_revertTimezones:function(e){e.set(`startTimezone`,this._startTimezone),e.set(`endTimezone`,this._endTimezone),delete this._startTimezone,delete this._endTimezone}}),Qe=Q.extend({init:function(){Q.fn.init.apply(this,arguments),this.pane=n.Pane.wrap(this.element,{viewEngine:{viewOptions:{renderOnInit:!0,wrap:!1,wrapInSections:!0,detachOnHide:!1,detachOnDestroy:!1}}}),this.pane.element.parent().css(`height`,this.options.height),this.view=this.pane.view()},options:{animations:{left:`slide`,right:`slide:right`}},destroy:function(){this.close(),this.unbind(),this.pane.destroy()},_toggleTimeZones:function(e,t){this._initTimezoneEditor(t)},_initTimezoneEditor:function(t){var r=this,i=r.pane,a=r.options.messages,o=r.timezoneView,s=o?o.content.find(`.k-scheduler-timezones`):r.container.find(`.k-scheduler-timezones`),l=s.find(`input.k-timezone-toggle`).data(`kendoSwitch`),u=s.find(`li.k-item:not(.k-zonepicker)`).last(),d=function(e){if(e.field===`startTimezone`){var n=t.startTimezone;l.enable(n),n||(u.hide(),t.set(`endTimezone`,``),l.value(!1))}};if(r._startTimezone=t.startTimezone||``,r._endTimezone=t.endTimezone||``,!o){var f=`<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form"><div data-role="header" class="k-appbar k-appbar-primary">`+n.html.renderButton(`<button class="k-header-cancel k-scheduler-cancel" title="${a.cancel}" aria-label="${a.cancel}"></button>`,{fillMode:`flat`,icon:`chevron-left`})+`<span class="k-spacer"></span><span>${c(a.editor.timezoneTitle)}</span><span class="k-spacer"></span>`+c(a.editor.timezoneTitle)+n.html.renderButton(`<button class="k-header-done k-scheduler-update" title="${a.save}" aria-label="${a.save}"></button>`,{fillMode:`flat`,icon:`check`})+`</div><div data-role="content"></div>`;this.timezoneView=o=i.append(f),o.contentElement.append(s.show()),o.element.on(S+x,`.k-scheduler-cancel, .k-scheduler-update`,function(n){n.preventDefault(),n.stopPropagation(),e(this).hasClass(`k-scheduler-cancel`)&&r._revertTimezones(t);var o=r._editPane,s=Pe(t,a.editor.noTimezone);o.content.find(`.k-timezone-label`).text(s),i.navigate(o,r.options.animations.right)}),l.bind(T,function(e){u.toggle(e.checked),t.set(`endTimezone`,``)}),t.bind(T,d)}l.value(!!t.endTimezone),l.enable(!!t.startTimezone),t.endTimezone?u.show():u.hide(),i.navigate(o,r.options.animations.left)},showDialog:function(t){var n=t.buttons.map(function(e){return{text:e.text,action:e.click}});n.push({text:this.options.messages.cancel,primary:!0}),e(`<div />`).appendTo(document.body).kendoDialog({close:function(){this.destroy()},modal:{preventScroll:!0},closable:!1,title:!1,content:t.text,actions:n})},editEvent:function(t){var r=this.pane,i=``,a=this.options.messages,o=a.save,s=a.destroy,l=a.cancel,u=a.editor.editorTitle,d=a.resetSeries;i+=`<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form"`+n.attr(`uid`)+`="`+t.uid+`"><div data-role="header" class="k-appbar k-appbar-primary">`+n.html.renderButton(`<button class="k-header-cancel k-scheduler-cancel" title="${l}" aria-label="${l}"></button>`,{fillMode:`flat`,icon:`chevron-left`})+`<span class="k-spacer"></span><span>${c(u)}</span><span class="k-spacer"></span>`+n.html.renderButton(`<button class="k-header-done k-scheduler-update" title="${o}" aria-label="${o}"></button>`,{fillMode:`flat`,icon:`check`})+`</div>`;var f=this.fields(Ze.mobile,t),p=this,m=[];i+=this._buildEditTemplate(t,f,m,!0),i+=`</div>`;var h=r.append(i);if(!t.isNew()&&this.options.editable&&this.options.editable.destroy!==!1&&t.isRecurrenceHead()&&t.recurrenceException){var g=`<ul class="k-edit-buttons k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><span class="k-scheduler-resetSeries k-link k-label" aria-label="`+d+`">`+d+`</span></li></ul>`;h.contentElement.append(g)}if(!t.isNew()&&this.options.editable&&this.options.editable.destroy!==!1){var _=`<ul class="k-edit-buttons k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><span class="k-scheduler-delete k-link k-label" aria-label="`+s+`">`+s+`</span></li></ul>`;h.contentElement.append(_)}this._editPane=h;var v=this.container=h.element;return this.editable=v.kendoEditable({fields:m,model:t,clearContainer:!1,target:p.options.target,validateOnBlur:!0}).data(`kendoEditable`),this.trigger(`edit`,{container:v,model:t})?this.trigger(`cancel`,{container:v,model:t}):(v.on(S+x,`a.k-scheduler-edit, .k-scheduler-cancel, .k-scheduler-update, span.k-scheduler-delete, span.k-scheduler-resetSeries`,function(n){n.preventDefault(),n.stopPropagation();var i=e(this);if(i.hasClass(`k-scheduler-edit`))r.navigate(this._editPane,p.options.animations.right);else{var a=`cancel`;i.hasClass(`k-scheduler-update`)?a=`save`:i.hasClass(`k-scheduler-delete`)?a=`remove`:i.hasClass(`k-scheduler-resetSeries`)&&(a=A),p.trigger(a,{container:v,model:t})}}),r.navigate(h,p.options.animations.left),t.bind(T,p.toggleDateValidationHandler)),this.editable},_views:function(){return this.pane.element.find(n.roleSelector(`view`)).not(this.view.element)},close:function(){if(this.container){this.pane.navigate(``,this.options.animations.right);for(var e=this._views(),t,n=0,r=e.length;n<r;n++)t=e.eq(n).data(`kendoView`),t&&t.purge();e.remove(),this.container=null,this.editable&&=(this.editable.options.model.unbind(T,this.toggleDateValidationHandler),this.editable.destroy(),null),this.timezoneView=null}}}),$e=Q.extend({destroy:function(){this.close(),this.unbind()},editEvent:function(t){var r=this,i=r.options.editable,a=`<div `+n.attr(`uid`)+`="`+t.uid+`">`,o,s=r.options.messages,c=s.save,l=s.cancel,u=s.destroy,d=`trash`,f=s.resetSeries,p=this.fields(Ze.desktop,t),m=[],h;a+=this._buildEditTemplate(t,p,m,!1);var g,y=_(i)?i.window:{};a+=`<div class="k-actions k-actions-end k-actions-horizontal k-window-actions k-dialog-actions">`,(!t.isNew()||t.isRecurring())&&i.destroy!==!1&&(a+=this.createButton({name:`delete`,text:u,attr:g,icon:d,fillMode:`flat`,themeColor:`primary`})),a+=this.createButton({name:`canceledit`,text:l,attr:g})+this.createButton({name:`update`,text:c,attr:g}),!t.isNew()&&i.destroy!==!1&&t.isRecurrenceHead()&&t.recurrenceException&&(a+=this.createButton({name:`resetSeries`,text:f,attr:g})),a+=`</div></div>`,o=e(a),n.applyStylesFromKendoAttributes(o,[`display`,`grid-template-columns`]);var b=this.container=o.appendTo(r.element).eq(0).kendoDialog(v({title:r._editorTitle(t),modal:!0,width:800,closable:!0,actions:[],visible:!1,close:function(e){e.userTriggered&&r.trigger(O,{container:b,model:t})&&e.preventDefault()}},y));for(var C in r.editable=b.kendoEditable({fields:m,model:t,clearContainer:!1,validateOnBlur:!0,target:r.options.target}).data(`kendoEditable`),r._initDateRangeEditors(t),m){if(m[C].field!==`recurrenceRule`){h=m[C].field;var w=b.find(`[name='`+h+`']`);[`title`,`isAllDay`,`start`,`end`,`startTimezone`,`endTimezone`,`description`].includes(h)?w.removeAttr(`aria-labelledby`).each(function(){var t=e(this),n=t.attr(`aria-label`),r=m[C].title;t.attr(`aria-label`,n&&n!==r?r+` `+n:r)}):w.attr(`aria-labelledby`,h+`_label`)}if(m[C].field===`title`&&b.find(`label[for='`+h+`']`).text(``).removeAttr(`for`).attr(`aria-hidden`,`true`).prepend(n.ui.icon({icon:`right-double-quotes`,size:`xlarge`})),m[C].field===`description`&&b.find(`label[for='`+h+`']`).text(``).removeAttr(`for`).attr(`aria-hidden`,`true`).prepend(n.ui.icon({icon:`comment`,size:`xlarge`})),m[C].field===`startTimezone`||m[C].field===`endTimezone`){let e=m[C].field,n=e===`startTimezone`?`start`:`end`,i=b.find(`div[data-container-for='${h}']`);if(e===`startTimezone`){let e=b.find(`div[data-container-for='${n}']`).find(`.k-timezone-btn`);i.insertBefore(e),r._startTimezoneChangeHandler=function(e){e.field===`startTimezone`&&t.set(`endTimezone`,t.startTimezone)},t.bind(T,r._startTimezoneChangeHandler)}else{let e=b.find(`div[data-container-for='${n}']`);i.appendTo(e)}}if(m[C].field===`isAllDay`){b.find(`label[for='`+h+`']`).attr(`id`,h+`_label`);let e=b.find(`div[data-container-for='${h}']`).find(`input`).getKendoSwitch();e.bind(`change`,m[C].change),e.value()&&m[C].change({checked:!0})}}return r.trigger(M,{container:b,model:t})?r.trigger(O,{container:b,model:t}):(b.data(`kendoDialog`).open(),b.on(S+x,`button.k-scheduler-cancel`,function(e){e.preventDefault(),e.stopPropagation(),r.trigger(O,{container:b,model:t})}),b.on(S+x,`button.k-scheduler-update`,function(e){e.preventDefault(),e.stopPropagation(),r.trigger(`save`,{container:b,model:t})}),b.on(S+x,`button.k-scheduler-delete`,function(e){e.preventDefault(),e.stopPropagation(),r.trigger(k,{container:b,model:t})}),b.on(S+x,`button.k-scheduler-resetSeries`,function(e){e.preventDefault(),e.stopPropagation(),r.trigger(A,{container:b,model:t})}),n.cycleForm(b),t.bind(T,r.toggleDateValidationHandler)),r.editable},close:function(){var e=this,t=function(){if(e.editable){var t=e.editable.options.model;e._destroyDateRangeEditors(),t.unbind(T,e.toggleDateValidationHandler),e._startTimezoneChangeHandler&&=(t.unbind(T,e._startTimezoneChangeHandler),null),e.editable.destroy(),e.editable=null,e.container=null}e.popup&&=(e.popup.destroy(),null)};e.editable&&e.container.is(`:visible`)?e.container.data(`kendoDialog`).bind(`hide`,t).close():t()},showDialog:function(t){var r=t.buttons.map(function(e){return{text:e.text,action:e.click,primary:n.isPresent(e.primary)?e.primary:!1}});e(`<div />`).appendTo(document.body).kendoDialog({close:function(){this.destroy()},modal:{preventScroll:!0},closable:n.isPresent(t.closable)?t.closable:!1,title:t.title,content:t.text,actions:r}).data(`kendoDialog`).open()},_toggleTimeZones:function(e,t){var n=this,r=n.options.messages,i=n.options.editable;let a=e.find(`.k-timezone-btn`);if(a.length){let e=a.find(`.k-button-text`);e.length&&!e.hasClass(`k-hidden`)?(z(a,!0,r.editor),t.set(`isTimezoneInvisible`,!1)):e.length&&e.hasClass(`k-hidden`)&&(i===!0||i.confirmation!==!1?n.showDialog({title:r.editor.resetTimezoneWindowTitle,closable:!0,text:he,buttons:[{name:`canceledit`,text:r.editor.cancelTimezoneReset,primary:!1,click:function(){}},{name:`resettimezone`,text:r.editor.resetTimezone,primary:!0,click:function(){z(a,!1,r.editor),t.set(`startTimezone`,``),t.set(`endTimezone`,``),t.set(`isTimezoneInvisible`,!0)}}]}):(z(a,!1,r.editor),t.set(`isTimezoneInvisible`,!0)))}}}),$=f.extend({init:function(t,r){var i=this;d.fn.init.call(i,t,r),(!i.options.views||!i.options.views.length)&&(i.options.views=[`day`,`week`]),i.resources=[],i._initModel(),i._wrapper(),i.options.selectable&&i._tabindex(),i._views(),i._toolbar(),i._dataSource(),i._resources(),i._resizeHandler=function(){i.resize()},i.wrapper.on(C+x+` selectstart`+x,function(t){var n=e(t.target);!n.is(`:kendoFocusable`)&&n.closest(`.k-button`).length===0&&t.preventDefault()}),i.options.editable&&i.options.editable.resize!==!1&&i._resizable(),i._movable(),i._bindResize(),i.options.messages&&i.options.messages.recurrence&&(s.options=i.options.messages.recurrence),i._navigation(),i._selectable(),i._touchHandlers(),i._ariaId=n.guid(),i._createEditor(),i.mediaQueryList=n.mediaQuery(se),i.mediaQueryList.onChange(i._onMediaChange.bind(i)),i._showWatermarkOverlay&&i._showWatermarkOverlay(i.element[0]),d.fn.endInit.call(i)},_onMediaChange:function(e){let t=this,n=t._selectedView,r=t.toolbar,i=r.getKendoToolBar();if(t._viewsDropDownButton)return;let a=r.find(`.k-scheduler-views`);e.matches?(i.hide(r.find(`.k-views-dropdown`)),a.show()):(i.show(r.find(`.k-views-dropdown`)),a.hide()),t._model.set(`formattedDate`,e.matches?n.dateForTitle():n.shortDateForTitle())},_bindResize:function(){e(window).on(`resize`+x,this._resizeHandler)},_unbindResize:function(){e(window).off(`resize`+x,this._resizeHandler)},dataItems:function(){var n=this,r=n.items(),i=n._data,a=e.map(r,function(t){return e(t).attr(`data-uid`)}),o,s,c={},l=a.length;for(o=0;o<l;o++)c[a[o]]=null;var u=i.length;for(o=0;o<u;o++){var d=i[o];c[d.uid]!==t&&(c[d.uid]=d)}var f=[];for(s in c)f.push(c[s]);return f},_isMobile:function(){var e=this.options;return e.mobile===!0&&n.support.mobileOS||e.mobile===`phone`||e.mobile===`tablet`},_isTouch:function(e){return/touch/.test(e.type)||e.originalEvent&&/touch/.test(e.originalEvent.pointerType)},_isInverseColor:function(e){return e.hasClass(ae)},_groupsByResource:function(e,t,r,i,a){r||=[];var o=e[0];if(o){for(var s,c=o.dataSource.view(),l=0,u=0;u<c.length;u++){var d=n.getter(o.dataValueField)(c[u]),f=t+l+u;s=this._groupsByResource(e.slice(1),f,r,d,o.field),s[o.field]=d,l=s.groupIndex,a&&i&&(s[a]=i),e.length===1&&(s.groupIndex=t+u,r.push(s))}return s}else return{}},data:function(){return this._data},select:function(e){var r=this,i=r.view(),o=r._selection,s=i.groups,c;if(e===t){var l,u=i._selectedSlots;return o?(o&&o.events&&(l=r._selectedEvents()),{start:o.start,end:o.end,events:l,slots:u,resources:i._resourceBySlot(o)}):[]}if(!e){r._selection=null,r._old=null,i.clearSelection();return}if(Array.isArray(e)&&(e={events:e.splice(0)}),e.resources){var d,f=[],p=[];for(d in i.groupedResources&&r._groupsByResource(i.groupedResources,0,p),e.resources)f.push({field:d,operator:`eq`,value:e.resources[d]});c=new n.data.Query(p).filter(f).toArray()}if(e.events&&e.events.length){r._selectEvents(e.events,c),r._select();return}if(s&&e.start&&e.end){var m=a(i._startDate),h=n.date.addDays(a(i._endDate),1),g,_;e.start<h&&m<=e.end&&(g=c&&c.length?s[c[0].groupIndex]:s[0],g.timeSlotCollectionCount()||(e.isAllDay=!0),_=g.ranges(e.start,e.end,e.isAllDay,!1),_.length&&(r._selection={start:n.timezone.toLocalDate(_[0].start.start),end:n.timezone.toLocalDate(_[_.length-1].end.end),groupIndex:_[0].start.groupIndex,index:_[0].start.index,isAllDay:_[0].start.isDaySlot,events:[]},r._select()))}},_selectEvents:function(e,t){var r=this,i,a=r.view(),o=a.groups,s=e.length,c=t&&t.length,l=r._ctrlKey;for(r._ctrlKey=!0,i=0;i<s;i++)if(o&&c){for(var u=o[t[0].groupIndex],d=[],f=u.timeSlotCollectionCount(),p=u.daySlotCollectionCount(),m=0;m<f;m++)d=d.concat(u.getTimeSlotCollection(m).events());for(var h=0;h<p;h++)d=d.concat(u.getDaySlotCollection(h).events());d=new n.data.Query(d).filter({field:e=>e.element[0].getAttribute(`data-uid`),operator:`eq`,value:e[i]}).toArray(),d[0]&&r._createSelection(d[0].element)}else{var g=a.element.find(n.format(`.k-event[data-uid={0}], .k-task[data-uid={0}]`,e[i]));g.length&&r._createSelection(g[0])}r._ctrlKey=l},_touchHandlers:function(){var e=this,t,r,i,a,o,s=e.wrapper,c=e._touchMove.bind(e);s.on(w+x,`.k-scheduler-header-all-day td, .k-scheduler-content td, .k-event`,function(n){var i=e.wrapper.find(`.k-scheduler-content`);e._isTouch(n)&&(i.stop(!0,!1),e._touchPosX=t=e._tapPosition(n,`X`),e._touchPosY=r=e._tapPosition(n,`Y`),e._userTouched=!0,e.view()._scrolling=!1,o=Date.now(),s.on(ee+x,`.k-scheduler-header-all-day td, .k-scheduler-content td, .k-event`,c))}),s.on(`contextmenu`+x,`.k-scheduler-header-all-day td, .k-scheduler-content td, .k-event`,function(t){e._preventFocus=!0}),s.on(te+x,`.k-scheduler-header-all-day td, .k-scheduler-content td, .k-event`,function(l){if(e._isTouch(l)){var u=Date.now()-o,d=e.wrapper.find(`.k-scheduler-content`),f=-e._amplitude*(3e3/u);i=e._tapPosition(l,`X`),a=e._tapPosition(l,`Y`),!e._dragging&&(e.options.selectable&&(Math.abs(i-t)<=10||Math.abs(a-r)<=10)&&e._mouseDownSelection(l),!n.support.kineticScrollNeeded&&u<200&&Math.abs(i-t)>10&&d.animate({scrollTop:d[0].scrollTop+f}),s.off(ee+x,`.k-scheduler-header-all-day td, .k-scheduler-content td`,c))}})},_navigation:function(){var e=this,t=e.wrapper;t.on(`focus`+x,function(){var n=e._selection;setTimeout(function(){e._preventFocus?e._preventFocus=!1:((!n||n.events.length>0&&t.find(`[data-uid='`+n.events[0]+`']`).length===0)&&!e._userTouched&&!e._mouseDown?e._initialFocus():e._mouseDown=!1,e._select())},300)}),t.on(`focusout`+x,function(){e._ctrlKey=e._shiftKey=!1}),t.on(`keydown`+x,e,e._keydown.bind(e)),t.on(`keyup`+x,function(t){e._ctrlKey=t.ctrlKey,e._shiftKey=t.shiftKey})},_selectable:function(){var e=this,t=e.wrapper;if(e.options.selectable){t.on(C+x,`.k-scheduler-header-all-day td, .k-scheduler-content td, .k-event, .k-scheduler-body td .k-link`,function(t){e._isTouch(t)||e._mouseDownSelection(t)});var n=e._mouseMove.bind(e);t.on(C+x,`.k-scheduler-header-all-day td, .k-scheduler-content td`,function(r){var i=r.which,a=r.button,o=i&&i===3||a&&a==2;e._isTouch(r)||o||t.on(ne+x,`.k-scheduler-header-all-day td, .k-scheduler-content td`,n)}),t.on(`mouseup`+x+` mousecancel`+x,function(){t.off(ne+x,`.k-scheduler-header-all-day td, .k-scheduler-content td`,n)})}},_mouseDownSelection:function(t){var r=t.which,i=t.button;r&&r===3||i&&i==2||(t.ctrlKey&&(this._ctrlKey=t.ctrlKey),t.shiftKey&&(this._shiftKey=t.shiftKey),this._mouseDown=!0,this._createSelection(t.currentTarget),e(t.currentTarget).hasClass(`k-event`)&&(this._selection.eventElement=t.currentTarget)),this.view().name!==`year`&&n._activeElement()!==this.wrapper.get(0)?n.focusElement(this.wrapper):this._select(),this.toolbar&&this.toolbar.find(`.`+P).removeClass(P)},_selectFirstSlot:function(){var e=this.wrapper.find(`.k-scheduler-header-all-day`).find(`td`).first(),t=this.wrapper.find(`.k-scheduler-content`).find(`td`).first(),n=e.length>0?e:t.length>0?t:this.wrapper.find(`.k-scheduler-body`).find(`.k-link`).first();this._createSelection(n)},_firstEvent:function(){var e=this.wrapper.find(`.k-scheduler-header-wrap .k-event, .k-task`).first(),t=this.wrapper.find(`.k-scheduler-content .k-event`).first(),n,r,i;return e.length>0?t.length>0?(r=this.occurrenceByUid(e.data(`uid`)),i=this.occurrenceByUid(t.data(`uid`)),n=r.start<=i.start?e:t):n=e:t&&(n=t),n},_initialFocus:function(){var e=this._firstEvent();this.options.selectable?e&&e.length>0?(this._createSelection(e),this._selection.eventElement=e[0]):this._selectFirstSlot():this.toolbar&&this.toolbar.find(`.`+P).length===0?this._focusToolbar():this.toolbar&&this.toolbar.find(`.`+P).removeClass(P)},_select:function(){let t=this,n=t.view(),r=t.wrapper,i=t._selection,a=t._old?t._old.selection:null,o=t._old?t._old.eventsLength:null,s=n.current();if(i&&(s&&(s.removeAttribute(`id`),r.removeAttr(`aria-activedescendant`)),n.select(i),t._selection.eventElement=null,s=n.current(),s)){s.setAttribute(`id`,t._ariaId),r.attr(`aria-activedescendant`,t._ariaId);let d=t._old?t._old.selectionStart.getTime():null,f=t._old?t._old.selectionEnd.getTime():null,p=i.start.getTime()!==d||i.end.getTime()!==f;if(a!==s||i.events&&o!==i.events.length||p){var c=e(s).data(`uid`);if(t._old&&c&&c===e(t._old.selection).data(`uid`)&&i.events&&t._old.eventsLength===i.events.length)return;var l=t._selectedEvents(),u=n._selectedSlots;t._old={selection:s,eventsLength:l.length,selectionStart:i.start,selectionEnd:i.end},t.trigger(T,{start:i.start,end:i.end,events:l,slots:u,resources:n._resourceBySlot(i)})}}},_selectedEvents:function(){for(var e=this._selection.events,t=e.length,n=0,r,i=[];n<t;n++)r=this.occurrenceByUid(e[n]),r&&i.push(r);return i},_tapPosition:function(e,t){return/touch/.test(e.type)?(e.originalEvent||e).changedTouches[0][`page`+t]:e[`page`+t]},_touchMove:function(e){var t=this,r=t.wrapper.find(`.k-scheduler-content`),i=r[0].scrollHeight>r[0].clientHeight,a=r[0].scrollWidth>r[0].clientWidth,o=t._tapPosition(e,`Y`),s=t._tapPosition(e,`X`),c=r[0].scrollTop-Math.round(o-t._touchPosY),l=r[0].scrollLeft-Math.round(s-t._touchPosX),u=i&&Math.abs(o-t._touchPosY)>10,d=a&&Math.abs(o-t._touchPosY)>10;t._dragging||n.support.kineticScrollNeeded||!t._isTouch(e)||(u||d)&&(t._amplitude=Math.round(o-t._touchPosY),t._touchPosY=o,t._touchPosX=s,r.animate({scrollTop:c,scrollLeft:l},0),t.view()._scrolling=!0)},_mouseMove:function(t){var n=this;clearTimeout(n._moveTimer),!n._isTouch(t)&&(n._moveTimer=setTimeout(function(){var r=n.view(),i=n._selection;if(i){var a=r.selectionByElement(e(t.currentTarget));if(a&&i.groupIndex===a.groupIndex){var o=a.startDate(),s=a.endDate();o>=i.end?i.backward=!1:s<=i.start&&(i.backward=!0),i.backward?i.start=o:i.end=s,n._select()}}},5))},_viewByIndex:function(e){for(var t in this.views){if(!e)return t;e--}},_keydownToolbar:function(e){var t=e.keyCode;if(e.altKey&&t===l.DOWN&&this.toolbar.find(`.k-nav-current`).hasClass(P)){this._showCalendar(),e.preventDefault();return}else if(t===l.DOWN){this._selectedViewName===`year`?this.view().calendar.focus():document.activeElement!==this.element[0]&&this.element.focus(),e.preventDefault();return}},_keydownView:function(e){var t=e.keyCode,r=t===16||t===18||t===17||t===91||t===92,i=this._selection,a=this.view(),o=a.options.editable,s=[l.LEFT,l.RIGHT,l.UP,l.DOWN],c=n.support.isRtl(this.element),u,d,f;if(!r&&i)if(t===l.ENTER||t===l.SPACEBAR)a.activateMoreEvents&&a.activateMoreEvents()?e.preventDefault():t===l.ENTER&&i.events.length&&o&&o.update!==!1&&this.editEvent(i.events[0]);else if((t===l.DELETE||t===l.BACKSPACE)&&o!==!1&&o.destroy!==!1)this.removeEvent(i.events[0]);else if(s.indexOf(t)>-1){u=t===l.UP||t===l.LEFT&&!c||t===l.RIGHT&&c,a._navigationKey=t;var p=a.moveToEvent(i,u);a._navigationKey=null,p&&(this._select(),document.activeElement!==this.element[0]&&this.element.trigger(`focus`),e.preventDefault())}else(t===l.HOME||t===l.END)&&(e.preventDefault(),d=this.view().content.eq(0),f=t===l.HOME?d.find(`.k-scheduler-table td`).first():d.find(`.k-scheduler-table td`).last(),this.view()._scrollTo(f[0],d[0]))},_keydownShortcut:function(e){var t=new Date,i=this.options.timezone,a=this.view().options.editable;if(e===66&&this.view().toggleFullDay)this.view().toggleFullDay();else if(e===67&&a&&a.create!==!1)this.addEvent(v({},{start:this.date(),end:this.date()}));else if(e===84){if(i){var o=n.timezone.offset(t,i);r=n.timezone.convert(t,t.getTimezoneOffset(),o)}else r=t;this.trigger(`navigate`,{view:this._selectedViewName,action:`today`,date:r})||this.date(r)}},_keydownYearView:function(e){var t=this.view(),n=this._selection,r=e.keyCode;r!==l.TAB&&(r===l.F10?(this._focusToolbar(),e.preventDefault()):(this.toolbar.find(`.`+P).removeClass(P),t.calendar.focus()),n&&this._adjustSelectedDate(),e.preventDefault())},_keydownAgendaView:function(e){var t=e.keyCode,n=this.view(),r=this._selection,i,a;n.move(r,t)?(e.preventDefault(),this.toolbar.find(`.`+P).removeClass(P),this._select()):(t===l.HOME||t===l.END)&&(e.preventDefault(),i=this.view().content.eq(0),a=t===l.HOME?i.find(`.k-scheduler-table td`).first():i.find(`.k-scheduler-table td`).last(),this.view()._scrollTo(a[0],i[0]))},_keydownChangeView:function(e){var t=e-49,n;t===-1&&(t=9),n=this._viewByIndex(t),n&&!this.trigger(`navigate`,{view:n,action:`changeView`,date:this.date()})&&this.view(n)},_keydownChangeDate:function(e){var t=n.support.isRtl(this.element),i=t&&e===l.LEFT||!t&&e===l.RIGHT?`next`:`previous`;r=i===`next`?this.view().nextDate():this.view().previousDate(),this.trigger(`navigate`,{view:this._selectedViewName,action:i,date:r})||(this.date(r),this._initialFocus(),this._select())},_keydown:function(t){var n=t.keyCode,r=[66,67,84],i=e(t.target).closest(`.k-toolbar`).length>0,a=t.altKey;if(this._ctrlKey=t.ctrlKey,this._shiftKey=t.shiftKey,n===l.ESC&&this.popup&&this.popup.visible()){this.popup.close(),t.preventDefault();return}if((n===l.LEFT||n===l.RIGHT)&&this._shiftKey){this._keydownChangeDate(n);return}if(a&&n>=48&&n<=57){this._keydownChangeView(n);return}if(r.indexOf(n)>-1){e(t.target).hasClass(`k-scheduler-search-input`)||this._keydownShortcut(n);return}if(i)this._keydownToolbar(t);else{if(this._selectedViewName===`year`){this._keydownYearView(t);return}if(n===l.F10){this._focusToolbar(),t.preventDefault();return}if(this._selectedViewName===`agenda`){this._keydownAgendaView(t);return}this._keydownView(t)}},_focusToolbar:function(){this.toolbar.find(`[tabindex=0]`).first().trigger(`focus`).addClass(P)},_createSelection:function(t){var r=this._selection,i,a;t=e(t),!(t.is(`.k-event`)&&(i=t.attr(n.attr(`uid`)),r&&r.events.indexOf(i)!==-1&&!this._ctrlKey))&&((!r||!this._ctrlKey&&!this._shiftKey)&&(r=this._selection={events:[],groupIndex:0}),a=this.view().selectionByElement(t),a&&(r.groupIndex=a.groupIndex||0),i&&(a=V(this._data,i)),a&&a.uid&&(i=[a.uid]),this._updateSelection(a,i),this._adjustSelectedDate())},_updateSelection:function(e,r,i){var a=this._selection;if(e&&a){var o=this.view();if(e.uid&&(e=o._updateEventForSelection(e)),this._shiftKey&&a.start&&a.end){var s=e.end<a.end;a.end=e.endDate?e.endDate():e.end,s&&o._timeSlotInterval&&n.date.setTime(a.end,-o._timeSlotInterval())}else a.start=e.startDate?e.startDate():e.start,a.end=e.endDate?e.endDate():e.end;if(`isDaySlot`in e?a.isAllDay=e.isDaySlot:a.isAllDay=e.isAllDay,i!==null&&i!==t&&(a.groupIndex=i),a.index=e.index,this._ctrlKey){var c=r&&r.length?a.events.indexOf(r[0]):-1;c>-1?a.events.splice(c,1):a.events=a.events.concat(r||[])}else a.events=r||[]}},options:{name:`Scheduler`,date:F,editable:!0,autoBind:!0,snap:!0,mobile:!1,timezone:``,allDaySlot:!0,min:new Date(1900,0,1),max:new Date(2099,11,31),toolbar:null,workWeekStart:1,workWeekEnd:5,workDays:null,showWorkHours:!1,startTime:F,endTime:F,currentTimeMarker:{updateInterval:1e4,useLocalTimezone:!0},ongoingEvents:{cssClass:_e,enabled:!1,updateInterval:6e4,useLocalTimezone:!0},footer:{},messages:{today:`Today`,pdf:`Export to PDF`,save:`Save`,cancel:`Cancel`,destroy:`Delete`,resetSeries:`Reset Series`,deleteWindowTitle:`Delete event`,next:`Next`,previous:`Previous`,refresh:`Refresh`,selectView:`Select view`,ariaSlotLabel:`Selected from {0:t} to {1:t}`,ariaEventLabel:{on:`on`,at:`at`,to:`to`,allDay:`(all day)`,prefix:``},search:`Search...`,moreEventsPopover:{eventsLabel:`Events`,noEvents:`No events on this date.`},views:{day:`Day`,week:`Week`,workWeek:`Work Week`,agenda:`Agenda`,month:`Month`,timeline:`Timeline`,timelineWeek:`Timeline Week`,timelineWorkWeek:`Timeline Work Week`,timelineMonth:`Timeline Month`,year:`Year`},recurrenceMessages:{deleteWindowTitle:`Delete Recurring Item`,resetSeriesWindowTitle:`Reset Series`,deleteWindowOccurrence:`Delete current occurrence`,deleteWindowSeries:`Delete the series`,editWindowTitle:`Edit Recurring Item`,editWindowOccurrence:`Edit current occurrence`,editWindowSeries:`Edit the series`},editable:{confirmation:le},editor:{title:`Title`,start:`Start`,end:`End`,allDayEvent:`All day`,description:`Description`,repeat:`Repeat`,timezone:`Timezone`,startTimezone:`Start timezone`,endTimezone:`End timezone`,separateTimezones:`Use separate start and end time zones`,timezoneEditorTitle:`Timezones`,timezoneEditorButton:`Time zone`,timezoneTitle:`Time zones`,noTimezone:`No timezone`,editorTitle:`Event`,newEvent:`New Event`,editEvent:`Edit Event`,resetTimezoneWindowTitle:`Reset Timezone`,cancelTimezoneReset:`No`,resetTimezone:`Yes`}},height:null,width:null,resources:[],group:{resources:[],orientation:`horizontal`},views:[],selectable:!1,recurrenceRuleLabelTemplate:null},events:[k,M,O,j,`add`,`dataBinding`,`dataBound`,`moveStart`,`move`,`moveEnd`,`resizeStart`,`resize`,`resizeEnd`,`navigate`,T,`kendoKeydown`],destroy:function(){var t=this,r;if(d.fn.destroy.call(t),t.dataSource&&(t.dataSource.unbind(T,t._refreshHandler),t.dataSource.unbind(E,t._progressHandler),t.dataSource.unbind(D,t._errorHandler)),t._resourceRefreshHandler)for(var i=0;i<t.resources.length;i++){var a=t.resources[i].dataSource;a.unbind(T,t._resourceRefreshHandler),a.unbind(E,t._resourceProgressHandler),a.unbind(D,t._resourceErrorHandler)}t.calendar&&(t.calendar.destroy(),t.popup.destroy()),t.view()&&t.view().destroy(),t._editor&&t._editor.destroy(),this._moveDraggable&&this._moveDraggable.destroy(),this._resizeDraggable&&this._resizeDraggable.destroy(),t.mediaQueryList&&t.mediaQueryList.destroy(),t._viewsSegmentedControl&&=(t._viewsSegmentedControl.destroy(),null),t._viewsDropDownButton&&=(t._viewsDropDownButton.destroy(),null),t._toolbarResizeObserver&&=(t._toolbarResizeObserver.disconnect(),null),r=t.element.add(t.wrapper).add(t.toolbar).add(t.popup),r.off(x),clearTimeout(t._moveTimer),t._model=null,t.toolbar=null,t.element=null,e(window).off(`resize`+x,t._resizeHandler),n.destroy(t.wrapper)},setDataSource:function(e){this.options.dataSource=e,this._dataSource(),this.options.autoBind&&e.fetch?e.fetch():b(e)&&this.view(this._selectedView)},items:function(){var e=this.wrapper.find(`.k-scheduler-content`),t=this.view();return t&&t.options.name===`agenda`?e.find(`.k-task`):e.find(`.k-event`).add(this.wrapper.find(`.k-scheduler-header-wrap`).find(`.k-scheduler-header-all-day`).siblings())},_movable:function(){var t,r,i,a,o,s,c,l=this,u,d,f=0,p=[],m=[],h=l._isMobile(),g=l.options.editable&&l.options.editable.move!==!1,_=l.options.editable&&l.options.editable.resize!==!1;(g||_&&h)&&(l._dragging=!1,h&&n.support.mobileOS.android&&(f=5),l._moveDraggable=new n.ui.Draggable(l.element,{distance:f,filter:`.k-event`,ignore:`.k-resize-handle, .k-readonly`,holdToDrag:h,autoScroll:!0}),g&&l._moveDraggable.bind(`dragstart`,function(e){var o=l.view(),f=e.currentTarget,m=l._isTouch(e);if(l._dragging=!0,!o.options.editable||o.options.editable.move===!1){l._dragging=!1,e.preventDefault();return}if(m&&!f.hasClass(`k-event-active`)){l._dragging=!1,l.element.find(`.k-event-active`).removeClass(`k-event-active`),e.preventDefault();return}if(s=l.occurrenceByUid(f.attr(n.attr(`uid`))),s&&s.isReadonly){l._dragging=!1,e.preventDefault();return}if(c=s.clone(),s.clone(),c.update(o._eventOptionsForMove(c)),c.inverseColor=l._isInverseColor(f),p=[],l._selection)for(var h=l._selection.events,g=0;g<h.length;g++){var _=l.occurrenceByUid(h[g]);if(!_.isReadonly){var v=_.clone(),y=this.element.find(`div.k-event[data-uid="`+v.uid+`"]`).eq(0);v.update(o._eventOptionsForMove(v)),y.length&&(v.inverseColor=l._isInverseColor(y)),p.push(v)}}else p.push(c);t=o._slotByPosition(e.x.startLocation,e.y.startLocation),i=o._resourceBySlot(t);let b=n.date.toUtcTime(s.start),x=0;if(l.options.snap&&!t.isDaySlot){let e=t.end-t.start;e>0&&(x=((b-t.start)%e+e)%e)}d=a=t.startOffset(e.x.startLocation,e.y.startLocation,l.options.snap)+x,r=t,u=t,(!t||l.trigger(`moveStart`,{event:s}))&&e.preventDefault()}).bind(`drag`,function(i){var f=l.view(),h=f._slotByPosition(i.x.location,i.y.location),g,_,v;if(h){if(o=h.startOffset(i.x.location,i.y.location,l.options.snap),h.isDaySlot!==t.isDaySlot)if(h.isDaySlot!==u.isDaySlot){var y=e(t.element).index(),b=e(h.element).parent().children().eq(y);for(t=f._slotByPosition(b.offset().left,b.offset().top),a=t.startOffset(i.x.location,i.y.location,!0),m=p.map(function(e){return e.clone()}),v=0;v<p.length;v++)p[v].isAllDay!=h.isDaySlot&&(p[v].isAllDay=h.isDaySlot,p[v].end=n.date.getDate(p[v].start),p[v].start=n.date.getDate(p[v].start),h.isDaySlot||(n.date.setTime(p[v].start,n.date.getMilliseconds(f.startTime())),n.date.setTime(p[v].end,n.date.getMilliseconds(f.startTime())+f._timeSlotInterval())))}else t=e.extend(!0,{},u),a=d,p=m;for(g=o-a,v=0;v<p.length;v++)f._updateMoveHint(p[v],h.groupIndex,g);if(_=Z(c,g),!l.trigger(`move`,{event:s,slot:{element:h.element,start:h.startDate(),end:h.endDate(),isDaySlot:h.isDaySlot},resources:f._resourceBySlot(h),start:_.start,end:_.end}))r=h;else for(v=0;v<p.length;v++)f._updateMoveHint(p[v],h.groupIndex,g)}}).bind(`dragend`,function(t){l.view()._removeMoveHint();var d=o-a,f=Z(c,d),h=f.start,g=f.end;l._dragging=!1;var _=l.view()._resourceBySlot(r);if(!l.trigger(`moveEnd`,{event:s,slot:{element:r.element,start:r.startDate(),end:r.endDate()},start:h,end:g,resources:_})&&(s.start.getTime()!==h.getTime()||s.end.getTime()!==g.getTime()||u.isDaySlot!==r.isDaySlot||n.stringify(_)!==n.stringify(i))){l._isMultiDrag=p.length>1;for(var v=0;v<p.length;v++){var y=p[v];f=Z(y,d);var b=l.view()._eventOptionsForMove(y),x=e.extend({isAllDay:y.isAllDay,start:f.start,end:f.end},b,_);l._updateEvent(null,y,x)}l._isMultiDrag&&=(l.dataSource.sync(),!1)}t.currentTarget.removeClass(`k-event-active`),this.cancelHold(),p=[],m=[]}).bind(`dragcancel`,function(){l.view()._removeMoveHint(),this.cancelHold(),p=[],m=[]}),l._moveDraggable.bind(`hold`,function(e){l._isTouch(e)&&(l.element.find(`.k-event-active`).removeClass(`k-event-active`),l.options.selectable&&l._createSelection(e.currentTarget),e.currentTarget.addClass(`k-event-active`))}))},_resizable:function(){var t,r,i,a,o,s=this,c=0;let l=n.support.isRtl(s.element);function u(e){var t={"k-resize-e":l?`west`:`east`,"k-resize-w":l?`east`:`west`,"k-resize-n":`north`,"k-resize-s":`south`};for(var n in t)if(e.hasClass(n))return t[n]}s._isMobile()&&n.support.mobileOS.android&&(c=5),s._resizeDraggable=new n.ui.Draggable(s.element,{distance:c,filter:`.k-resize-handle`,autoScroll:!0,dragstart:function(c){var l=e(c.currentTarget).closest(`.k-event`).attr(n.attr(`uid`)),u=s.view();if(s._dragging=!0,i=s.occurrenceByUid(l),i&&i.isReadonly){s._dragging=!1,c.preventDefault();return}a=i.clone(),u._updateEventForResize(a),o=u._slotByPosition(c.x.startLocation,c.y.startLocation),s.trigger(`resizeStart`,{event:i})&&c.preventDefault(),t=n.date.toUtcTime(a.start),r=n.date.toUtcTime(a.end)},drag:function(c){if(o){var l=u(e(c.currentTarget)),d=s.view(),f=d._slotByPosition(c.x.location,c.y.location);if(!(!f||o.groupIndex!=f.groupIndex)){o=f;var p=t,m=r;l==`south`?!o.isDaySlot&&o.end-n.date.toUtcTime(a.start)>=d._timeSlotInterval()&&(r=a.isAllDay?o.startOffset(c.x.location,c.y.location,s.options.snap):o.endOffset(c.x.location,c.y.location,s.options.snap)):l==`north`?!o.isDaySlot&&n.date.toUtcTime(a.end)-o.start>=d._timeSlotInterval()&&(t=o.startOffset(c.x.location,c.y.location,s.options.snap)):l==`east`?o.isDaySlot&&n.date.toUtcTime(n.date.getDate(o.endDate()))>=n.date.toUtcTime(n.date.getDate(a.start))?r=a.isAllDay?o.startOffset(c.x.location,c.y.location,s.options.snap):o.endOffset(c.x.location,c.y.location,s.options.snap):!o.isDaySlot&&o.end-n.date.toUtcTime(a.start)>=d._timeSlotInterval()&&(r=o.endOffset(c.x.location,c.y.location,s.options.snap)):l==`west`&&(o.isDaySlot&&n.date.toUtcTime(n.date.getDate(a.end))>=n.date.toUtcTime(n.date.getDate(o.startDate()))||!o.isDaySlot&&n.date.toUtcTime(a.end)-o.start>=d._timeSlotInterval())&&(t=o.startOffset(c.x.location,c.y.location,s.options.snap)),s.trigger(`resize`,{event:i,slot:{element:o.element,start:o.startDate(),end:o.endDate()},start:n.timezone.toLocalDate(t),end:n.timezone.toLocalDate(r),resources:d._resourceBySlot(o)})?(t=p,r=m):d._updateResizeHint(a,o.groupIndex,t,r)}}},dragend:function(c){var l=e(c.currentTarget),d=new Date(a.start.getTime()),f=new Date(a.end.getTime()),p=u(l);s._dragging=!1,s.view()._removeResizeHint(),p==`south`?f=n.timezone.toLocalDate(r):p==`north`?d=n.timezone.toLocalDate(t):p==`east`?f=o.isDaySlot?n.date.getDate(n.timezone.toLocalDate(r)):n.timezone.toLocalDate(r):p==`west`&&(o.isDaySlot?(d=new Date(n.timezone.toLocalDate(t)),d.setHours(0),d.setMinutes(0)):d=n.timezone.toLocalDate(t)),!s.trigger(`resizeEnd`,{event:i,slot:{element:o.element,start:o.startDate(),end:o.endDate()},start:d,end:f,resources:s.view()._resourceBySlot(o)})&&f.getTime()>=d.getTime()&&(a.start.getTime()!=d.getTime()||a.end.getTime()!=f.getTime())&&(s.view()._updateEventForResize(i),s._updateEvent(p,i,{start:d,end:f})),o=null,i=null},dragcancel:function(){s._dragging=!1,s.view()._removeResizeHint(),o=null,i=null}})},_updateEvent:function(e,t,r){var a=this,s=function(t,n){var o;try{a._preventRefresh=!0,t.update(r),a._convertDates(t),o=t.start,e&&t.duration()%i===0&&o.getHours()===0&&o.getMinutes()===0&&o.getSeconds()===0&&o.getMilliseconds()===0&&t.set(`isAllDay`,!0)}finally{a._preventRefresh=!1}a.trigger(j,{event:t})||(n&&n(),a._isMultiDrag||a.dataSource.sync())},c=function(e){return e.recurrenceRule?a.dataSource.getByUid(e.uid):a.dataSource.get(e.recurrenceId)},l=function(){var i=c(t);if(e==`south`||e==`north`){if(r.start){var l=n.date.getDate(i.start);n.date.setTime(l,o(r.start)),r.start=l}if(r.end){var u=n.date.getDate(i.end);n.date.setTime(u,o(r.end)),r.end=u}}a.dataSource._removeExceptions(i),s(i)},u=function(){var e=c(t),n,r=function(){a._convertDates(e),a._selection&&a._selection.events.push(n)},i=e.toOccurrence({start:t.start,end:t.end});n=i.uid,s(a.dataSource.add(i),r)};if(t.recurrenceRule||t.isOccurrence()){var d=a.options.messages.recurrenceMessages;a._showRecurringDialog(t,u,l,{title:d.editWindowTitle,text:d.editRecurring?d.editRecurring:de,occurrenceText:d.editWindowOccurrence,seriesText:d.editWindowSeries})}else s(a.dataSource.getByUid(t.uid))},_modelForContainer:function(t){return t=e(t).closest(`[`+n.attr(`uid`)+`]`),this.dataSource.getByUid(t.attr(n.attr(`uid`)))},showDialog:function(e){this.toolbar.find(`.`+P).removeClass(P),this._editor.showDialog(e)},focus:function(){this.wrapper.trigger(`focus`)},_confirmation:function(e,t,r){var i=this.options.editable;if(i===!0||i.confirmation!==!1){var a=this.options.messages,o=a.deleteWindowTitle,s=typeof i.confirmation===p?i.confirmation:a.editable.confirmation;if(this._isEditorOpened()&&t.isRecurring()){var c=this.options.messages.recurrenceMessages;o=c.deleteWindowTitle,s=t.isException()||t.isNew()?c.deleteRecurringConfirmation?c.deleteRecurringConfirmation:fe:c.deleteSeriesConfirmation?c.deleteSeriesConfirmation:me,r&&(o=c.resetSeriesWindowTitle,s=c.resetSeriesConfirmation?c.resetSeriesConfirmation:pe)}var l=[{name:`destroy`,text:r?a.resetSeries:a.destroy,click:function(){e()}}];this._isMobile()&&n.Pane||l.push({name:`canceledit`,text:a.cancel,click:function(){e(!0)}}),this._unbindResize(),this.showDialog({model:t,text:s,title:o,buttons:l}),this._bindResize()}else e()},addEvent:function(e){var t=this._editor.editable,n=this.dataSource,r;e||={},!this.trigger(`add`,{event:e})&&(t&&t.end()||!t)&&(this.cancelEvent(),e&&e.toJSON&&(e=e.toJSON()),r=n.add(e),r&&(this.cancelEvent(),this._editEvent(r)))},saveEvent:function(){var e=this,t=e._editor,n=e.dataSource;if(t){var r=t.editable,i=t.container,a=e._modelForContainer(i),o,s,c;if(i&&r&&t.end()&&!e.trigger(j,{container:i,event:a})){if(!a.isOccurrence()&&a.recurrenceException&&!a.recurrenceRule){for(o=n.data(),s=o.length-1;s>=0;--s)c=o[s],c&&c.recurrenceId===a.id&&n.remove(c);a.set(`recurrenceException`,``)}!a.dirty&&!a.isOccurrence()&&e._convertDates(a,`remove`),n.sync()}}},cancelEvent:function(){var e=this._editor,t=e.container,n;t&&(n=this._modelForContainer(t),n&&n.isOccurrence()&&(this._convertDates(n,`remove`),this._convertDates(this.dataSource.get(n.recurrenceId),`remove`)),this.dataSource.cancelChanges(n),e.close())},editEvent:function(e){var t=typeof e==`string`?this.occurrenceByUid(e):e;!t||t.isReadonly||(this.cancelEvent(),t.isRecurring()?this._editRecurringDialog(t):this._editEvent(t))},_editEvent:function(e){this._preventRefresh=!0,this._unbindResize(),this._createPopupEditor(e),this.toolbar.find(`.`+P).removeClass(P),this._bindResize()},_editRecurringDialog:function(e){var t=this,n=function(){e.isException()?t._editEvent(e):t.addEvent(e)},r=function(){e.recurrenceId&&(e=t.dataSource.get(e.recurrenceId)),t._editEvent(e)},i=t.options.messages.recurrenceMessages;t._showRecurringDialog(e,n,r,{title:i.editWindowTitle,text:i.editRecurring?i.editRecurring:de,occurrenceText:i.editWindowOccurrence,seriesText:i.editWindowSeries})},_showRecurringDialog:function(e,t,n,r){var i=this.options.editable,a=_(i)?i.editRecurringMode:`dialog`;a===`occurrence`||this._isMultiDrag?t():a===`series`?n():(this._unbindResize(),this.showDialog({model:e,title:r.title,text:r.text,buttons:[{text:r.occurrenceText,click:t},{text:r.seriesText,click:n}]}),this._bindResize())},_createButton:function(e){var t=e.template||ve,r=typeof e===p?e:e.name||e.text,i={className:`k-scheduler-`+(r||``).replace(/\s/g,``),text:r,attr:``};if(!r&&!(_(e)&&e.template))throw Error(`Custom commands should have name specified`);return _(e)?(e.className&&(e.className+=` `+i.className),r===`edit`&&_(e.text)&&(e=v(!0,{},e),e.text=e.text.edit),i=v(!0,i,We[r],e)):i=v(!0,i,We[r]),n.template(t)(i)},_convertDates:function(e,t){var r=this.dataSource.reader.timezone,i=e.startTimezone,a=e.endTimezone,o=e.start,s=e.start;t||=`apply`,i||=a,a||=i,i&&(r?t===`apply`?(o=n.timezone.convert(e.start,r,i),s=n.timezone.convert(e.end,r,a)):(o=n.timezone.convert(e.start,i,r),s=n.timezone.convert(e.end,a,r)):(o=n.timezone[t](e.start,i),s=n.timezone[t](e.end,a)),e._set(`start`,o),e._set(`end`,s))},_createEditor:function(){var e=this,t=this._isMobile()&&n.Pane?e._editor=new Qe(this.wrapper,v({},this.options,{target:this,timezone:e.dataSource.reader.timezone,resources:e.resources,createButton:this._createButton.bind(this)})):e._editor=new $e(this.wrapper,v({},this.options,{target:this,createButton:this._createButton.bind(this),timezone:e.dataSource.reader.timezone,resources:e.resources}));t.bind(`cancel`,function(t){if(e.trigger(`cancel`,{container:t.container,event:t.model})){t.preventDefault();return}e._preventRefresh=!1,e.cancelEvent(),e._attemptRefresh&&e.refresh();var n=!e.options.selectable&&e.toolbar.find(`[ref-nav-today]`).first();n&&n.length?(e.toolbar.find(`.`+P).removeClass(P),n.trigger(`focus`).addClass(P)):e.focus()}),t.bind(`edit`,function(t){e.trigger(M,{container:t.container,event:t.model})&&t.preventDefault()}),t.bind(`save`,function(){e._preventRefresh=!1,e.saveEvent()}),t.bind(`remove`,function(t){e._preventRefresh=!1,e.removeEvent(t.model)}),t.bind(`resetSeries`,function(t){e._confirmation(function(n){e._preventRefresh=!1,n||(e.dataSource._removeExceptions(t.model),e.saveEvent())},t.model,!0)})},_createPopupEditor:function(e){var t=this._editor;(!e.isNew()||e.isOccurrence())&&(e.isOccurrence()&&this._convertDates(e.recurrenceId?this.dataSource.get(e.recurrenceId):e),this._convertDates(e)),this.editable=t.editEvent(e)},removeEvent:function(e){var t=this,n=typeof e==`string`?t.occurrenceByUid(e):e;!n||n.isReadonly||(n.isRecurring()?t._deleteRecurringDialog(n):t._confirmation(function(e){e||t._removeEvent(n)},n))},occurrenceByUid:function(e){var t=this.dataSource.getByUid(e);return t||=V(this._data,e),t},occurrencesInRange:function(e,t){return new n.data.Query(this._data).filter({logic:`or`,filters:[{logic:`and`,filters:[{field:`start`,operator:`gte`,value:e},{field:`end`,operator:`gte`,value:e},{field:`start`,operator:`lt`,value:t}]},{logic:`and`,filters:[{field:`start`,operator:`lte`,value:e},{field:`end`,operator:`gt`,value:e}]}]}).toArray()},_removeEvent:function(e){this.trigger(k,{event:e})||this.dataSource.remove(e)&&this.dataSource.sync()},_deleteRecurringDialog:function(e){var t=this,n=e,r=t.options.editable,i,a,o,s,c,l,u=_(r)?r.editRecurringMode:`dialog`;i=function(){var e=n.recurrenceId?n:n.toOccurrence(),r=t.dataSource.get(e.recurrenceId);t._convertDates(r),t._removeEvent(e)},a=function(){n.recurrenceId&&(n=t.dataSource.get(n.recurrenceId)),t._removeEvent(n)},o=function(){t.dataSource.remove(n),t.dataSource.sync()},(u!=`dialog`||t._isEditorOpened())&&(s=function(){t._confirmation(function(e){e||i()},n)},c=function(){t._confirmation(function(e){e||a()},n)},l=function(){t._confirmation(function(e){e||o()},n)});var d=c||a,f=s||i,p=l||o;if(t._isEditorOpened())e.isException()?f():e.isNew()?p():d();else{var m=t.options.messages.recurrenceMessages;t._showRecurringDialog(e,f,d,{title:m.deleteWindowTitle,text:m.deleteRecurring?m.deleteRecurring:ue,occurrenceText:m.deleteWindowOccurrence,seriesText:m.deleteWindowSeries})}},_isEditorOpened:function(){return!!this._editor.container},_unbindView:function(e){e.destroy()},_bindView:function(t){var n=this;n.options.editable&&(n._viewRemoveHandler&&t.unbind(k,n._viewRemoveHandler),n._viewRemoveHandler=function(e){n.removeEvent(e.uid)},t.bind(k,n._viewRemoveHandler),n._viewAddHandler&&t.unbind(re,n._viewAddHandler),n._viewAddHandler=function(e){n.addEvent(e.eventInfo)},t.bind(re,this._viewAddHandler),n._viewEditHandler&&t.unbind(M,n._viewEditHandler),n._viewEditHandler=function(e){n.editEvent(e.uid)},t.bind(M,this._viewEditHandler)),n._viewNavigateHandler&&t.unbind(`navigate`,n._viewNavigateHandler),n._viewNavigateHandler=function(e){if(e.action)n.trigger(`navigate`,{view:e.view,isWorkDay:e.isWorkDay,action:e.action,date:e.date})||n.date(e.date);else if(e.view){var t=`isWorkDay`in e,r=t?`changeWorkDay`:`changeView`;n.trigger(`navigate`,{view:e.view,isWorkDay:e.isWorkDay,action:r,date:e.date})||(t&&(n._workDayMode=e.isWorkDay),n._selectView(e.view),n.date(e.date))}},t.bind(`navigate`,n._viewNavigateHandler),n._viewActivateHandler&&t.unbind(`activate`,n._viewActivateHandler),n._viewActivateHandler=function(){var t=this;n._selection&&(t.constrainSelection(n._selection),e(document.activeElement).closest(`.k-scheduler-toolbar`).length===0&&(document.activeElement===n.wrapper[0]?n._select():n.element.trigger(`focus`)),n._adjustSelectedDate())},t.bind(`activate`,n._viewActivateHandler)},_selectView:function(e){var t=this;e&&t.views[e]&&(t._selectedView&&t._unbindView(t._selectedView),t._selectedView=t._renderView(e),t._selectedViewName=e,this._initialSize&&(this._initialSize=!1,this._onMediaChange(window.matchMedia(se))),t._viewsCount>1&&!t._isMobile()?(t.toolbar.find(`.k-views-dropdown`).val(e),t._viewsSegmentedControl&&t._viewsSegmentedControl.value(e)):t._viewsCount>1&&t.toolbar.find(`.k-scheduler-mobile-views`).find(`[value=`+e.replace(/\./g,`\\.`)+`]`).prop(`selected`,`selected`))},view:function(e){var t=this;if(e){e===`year`?t.wrapper.removeAttr(`tabindex`):t.wrapper.attr(`tabindex`,0),t._selectView(e),t.rebind();return}return t._selectedView},viewName:function(){return this.view().name},_renderView:function(e){var t=this._initializeView(e);if(this._bindView(t),(n.support.mouseAndTouchPresent||n.support.pointers)&&(t.content.css(`-ms-touch-action`,`pinch-zoom`),t.content.css(`touch-action`,`pinch-zoom`)),this._model.set(`formattedDate`,t.dateForTitle()),this._model.set(`formattedShortDate`,t.shortDateForTitle()),this._model.set(`formattedMobileDate`,t.mobileDateForTitle?t.mobileDateForTitle():t.shortDateForTitle()),this._model.set(`formattedYear`,t.mobileYearForTitle?t.mobileYearForTitle():n.format(`{0:yyyy}`,t.startDate())),this._updateToolbarDate(),this._viewsDropDownButton){var r=this.views[e]?this.views[e].title:e;this._viewsDropDownButton.element.find(`.k-button-text`).first().text(r)}return t},resize:function(e){var t=this.getSize(),n=this._size,r=this.view();!r||!r.groups||(e||!n||t.width!==n.width||t.height!==n.height)&&(this.refresh({action:`resize`}),this._size=t)},_adjustSelectedDate:function(){var e=this._model.selectedDate,t=this._selection,r=t.start;r&&!n.date.isInDateRange(e,a(r),a(t.end))&&e.setFullYear(r.getFullYear(),r.getMonth(),r.getDate())},_initializeView:function(e){var t=this.views[e];if(t){var r=_(t),i={},a=t.type;if(typeof a===p&&(a=n.getter(t.type)(window)),r&&t.workDays&&t.workDays.length&&(i.workDays=t.workDays),a)t=new a(this.wrapper,Ge(v(!0,{},this.options,r?t:{},{resources:this.resources,date:this.date(),startTime:n.parseDate(t.startTime)||n.parseDate(this.options.startTime),endTime:n.parseDate(t.endTime)||n.parseDate(this.options.endTime),showWorkHours:this._workDayMode}),i));else throw Error(`There is no such view`)}return t},_views:function(){var e=this.options.views,t,n,r,i,a,o,s,c;for(this.views={},this._viewsCount=0,s=0,c=e.length;s<c;s++){var l=!1;t=e[s],i=_(t),i?(o=a=t.type?t.type:t,typeof o!==p&&(a=t.name||t.title,l=!0)):(o=a=t,t={}),n=et[a],n&&!l&&(t.type=n.type,n.title=this.options.messages.views[a],n.type===`day`?n.messages={allDay:this.options.messages.allDay}:n.type===`agenda`&&(n.messages={event:this.options.messages.event,date:this.options.messages.date,time:this.options.messages.time})),t=v({title:a},n,i?t:{}),a&&(this.views[a]=t,this._viewsCount++,(!r||t.selected)&&(r=a))}r&&(this._selectedViewName=r)},rebind:function(){var t=this,n=t.resources,r=[];if(t._preventRebind){t._preventRebind=!1;return}t.options.autoBind===!1&&n&&n.length>0?(n.forEach(function(e){e.dataSource.data().length===0&&(t._preventRebind=!0,r.push(e.dataSource.fetch()))}),e.when.apply(null,r).then(function(){t.dataSource.fetch(),t._preventRebind=!1})):t.dataSource.fetch()},_dataSource:function(){var e=this,t=e.options,r=t.dataSource;r=b(r)?{data:r}:r,t.timezone&&!(r instanceof K)?r=v(!0,r,{schema:{timezone:t.timezone}}):r instanceof K&&(t.timezone=r.options.schema?r.options.schema.timezone:``),e.dataSource&&e._refreshHandler?e.dataSource.unbind(T,e._refreshHandler).unbind(E,e._progressHandler).unbind(D,e._errorHandler):(e._refreshHandler=e.refresh.bind(e),e._progressHandler=e._requestStart.bind(e),e._errorHandler=e._error.bind(e)),e.dataSource=n.data.SchedulerDataSource.create(r).bind(T,e._refreshHandler).bind(E,e._progressHandler).bind(D,e._errorHandler),e.options.dataSource=e.dataSource},_error:function(){this._progress(!1)},_requestStart:function(){this._progress(!0)},_progress:function(e){var t=this.element.find(`.k-scheduler-content`);n.ui.progress(t,e)},_resources:function(){for(var t=this,n=t.options.resources,r=[],i=0;i<n.length;i++){var a=n[i],o=a.field,s=a.name||o,c=a.dataSource;if(!o||!c)throw Error(`The "field" and "dataSource" options of the scheduler resource are mandatory.`);t.resources.push({field:o,name:s,title:a.title||o,icon:a.icon,dataTextField:a.dataTextField||`text`,dataValueField:a.dataValueField||`value`,dataColorField:a.dataColorField||`color`,dataParentValueField:a.dataParentValueField||`parentValue`,valuePrimitive:a.valuePrimitive==null||a.valuePrimitive,multiple:a.multiple||!1,dataSource:t._resourceDataSource(c,s,r)})}t.options.autoBind?e.when.apply(null,r).then(function(){t.view(t._selectedViewName)}):t._selectView(t._selectedViewName)},_resourceDataSource:function(e,t,r){var i=this,a=b(e)?{data:e}:e,o=n.data.DataSource.create(a);return i.options.autoBind?r.push(o.fetch(function(){i._bindResourceEvents(this,t)})):i._bindResourceEvents(o,t),o},_bindResourceEvents:function(e,t){var n=this,r=n.options.group&&n.options.group.resources.length&&n.options.group.resources.indexOf(t)>-1;!n._resourceRefreshHandler&&r&&(n._resourceRefreshHandler=n._refreshResource.bind(n),n._resourceErrorHandler=n._error.bind(n)),r&&e.bind(T,n._resourceRefreshHandler).bind(D,n._resourceErrorHandler)},_refreshResource:function(){var e=this;e._editor&&e._editor.editable||e._preventRefresh||e.view(e._selectedViewName)},_initModel:function(){var e=this;e._model=n.observable({selectedDate:new Date(this.options.date),formattedDate:``,formattedShortDate:``,formattedToolbarDate:``}),e._model.bind(T,function(t){t.field===`selectedDate`&&e.view(e._selectedViewName)})},_wrapper:function(){var e=this,t=e.options,n=t.height,r=t.width;e.wrapper=e.element.addClass(`k-scheduler`),e._isMobile()&&e.wrapper.addClass(`k-scheduler-mobile`),n&&e.wrapper.height(n),r&&e.wrapper.width(r)},date:function(e){return e!=null&&a(e)>=a(this.options.min)&&a(e)<=a(this.options.max)&&this._model.set(`selectedDate`,e),a(this._model.get(`selectedDate`))},_toolbarEventInfo:function(){var e=new Date,t=this.options.timezone,r=this.view(),i=r&&r._timeSlotInterval?r._timeSlotInterval():30*n.date.MS_PER_MINUTE;if(t){var a=n.timezone.offset(e,t);e=n.timezone.convert(e,e.getTimezoneOffset(),a)}var s=new Date(this.date()),c=Math.ceil(o(e)/i)*i;n.date.setTime(s,c);var l=new Date(s);return n.date.setTime(l,i),{start:s,end:l}},_processHandlers:function(e){var r=this;r._pdfClickHandler=e=>{e.preventDefault(),r.saveAsPDF()},r._createClickHandler=e=>{e.preventDefault(),r.addEvent(r._isMobile()?t:r._toolbarEventInfo())},r._calendarClickHandler=r._currentClickHandler=e=>{e.preventDefault(),r._showCalendar(e.target)},r._todayClickHandler=e=>{e.preventDefault();var t=r.options.timezone,i=new Date,a;if(t){var o=n.timezone.offset(i,t);a=n.timezone.convert(i,i.getTimezoneOffset(),o)}else a=i;r.trigger(`navigate`,{view:r._selectedViewName,action:`today`,date:a})||r.date(a)},r._previousClickHandler=e=>{e.preventDefault();var t=r.view().previousDate();r.trigger(`navigate`,{view:r._selectedViewName,action:`previous`,date:t})||r.date(t)},r._nextClickHandler=e=>{e.preventDefault();var t=r.view().nextDate();r.trigger(`navigate`,{view:r._selectedViewName,action:`next`,date:t})||r.date(t)},r._refreshClickHandler=e=>{e.preventDefault();var t=r.view().name;r.trigger(`navigate`,{view:t,action:`changeView`,date:r.date()})||r.view(t)},r._viewClickHandler=e=>{var t=e.target.attr(n.attr(`name`));r.trigger(`navigate`,{view:t,action:`changeView`,date:r.date()})||r.view(t)},Object.values(e).map(e=>{e.name&&(e.click=r[`_`+e.name+`ClickHandler`])})},_processDefaults:function(){var t=this.views,r=e.extend(!0,{},be),i=[],a=n.support.isRtl(this.wrapper),o,s;return Object.keys(t).map(e=>{i.push(e)}),i.length>1&&(o=ye({views:this.views,label:this.options.messages.selectView,type:`k-views-dropdown`}),s=ye({views:this.views,label:this.options.messages.selectView,type:`k-scheduler-mobile-views`})),r.viewsDdl={template:o},r.viewsMobile={template:s},r.viewsSegmentedControl={template:`<div class="k-scheduler-views"></div>`},this._viewsButtons=i,a&&(r.previous.icon=`chevron-right`,r.next.icon=`chevron-left`),r},_processToolbarArray:function(){var t=this.options,n=t.toolbar,r=[],i=this._isMobile(),a,o,s;return n&&(r=Array.isArray(n)?n:[n]),o=e.grep(r,function(e){return e==`pdf`||e.name==`pdf`}).length>0,s=e.grep(r,function(e){return e==`search`||e.name==`search`}).length>0,i?(a=[...Se],t.editable&&a[0].push(`createMobile`)):a=[...xe],s&&a.push(`search`),o&&(i?a[0].unshift(`pdfMobile`):a.unshift(`pdf`)),this._viewsCount===1?a.push(`refresh`):this._viewsCount>1&&(i?a.push(`viewsMobile`):(a.push(`viewsDdl`),a.push(`viewsSegmentedControl`))),a},_processViewTools:function(t){var n=t.map(t=>Array.isArray(t)?this._processViewTools(t):(e.isPlainObject(t)&&t.name&&t.template&&(t=e.extend({},t),delete t.name),t)),r=-1;return n.some((e,t)=>e===`views`||e&&e.name===`views`?(r=t,!0):!1),r>-1&&n.splice(r,1,`viewsDdl`,`viewsSegmentedControl`),n},_processToolbarItems:function(){var e=this.options.toolbar.items.desktop||this.options.toolbar.items,t=this.options.toolbar.items.mobile||this.options.toolbar.items;return this._isMobile()?Array.isArray(t)?{tools:this._processViewTools(t),navigation:[]}:{tools:this._processViewTools(t.main),navigation:this._processViewTools(t.navigation)}:(e.main&&(e=e.navigation?e.main.concat(e.navigation):e.main),this._viewsCount>1&&!e.some(e=>e===`views`||e&&e.name===`views`)&&(e=e.concat(`views`)),{tools:this._processViewTools(e)})},_processTools:function(){var e=this.options.toolbar;return e&&e.items?this._processToolbarItems():{tools:this._processToolbarArray()}},_toolbar:function(){var t=this,r=t.options,i=t._processDefaults(),{tools:a,navigation:o}=t._processTools(),s=e(`<div class='k-scheduler-toolbar'>`),c;t._processHandlers(i),t.wrapper.append(s),t.toolbar=s,s.kendoToolBar({resizable:!1,tools:a,defaultTools:i,parentMessages:r.messages}),t._initViewsSegmentedControl(),t._isMobile()&&(!o||o.length!==0)&&(c=e(`<div class='k-scheduler-toolbar'>`),t.wrapper.append(c),t.toolbar=t.toolbar.add(c),c.kendoToolBar({resizable:!1,tools:o||[...Ce],defaultTools:i,parentMessages:r.messages})),t.toolbar.find(`.k-nav-current .k-button-text`).attr(`data-`+n.ns+`bind`,`text: formattedToolbarDate`),t.toolbar.find(`.k-m-date-format`).attr(`data-`+n.ns+`bind`,`text: formattedMobileDate`),t.toolbar.find(`.k-y-date-format`).attr(`data-`+n.ns+`bind`,`text: formattedYear`),n.bind(t.toolbar,t._model),t.toolbar.find(`.k-scheduler-search-input`).attr({placeholder:r.messages.search,title:r.messages.search}),s.on(`input`+x,`.k-scheduler-search-input`,n.throttle(function(e){t.dataSource.filter({logic:`or`,filters:[{field:`title`,operator:`contains`,value:e.target.value},{field:`description`,operator:`contains`,value:e.target.value}]})},250)),s.on(T+x,`.k-views-dropdown, .k-scheduler-mobile-views`,function(){var e=this.value;t.trigger(`navigate`,{view:e,action:`changeView`,date:t.date()})||t.view(e)}),t._initViewsDropDownButton(),t._isMobile()||(t._toolbarLevel=0,t._toolbarBreakpoints=[1/0,1/0,1/0],t.toolbar.first().css(`flex-wrap`,`nowrap`),typeof ResizeObserver<`u`&&(t._toolbarResizeObserver=new ResizeObserver(function(){t._toolbarResize()}),t._toolbarResizeObserver.observe(t.toolbar.first()[0]))),t._initialSize=!0},_initViewsSegmentedControl:function(){let e=this,t=e.views,n=Object.keys(t),r=e.toolbar.find(`.k-scheduler-views`);if(!r.length||n.length<=1)return;var i=r.parent();i.attr(`ref-toolbar-tool`,``),e._toolbarSegmentedContainer=i.is(e.toolbar.first())?r:i;let a=n.map(function(e){return{value:e,text:t[e].title}});e._viewsSegmentedControl=r.kendoSegmentedControl({items:a,selectedValue:e._selectedViewName,change:function(t){e.trigger(`navigate`,{view:t.value,action:`changeView`,date:e.date()})||(e.view(t.value),(e.element.find(`.k-segmented-control-button`)?.filter(`[data-value="${t.value}"]`))?.focus())}}).data(`kendoSegmentedControl`)},_initViewsDropDownButton:function(){var t=this,n=t.views,r=Object.keys(n),i=t.toolbar.first();if(!(!i.find(`.k-scheduler-views`).length||r.length<=1)){var a=n[t._selectedViewName]?n[t._selectedViewName].title:r[0],o=r.map(function(e){return{text:n[e].title,click:function(){t.trigger(`navigate`,{view:e,action:`changeView`,date:t.date()})||t.view(e)}}});t._toolbarDropDownContainer=e(`<div class="k-toolbar-views-dropdown"></div>`).hide().appendTo(i),t._viewsDropDownButton=e(`<button type="button"></button>`).text(a).appendTo(t._toolbarDropDownContainer).kendoDropDownButton({fillMode:`flat`,showArrowButton:!0,items:o}).data(`kendoDropDownButton`),t._viewsDropDownButton.element.addClass(`k-toolbar-menu-button`),t._toolbarViewsDdlContainer=i.find(`.k-views-dropdown`).parent(),t._toolbarViewsDdlContainer.length&&t._toolbarViewsDdlContainer.hide(),t._toolbarCreateBtn=i.find(`[ref-toolbar-create]`),t._toolbarNavGroup=i.find(`[ref-nav-prev]`).closest(`.k-button-group`),t._toolbarTodayBtn=i.find(`[ref-nav-today]`)}},_updateToolbarDate:function(){if(!(!this._model||this._isMobile())){var e=(this._toolbarLevel||0)>=2?this._model.get(`formattedShortDate`):this._model.get(`formattedDate`);this._model.set(`formattedToolbarDate`,e)}},_toolbarResize:function(){var e=this;if(!e._toolbarResizing){var t=e.toolbar&&e.toolbar.first();if(!(!t||!t.is(`:visible`)||e._isMobile())){e._toolbarResizing=!0,t.css(`overflow`,`hidden`);var n=t[0],r=n.clientWidth;if(!r){e._toolbarResizing=!1;return}for(var i=e._toolbarLevel||0,a=e._toolbarBreakpoints,o=0,s=!0;s&&o<4;)s=!1,o++,e._measureToolbarContent(t)>r&&i<3?(a[i]=r,i++,s=!0,e._applyToolbarLevel(i)):i>0&&(e._applyToolbarLevel(i-1),e._measureToolbarContent(t)<=r-ge?(i--,s=!0):e._applyToolbarLevel(i));i!==(e._toolbarLevel||0)&&(e._toolbarLevel=i,e._updateToolbarDate()),t.css(`overflow`,``),i>=3&&e._measureToolbarContent(t)>n.clientWidth?t.css(`flex-wrap`,`wrap`):t.css(`flex-wrap`,`nowrap`),e._toolbarResizing=!1}}},_measureToolbarContent:function(t){var n=parseInt(t.css(`gap`))||0,r=0,i=0;return t.children().each(function(){this.offsetWidth>0&&!e(this).hasClass(`k-spacer`)&&(r+=this.offsetWidth,i++)}),i>1&&(r+=n*(i-1)),r},_applyToolbarLevel:function(e){var t=this,n=t._toolbarSegmentedContainer,r=t._toolbarViewsSeparator,i=t._toolbarDropDownContainer,a=t._toolbarCreateBtn,o=t._toolbarTodayBtn,s=t._toolbarNavGroup;n&&(e===0?n.show():n.hide()),r&&(e===1?r.show():r.hide()),i&&(e>=1?i.show():i.hide()),a&&(e>=2?(a.addClass(`k-icon-button`),a.children(`.k-button-text`).hide()):(a.removeClass(`k-icon-button`),a.children(`.k-button-text`).show())),o&&o.length&&(e>=2?o.hide():o.show()),s&&s.length&&(e>=3?s.hide():s.show())},_showCalendar:function(t){var r=this,i=t||r.toolbar.find(`.k-nav-current`),a=e(`<div class="k-calendar-container"><div class="k-scheduler-calendar"></div></div>`);r.popup||=new m(a,{anchor:i,isRtl:n.support.isRtl(r.element),activate:function(){r.popup&&r.calendar&&(r.popup._toggleResize(!1),r.calendar.focus(),r.popup._toggleResize(!0))},open:function(){r.calendar||=new h(this.element.find(`.k-scheduler-calendar`),{change:function(){var e=this.value();r.trigger(`navigate`,{view:r._selectedViewName,action:`changeDate`,date:e})||(r.date(e),r.popup.close()),r._isMobile()||(r._selectedView.element.trigger(`focus`),r.toolbar.find(`.k-nav-current`).trigger(`focus`).addClass(P))},min:r.options.min,max:r.options.max}),r.calendar.element.on(`keydown`+x,function(e){(e.keyCode===l.ESC||e.keyCode===l.TAB)&&(r.popup.close(),r._selectedView.element.trigger(`focus`),r.toolbar.find(`.k-nav-current`).trigger(`focus`).addClass(P))}),r.calendar.setOptions({start:r._selectedViewName===`year`?`decade`:`month`,depth:r._selectedViewName===`year`?`decade`:`month`}),r.calendar.value(r.date())},copyAnchorStyles:!1}),r.popup.open()},refresh:function(e){var t=this.view(),n=e&&e.action===`itemchange`&&(this._editor.editable||this._preventRefresh)||this.dataSource.options.type===`signalr`&&this._preventRefresh;if(this._progress(!1),e||={},t){if(n){this._attemptRefresh=this.dataSource.options.type===`signalr`;return}this.trigger(`dataBinding`,{action:e.action||`rebind`,index:e.index,items:e.items})||(!(e&&e.action===`resize`)&&this._editor&&this._editor.close(),this._data=this.dataSource.expand(t.startDate(),t.visibleEndDate()),t.refreshLayout(),t.render(this._data),t._readonlyEvents(this._data),this.trigger(`dataBound`),this._attemptRefresh=!1)}},slotByPosition:function(e,t){var n=this.view();if(!n._slotByPosition)return null;var r=n._slotByPosition(e,t);return r?{startDate:r.startDate(),endDate:r.endDate(),groupIndex:r.groupIndex,element:r.element,isDaySlot:r.isDaySlot}:null},slotByElement:function(t){var n=e(t),r=n.offset(),i=n.width(),a=n.height(),o=r.left+i/2,s=r.top+a/2,r=e(t).offset();return this.slotByPosition(o,s)},resourcesBySlot:function(e){return this.view()._resourceBySlot(e)}}),et={day:{type:`kendo.ui.DayView`},week:{type:`kendo.ui.WeekView`},workWeek:{type:`kendo.ui.WorkWeekView`},agenda:{type:`kendo.ui.AgendaView`},month:{type:`kendo.ui.MonthView`},timeline:{type:`kendo.ui.TimelineView`},timelineWeek:{type:`kendo.ui.TimelineWeekView`},timelineWorkWeek:{type:`kendo.ui.TimelineWorkWeekView`},timelineMonth:{type:`kendo.ui.TimelineMonthView`},year:{type:`kendo.ui.YearView`}};if(u.plugin($),n.PDFMixin){n.PDFMixin.extend($.prototype);var tt=`k-scheduler-pdf-export`;$.fn._drawPDF=function(t){var n=this.wrapper,r=n[0].style.cssText;n.css({width:n.width(),height:n.height()}),n.addClass(tt);var i=this,a=new e.Deferred,o=n.find(`.k-scheduler-content`).find(`table`).css(`table-layout`,`auto`);return setTimeout(function(){o.css(`table-layout`,`fixed`),i.resize(!0),i._drawPDFShadow({},{avoidLinks:i.options.pdf.avoidLinks}).done(function(e){var n={page:e,pageNumber:1,progress:1,totalPages:1};t.notify(n),a.resolve(n.page)}).fail(function(e){a.reject(e)}).always(function(){n[0].style.cssText=r,n.removeClass(tt),i.resize(!0),i.resize(!0)})}),a}}var nt=d.extend({init:function(e,t){var r=this,i=n.timezone.windows_zones;if(!i||!n.timezone.zones_titles)throw Error(`kendo.timezones.min.js is not included.`);d.fn.init.call(r,e,t),r.wrapper=r.element,r._zonesQuery=new n.data.Query(i),r._zoneTitleId=n.guid(),r._zoneTitlePicker(),r._zonePicker(),r._zoneTitle.bind(`cascade`,function(){this.value()||r._zone.wrapper.hide()}),r._zone.bind(`cascade`,function(){r._value=this.value(),r.trigger(T)}),r.value(r.options.value),d.fn.endInit.call(this)},options:{name:`TimezoneEditor`,value:``,optionLabel:`No timezone`},events:[T],_zoneTitlePicker:function(){var t=this,r=e(`<input id="`+t._zoneTitleId+`" aria-label="`+t.options.title+`"/>`).appendTo(t.wrapper),i=[{name:t.options.optionLabel,other_zone:``}].concat(n.timezone.zones_titles);t._zoneTitle=new n.ui.DropDownList(r,{dataSource:i,dataValueField:`other_zone`,dataTextField:`name`,filter:`contains`})},_zonePicker:function(){var t=this,r=e(`<input aria-label="`+t.options.title+`"/>`).appendTo(this.wrapper);t._zone=new n.ui.DropDownList(r,{dataValueField:`zone`,dataTextField:`territory`,dataSource:t._zonesQuery.data,cascadeFrom:t._zoneTitleId,filter:`contains`,dataBound:function(){t._value=this.value(),this.wrapper.toggle(this.dataSource.view().length>1)}}),t._zone.wrapper.hide()},destroy:function(){d.fn.destroy.call(this),n.destroy(this.wrapper)},value:function(e){var n=this,r;if(e===t)return n._value;r=n._zonesQuery.filter({field:`zone`,operator:`eq`,value:e}).data[0],r?(n._zoneTitle.value(r.other_zone),n._zone.value(r.zone)):n._zoneTitle.select(0)}});u.plugin(nt);var rt=n.template(({name:e,other_zone:t})=>`<option value="${t}">${e}</option>`),it=n.template(({zone:e,territory:t})=>`<option value="${e}">${t}</option>`),at=d.extend({init:function(e,t){var r=this,i=n.timezone.windows_zones;if(!i||!n.timezone.zones_titles)throw Error(`kendo.timezones.min.js is not included.`);d.fn.init.call(r,e,t),r.wrapper=r.element,r._zonesQuery=new n.data.Query(i),r._zoneTitlePicker(),r._zonePicker(),r.value(r.options.value),d.fn.endInit.call(this)},options:{name:`MobileTimezoneEditor`,optionLabel:`No timezone`,value:``},events:[T],_bindZones:function(e){var t=e?this._filter(e):[];this._zone.html(this._options(t,it))},_filter:function(e){return this._zonesQuery.filter({field:`other_zone`,operator:`eq`,value:e}).data},_options:function(e,t,n){var r=0,i=``,a=e.length;for(n&&(i+=t({other_zone:``,name:n}));r<a;r++)i+=t(e[r]);return i},_zoneTitlePicker:function(){var t=this;t._zoneTitle=e(`<select>`+t._options(n.timezone.zones_titles,rt,t.options.optionLabel)+`</select>`).appendTo(t.wrapper).on(`change`,function(){var e=this.value,n=t._zonePickerLabel,r=n.find(`select`);t._bindZones(e),e&&r.children().length>1?n.show():n.hide(),t._value=t._zone[0].value,t.trigger(T)})},_zonePicker:function(){var t=this;t._zonePickerLabel=e(`<li class='k-item k-listgroup-item k-zonepicker'><label class='k-label k-listgroup-form-row'><span class='k-item-title k-listgroup-form-field-label'></span><div class='k-listgroup-form-field-wrapper'></div></label></li>`).hide(),t._zone=e(`<select></select>`).appendTo(t._zonePickerLabel.find(`div`)).on(`change`,function(){t._value=this.value,t.trigger(T)}),this.wrapper.closest(`.k-item`).after(t._zonePickerLabel),t._bindZones(t._zoneTitle.val()),t._value=t._zone[0].value},destroy:function(){d.fn.destroy.call(this),n.destroy(this.wrapper)},value:function(e){var n=this,r=n._zone,i=``,a=``,o;if(e===t)return n._value;o=n._zonesQuery.filter({field:`zone`,operator:`eq`,value:e}).data[0],o&&(a=o.zone,i=o.other_zone),n._zoneTitle.val(i),n._bindZones(i),r.val(a),a=r[0].value,a&&r.children.length>1?n._zonePickerLabel.show():n._zonePickerLabel.hide(),n._value=a}});u.plugin(at)})(window.kendo.jQuery);var S=kendo;e.__meta__=x,e.default=S});
//# sourceMappingURL=kendo.scheduler.min.js.map