@progress/kendo-angular-scheduler 4.3.5-dev.202211031440 → 4.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,4 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-angular-common"),require("@progress/kendo-date-math"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-dateinputs"),require("rxjs"),require("rxjs/operators"),require("@angular/forms"),require("@progress/kendo-angular-dialog"),require("@progress/kendo-angular-intl"),require("@progress/kendo-angular-popup"),require("@progress/kendo-angular-buttons"),require("@angular/common"),require("@progress/kendo-angular-dropdowns"),require("@progress/kendo-recurrence"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-data-query"),require("@progress/kendo-draggable"),require("@progress/kendo-drawing"),require("@progress/kendo-file-saver")):"function"==typeof define&&define.amd?define("KendoAngularScheduler",["exports","@angular/core","@progress/kendo-angular-l10n","@progress/kendo-angular-common","@progress/kendo-date-math","@progress/kendo-licensing","@progress/kendo-angular-dateinputs","rxjs","rxjs/operators","@angular/forms","@progress/kendo-angular-dialog","@progress/kendo-angular-intl","@progress/kendo-angular-popup","@progress/kendo-angular-buttons","@angular/common","@progress/kendo-angular-dropdowns","@progress/kendo-recurrence","@progress/kendo-angular-inputs","@progress/kendo-data-query","@progress/kendo-draggable","@progress/kendo-drawing","@progress/kendo-file-saver"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularScheduler={},e.ng.core,e.KendoAngularL10N,e.KendoAngularCommon,e.KendoDateMath,e.KendoLicensing,e.KendoAngularDateinputs,e.rxjs,e.rxjs.operators,e.ng.forms,e.KendoAngularDialog,e.KendoAngularIntl,e.KendoAngularPopup,e.KendoAngularButtons,e.ng.common,e.KendoAngularDropdowns,e.KendoRecurrence,e.KendoAngularInputs,e.KendoDataQuery,e.KendoDraggable,e.KendoDrawing,e.KendoFileSaver)}(this,function(e,h,P,l,b,z,A,p,N,B,j,L,t,q,Z,G,_,U,Y,K,$,X){"use strict";function Q(n){var r;return n&&n.__esModule?n:(r=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(r,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),r.default=n,Object.freeze(r))}var n=Q(h),r=Q(P),J=Q(l),i=Q(A),ee=Q(B),te=Q(j),o=Q(L),ne=Q(t),a=Q(q),s=Q(Z),re=Q(G),ie=Q(U),oe={name:"@progress/kendo-angular-scheduler",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1667486336,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},ae=function(e,t,n){this.sender=e,this.selectedDate=t,this.dateRange=n},se=function(e,t){return(se=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(e,t){e.__proto__=t}:function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}))(e,t)};function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}se(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function le(r,i){var o,a,s,l={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},c={next:e(0),throw:e(1),return:e(2)};return"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function e(n){return function(e){var t=[n,e];if(o)throw new TypeError("Generator is already executing.");for(;l=c&&t[c=0]?0:l;)try{if(o=1,a&&(s=2&t[0]?a.return:t[0]?a.throw||((s=a.return)&&s.call(a),0):a.next)&&!(s=s.call(a,t[1])).done)return s;switch(a=0,(t=s?[2&t[0],s.value]:t)[0]){case 0:case 1:s=t;break;case 4:return l.label++,{value:t[1],done:!1};case 5:l.label++,a=t[1],t=[0];continue;case 7:t=l.ops.pop(),l.trys.pop();continue;default:if(!(s=0<(s=l.trys).length&&s[s.length-1])&&(6===t[0]||2===t[0])){l=0;continue}if(3===t[0]&&(!s||t[1]>s[0]&&t[1]<s[3]))l.label=t[1];else if(6===t[0]&&l.label<s[1])l.label=s[1],s=t;else{if(!(s&&l.label<s[2])){s[2]&&l.ops.pop(),l.trys.pop();continue}l.label=s[2],l.ops.push(t)}}t=i.call(r,l)}catch(e){t=[6,e],a=0}finally{o=s=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}}}Object.create;function ce(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||0<t--)&&!(r=o.next()).done;)a.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a}function de(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||((r=r||Array.prototype.slice.call(t,0,i))[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}Object.create;c(he,ue=A.PreventableEvent);var ue,pe=he;function he(e,t){var n=ue.call(this)||this;return n.sender=e,n.action=t,n}function me(e,t){this.sender=e,Object.assign(this,t)}function ge(e,t){this.sender=e,Object.assign(this,t)}function ye(e,t){this.sender=e,Object.assign(this,t)}function fe(e,t){this.sender=e,Object.assign(this,t)}ke.prototype.preventDefault=function(){this.prevented=!0},ke.prototype.isDefaultPrevented=function(){return this.prevented};var ve=ke;function ke(){this.prevented=!1}c(Ie,De=ve);var De,Te=Ie;function Ie(e,t){var n=De.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Se,be=ve);var be,we=Se;function Se(e,t){var n=be.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Ee,xe=ve);var xe,Ce=Ee;function Ee(e,t){var n=xe.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Fe,Re=ve);var Re,Oe=Fe;function Fe(e,t){var n=Re.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(We,He=ve);var He,Ve=We;function We(e,t){var n=He.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(ze,Me=ve);var Me,Pe=ze;function ze(e,t){var n=Me.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Be,Ae=ve);var Ae,Ne=Be;function Be(e,t){var n=Ae.call(this)||this;return n.sender=e,Object.assign(n,t),n}function je(e,t){this.sender=e,Object.assign(this,t)}var Le,qe={slotClick:me,slotDblClick:me,eventClick:ge,eventDblClick:ge,eventKeydown:ye,create:fe,remove:Oe,resizeStart:Ne,resize:Pe,resizeEnd:Ve,dragStart:Ce,drag:we,dragEnd:Te},Ze=(c(Ge,Le=je),Ge);function Ge(){return null!==Le&&Le.apply(this,arguments)||this}c(Ye,_e=je);var _e,Ue=Ye;function Ye(){return null!==_e&&_e.apply(this,arguments)||this}c(Xe,Ke=ve);var Ke,$e=Xe;function Xe(e,t){var n=Ke.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(et,Qe=ve);var Qe,Je=et;function et(e,t){var n=Qe.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(rt,tt=ve);var tt,nt=rt;function rt(e,t){var n=tt.call(this)||this;return n.sender=e,Object.assign(n,t),n}var it,ot=function(e,t){this.sender=e,Object.assign(this,t)},at=(c(st,it=ot),st);function st(){return null!==it&&it.apply(this,arguments)||this}var lt=function(e){this.templateRef=e},ct=(lt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:lt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),lt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:lt,selector:"[kendoSchedulerToolbarTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:lt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerToolbarTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),dt.prototype.navigate=function(e){this.actionSource.next(e)},dt);function dt(){this.actionSource=new p.Subject,this.action=this.actionSource.asObservable()}ct.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct,deps:[],target:n.ɵɵFactoryTarget.Injectable}),ct.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});function d(){}function ut(){}e.EditMode=void 0,(u=e.EditMode||(e.EditMode={}))[u.Event=0]="Event",u[u.Occurrence=1]="Occurrence",u[u.Series=2]="Series",e.CrudOperation=void 0,(u=e.CrudOperation||(e.CrudOperation={}))[u.Edit=0]="Edit",u[u.Remove=1]="Remove";(u=pt=pt||{}).initDragSelect="initDragSelect",u.dragSelect="dragSelect",u.refreshSlotSelection="refreshSlotSelection",u.dragSelectRelease="dragSelectRelease";var pt,u=function(e){this.templateRef=e},ht=(u.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:u,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),u.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:u,selector:"[kendoSchedulerAgendaDateTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:u,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAgendaDateTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),mt=(ht.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ht,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),ht.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ht,selector:"[kendoSchedulerAgendaTimeTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ht,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAgendaTimeTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),gt=(mt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),mt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:mt,selector:"[kendoSchedulerAllDayEventTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAllDayEventTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),yt=(gt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:gt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),gt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:gt,selector:"[kendoSchedulerAllDaySlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:gt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAllDaySlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),ft=(yt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:yt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),yt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:yt,selector:"[kendoSchedulerDateHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:yt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerDateHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),vt=(ft.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ft,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),ft.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ft,selector:"[kendoSchedulerEventTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ft,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerEventTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),kt=(vt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),vt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:vt,selector:"[kendoSchedulerGroupHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerGroupHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),Dt=(kt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:kt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),kt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:kt,selector:"[kendoSchedulerMajorTimeHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:kt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMajorTimeHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),Tt=(Dt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Dt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Dt,selector:"[kendoSchedulerMinorTimeHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMinorTimeHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),It=(Tt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Tt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Tt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Tt,selector:"[kendoSchedulerMonthDaySlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Tt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMonthDaySlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),m=(It.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:It,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),It.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:It,selector:"[kendoSchedulerTimeSlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:It,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerTimeSlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),bt.prototype.notifyAction=function(e){this.actionSource.next(e)},bt.prototype.notifyItems=function(e){this.itemsSource.next(e)},bt.prototype.notifySelectedDate=function(e){this.selectedDateSource.next(e)},bt.prototype.notifyResize=function(){this.resizeSource.next()},bt.prototype.notifyOptionsChange=function(e){this.optionsChangeSource.next(e)},bt.prototype.executeMethod=function(e,t){var n;return this.executeSource.next({name:e,args:t,result:function(e){n=e}}),n},bt);function bt(){this.actionSource=new p.Subject,this.itemsSource=new p.BehaviorSubject([]),this.selectedDateSource=new p.BehaviorSubject(null),this.resizeSource=new p.Subject,this.optionsChangeSource=new p.BehaviorSubject({}),this.executeSource=new p.Subject,this.action=this.actionSource.asObservable(),this.items=this.itemsSource.asObservable(),this.selectedDate=this.selectedDateSource.asObservable(),this.resize=this.resizeSource.asObservable(),this.optionsChange=this.optionsChangeSource.asObservable(),this.execute=this.executeSource.asObservable()}m.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m,deps:[],target:n.ɵɵFactoryTarget.Injectable}),m.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});wt.prototype.notifyNextDate=function(e){this.nextDateSource.next(e)},wt.prototype.notifyDateRange=function(e){this.dateRangeSource.next(e)},wt.prototype.notifyLayoutEnd=function(){this.layoutEndSource.next()},wt.prototype.navigateTo=function(e){this.navigateSource.next(e)},wt.prototype.notifyOptionsChange=function(){this.optionsChangeSource.next(null)},wt.prototype.emitEvent=function(e,t){this.viewEventSource.next({name:e,args:t})},wt.prototype.notifySlotSelectionStart=function(e){this.slotSelectionStartSource.next(e)},wt.prototype.notifySlotSelectionDrag=function(e){this.slotSelectionStartDragSource.next(e)},wt.prototype.notifySlotSelectionEnd=function(e){this.slotSelectionStartEndSource.next(e)};var g=wt;function wt(){this.dateRangeSource=new p.BehaviorSubject({start:new Date(0),end:new Date(0),text:"",shortText:""}),this.nextDateSource=new p.Subject,this.navigateSource=new p.Subject,this.viewEventSource=new p.Subject,this.layoutEndSource=new p.Subject,this.optionsChangeSource=new p.Subject,this.slotSelectionStartSource=new p.Subject,this.slotSelectionStartDragSource=new p.Subject,this.slotSelectionStartEndSource=new p.Subject,this.dateRange=this.dateRangeSource.asObservable(),this.nextDate=this.nextDateSource.asObservable(),this.navigate=this.navigateSource.asObservable(),this.viewEvent=this.viewEventSource.asObservable(),this.layoutEnd=this.layoutEndSource.asObservable(),this.optionsChange=this.optionsChangeSource.asObservable(),this.slotSelectionStart=this.slotSelectionStartSource.asObservable(),this.slotSelectionDrag=this.slotSelectionStartDragSource.asObservable(),this.slotSelectionEnd=this.slotSelectionStartEndSource.asObservable()}g.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g,deps:[],target:n.ɵɵFactoryTarget.Injectable}),g.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});var St=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,xt={};function Ct(e){var i;return xt[e]||(i=[],e.replace(St,function(e,t,n,r){i.push(void 0!==t?t:n||r)}),xt[e]=function(e){for(var t=e,n=0;n<i.length&&t;n++)t=t[i[n]];return t}),xt[e]}xt[void 0]=function(){};var Et=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,Rt={};function Ot(e){var o;return Rt[e]||(o=[],e.replace(Et,function(e,t,n,r){o.push(void 0!==t?t:n||r)}),Rt[e]=function(e,t){for(var n=e,r=o.length-1,i=0;i<r&&n;i++)n=n[o[i]]=n[o[i]]||{};n[o[r]]=t}),Rt[e]}Rt[void 0]=function(e){return e};function Ft(e){return e.charAt(0).toUpperCase()+e.slice(1)}function y(e){return null!=e}function Ht(e,t){var n=Ct(t.recurrenceId)(e);return!(!Ct(t.recurrenceRule)(e)&&!n)}function Vt(e,t){var n=Ct(t.id)(e),t=Ct(t.recurrenceId)(e);return y(n)&&0!==n&&y(t)}function Wt(e,t){if(t)for(var n=0;n<t.length;n++)Nt(e,e.dataItem,t[n].field)}function Mt(e,t,n){return t={id:Ct(t.id)(e),start:Ct(t.start)(e),startTimezone:Ct(t.startTimezone)(e),end:Ct(t.end)(e),endTimezone:Ct(t.endTimezone)(e),isAllDay:Ct(t.isAllDay)(e),title:Ct(t.title)(e),description:Ct(t.description)(e),recurrenceRule:Ct(t.recurrenceRule)(e),recurrenceExceptions:Ct(t.recurrenceExceptions)(e),recurrenceId:Ct(t.recurrenceId)(e),dataItem:e},Wt(t,n),t}var Pt=function(e){return"number"==typeof e&&!isNaN(e)};function zt(e,n){var r=[];if(e&&e.resources&&e.resources.length)for(var i=e.resources,t=0;t<i.length;t++)!function(t){var e=n.find(function(e){return e.name===i[t]});r.push(e)}(t);return r}var x=function(e,t){return Ct(t)(e)},At=function(e,t,n){return Ot(t)(e,n)};function Nt(e,t,n){At(e,n,x(t,n))}function Bt(e,t){return jt(t,e),e}function jt(e,t){for(var n in e){var r;e.hasOwnProperty(n)&&(r=e[n],Array.isArray(r)?t[n]=r.slice(0):!r||"object"!=typeof r||r instanceof Date?t[n]=r:(t[n]=t[n]||{},jt(r,t[n])))}}function Lt(e){var t={};return jt(e,t),t}var qt=function(){if("function"==typeof Symbol&&Symbol.iterator)return Symbol.iterator;for(var e=Object.getOwnPropertyNames(Map.prototype),t=Map.prototype,n=0;n<e.length;++n){var r=e[n];if("entries"!==r&&"size"!==r&&t[r]===t.entries)return r}}();function Zt(e){return p.fromEvent(e,"click")}function Gt(e){var e=Zt(e),t=e.pipe(N.auditTime(250));return e.pipe(N.buffer(t),N.filter(function(e){return 2===e.length}),N.filter(function(e){return e[1].target===e[0].target}),N.map(function(e){return e[1]}))}function _t(e){return e.sort(function(e,t){return e.startTime-t.startTime||t.endTime-e.endTime}),e}Yt.prototype.endEdit=function(){var e=this.hasNewEvent?this.newEventGroup.group:this.editedEvent.formGroup;this.changes.emit({action:"cancel",formGroup:e})},Yt.prototype.removeEvent=function(e){this.changes.emit({action:"remove",dataItem:e})},Yt.prototype.addEvent=function(e){this.newEventGroup={formGroup:e},this.onChanged()},Yt.prototype.editEvent=function(e,t,n){this.editedEvent={dataItem:e,formGroup:t=void 0===t?void 0:t,mode:n},this.onChanged()},Yt.prototype.close=function(){this.newEventGroup=this.editedEvent=null,this.onChanged()},Yt.prototype.save=function(){var e=this.context,t=e.dataItem,e=e.formGroup;this.changes.emit({action:"save",dataItem:t,formGroup:e,isNew:this.hasNewEvent,mode:this.occurrenceEditMode})},Yt.prototype.isEditing=function(){return y(this.context)},Object.defineProperty(Yt.prototype,"occurrenceEditMode",{get:function(){return this.hasNewEvent?2:this.editedEvent.mode||0},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"hasNewEvent",{get:function(){return y(this.newEventGroup)},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"newEvent",{get:function(){return this.hasNewEvent?this.newEventGroup.group.value:{}},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"context",{get:function(){return this.hasNewEvent?this.newEventGroup:this.editedEvent},enumerable:!1,configurable:!0}),Yt.prototype.onChanged=function(){var e=this;this.ngZone.runOutsideAngular(function(){e.changedSource.next()})};var Ut=Yt;function Yt(e){this.ngZone=e,this.changes=new h.EventEmitter,this.changedSource=new p.Subject,this.changed=this.changedSource.asObservable().pipe(N.debounceTime(0))}Ut.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut,deps:[{token:n.NgZone}],target:n.ɵɵFactoryTarget.Injectable}),Ut.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:n.NgZone}]}});var Kt=function(e){this.templateRef=e},$t=(Kt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Kt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Kt,selector:"[kendoSchedulerEditDialogTemplate]",inputs:{autoFocusedElement:"autoFocusedElement"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerEditDialogTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]},propDecorators:{autoFocusedElement:[{type:h.Input}]}}),function(){this.changes=new h.EventEmitter}),Xt=($t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t,deps:[],target:n.ɵɵFactoryTarget.Injectable}),$t.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t,decorators:[{type:h.Injectable}]}),function(){this.focus=new h.EventEmitter,this.focusIn=new h.EventEmitter,this.focusOut=new h.EventEmitter,this.click=new h.EventEmitter,this.keydown=new h.EventEmitter,this.windowBlur=new h.EventEmitter}),f=(Xt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt,deps:[],target:n.ɵɵFactoryTarget.Injectable}),Xt.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt,decorators:[{type:h.Injectable}]}),Object.defineProperty(Qt.prototype,"activeElement",{get:function(){if(this.activeItem)return this.activeItem.element},enumerable:!1,configurable:!0}),Qt.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},Qt.prototype.register=function(e){this.activeItem||(this.activeItem=e).toggle(!0),this.items.add(e),this.elementMap.set(e.element.nativeElement,e),this.toggleWrapper()},Qt.prototype.unregister=function(e){this.items.delete(e),this.elementMap.delete(e.element.nativeElement),e===this.activeItem&&this.activateNext(),this.toggleWrapper()},Qt.prototype.focus=function(){(this.activeItem||this.wrapper.nativeElement).focus()},Qt.prototype.focusNext=function(e){var t=this.activeItem;return this.activateNext(e),this.activeItem&&this.activeItem.focus(),this.activeItem!==t},Qt.prototype.focusFirst=function(){var t=this,e=Array.from(this.items.values())[0];e&&(this.activate(e.element.nativeElement),this.focus(),this.zone.onStable.pipe(N.take(1)).subscribe(function(){var e=Array.from(t.items.values())[0];e?(e=e.element.nativeElement.getAttribute("id"),t.ariaActiveDescendant.next(e),t.lastActiveDescendantId=e):t.clearActiveDescendant()}))},Qt.prototype.clearActiveDescendant=function(){this.ariaActiveDescendant.next(null)},Qt.prototype.activate=function(t){var n=this;this.items.forEach(function(e){e.toggle(e===t),e===t&&(e=e.element.nativeElement.getAttribute("id"),n.ariaActiveDescendant.next(e),n.lastActiveDescendantId=e)}),this.activeItem=t},Qt.prototype.activateNext=function(e){this.activeItem=this.findNext(e)},Qt.prototype.findNext=function(e){var e=Object.assign({nowrap:!1,offset:1},e),t=e.offset,e=e.nowrap,n=Array.from(this.items.values()).filter(function(e){return e.canFocus()}).sort(function(e,t){return e.focusIndex-t.focusIndex});return 0===n.length?null:this.activeItem?(t=n.indexOf(this.activeItem)+t,e?t=Math.max(0,Math.min(n.length-1,t)):(t%=n.length)<0&&(t=n.length-1),n[t]):e?null:n[0]},Qt.prototype.toggleWrapper=function(){this.wrapper&&this.renderer.setAttribute(this.wrapper.nativeElement,"tabindex",this.activeItem?"-1":"0")},Qt.prototype.onFocusIn=function(e){e=this.elementMap.get(e.target);this.lastActiveDescendantId&&this.lastActiveDescendantId!==(null==e?void 0:e.element.nativeElement.getAttribute("id"))&&this.ariaActiveDescendant.next(this.lastActiveDescendantId),e&&e!==this.focusedItem&&(this.focusedItem&&this.focusedItem.toggleFocus(!1),this.activate(e),e.toggleFocus(!0),this.focusedItem=e)},Qt.prototype.onFocusOut=function(){this.focusedItem&&(this.focusedItem.toggleFocus(!1),this.focusedItem=null,this.clearActiveDescendant())},Qt);function Qt(e,t,n,r){var i=this;this.renderer=e,this.wrapper=t,this.domEvents=n,this.zone=r,this.ariaActiveDescendant=new h.EventEmitter,this.items=new Set,this.elementMap=new WeakMap,this.subs=new p.Subscription,this.subs.add(this.domEvents.focus.subscribe(function(e){return i.onFocusIn(e)})),this.subs.add(this.domEvents.focusOut.subscribe(function(){return i.onFocusOut()}))}f.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f,deps:[{token:n.Renderer2,optional:!0},{token:n.ElementRef,optional:!0},{token:Xt},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Injectable}),f.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:n.Renderer2,decorators:[{type:h.Optional}]},{type:n.ElementRef,decorators:[{type:h.Optional}]},{type:Xt},{type:n.NgZone}]}});en.prototype.openRemoveConfirmationDialog=function(){var t=this,e=this.dialogService.open({title:this.textFor("deleteDialogTitle"),content:this.textFor("deleteConfirmation"),actions:[{text:this.textFor("cancel"),value:!1},{text:this.textFor("destroy"),value:!0}],appendTo:this.container,autoFocusedElement:"button:nth-child(2)"});return this.isOpen=!0,this.changeDetector.markForCheck(),e.result.pipe(N.map(function(e){return t.isOpen=!1,e instanceof j.DialogCloseResult?(t.focusService.focus(),!1):(t.viewState.layoutEnd.pipe(N.take(1)).subscribe(function(){return t.focusService.focus()}),e.value)}))},en.prototype.openRecurringConfirmationDialog=function(e){var t=this,e=this.dialogService.open({actions:[{text:0===e?this.textFor("editOccurrence"):this.textFor("deleteOccurrence"),value:1},{text:0===e?this.textFor("editSeries"):this.textFor("deleteSeries"),value:2}],appendTo:this.container,autoFocusedElement:"button:nth-child(1)",content:0===e?this.textFor("editRecurringConfirmation"):this.textFor("deleteRecurringConfirmation"),title:0===e?this.textFor("editRecurringDialogTitle"):this.textFor("deleteRecurringDialogTitle")});return this.isOpen=!0,this.changeDetector.markForCheck(),e.result.pipe(N.map(function(e){if(t.isOpen=!1,t.focusService.focus(),!(e instanceof j.DialogCloseResult))return e.value}))},en.prototype.textFor=function(e){return this.localization.get(e)};var Jt=en;function en(e,t,n,r,i){this.dialogService=e,this.localization=t,this.changeDetector=n,this.focusService=r,this.viewState=i,this.isOpen=!1}Jt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt,deps:[{token:te.DialogService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:f},{token:g}],target:n.ɵɵFactoryTarget.Injectable}),Jt.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:te.DialogService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:f},{type:g}]}});c(rn,tn=P.LocalizationService);var tn,nn=rn;function rn(e,t,n){return tn.call(this,e,t,n)||this}nn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn,deps:[{token:P.L10N_PREFIX},{token:r.MessageService,optional:!0},{token:P.RTL,optional:!0}],target:n.ɵɵFactoryTarget.Injectable}),nn.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:void 0,decorators:[{type:h.Inject,args:[P.L10N_PREFIX]}]},{type:r.MessageService,decorators:[{type:h.Optional}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[P.RTL]}]}]}});var on={id:"id",start:"start",startTimezone:"startTimezone",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions"},v=(an.prototype.save=function(){if(l.hasObservers(this.elementReady)){if(l.hasObservers(this.createElement))this.createElement.emit();else if(h.isDevMode())throw new Error("No active Scheduler view to export.")}else if(h.isDevMode())throw new Error("Creating PDF requires including the PDFModule and adding the <kendo-scheduler-pdf> component.")},an);function an(){this.createElement=new h.EventEmitter,this.exportClick=new h.EventEmitter,this.done=new h.EventEmitter,this.elementReady=new h.EventEmitter}v.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v,deps:[],target:n.ɵɵFactoryTarget.Injectable}),v.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v,decorators:[{type:h.Injectable}]});c(cn,sn=ve);var sn,ln=cn;function cn(){return null!==sn&&sn.apply(this,arguments)||this}Object.defineProperty(dn.prototype,"display",{get:function(){return this.loading||this.force?"block":"none"},enumerable:!1,configurable:!0}),dn.prototype.toggle=function(e){this.force=e,this.renderer.setStyle(this.element.nativeElement,"display",this.display)};ve=dn;function dn(e,t){this.element=e,this.renderer=t,this.hostClasses=!0}ve.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ve,deps:[{token:n.ElementRef},{token:n.Renderer2}],target:n.ɵɵFactoryTarget.Component}),ve.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ve,selector:"[kendoSchedulerLoading]",inputs:{loading:"loading"},host:{properties:{"class.k-loading-mask":"this.hostClasses","style.display":"this.display"}},ngImport:n,template:'\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n ',isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ve,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerLoading]",template:'\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n '}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-loading-mask"]}],loading:[{type:h.Input}],display:[{type:h.HostBinding,args:["style.display"]}]}});Object.defineProperty(pn.prototype,"visible",{get:function(){return"none"!==this.element.nativeElement.style.display},enumerable:!1,configurable:!0}),Object.defineProperty(pn.prototype,"enabled",{get:function(){return!this.element.nativeElement.disabled},enumerable:!1,configurable:!0}),pn.prototype.ngOnDestroy=function(){this.focusService.unregister(this)},pn.prototype.toggle=function(e){e!==this.active&&(this.renderer.setAttribute(this.element.nativeElement,"tabIndex",e?"0":"-1"),this.active=e)},pn.prototype.canFocus=function(){return this.visible&&this.enabled},pn.prototype.focus=function(){this.element.nativeElement.focus()},pn.prototype.toggleFocus=function(e){var t="k-selected",n=this.element.nativeElement;e?this.renderer.addClass(n,t):this.renderer.removeClass(n,t),n.matches(".k-scheduler-agendaview .k-scheduler-content .k-selected")&&(null!=(t=n.closest(".k-scheduler-agendaview").querySelector('[aria-selected="true"]'))&&t.removeAttribute("aria-selected"),this.renderer.setAttribute(n,"aria-selected",e.toString()))};var un=pn;function pn(e,t,n){this.element=e,this.renderer=t,this.focusService=n,this.focusIndex=0,this.toggle(!1),this.focusService.register(this)}un.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:un,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:f}],target:n.ɵɵFactoryTarget.Directive}),un.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:un,selector:"[kendoSchedulerFocusIndex]",inputs:{focusIndex:["kendoSchedulerFocusIndex","focusIndex"]},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:un,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerFocusIndex]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:f}]},propDecorators:{focusIndex:[{type:h.Input,args:["kendoSchedulerFocusIndex"]}]}});function hn(e){return String(e).trim().split(" ")}function mn(e,t,n){for(;e&&e!==n&&!t(e);)e=e.parentNode;if(e!==n)return e}function gn(e){var t=e.wheelDeltaY;return e.wheelDelta&&(void 0===t||t)?e.wheelDelta:e.detail&&e.axis===e.VERTICAL_AXIS?10*-e.detail:0}var yn=function(e,t){var n=hn(t);return Boolean(hn(e.className).find(function(e){return 0<=n.indexOf(e)}))};function fn(e,t){t="vertical"===t?"Height":"Width";return e["scroll"+t]>e["client"+t]&&0<l.getScrollbarWidth()}function vn(e,t,n,r){return e<n&&r<t||n<=e&&e<r||n<t&&t<=r&&e<t}function kn(e,t,n){return t.getTime()<=e.getTime()&&e.getTime()<=n.getTime()}function Dn(e){var t=e.start,e=e.end,t=t.stripTime(),n=e.stripTime();return n.getTime()!==e.getTime()||t.getTime()===n.getTime()?n.addDays(1):n}function Tn(e){var t=new Date(1980,0,1,0,0,0);return e&&t.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),t}function In(e,t){return(e=new Date(e.getTime())).setUTCDate(e.getUTCDate()+t),e}function bn(e,t){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))}function wn(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()))}function Sn(e){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()))}function xn(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}function Cn(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes())}function En(e,t){var n,r;return t.end<=e.end?(r=e.end,n=t.start):(n=e.start,r=t.end),{start:n,end:r}}function Rn(e,t){for(var n=t.data,r=0;r<n.length;r++)if(x(n[r],t.valueField)===e)return r;return-1}function On(e,t){e=Rn(e,t);return 0<=e?t.data[e]:{}}function Fn(e,t){var n,e=x(e,t.field);return Array.isArray(e)?(n=t,e.map(function(e){return On(e,n)})):On(e,t)}function Hn(e,t){for(var n=t.taskResources,r=t.hasGroups,i=t.spans,t=t.allResources,o=void 0===t?[]:t,a=[],s=0;s<n.length;s++){var l=n[s];if(l.data){for(var c=o.indexOf(l),d=x(e,l.field),u=(Array.isArray(d)||(d=[d]),[]),p=0;p<d.length;p++){var h=Rn(d[p],l);if(h<0){if(r)continue;return[{leafIdx:0,resources:[]}]}var m=l.data[h];if(0!==s||!r&&0!==p){if(r){var g=a;1<d.length&&(g=function(e){for(var t=[],n=0;n<e.length;n++){var r=Object.assign({},e[n]);r.resources=r.resources.slice(0),t.push(r)}return t}(a),u.push.apply(u,g));for(var y=0;y<g.length;y++)g[y].leafIdx+=h*i[s],g[y].resources[c]=m}else if(0<p)for(var f=0;f<a.length;f++)a[f].resources[c].push(m)}else{var v=[];v[c]=l.multiple&&!r?[m]:m,a.push({leafIdx:r?h*i[s]:0,color:x(m,l.colorField),resources:v})}}u.length&&(a=u)}else a=[{leafIdx:0,resources:[]}]}for(var k=e,D=a,T=o,I=0;I<D.length;I++)for(var b=D[I],w=0;w<T.length;w++){var S=T[w];!b.resources[w]&&S.data&&(b.resources[w]=Fn(k,S))}return a}function Vn(e){return Array.isArray(e)&&1===e.length&&void 0===e[0]}function Wn(e,n){return e.length===n.length&&(!(!Vn(e)||!Vn(n))||e.every(function(t){return n.some(function(e){return e.value===t.value})}))}function Mn(e,t){return e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()&&e.isAllDay===t.isAllDay&&Wn(e.resources,t.resources)}function Pn(e,t){if(void 0!==t.rowIndex)return t.rowIndex;for(var n=0;n<e.length;n++)if(!e[n])return n;return e.length}function zn(e){return Boolean(e.event&&e.event.recurrenceRule)}function An(e){return e.event&&y(e.event.recurrenceId)&&!e.event.recurrenceRule}function Nn(e,t,n){return e.left<=t&&t<=e.left+e.width&&e.top<=n&&n<=e.top+e.height}function Bn(e,t){return e.left<=t&&t<=e.left+e.width}function jn(e){return e+"px"}function Ln(e){var t;return e?(e=e.getBoundingClientRect(),t=document.documentElement,{top:e.top+(window.pageYOffset||t.scrollTop)-(t.clientTop||0),left:e.left+(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0),width:e.width,height:e.height}):null}function qn(e){return"KENDO-RESIZE-SENSOR"===e.nodeName||yn(e,"k-loading-mask")}function Zn(e,t){for(var n in t)t.hasOwnProperty(n)&&(e.style[n]=jn(t[n]))}function Gn(e){var t=[];if("string"==typeof e)t.push(e);else if(Array.isArray(e))t.push.apply(t,e);else if("object"==typeof e)for(var n in e)e.hasOwnProperty(n)&&e[n]&&t.push(n);return t}function _n(e,t,n,r){var i={skeleton:"yMMMMEEEEdhm"},o=b.isEqualDate(e,t)?"t":i;return n?""+L.formatDate(e,{skeleton:"yMMMMEEEEd"},r):L.formatDate(e,i,r)+"–"+L.formatDate(t,o,r)}function Un(e,t,n){e=e.get(t);return e&&e.value||n}function Yn(){return!1}Object.defineProperty($n.prototype,"calendar",{set:function(e){e&&e.focus()},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"todayText",{get:function(){return this.localization.get("today")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"calendarTodayText",{get:function(){return this.localization.get("calendarToday")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"nextText",{get:function(){return this.localization.get("nextTitle")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"previousText",{get:function(){return this.localization.get("previousTitle")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"ctx",{get:function(){return this.toolbarService.context},enumerable:!1,configurable:!0}),$n.prototype.onBlur=function(){this.closePopup()},$n.prototype.ngOnInit=function(){var t=this;this.subs.add(this.ctx.dateRange.subscribe(function(e){t.dateRangeText.short=null==e?void 0:e.shortText,t.dateRangeText.long=null==e?void 0:e.text,t.setDateRangeText()})),this.subs.add(this.viewContext.resize.subscribe(function(){t.setDateRangeText()}))},$n.prototype.ngOnDestroy=function(){this.subs.unsubscribe(),this.closePopup()},$n.prototype.toggleSelectedDate=function(e,t){return this.popupRef?this.closePopup():(e={anchor:e,content:t},this.localization.rtl&&(e.popupClass="k-rtl"),this.popupRef=this.popupService.open(e)),!1},$n.prototype.selectDate=function(e){this.closePopup(),this.toolbarService.navigate({type:"select-date",date:e})},$n.prototype.prevClick=function(){return this.toolbarService.navigate({type:"prev"}),!1},$n.prototype.nextClick=function(){return this.toolbarService.navigate({type:"next"}),!1},$n.prototype.todayClick=function(){return this.toolbarService.navigate({type:"today"}),!1},$n.prototype.closePopup=function(){this.popupRef&&(this.popupRef.close(),this.popupRef=null)},$n.prototype.setDateRangeText=function(){var e=window.matchMedia("(min-width: 1024px)").matches;this.dateRangeText.current=e?this.dateRangeText.long:this.dateRangeText.short,this.cd.detectChanges()};var Kn=$n;function $n(e,t,n,r,i){this.popupService=e,this.toolbarService=t,this.localization=n,this.cd=r,this.viewContext=i,this.inlineDisplayStyle="flex",this.inlineFlexFlowStyle="inherit",this.inlineGapStyle="inherit",this.dateRangeText={short:"",long:"",current:""},this.subs=this.localization.changes.subscribe(function(){r.markForCheck()})}Kn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kn,deps:[{token:ne.PopupService},{token:ct},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m}],target:n.ɵɵFactoryTarget.Component}),Kn.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Kn,selector:"[kendoSchedulerToolbarNavigation]",inputs:{min:"min",max:"max"},host:{properties:{"style.display":"this.inlineDisplayStyle","style.flex-flow":"this.inlineFlexFlowStyle","style.gap":"this.inlineGapStyle"}},providers:[t.PopupService],viewQueries:[{propertyName:"calendar",first:!0,predicate:["calendar"],descendants:!0}],ngImport:n,template:'\n <span class="k-scheduler-navigation k-button-group">\n <button kendoButton\n (click)="todayClick()"\n class="k-nav-today"\n [attr.title]="todayText"\n >\n <span class="k-button-text">{{todayText}}</span>\n </button>\n <button kendoButton\n (click)="prevClick()"\n class="k-nav-prev"\n icon="arrow-60-left"\n [attr.title]="previousText"\n [attr.aria-label]="previousText"\n >\n </button>\n <button kendoButton\n (click)="nextClick()"\n type="button"\n class="k-nav-next"\n icon="arrow-60-right"\n [attr.title]="nextText"\n [attr.aria-label]="nextText"\n >\n </button>\n </span>\n\n <button\n #anchor\n kendoButton\n icon="calendar"\n fillMode="flat"\n (mousedown)="toggleSelectedDate({ nativeElement: anchor }, template)"\n role="button"\n class="k-nav-current"\n tabindex="-1"\n [attr.aria-live]="\'polite\'"\n >\n <span>{{ dateRangeText?.current }}</span>\n </button>\n\n <ng-template #template>\n <kendo-calendar #calendar (blur)="onBlur()" (valueChange)="selectDate($event)" [value]="ctx.selectedDate | async" [min]="min" [max]="max">\n <kendo-calendar-messages [today]="calendarTodayText">\n </kendo-calendar-messages>\n </kendo-calendar>\n </ng-template>\n ',isInline:!0,components:[{type:i.CalendarComponent,selector:"kendo-calendar",inputs:["id","focusedDate","min","max","rangeValidation","selection","value","disabled","tabindex","tabIndex","disabledDates","navigation","activeView","bottomView","topView","type","animateNavigation","weekNumber","cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate"],outputs:["activeViewChange","navigate","activeViewDateChange","blur","focus","valueChange"],exportAs:["kendo-calendar"]},{type:i.CalendarCustomMessagesComponent,selector:"kendo-calendar-messages"}],directives:[{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}],pipes:{async:s.AsyncPipe},changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kn,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerToolbarNavigation]",changeDetection:h.ChangeDetectionStrategy.OnPush,providers:[t.PopupService],template:'\n <span class="k-scheduler-navigation k-button-group">\n <button kendoButton\n (click)="todayClick()"\n class="k-nav-today"\n [attr.title]="todayText"\n >\n <span class="k-button-text">{{todayText}}</span>\n </button>\n <button kendoButton\n (click)="prevClick()"\n class="k-nav-prev"\n icon="arrow-60-left"\n [attr.title]="previousText"\n [attr.aria-label]="previousText"\n >\n </button>\n <button kendoButton\n (click)="nextClick()"\n type="button"\n class="k-nav-next"\n icon="arrow-60-right"\n [attr.title]="nextText"\n [attr.aria-label]="nextText"\n >\n </button>\n </span>\n\n <button\n #anchor\n kendoButton\n icon="calendar"\n fillMode="flat"\n (mousedown)="toggleSelectedDate({ nativeElement: anchor }, template)"\n role="button"\n class="k-nav-current"\n tabindex="-1"\n [attr.aria-live]="\'polite\'"\n >\n <span>{{ dateRangeText?.current }}</span>\n </button>\n\n <ng-template #template>\n <kendo-calendar #calendar (blur)="onBlur()" (valueChange)="selectDate($event)" [value]="ctx.selectedDate | async" [min]="min" [max]="max">\n <kendo-calendar-messages [today]="calendarTodayText">\n </kendo-calendar-messages>\n </kendo-calendar>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:ne.PopupService},{type:ct},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m}]},propDecorators:{calendar:[{type:h.ViewChild,args:["calendar",{static:!1}]}],inlineDisplayStyle:[{type:h.HostBinding,args:["style.display"]}],inlineFlexFlowStyle:[{type:h.HostBinding,args:["style.flex-flow"]}],inlineGapStyle:[{type:h.HostBinding,args:["style.gap"]}],min:[{type:h.Input}],max:[{type:h.Input}]}});Object.defineProperty(Qn.prototype,"ctx",{get:function(){return this.service.context},enumerable:!1,configurable:!0}),Object.defineProperty(Qn.prototype,"selectView",{get:function(){return this.localization.get("selectView")},enumerable:!1,configurable:!0}),Qn.prototype.ngOnDestroy=function(){this.detachDomEvents&&this.detachDomEvents()},Qn.prototype.select=function(e){this.ctx.selectedView!==e&&this.service.navigate({type:"view-change",view:e})},Qn.prototype.onChange=function(t){var e=this.ctx.views.find(function(e){return e.name===t.target.value});e&&this.select(e)},Qn.prototype.isSelected=function(e){return this.ctx.selectedView===e};var Xn=Qn;function Qn(e,t){this.service=e,this.localization=t,this.hostClasses=!0}Xn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xn,deps:[{token:ct},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Xn.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Xn,selector:"[kendoSchedulerToolbarViewSelector]",host:{properties:{"class.k-scheduler-views-wrapper":"this.hostClasses"}},ngImport:n,template:'\n <select\n *ngIf="ctx.views?.length > 1"\n (change)="onChange($event)"\n class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"\n [attr.aria-label]="selectView"\n >\n <option *ngFor="let view of ctx.views"\n [selected]="isSelected(view) === true"\n [value]="view.name"\n >\n {{ view.title }}\n </option>\n </select>\n <span class="k-scheduler-views k-button-group">\n <button kendoButton\n type="button"\n *ngFor="let view of ctx.views"\n [selected]="isSelected(view)"\n [attr.aria-pressed]="isSelected(view)"\n (click)="select(view)"\n >\n <span class="k-button-text">\n {{ view.title }}\n </span>\n </button>\n </span>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xn,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerToolbarViewSelector]",template:'\n <select\n *ngIf="ctx.views?.length > 1"\n (change)="onChange($event)"\n class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"\n [attr.aria-label]="selectView"\n >\n <option *ngFor="let view of ctx.views"\n [selected]="isSelected(view) === true"\n [value]="view.name"\n >\n {{ view.title }}\n </option>\n </select>\n <span class="k-scheduler-views k-button-group">\n <button kendoButton\n type="button"\n *ngFor="let view of ctx.views"\n [selected]="isSelected(view)"\n [attr.aria-pressed]="isSelected(view)"\n (click)="select(view)"\n >\n <span class="k-button-text">\n {{ view.title }}\n </span>\n </button>\n </span>\n '}]}],ctorParameters:function(){return[{type:ct},{type:r.LocalizationService}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-views-wrapper"]}]}});Jn.prototype.ngOnInit=function(){var t=this;this.subs.add(this.selectedDate.subscribe(function(e){return t.templateContext.selectedDate=e})),this.subs.add(this.dateRange.subscribe(function(e){return t.templateContext.dateRange=e}))},Jn.prototype.ngOnChanges=function(){this.service.context={dateRange:this.dateRange,selectedDate:this.selectedDate,views:this.views,selectedView:this.selectedView},Object.assign(this.templateContext,{views:this.views,selectedView:this.selectedView})},Jn.prototype.ngOnDestroy=function(){this.subs.unsubscribe()};var k=Jn;function Jn(e){var t=this;this.service=e,this.hostClasses=!0,this.navigate=new h.EventEmitter,this.templateContext={},this.subs=new p.Subscription,this.subs.add(e.action.subscribe(function(e){return t.navigate.next(e)}))}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:ct}],target:n.ɵɵFactoryTarget.Component}),k.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"kendo-scheduler-toolbar",inputs:{selectedView:"selectedView",views:"views",dateRange:"dateRange",selectedDate:"selectedDate",template:"template",min:"min",max:"max"},outputs:{navigate:"navigate"},host:{properties:{"class.k-scheduler-toolbar":"this.hostClasses","class.k-toolbar":"this.hostClasses"}},usesOnChanges:!0,ngImport:n,template:'\n <ng-template\n *ngIf="template; else defaultTemplate"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext"\n >\n </ng-template>\n\n <ng-template #defaultTemplate>\n <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>\n <span class="k-spacer"></span>\n <div kendoSchedulerToolbarViewSelector></div>\n </ng-template>\n ',isInline:!0,components:[{type:Kn,selector:"[kendoSchedulerToolbarNavigation]",inputs:["min","max"]},{type:Xn,selector:"[kendoSchedulerToolbarViewSelector]"}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-toolbar",template:'\n <ng-template\n *ngIf="template; else defaultTemplate"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext"\n >\n </ng-template>\n\n <ng-template #defaultTemplate>\n <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>\n <span class="k-spacer"></span>\n <div kendoSchedulerToolbarViewSelector></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:ct}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-toolbar"]},{type:h.HostBinding,args:["class.k-toolbar"]}],selectedView:[{type:h.Input}],views:[{type:h.Input}],dateRange:[{type:h.Input}],selectedDate:[{type:h.Input}],template:[{type:h.Input}],navigate:[{type:h.Output}],min:[{type:h.Input}],max:[{type:h.Input}]}});er.prototype.writeValue=function(e){this.resourceValue=e},er.prototype.getResourceStyle=function(e){return{"background-color":x(e,this.resource.colorField),"margin-right":y(x(e,this.resource.valueField))?"8px":"4px"}},er.prototype.onResourceValueChange=function(e){this.resourceValue=e,this.emitChange(this.resourceValue)},er.prototype.registerOnChange=function(e){this.onChangeCallback=e},er.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},er.prototype.emitChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)};var D=er;function er(){this.valueChange=new h.EventEmitter,this.getField=x,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){}}D.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,deps:[],target:n.ɵɵFactoryTarget.Directive}),D.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:D,inputs:{resource:"resource"},outputs:{valueChange:"valueChange"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,decorators:[{type:h.Directive}],propDecorators:{resource:[{type:h.Input}],valueChange:[{type:h.Output}]}});var tr,T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return nr})},nr=(c(rr,tr=D),rr.prototype.getTagStyle=function(e){return{"background-color":e[this.resource.colorField]}},rr.prototype.focus=function(){this.resourceMultiSelect.focus()},rr);function rr(){return null!==tr&&tr.apply(this,arguments)||this}nr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nr,deps:null,target:n.ɵɵFactoryTarget.Component}),nr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:nr,selector:"kendo-multiple-resource-editor",providers:[T],viewQueries:[{propertyName:"resourceMultiSelect",first:!0,predicate:["resourceMultiSelect"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:n,template:"\n <kendo-multiselect\n #resourceMultiSelect\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n <ng-template kendoMultiSelectTagTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getTagStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-multiselect>\n ",isInline:!0,components:[{type:re.MultiSelectComponent,selector:"kendo-multiselect",inputs:["focusableId","autoClose","loading","data","value","valueField","textField","tabindex","tabIndex","size","rounded","fillMode","placeholder","disabled","itemDisabled","checkboxes","readonly","filterable","virtual","popupSettings","listHeight","valuePrimitive","clearButton","tagMapper","allowCustom","valueNormalizer"],outputs:["filterChange","valueChange","open","opened","close","closed","focus","blur","removeTag"],exportAs:["kendoMultiSelect"]}],directives:[{type:re.ItemTemplateDirective,selector:"[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:re.TagTemplateDirective,selector:"[kendoMultiSelectTagTemplate],[kendoMultiSelectTreeTagTemplate]"}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nr,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-multiple-resource-editor",template:"\n <kendo-multiselect\n #resourceMultiSelect\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n <ng-template kendoMultiSelectTagTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getTagStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-multiselect>\n "}]}],propDecorators:{resourceMultiSelect:[{type:h.ViewChild,args:["resourceMultiSelect",{static:!0}]}]}});var ir,or,T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return ar})},ar=(c(sr,ir=D),sr.prototype.focus=function(){this.resourceDropDown.focus()},sr);function sr(){return null!==ir&&ir.apply(this,arguments)||this}function lr(e,t){return e.altKey===((t&or.AltKey)===or.AltKey)&&e.ctrlKey===((t&or.CtrlKey)===or.CtrlKey)&&e.shiftKey===((t&or.ShiftKey)===or.ShiftKey)&&e.metaKey===((t&or.MetaKey)===or.MetaKey)}function cr(e){return lr(e,or.None)}ar.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ar,deps:null,target:n.ɵɵFactoryTarget.Component}),ar.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ar,selector:"kendo-single-resource-editor",providers:[T],viewQueries:[{propertyName:"resourceDropDown",first:!0,predicate:["resourceDropDown"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:n,template:"\n <kendo-dropdownlist\n #resourceDropDown\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-dropdownlist>\n ",isInline:!0,components:[{type:re.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]}],directives:[{type:re.ItemTemplateDirective,selector:"[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ar,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-single-resource-editor",template:"\n <kendo-dropdownlist\n #resourceDropDown\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-dropdownlist>\n "}]}],propDecorators:{resourceDropDown:[{type:h.ViewChild,args:["resourceDropDown",{static:!0}]}]}}),(D=or=or||{})[D.None=0]="None",D[D.AltKey=1]="AltKey",D[D.CtrlKey=2]="CtrlKey",D[D.ShiftKey=4]="ShiftKey",D[D.MetaKey=8]="MetaKey";var T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return dr})},dr=(ur.prototype.writeValue=function(e){e instanceof Date&&(this.date=e)},ur.prototype.onValueChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)},ur.prototype.focus=function(){this.datePicker.focus()},ur.prototype.registerOnChange=function(e){this.onChangeCallback=e},ur.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},ur);function ur(){this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){}}dr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:dr,deps:[],target:n.ɵɵFactoryTarget.Component}),dr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:dr,selector:"kendo-scheduler-datetime-picker",inputs:{isAllDay:"isAllDay"},outputs:{valueChange:"valueChange"},providers:[T],viewQueries:[{propertyName:"datePicker",first:!0,predicate:["datepicker"],descendants:!0,static:!0}],ngImport:n,template:"\n <kendo-datepicker\n #datepicker\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-datepicker>\n <kendo-timepicker *ngIf='!isAllDay'\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-timepicker>\n ",isInline:!0,styles:["\n kendo-datepicker,\n kendo-timepicker {\n width: 170px;\n }\n "],components:[{type:i.DatePickerComponent,selector:"kendo-datepicker",inputs:["cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate","activeView","bottomView","topView","calendarType","animateCalendarNavigation","disabled","readonly","readOnlyInput","popupSettings","navigation","min","max","incompleteDateValidation","focusedDate","value","format","twoDigitYearMax","formatPlaceholder","placeholder","tabindex","tabIndex","disabledDates","title","rangeValidation","disabledDatesValidation","weekNumber","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-datepicker"]},{type:i.TimePickerComponent,selector:"kendo-timepicker",inputs:["disabled","readonly","readOnlyInput","format","formatPlaceholder","placeholder","min","max","incompleteDateValidation","cancelButton","nowButton","steps","popupSettings","tabindex","tabIndex","title","rangeValidation","value","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-timepicker"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:dr,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-scheduler-datetime-picker",template:"\n <kendo-datepicker\n #datepicker\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-datepicker>\n <kendo-timepicker *ngIf='!isAllDay'\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-timepicker>\n ",styles:["\n kendo-datepicker,\n kendo-timepicker {\n width: 170px;\n }\n "]}]}],propDecorators:{datePicker:[{type:h.ViewChild,args:["datepicker",{static:!0}]}],isAllDay:[{type:h.Input}],valueChange:[{type:h.Output}]}});var D={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return pr})},pr=(hr.prototype.onTimeZoneChange=function(e){this.tz=e,this.onChangeCallback(this.tz),this.valueChange.emit(e)},hr.prototype.onTimeZoneFilterChange=function(t){this.tzSource=this.tzNames.filter(function(e){return-1!==e.toLowerCase().indexOf(t.toLowerCase())})},hr.prototype.writeValue=function(e){"string"==typeof e&&0<=this.tzNames.indexOf(e)&&(this.tz=e)},hr.prototype.focus=function(){this.tzComboBox.focus()},hr.prototype.registerOnChange=function(e){this.onChangeCallback=e},hr.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},hr);function hr(){this.width=260,this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){},this.tzNames=b.timezoneNames(),this.tzSource=this.tzNames.slice()}pr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:pr,deps:[],target:n.ɵɵFactoryTarget.Component}),pr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:pr,selector:"kendo-timezone-editor",inputs:{width:"width"},outputs:{valueChange:"valueChange"},providers:[D],viewQueries:[{propertyName:"tzComboBox",first:!0,predicate:["tzcombobox"],descendants:!0,static:!0}],ngImport:n,template:'\n <kendo-combobox\n #tzcombobox\n [style.width.px]="width"\n [allowCustom]="false"\n [data]="tzSource"\n [filterable]="true"\n [suggest]="true"\n [value]="tz"\n (filterChange)="onTimeZoneFilterChange($event)"\n (valueChange)="onTimeZoneChange($event)">\n </kendo-combobox>\n ',isInline:!0,components:[{type:re.ComboBoxComponent,selector:"kendo-combobox",inputs:["focusableId","allowCustom","data","value","textField","valueField","valuePrimitive","valueNormalizer","placeholder","popupSettings","listHeight","iconClass","loading","suggest","clearButton","disabled","itemDisabled","readonly","tabindex","tabIndex","filterable","virtual","size","rounded","fillMode"],outputs:["valueChange","selectionChange","filterChange","open","opened","close","closed","focus","blur"],exportAs:["kendoComboBox"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:pr,decorators:[{type:h.Component,args:[{providers:[D],selector:"kendo-timezone-editor",template:'\n <kendo-combobox\n #tzcombobox\n [style.width.px]="width"\n [allowCustom]="false"\n [data]="tzSource"\n [filterable]="true"\n [suggest]="true"\n [value]="tz"\n (filterChange)="onTimeZoneFilterChange($event)"\n (valueChange)="onTimeZoneChange($event)">\n </kendo-combobox>\n '}]}],ctorParameters:function(){return[]},propDecorators:{tzComboBox:[{type:h.ViewChild,args:["tzcombobox",{static:!0}]}],width:[{type:h.Input}],valueChange:[{type:h.Output}]}});var mr=0,gr=["first","second","third","fourth","last"],yr=["never","daily","weekly","monthly","yearly"],fr=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],vr=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],kr=[{day:0,offset:0},{day:6,offset:0}],Dr=(Tr.prototype.init=function(e,t,n,r){void 0===e&&(e=""),this.start=t,this.timezone=n,this.weekStart=r,this.rrule=_.parseRule({recurrenceRule:e,weekStart:r})},Tr.prototype.getUniqueId=function(){return mr++},Object.defineProperty(Tr.prototype,"frequencies",{get:function(){var t=this;return yr.map(function(e){return{value:e,text:t.localization.get("frequencies"+Ft(e))}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"frequency",{get:function(){var e;return!y(this.rrule)||null==(e=this.rrule.freq)||e.trim&&0===e.trim().length?"never":this.rrule.freq},enumerable:!1,configurable:!0}),Tr.prototype.setFrequency=function(e){this.rrule={},this.rrule.freq=e,this.rrule.interval=1,"weekly"===e&&(this.rrule.byWeekDay=[{day:this.start.getDay(),offset:0}]),"monthly"!==e&&"yearly"!==e||(this.rrule.byMonthDay=[this.start.getDate()]),"yearly"===e&&(this.rrule.byMonth=[this.start.getMonth()+1]),this.frequencyChange.emit(),this.onChange()},Object.defineProperty(Tr.prototype,"interval",{set:function(e){this.rrule.interval=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"count",{set:function(e){this.rrule.count=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"until",{get:function(){if(y(this.rrule.until))return b.toLocalDate(this.rrule.until)},set:function(e){this.rrule.until=b.ZonedDate.fromLocalDate(e,this.timezone),this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.setWeekDays=function(e){this.rrule.byWeekDay=e,this.onChange()},Object.defineProperty(Tr.prototype,"monthDays",{set:function(e){this.rrule.byMonthDay=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"positions",{set:function(e){this.rrule.bySetPosition=e,this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.setMonths=function(e){this.rrule.byMonth=e,this.onChange()},Object.defineProperty(Tr.prototype,"months",{get:function(){return this.intl.dateFormatNames({type:"months",nameType:"wide"}).map(function(e,t){return{text:e,value:t+1}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"weekDays",{get:function(){var e=this.weekStart,t=this.intl.dateFormatNames({type:"days",nameType:"abbreviated"}).map(function(e,t){return{text:e,value:t}});return t.slice(e).concat(t.slice(0,e))},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"extendedWeekDays",{get:function(){var e=this.weekStart,t=this.intl.dateFormatNames({type:"days",nameType:"wide"}).map(function(e,t){return{text:e,value:t}}),t=t.slice(e).concat(t.slice(0,e));return[{text:this.localization.get("weekdaysDay"),value:"day"},{text:this.localization.get("weekdaysWeekday"),value:"weekday"},{text:this.localization.get("weekdaysWeekendday"),value:"weekend"}].concat(t)},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"offsetPositions",{get:function(){var n=this,r=[1,2,3,4,-1];return gr.map(function(e,t){return{text:n.localization.get("offsetPositions"+Ft(e)),value:r[t]}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"endRule",{get:function(){return y(this.rrule.count)?"count":y(this.rrule.until)?"until":"never"},set:function(e){"count"===e?this.rrule.until=null:"until"===e?this.rrule.count=null:(this.rrule.count=null,this.rrule.until=null),this.endRuleChange.emit(e),this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"repeatOnRule",{get:function(){return y(this.rrule.byWeekDay)?"weekday":y(this.rrule.byMonthDay)?"monthday":null},set:function(e){"monthday"===e?(this.rrule.byWeekDay=null,this.rrule.bySetPosition=null):this.rrule.byMonthDay=null,this.repeatOnRuleChange.emit(e),this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.onChange=function(){"never"===this.frequency?this.change.emit(null):this.change.emit(_.serializeRule(this.rrule,this.timezone))},Tr);function Tr(e,t){this.intl=e,this.localization=t,this.change=new h.EventEmitter,this.endRuleChange=new h.EventEmitter,this.frequencyChange=new h.EventEmitter,this.repeatOnRuleChange=new h.EventEmitter}Dr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr,deps:[{token:o.IntlService},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Injectable}),Dr.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService}]}});c(br,Ir=P.LocalizationService),br.prototype.get=function(e){return this.schedulerLocalization?this.schedulerLocalization.get("recurrenceEditor"+Ft(e)):Ir.prototype.get.call(this,e)};var Ir,T=br;function br(e,t,n,r){e=Ir.call(this,e,t,n)||this;return e.schedulerLocalization=r,e}T.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,deps:[{token:P.L10N_PREFIX},{token:r.MessageService,optional:!0},{token:P.RTL,optional:!0},{token:nn,optional:!0}],target:n.ɵɵFactoryTarget.Injectable}),T.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:void 0,decorators:[{type:h.Inject,args:[P.L10N_PREFIX]}]},{type:r.MessageService,decorators:[{type:h.Optional}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[P.RTL]}]},{type:nn,decorators:[{type:h.Optional},{type:h.Inject,args:[nn]}]}]}});wr.prototype.ngOnInit=function(){this.frequencies=this.recurrence.frequencies},Object.defineProperty(wr.prototype,"selected",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),wr.prototype.onClick=function(e){e.value!==this.selected&&this.recurrence.setFrequency(e.value)},wr.prototype.textFor=function(e){return this.localization.get(e)},wr.prototype.onFrequencyClick=function(){var e=this.weekDayButtons.toArray().find(function(e){return e.selected});e&&e.focus()};D=wr;function wr(e,t){this.recurrence=e,this.localization=t}D.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),D.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:D,selector:"kendo-recurrence-frequency-editor",viewQueries:[{propertyName:"weekDayButtons",predicate:q.Button,descendants:!0}],ngImport:n,template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="onFrequencyClick()">{{ textFor(\'repeat\') }}</label>\n\n <div class=\'k-form-field-wrap\'>\n <kendo-buttongroup [selection]="\'single\'">\n <button *ngFor=\'let freq of frequencies\' kendoButton\n [style.width.px]="100"\n [togglable]="true"\n [selected]="freq.value === selected"\n (click)="onClick(freq)"\n >{{ freq.text }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n ',isInline:!0,components:[{type:a.ButtonGroupComponent,selector:"kendo-buttongroup",inputs:["disabled","selection","width","tabIndex","navigable"],outputs:["navigate"],exportAs:["kendoButtonGroup"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-frequency-editor",template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="onFrequencyClick()">{{ textFor(\'repeat\') }}</label>\n\n <div class=\'k-form-field-wrap\'>\n <kendo-buttongroup [selection]="\'single\'">\n <button *ngFor=\'let freq of frequencies\' kendoButton\n [style.width.px]="100"\n [togglable]="true"\n [selected]="freq.value === selected"\n (click)="onClick(freq)"\n >{{ freq.text }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{weekDayButtons:[{type:h.ViewChildren,args:[q.Button]}]}});Object.defineProperty(xr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Object.defineProperty(xr.prototype,"currentFreq",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),xr.prototype.onIntervalChange=function(e){y(e)&&(this.recurrence.interval=e)},xr.prototype.onIntervalBlur=function(){y(this.intervalValue)||(this.recurrence.interval=this.intervalValue=1)},xr.prototype.textForRepeatEvery=function(){switch(this.currentFreq){case"daily":return this.textFor("dailyRepeatEvery");case"weekly":return this.textFor("weeklyRepeatEvery");case"monthly":return this.textFor("monthlyRepeatEvery");case"yearly":return this.textFor("yearlyRepeatEvery")}},xr.prototype.textForFrequency=function(){switch(this.currentFreq){case"daily":return this.textFor("dailyInterval");case"weekly":return this.textFor("weeklyInterval");case"monthly":return this.textFor("monthlyInterval");case"yearly":return this.textFor("yearlyInterval")}},xr.prototype.textFor=function(e){return this.localization.get(e)};var Sr=xr;function xr(e,t){this.recurrence=e,this.localization=t,this.numericOptions={min:1,format:"#",autoCorrect:!0,step:1,spinners:!0},this.intervalValue=this.recurrence.rrule.interval||1}Sr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Sr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Sr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Sr,selector:"kendo-recurrence-interval-editor",inputs:{userNumericOptions:"userNumericOptions"},ngImport:n,template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="intervalNumeric.focus()">{{ textForRepeatEvery() }}</label>\n\n <div class="k-form-field-wrap">\n <kendo-numerictextbox\n #intervalNumeric\n [style.width.px]="70"\n [min]="numericOptions.min"\n [max]="numericOptions.max"\n [decimals]="0"\n [format]="numericOptions.format"\n [autoCorrect]="numericOptions.autoCorrect"\n [readonly]="numericOptions.readonly"\n [selectOnFocus]="numericOptions.selectOnFocus"\n [spinners]="numericOptions.spinners"\n [step]="numericOptions.step"\n [title]="numericOptions.title"\n [(value)]="intervalValue"\n (blur)="onIntervalBlur()"\n (valueChange)="onIntervalChange($event)">\n </kendo-numerictextbox>\n\n <span>{{ textForFrequency() }}</span>\n </div>\n </div>\n ',isInline:!0,components:[{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Sr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-interval-editor",template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="intervalNumeric.focus()">{{ textForRepeatEvery() }}</label>\n\n <div class="k-form-field-wrap">\n <kendo-numerictextbox\n #intervalNumeric\n [style.width.px]="70"\n [min]="numericOptions.min"\n [max]="numericOptions.max"\n [decimals]="0"\n [format]="numericOptions.format"\n [autoCorrect]="numericOptions.autoCorrect"\n [readonly]="numericOptions.readonly"\n [selectOnFocus]="numericOptions.selectOnFocus"\n [spinners]="numericOptions.spinners"\n [step]="numericOptions.step"\n [title]="numericOptions.title"\n [(value)]="intervalValue"\n (blur)="onIntervalBlur()"\n (valueChange)="onIntervalChange($event)">\n </kendo-numerictextbox>\n\n <span>{{ textForFrequency() }}</span>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}]}});Er.prototype.setSelectedDays=function(){for(var t=this,e=0;e<7;e++)this.selected[e]=!1;y(this.rrule.byWeekDay)&&this.rrule.byWeekDay.forEach(function(e){t.selected[e.day]=!0})},Er.prototype.onSelectedChange=function(e,t){this.selected[t]=e,this.recurrence.setWeekDays(this.serializeToWeekDayRuleArray(this.selected))},Er.prototype.isSelected=function(e){return this.selected[e.value]},Er.prototype.serializeToWeekDayRuleArray=function(e){var n=[];return e.forEach(function(e,t){e&&n.push({day:t,offset:0})}),0<n.length?n:null},Object.defineProperty(Er.prototype,"rrule",{get:function(){return this.recurrence.rrule},enumerable:!1,configurable:!0}),Er.prototype.capitalize=Ft,Er.prototype.textFor=function(e){return this.localization.get(e)},Er.prototype.onWeeklyRepeatOnClick=function(){var e=this.weekDayButtons.toArray().find(function(e){return e.selected});e&&e.focus()};var Cr=Er;function Er(e,t){this.recurrence=e,this.localization=t,this.selected=[],this.weekDays=this.recurrence.weekDays,this.setSelectedDays()}Cr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Cr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Cr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Cr,selector:"kendo-recurrence-weekday-rule-editor",viewQueries:[{propertyName:"weekDayButtons",predicate:q.Button,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onWeeklyRepeatOnClick()\">{{ textFor('weeklyRepeatOn') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-buttongroup [selection]=\"'multiple'\">\n <button *ngFor='let day of weekDays' kendoButton\n [style.width.px]=\"75\"\n [toggleable]=\"true\"\n [selected]=\"isSelected(day)\"\n (selectedChange)=\"onSelectedChange($event, day.value)\"\n >{{ capitalize(day.text) }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n ",isInline:!0,components:[{type:a.ButtonGroupComponent,selector:"kendo-buttongroup",inputs:["disabled","selection","width","tabIndex","navigable"],outputs:["navigate"],exportAs:["kendoButtonGroup"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Cr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-weekday-rule-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onWeeklyRepeatOnClick()\">{{ textFor('weeklyRepeatOn') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-buttongroup [selection]=\"'multiple'\">\n <button *ngFor='let day of weekDays' kendoButton\n [style.width.px]=\"75\"\n [toggleable]=\"true\"\n [selected]=\"isSelected(day)\"\n (selectedChange)=\"onSelectedChange($event, day.value)\"\n >{{ capitalize(day.text) }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{weekDayButtons:[{type:h.ViewChildren,args:[q.Button]}]}});Object.defineProperty(Or.prototype,"repeatOnRule",{set:function(e){e=e.split("-");this._repeatOnRule=e[0],this._uniqueId=e[1]},enumerable:!1,configurable:!0}),Or.prototype.ngOnInit=function(){this.renderer.setAttribute(this.elem,"id","k-repeaton-"+this._repeatOnRule+"-"+this._uniqueId),this.renderer.setAttribute(this.elem,"name","day-"+this._uniqueId)},Or.prototype.ngAfterContentChecked=function(){this.setCheckedState()},Or.prototype.ngOnDestroy=function(){this.destroyChange&&this.destroyChange()},Or.prototype.onChange=function(){this.elem.checked&&(this.recurrence.repeatOnRule=this._repeatOnRule,this.changeDetector.markForCheck())},Or.prototype.setCheckedState=function(){var e=this._repeatOnRule===this.recurrence.repeatOnRule;this.renderer.setProperty(this.elem,"checked",e)},Object.defineProperty(Or.prototype,"elem",{get:function(){return this.el.nativeElement},enumerable:!1,configurable:!0});var Rr=Or;function Or(e,t,n,r){this.el=e,this.renderer=t,this.recurrence=n,this.changeDetector=r,this.type="radio",this.radioClass=!0,this.radioSizeClass=!0,this.destroyChange=this.renderer.listen(this.elem,"change",this.onChange.bind(this))}Rr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Rr,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:Dr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),Rr.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Rr,selector:"[kendoRecurrenceRepeatOnRadioButton]",inputs:{repeatOnRule:["kendoRecurrenceRepeatOnRadioButton","repeatOnRule"]},host:{properties:{"attr.type":"this.type","class.k-radio":"this.radioClass","class.k-radio-md":"this.radioSizeClass"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Rr,decorators:[{type:h.Directive,args:[{selector:"[kendoRecurrenceRepeatOnRadioButton]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:Dr},{type:n.ChangeDetectorRef}]},propDecorators:{type:[{type:h.HostBinding,args:["attr.type"]}],radioClass:[{type:h.HostBinding,args:["class.k-radio"]}],radioSizeClass:[{type:h.HostBinding,args:["class.k-radio-md"]}],repeatOnRule:[{type:h.Input,args:["kendoRecurrenceRepeatOnRadioButton"]}]}});Object.defineProperty(Hr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Hr.prototype.setInitialValues=function(){this.extendedWeekDays=this.recurrence.extendedWeekDays,this.offsetPositions=this.recurrence.offsetPositions,this.currentOffset=this.defaultOffset,this.currentWeekDay=this.defaultWeekDay,"yearly"===this.currentFreq&&(this.months=this.recurrence.months,this.currentMonthMonthDay=this.currentMonthWeekDay=this.recurrence.rrule.byMonth[0])},Hr.prototype.subscribeEventHandlers=function(){this.subs=this.recurrence.repeatOnRuleChange.subscribe(this.onRepeatOnRuleChange.bind(this)),this.subs.add(this.recurrence.frequencyChange.subscribe(this.onFrequencyChange.bind(this)))},Hr.prototype.onRepeatOnRuleChange=function(e){"monthday"===e?(this.recurrence.rrule.byMonthDay=[this.monthDay],"yearly"===this.currentFreq&&(this.recurrence.rrule.byMonth=[this.currentMonthMonthDay])):"weekday"===e&&("string"==typeof this.weekDay?(this.recurrence.rrule.bySetPosition=[this.offset],this.recurrence.rrule.byWeekDay=this.weekDayRuleFromString(this.weekDay)):this.recurrence.rrule.byWeekDay=[{day:this.weekDay,offset:this.offset}],"yearly"===this.currentFreq)&&(this.recurrence.rrule.byMonth=[this.currentMonthWeekDay])},Hr.prototype.onFrequencyChange=function(){this.setInitialValues()},Hr.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe()},Object.defineProperty(Hr.prototype,"monthDay",{get:function(){var e=this.recurrence.rrule;return y(e.byMonthDay)&&0<e.byMonthDay.length?e.byMonthDay[0]:y(this.currentMonthDay)?this.currentMonthDay:this.recurrence.start.getDate()},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"weekDay",{get:function(){var e=this.recurrence.rrule;if(y(e.byWeekDay))switch(e.byWeekDay.length){case 7:return"day";case 5:return"weekday";case 2:return"weekend";case 1:return e.byWeekDay[0].day}else if(y(this.currentWeekDay))return this.currentWeekDay;return this.defaultWeekDay},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"offset",{get:function(){var e=this.recurrence.rrule;if(y(e.byWeekDay))switch(e.byWeekDay.length){case 7:case 5:case 2:return e.bySetPosition[0];case 1:return e.byWeekDay[0].offset}else if(y(this.currentOffset))return this.currentOffset;return this.defaultOffset},enumerable:!1,configurable:!0}),Hr.prototype.onMonthChange=function(e,t){"monthday"===t?this.currentMonthMonthDay=e:this.currentMonthWeekDay=e,this.recurrence.setMonths([e])},Hr.prototype.onMonthDayChange=function(e){this.currentMonthDay=e,this.recurrence.monthDays=[e]},Hr.prototype.onOffsetPositionChange=function(e){var t=this.recurrence.rrule;if(y(t.byWeekDay))switch(t.byWeekDay.length){case 7:case 5:case 2:this.recurrence.positions=[e];break;case 1:t.byWeekDay[0].offset=e,this.recurrence.onChange()}this.currentOffset=e},Hr.prototype.onWeekDayChange=function(e){var t;"string"==typeof e?(t=this.weekDayRuleFromString(e),this.recurrence.positions=[this.offset]):t=[{day:e,offset:this.offset}],this.currentWeekDay=e,this.recurrence.setWeekDays(t)},Hr.prototype.isDisabled=function(e){return this.recurrence.repeatOnRule!==e},Object.defineProperty(Hr.prototype,"currentFreq",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"defaultOffset",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"defaultWeekDay",{get:function(){return this.recurrence.start.getDay()},enumerable:!1,configurable:!0}),Hr.prototype.weekDayRuleFromString=function(e){switch(e){case"day":return fr;case"weekday":return vr;case"weekend":return kr}return null},Hr.prototype.textForRepeatOn=function(){switch(this.currentFreq){case"monthly":return this.textFor("monthlyRepeatOn");case"yearly":return this.textFor("yearlyRepeatOn")}},Hr.prototype.textFor=function(e){return this.localization.get(e)},Hr.prototype.onRepeatOnLabelClick=function(){var e=this.repeatOnRadioButtons.toArray().find(function(e){return e.elem.checked});e&&e.elem.focus()};var Fr=Hr;function Hr(e,t){this.recurrence=e,this.localization=t,this.uniqueId=this.recurrence.getUniqueId(),this.numericOptions={min:1,max:31,format:"#",autoCorrect:!0,step:1,spinners:!0},this.setInitialValues(),this.subscribeEventHandlers()}Fr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Fr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Fr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Fr,selector:"kendo-recurrence-monthly-yearly-editor",inputs:{userNumericOptions:"userNumericOptions"},viewQueries:[{propertyName:"repeatOnRadioButtons",predicate:Rr,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onRepeatOnLabelClick()\">{{ textForRepeatOn() }}</label>\n\n <ul class='k-form-field-wrap k-reset' [style.width.px]='650'>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='monthday-{{uniqueId}}' />\n\n <label class='k-radio-label' for='k-repeaton-monthday-{{uniqueId}}'>\n <ng-template [ngIf]=\"currentFreq === 'monthly'\">\n {{ textFor('monthlyDay') }}\n </ng-template>\n </label>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthMonthDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'monthday')\"\n [disabled]=\"isDisabled('monthday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [min]=\"numericOptions.min\"\n [max]=\"numericOptions.max\"\n [decimals]=\"0\"\n [format]=\"numericOptions.format\"\n [autoCorrect]=\"numericOptions.autoCorrect\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [value]='monthDay'\n (valueChange)='onMonthDayChange($event)'\n [disabled]=\"isDisabled('monthday')\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-numerictextbox>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='weekday-{{uniqueId}}' />\n <label class='k-radio-label' for='k-repeaton-weekday-{{uniqueId}}'></label>\n\n <kendo-dropdownlist\n [data]='offsetPositions'\n textField='text'\n valueField='value'\n [value]='offset'\n [valuePrimitive]='true'\n (valueChange)='onOffsetPositionChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <kendo-dropdownlist\n [data]=\"extendedWeekDays\"\n textField='text'\n valueField='value'\n [value]='weekDay'\n [valuePrimitive]='true'\n (valueChange)='onWeekDayChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <span>{{ textFor('yearlyOf') }}</span>\n\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthWeekDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'weekday')\"\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n </li>\n </ul>\n </div>\n ",isInline:!0,components:[{type:re.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]},{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}],directives:[{type:Rr,selector:"[kendoRecurrenceRepeatOnRadioButton]",inputs:["kendoRecurrenceRepeatOnRadioButton"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Fr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-monthly-yearly-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onRepeatOnLabelClick()\">{{ textForRepeatOn() }}</label>\n\n <ul class='k-form-field-wrap k-reset' [style.width.px]='650'>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='monthday-{{uniqueId}}' />\n\n <label class='k-radio-label' for='k-repeaton-monthday-{{uniqueId}}'>\n <ng-template [ngIf]=\"currentFreq === 'monthly'\">\n {{ textFor('monthlyDay') }}\n </ng-template>\n </label>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthMonthDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'monthday')\"\n [disabled]=\"isDisabled('monthday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [min]=\"numericOptions.min\"\n [max]=\"numericOptions.max\"\n [decimals]=\"0\"\n [format]=\"numericOptions.format\"\n [autoCorrect]=\"numericOptions.autoCorrect\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [value]='monthDay'\n (valueChange)='onMonthDayChange($event)'\n [disabled]=\"isDisabled('monthday')\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-numerictextbox>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='weekday-{{uniqueId}}' />\n <label class='k-radio-label' for='k-repeaton-weekday-{{uniqueId}}'></label>\n\n <kendo-dropdownlist\n [data]='offsetPositions'\n textField='text'\n valueField='value'\n [value]='offset'\n [valuePrimitive]='true'\n (valueChange)='onOffsetPositionChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <kendo-dropdownlist\n [data]=\"extendedWeekDays\"\n textField='text'\n valueField='value'\n [value]='weekDay'\n [valuePrimitive]='true'\n (valueChange)='onWeekDayChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <span>{{ textFor('yearlyOf') }}</span>\n\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthWeekDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'weekday')\"\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n </li>\n </ul>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}],repeatOnRadioButtons:[{type:h.ViewChildren,args:[Rr]}]}});Vr.prototype.ngOnInit=function(){this.endRule=this.endRuleId.split("-")[2],this.renderer.setAttribute(this.elem,"id",this.endRuleId),this.renderer.setAttribute(this.elem,"name","end-"+this.endRuleId.split("-").pop())},Vr.prototype.ngAfterContentChecked=function(){this.setCheckedState()},Vr.prototype.ngOnDestroy=function(){this.destroyChange&&this.destroyChange()},Vr.prototype.onChange=function(){this.elem.checked&&(this.recurrence.endRule=this.endRule,this.changeDetector.markForCheck())},Vr.prototype.setCheckedState=function(){var e=this.endRule===this.recurrence.endRule;this.renderer.setProperty(this.elem,"checked",e)},Object.defineProperty(Vr.prototype,"elem",{get:function(){return this.el.nativeElement},enumerable:!1,configurable:!0});re=Vr;function Vr(e,t,n,r){this.el=e,this.renderer=t,this.recurrence=n,this.changeDetector=r,this.type="radio",this.radioClass=!0,this.radioSizeClass=!0,this.destroyChange=this.renderer.listen(this.elem,"change",this.onChange.bind(this))}re.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:re,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:Dr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),re.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:re,selector:"[kendoRecurrenceEndRuleRadioButton]",inputs:{endRuleId:["kendoRecurrenceEndRuleRadioButton","endRuleId"]},host:{properties:{"attr.type":"this.type","class.k-radio":"this.radioClass","class.k-radio-md":"this.radioSizeClass"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:re,decorators:[{type:h.Directive,args:[{selector:"[kendoRecurrenceEndRuleRadioButton]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:Dr},{type:n.ChangeDetectorRef}]},propDecorators:{type:[{type:h.HostBinding,args:["attr.type"]}],radioClass:[{type:h.HostBinding,args:["class.k-radio"]}],radioSizeClass:[{type:h.HostBinding,args:["class.k-radio-md"]}],endRuleId:[{type:h.Input,args:["kendoRecurrenceEndRuleRadioButton"]}]}});Object.defineProperty(Mr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"userDatePickerOptions",{set:function(e){this.datePickerOptions=Object.assign(Object.assign({},this.datePickerOptions),e)},enumerable:!1,configurable:!0}),Mr.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()},Mr.prototype.setEndRule=function(e){"count"===e?this.recurrence.rrule.count=this.countValue:"until"===e&&(this.recurrence.until=this.untilValue)},Object.defineProperty(Mr.prototype,"rrule",{get:function(){return this.recurrence.rrule},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"isCountDisabled",{get:function(){return"count"!==this.recurrence.endRule},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"isUntilDisabled",{get:function(){return"until"!==this.recurrence.endRule},enumerable:!1,configurable:!0}),Mr.prototype.onCountChange=function(e){y(e)&&(this.recurrence.count=e)},Mr.prototype.onCountBlur=function(){y(this.countValue)||(this.recurrence.count=this.countValue=1)},Mr.prototype.onUntilChange=function(e){y(e)&&(this.recurrence.until=this.createUntil(e))},Mr.prototype.onUntilBlur=function(){y(this.untilValue)||(this.recurrence.until=this.untilValue=this.createUntil(this.recurrence.start))},Mr.prototype.textFor=function(e){return this.localization.get(e)},Mr.prototype.onEndLabelClick=function(){var e=this.endRuleRadioButtons.toArray().find(function(e){return e.elem.checked});e&&e.elem.focus()},Mr.prototype.setInitialValues=function(){this.countValue=this.rrule.count||1;var e=this.recurrence.until,t=this.recurrence.start;this.untilValue=y(e)?e:this.createUntil(t)},Mr.prototype.subscribeChanges=function(){var t=this;this.subscriptions=this.recurrence.endRuleChange.subscribe(function(e){t.setEndRule(e)}),this.subscriptions.add(this.recurrence.frequencyChange.subscribe(function(){t.setInitialValues()}))},Mr.prototype.createUntil=function(e){e=wn(e);return e.setUTCDate(e.getUTCDate()+1),b.ZonedDate.fromUTCDate(e,this.recurrence.timezone).toLocalDate()};var Wr=Mr;function Mr(e,t){this.recurrence=e,this.localization=t,this.numericOptions={min:1,format:"#",autoCorrect:!0,step:1,spinners:!0},this.datePickerOptions={activeView:"month",bottomView:"month",topView:"century",disabledDatesValidation:!0,navigation:!0,format:"d"},this.uniqueId=this.recurrence.getUniqueId(),this.setInitialValues(),this.subscribeChanges()}Wr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Wr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Wr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Wr,selector:"kendo-recurrence-end-rule-editor",inputs:{userNumericOptions:"userNumericOptions",userDatePickerOptions:"userDatePickerOptions"},viewQueries:[{propertyName:"endRuleRadioButtons",predicate:re,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onEndLabelClick()\">{{ textFor('endLabel') }}</label>\n\n <ul class='k-form-field-wrap k-reset'>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-never-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-never-{{uniqueId}}'>{{ textFor('endNever') }}</label>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-count-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-count-{{uniqueId}}'>{{ textFor('endAfter') }}</label>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [autoCorrect]='numericOptions.autoCorrect'\n [decimals]='0'\n [disabled]='isCountDisabled'\n [format]=\"numericOptions.format\"\n [min]='numericOptions.min'\n [max]=\"numericOptions.max\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [(value)]='countValue'\n (blur)=\"onCountBlur()\"\n (valueChange)='onCountChange($event)'>\n </kendo-numerictextbox>\n <span>{{ textFor('endOccurrence') }}</span>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-until-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-until-{{uniqueId}}'>{{ textFor('endOn') }}</label>\n\n <kendo-datepicker\n [style.width.px]='150'\n [disabled]='isUntilDisabled'\n [activeView]=\"datePickerOptions.activeView\"\n [bottomView]=\"datePickerOptions.bottomView\"\n [disabledDatesValidation]=\"datePickerOptions.disabledDatesValidation\"\n [focusedDate]=\"datePickerOptions.focusedDate\"\n [format]=\"datePickerOptions.format\"\n [formatPlaceholder]=\"datePickerOptions.formatPlaceHolder\"\n [max]=\"datePickerOptions.max\"\n [min]=\"datePickerOptions.min\"\n [navigation]=\"datePickerOptions.navigation\"\n [placeholder]=\"datePickerOptions.placeholder\"\n [readOnlyInput]=\"datePickerOptions.readOnlyInput\"\n [readonly]=\"datePickerOptions.readonly\"\n [title]=\"datePickerOptions.title\"\n [topView]=\"datePickerOptions.topView\"\n [weekNumber]=\"datePickerOptions.weekNumber\"\n [disabledDates]=\"datePickerOptions.disabledDates\"\n [popupSettings]=\"datePickerOptions.popupSettings\"\n [(value)]='untilValue'\n (blur)=\"onUntilBlur()\"\n (valueChange)='onUntilChange($event)'>\n </kendo-datepicker>\n </li>\n </ul>\n </div>\n ",isInline:!0,components:[{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]},{type:i.DatePickerComponent,selector:"kendo-datepicker",inputs:["cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate","activeView","bottomView","topView","calendarType","animateCalendarNavigation","disabled","readonly","readOnlyInput","popupSettings","navigation","min","max","incompleteDateValidation","focusedDate","value","format","twoDigitYearMax","formatPlaceholder","placeholder","tabindex","tabIndex","disabledDates","title","rangeValidation","disabledDatesValidation","weekNumber","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-datepicker"]}],directives:[{type:re,selector:"[kendoRecurrenceEndRuleRadioButton]",inputs:["kendoRecurrenceEndRuleRadioButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Wr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-end-rule-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onEndLabelClick()\">{{ textFor('endLabel') }}</label>\n\n <ul class='k-form-field-wrap k-reset'>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-never-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-never-{{uniqueId}}'>{{ textFor('endNever') }}</label>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-count-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-count-{{uniqueId}}'>{{ textFor('endAfter') }}</label>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [autoCorrect]='numericOptions.autoCorrect'\n [decimals]='0'\n [disabled]='isCountDisabled'\n [format]=\"numericOptions.format\"\n [min]='numericOptions.min'\n [max]=\"numericOptions.max\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [(value)]='countValue'\n (blur)=\"onCountBlur()\"\n (valueChange)='onCountChange($event)'>\n </kendo-numerictextbox>\n <span>{{ textFor('endOccurrence') }}</span>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-until-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-until-{{uniqueId}}'>{{ textFor('endOn') }}</label>\n\n <kendo-datepicker\n [style.width.px]='150'\n [disabled]='isUntilDisabled'\n [activeView]=\"datePickerOptions.activeView\"\n [bottomView]=\"datePickerOptions.bottomView\"\n [disabledDatesValidation]=\"datePickerOptions.disabledDatesValidation\"\n [focusedDate]=\"datePickerOptions.focusedDate\"\n [format]=\"datePickerOptions.format\"\n [formatPlaceholder]=\"datePickerOptions.formatPlaceHolder\"\n [max]=\"datePickerOptions.max\"\n [min]=\"datePickerOptions.min\"\n [navigation]=\"datePickerOptions.navigation\"\n [placeholder]=\"datePickerOptions.placeholder\"\n [readOnlyInput]=\"datePickerOptions.readOnlyInput\"\n [readonly]=\"datePickerOptions.readonly\"\n [title]=\"datePickerOptions.title\"\n [topView]=\"datePickerOptions.topView\"\n [weekNumber]=\"datePickerOptions.weekNumber\"\n [disabledDates]=\"datePickerOptions.disabledDates\"\n [popupSettings]=\"datePickerOptions.popupSettings\"\n [(value)]='untilValue'\n (blur)=\"onUntilBlur()\"\n (valueChange)='onUntilChange($event)'>\n </kendo-datepicker>\n </li>\n </ul>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}],userDatePickerOptions:[{type:h.Input}],endRuleRadioButtons:[{type:h.ViewChildren,args:[re]}]}});c(zr,Pr=P.ComponentMessages);var Pr,i=zr;function zr(){return null!==Pr&&Pr.apply(this,arguments)||this}i.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,deps:null,target:n.ɵɵFactoryTarget.Directive}),i.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:i,inputs:{repeat:"repeat",dailyInterval:"dailyInterval",dailyRepeatEvery:"dailyRepeatEvery",weeklyInterval:"weeklyInterval",weeklyRepeatEvery:"weeklyRepeatEvery",weeklyRepeatOn:"weeklyRepeatOn",monthlyDay:"monthlyDay",monthlyInterval:"monthlyInterval",monthlyRepeatEvery:"monthlyRepeatEvery",monthlyRepeatOn:"monthlyRepeatOn",yearlyOf:"yearlyOf",yearlyRepeatEvery:"yearlyRepeatEvery",yearlyRepeatOn:"yearlyRepeatOn",yearlyInterval:"yearlyInterval",frequenciesDaily:"frequenciesDaily",frequenciesMonthly:"frequenciesMonthly",frequenciesNever:"frequenciesNever",frequenciesWeekly:"frequenciesWeekly",frequenciesYearly:"frequenciesYearly",offsetPositionsFirst:"offsetPositionsFirst",offsetPositionsSecond:"offsetPositionsSecond",offsetPositionsThird:"offsetPositionsThird",offsetPositionsFourth:"offsetPositionsFourth",offsetPositionsLast:"offsetPositionsLast",weekdaysDay:"weekdaysDay",weekdaysWeekday:"weekdaysWeekday",weekdaysWeekendday:"weekdaysWeekendday",endAfter:"endAfter",endOccurrence:"endOccurrence",endLabel:"endLabel",endNever:"endNever",endOn:"endOn"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,decorators:[{type:h.Directive}],propDecorators:{repeat:[{type:h.Input}],dailyInterval:[{type:h.Input}],dailyRepeatEvery:[{type:h.Input}],weeklyInterval:[{type:h.Input}],weeklyRepeatEvery:[{type:h.Input}],weeklyRepeatOn:[{type:h.Input}],monthlyDay:[{type:h.Input}],monthlyInterval:[{type:h.Input}],monthlyRepeatEvery:[{type:h.Input}],monthlyRepeatOn:[{type:h.Input}],yearlyOf:[{type:h.Input}],yearlyRepeatEvery:[{type:h.Input}],yearlyRepeatOn:[{type:h.Input}],yearlyInterval:[{type:h.Input}],frequenciesDaily:[{type:h.Input}],frequenciesMonthly:[{type:h.Input}],frequenciesNever:[{type:h.Input}],frequenciesWeekly:[{type:h.Input}],frequenciesYearly:[{type:h.Input}],offsetPositionsFirst:[{type:h.Input}],offsetPositionsSecond:[{type:h.Input}],offsetPositionsThird:[{type:h.Input}],offsetPositionsFourth:[{type:h.Input}],offsetPositionsLast:[{type:h.Input}],weekdaysDay:[{type:h.Input}],weekdaysWeekday:[{type:h.Input}],weekdaysWeekendday:[{type:h.Input}],endAfter:[{type:h.Input}],endOccurrence:[{type:h.Input}],endLabel:[{type:h.Input}],endNever:[{type:h.Input}],endOn:[{type:h.Input}]}});c(Br,Ar=i);var Ar,Nr=Br;function Br(e){var t=Ar.call(this)||this;return t.service=e,t}Nr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Nr,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),Nr.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Nr,selector:"[kendoRecurrenceEditorLocalizedMessages]",providers:[{provide:i,useExisting:h.forwardRef(function(){return Nr})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Nr,decorators:[{type:h.Directive,args:[{providers:[{provide:i,useExisting:h.forwardRef(function(){return Nr})}],selector:"[kendoRecurrenceEditorLocalizedMessages]"}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});var I={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return jr})},jr=(Object.defineProperty(Lr.prototype,"start",{get:function(){return y(this._start)?this._start:b.getDate(new Date)},set:function(e){this._start=e},enumerable:!1,configurable:!0}),Object.defineProperty(Lr.prototype,"currentFreq",{get:function(){return this.recurrenceService.frequency},enumerable:!1,configurable:!0}),Lr.prototype.ngOnInit=function(){this.recurrenceService.init("",this.start,this.timezone,this.weekStart)},Lr.prototype.ngOnChanges=function(e){l.isChanged("start",e)&&(this.recurrenceService.start=this.start)},Lr.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()},Lr.prototype.writeValue=function(e){this.recurrenceService.init("string"==typeof e?e:"",this.start,this.timezone,this.weekStart)},Lr.prototype.registerOnChange=function(e){this.onChangeCallback=e},Lr.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},Lr.prototype.emitChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)},Lr);function Lr(e,t){var n=this;this.recurrenceService=e,this.intl=t,this.cssClass=!0,this.timezone="Etc/UTC",this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){},this.weekStart=this.intl.firstDay(),this.subscriptions=this.recurrenceService.change.subscribe(function(e){n.emitChange(e)})}jr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:jr,deps:[{token:Dr},{token:o.IntlService}],target:n.ɵɵFactoryTarget.Component}),jr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:jr,selector:"kendo-recurrence-editor",inputs:{start:"start",timezone:"timezone",weekStart:"weekStart",repeatEveryOptions:"repeatEveryOptions",endAfterOptions:"endAfterOptions",repeatOnOptions:"repeatOnOptions",endOnOptions:"endOnOptions"},outputs:{valueChange:"valueChange"},host:{properties:{"class.k-recurrence-editor":"this.cssClass"}},providers:[T,{provide:P.LocalizationService,useExisting:T},{provide:P.L10N_PREFIX,useValue:"kendo.recurrenceeditor"},I,Dr],exportAs:["kendoRecurrenceEditor"],usesOnChanges:!0,ngImport:n,template:"\n <ng-container kendoRecurrenceEditorLocalizedMessages\n i18n-repeat=\"kendo.recurrenceeditor.repeat|The text similar to 'Repeat' displayed in the recurrence editor.\"\n repeat='Repeat'\n\n i18n-dailyInterval=\"kendo.recurrenceeditor.dailyInterval|The text similar to 'day(s)' displayed in the recurrence editor.\"\n dailyInterval='day(s)'\n\n i18n-dailyRepeatEvery=\"kendo.recurrenceeditor.dailyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n dailyRepeatEvery='Repeat every'\n\n i18n-weeklyInterval=\"kendo.recurrenceeditor.weeklyInterval|The text similar to 'week(s)' displayed in the recurrence editor.\"\n weeklyInterval='week(s)'\n\n i18n-weeklyRepeatEvery=\"kendo.recurrenceeditor.weeklyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n weeklyRepeatEvery='Repeat every'\n\n i18n-weeklyRepeatOn=\"kendo.recurrenceeditor.weeklyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n weeklyRepeatOn='Repeat on'\n\n i18n-monthlyDay=\"kendo.recurrenceeditor.monthlyDay|The text similar to 'Day' displayed in the recurrence editor.\"\n monthlyDay='Day'\n\n i18n-monthlyInterval=\"kendo.recurrenceeditor.monthlyInterval|The text similar to 'month(s)' displayed in the recurrence editor.\"\n monthlyInterval='month(s)'\n\n i18n-monthlyRepeatEvery=\"kendo.recurrenceeditor.monthlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n monthlyRepeatEvery='Repeat every'\n\n i18n-monthlyRepeatOn=\"kendo.recurrenceeditor.monthlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n monthlyRepeatOn='Repeat on'\n\n i18n-yearlyOf=\"kendo.recurrenceeditor.yearlyOf|The text similar to 'of' displayed in the recurrence editor.\"\n yearlyOf='of'\n\n i18n-yearlyRepeatEvery=\"kendo.recurrenceeditor.yearlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n yearlyRepeatEvery='Repeat every'\n\n i18n-yearlyRepeatOn=\"kendo.recurrenceeditor.yearlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n yearlyRepeatOn='Repeat on'\n\n i18n-yearlyInterval=\"kendo.recurrenceeditor.yearlyInterval|The text similar to 'year(s)' displayed in the recurrence editor.\"\n yearlyInterval='year(s)'\n\n i18n-frequenciesDaily=\"kendo.recurrenceeditor.frequenciesDaily|The text similar to 'Daily' displayed in the recurrence editor.\"\n frequenciesDaily='Daily'\n\n i18n-frequenciesMonthly=\"kendo.recurrenceeditor.frequenciesMonthly|The text similar to 'Monthly' displayed in the recurrence editor.\"\n frequenciesMonthly='Monthly'\n\n i18n-frequenciesNever=\"kendo.recurrenceeditor.frequenciesNever|The text similar to 'Never' displayed in the recurrence editor.\"\n frequenciesNever='Never'\n\n i18n-frequenciesWeekly=\"kendo.recurrenceeditor.frequenciesWeekly|The text similar to 'Weekly' displayed in the recurrence editor.\"\n frequenciesWeekly='Weekly'\n\n i18n-frequenciesYearly=\"kendo.recurrenceeditor.frequenciesYearly|The text similar to 'Yearly' displayed in the recurrence editor.\"\n frequenciesYearly='Yearly'\n\n i18n-fffsetPositionsFirst=\"kendo.recurrenceeditor.fffsetPositionsFirst|The text similar to 'First' displayed in the recurrence editor.\"\n offsetPositionsFirst='First'\n\n i18n-offsetPositionsSecond=\"kendo.recurrenceeditor.offsetPositionsSecond|The text similar to 'Second' displayed in the recurrence editor.\"\n offsetPositionsSecond='Second'\n\n i18n-offsetPositionsThird=\"kendo.recurrenceeditor.offsetPositionsThird|The text similar to 'Third' displayed in the recurrence editor.\"\n offsetPositionsThird='Third'\n\n i18n-offsetPositionsFourth=\"kendo.recurrenceeditor.offsetPositionsFourth|The text similar to 'Fourth' displayed in the recurrence editor.\"\n offsetPositionsFourth='Fourth'\n\n i18n-offsetPositionsLast=\"kendo.recurrenceeditor.offsetPositionsLast|The text similar to 'Last' displayed in the recurrence editor.\"\n offsetPositionsLast='Last'\n\n i18n-weekdaysDay=\"kendo.recurrenceeditor.weekdaysDay|The text similar to 'Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysDay='Day'\n\n i18n-weekdaysWeekday=\"kendo.recurrenceeditor.weekdaysWeekday|The text similar to 'Weekday' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekday='Weekday'\n\n i18n-weekdaysWeekendday=\"kendo.recurrenceeditor.weekdaysWeekendday|The text similar to 'Weekend Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekendday='Weekend Day'\n\n i18n-endAfter=\"kendo.recurrenceeditor.endAfter|The text similar to 'After' displayed in the recurrence editor.\"\n endAfter='After'\n\n i18n-endOccurrence=\"kendo.recurrenceeditor.endOccurrence|The text similar to 'occurrence(s)' displayed in the recurrence editor.\"\n endOccurrence='occurrence(s)'\n\n i18n-endLabel=\"kendo.recurrenceeditor.endLabel|The text similar to 'End' displayed in the recurrence editor.\"\n endLabel='End'\n\n i18n-endNever=\"kendo.recurrenceeditor.endNever|The text similar to 'Never' displayed in the recurrence editor.\"\n endNever='Never'\n\n i18n-endOn=\"kendo.recurrenceeditor.endOn|The text similar to 'On' displayed in the recurrence editor.\"\n endOn='On'\n >\n </ng-container>\n\n <kendo-recurrence-frequency-editor>\n </kendo-recurrence-frequency-editor>\n\n <kendo-recurrence-interval-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"repeatEveryOptions\">\n </kendo-recurrence-interval-editor>\n\n <kendo-recurrence-weekday-rule-editor *ngIf=\"currentFreq === 'weekly'\">\n </kendo-recurrence-weekday-rule-editor>\n\n <kendo-recurrence-monthly-yearly-editor\n *ngIf=\"currentFreq === 'monthly' || currentFreq === 'yearly'\"\n [userNumericOptions]=\"repeatOnOptions\">\n </kendo-recurrence-monthly-yearly-editor>\n\n <kendo-recurrence-end-rule-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"endAfterOptions\"\n [userDatePickerOptions]=\"endOnOptions\">\n </kendo-recurrence-end-rule-editor>\n ",isInline:!0,components:[{type:D,selector:"kendo-recurrence-frequency-editor"},{type:Sr,selector:"kendo-recurrence-interval-editor",inputs:["userNumericOptions"]},{type:Cr,selector:"kendo-recurrence-weekday-rule-editor"},{type:Fr,selector:"kendo-recurrence-monthly-yearly-editor",inputs:["userNumericOptions"]},{type:Wr,selector:"kendo-recurrence-end-rule-editor",inputs:["userNumericOptions","userDatePickerOptions"]}],directives:[{type:Nr,selector:"[kendoRecurrenceEditorLocalizedMessages]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:jr,decorators:[{type:h.Component,args:[{exportAs:"kendoRecurrenceEditor",providers:[T,{provide:P.LocalizationService,useExisting:T},{provide:P.L10N_PREFIX,useValue:"kendo.recurrenceeditor"},I,Dr],selector:"kendo-recurrence-editor",template:"\n <ng-container kendoRecurrenceEditorLocalizedMessages\n i18n-repeat=\"kendo.recurrenceeditor.repeat|The text similar to 'Repeat' displayed in the recurrence editor.\"\n repeat='Repeat'\n\n i18n-dailyInterval=\"kendo.recurrenceeditor.dailyInterval|The text similar to 'day(s)' displayed in the recurrence editor.\"\n dailyInterval='day(s)'\n\n i18n-dailyRepeatEvery=\"kendo.recurrenceeditor.dailyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n dailyRepeatEvery='Repeat every'\n\n i18n-weeklyInterval=\"kendo.recurrenceeditor.weeklyInterval|The text similar to 'week(s)' displayed in the recurrence editor.\"\n weeklyInterval='week(s)'\n\n i18n-weeklyRepeatEvery=\"kendo.recurrenceeditor.weeklyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n weeklyRepeatEvery='Repeat every'\n\n i18n-weeklyRepeatOn=\"kendo.recurrenceeditor.weeklyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n weeklyRepeatOn='Repeat on'\n\n i18n-monthlyDay=\"kendo.recurrenceeditor.monthlyDay|The text similar to 'Day' displayed in the recurrence editor.\"\n monthlyDay='Day'\n\n i18n-monthlyInterval=\"kendo.recurrenceeditor.monthlyInterval|The text similar to 'month(s)' displayed in the recurrence editor.\"\n monthlyInterval='month(s)'\n\n i18n-monthlyRepeatEvery=\"kendo.recurrenceeditor.monthlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n monthlyRepeatEvery='Repeat every'\n\n i18n-monthlyRepeatOn=\"kendo.recurrenceeditor.monthlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n monthlyRepeatOn='Repeat on'\n\n i18n-yearlyOf=\"kendo.recurrenceeditor.yearlyOf|The text similar to 'of' displayed in the recurrence editor.\"\n yearlyOf='of'\n\n i18n-yearlyRepeatEvery=\"kendo.recurrenceeditor.yearlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n yearlyRepeatEvery='Repeat every'\n\n i18n-yearlyRepeatOn=\"kendo.recurrenceeditor.yearlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n yearlyRepeatOn='Repeat on'\n\n i18n-yearlyInterval=\"kendo.recurrenceeditor.yearlyInterval|The text similar to 'year(s)' displayed in the recurrence editor.\"\n yearlyInterval='year(s)'\n\n i18n-frequenciesDaily=\"kendo.recurrenceeditor.frequenciesDaily|The text similar to 'Daily' displayed in the recurrence editor.\"\n frequenciesDaily='Daily'\n\n i18n-frequenciesMonthly=\"kendo.recurrenceeditor.frequenciesMonthly|The text similar to 'Monthly' displayed in the recurrence editor.\"\n frequenciesMonthly='Monthly'\n\n i18n-frequenciesNever=\"kendo.recurrenceeditor.frequenciesNever|The text similar to 'Never' displayed in the recurrence editor.\"\n frequenciesNever='Never'\n\n i18n-frequenciesWeekly=\"kendo.recurrenceeditor.frequenciesWeekly|The text similar to 'Weekly' displayed in the recurrence editor.\"\n frequenciesWeekly='Weekly'\n\n i18n-frequenciesYearly=\"kendo.recurrenceeditor.frequenciesYearly|The text similar to 'Yearly' displayed in the recurrence editor.\"\n frequenciesYearly='Yearly'\n\n i18n-fffsetPositionsFirst=\"kendo.recurrenceeditor.fffsetPositionsFirst|The text similar to 'First' displayed in the recurrence editor.\"\n offsetPositionsFirst='First'\n\n i18n-offsetPositionsSecond=\"kendo.recurrenceeditor.offsetPositionsSecond|The text similar to 'Second' displayed in the recurrence editor.\"\n offsetPositionsSecond='Second'\n\n i18n-offsetPositionsThird=\"kendo.recurrenceeditor.offsetPositionsThird|The text similar to 'Third' displayed in the recurrence editor.\"\n offsetPositionsThird='Third'\n\n i18n-offsetPositionsFourth=\"kendo.recurrenceeditor.offsetPositionsFourth|The text similar to 'Fourth' displayed in the recurrence editor.\"\n offsetPositionsFourth='Fourth'\n\n i18n-offsetPositionsLast=\"kendo.recurrenceeditor.offsetPositionsLast|The text similar to 'Last' displayed in the recurrence editor.\"\n offsetPositionsLast='Last'\n\n i18n-weekdaysDay=\"kendo.recurrenceeditor.weekdaysDay|The text similar to 'Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysDay='Day'\n\n i18n-weekdaysWeekday=\"kendo.recurrenceeditor.weekdaysWeekday|The text similar to 'Weekday' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekday='Weekday'\n\n i18n-weekdaysWeekendday=\"kendo.recurrenceeditor.weekdaysWeekendday|The text similar to 'Weekend Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekendday='Weekend Day'\n\n i18n-endAfter=\"kendo.recurrenceeditor.endAfter|The text similar to 'After' displayed in the recurrence editor.\"\n endAfter='After'\n\n i18n-endOccurrence=\"kendo.recurrenceeditor.endOccurrence|The text similar to 'occurrence(s)' displayed in the recurrence editor.\"\n endOccurrence='occurrence(s)'\n\n i18n-endLabel=\"kendo.recurrenceeditor.endLabel|The text similar to 'End' displayed in the recurrence editor.\"\n endLabel='End'\n\n i18n-endNever=\"kendo.recurrenceeditor.endNever|The text similar to 'Never' displayed in the recurrence editor.\"\n endNever='Never'\n\n i18n-endOn=\"kendo.recurrenceeditor.endOn|The text similar to 'On' displayed in the recurrence editor.\"\n endOn='On'\n >\n </ng-container>\n\n <kendo-recurrence-frequency-editor>\n </kendo-recurrence-frequency-editor>\n\n <kendo-recurrence-interval-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"repeatEveryOptions\">\n </kendo-recurrence-interval-editor>\n\n <kendo-recurrence-weekday-rule-editor *ngIf=\"currentFreq === 'weekly'\">\n </kendo-recurrence-weekday-rule-editor>\n\n <kendo-recurrence-monthly-yearly-editor\n *ngIf=\"currentFreq === 'monthly' || currentFreq === 'yearly'\"\n [userNumericOptions]=\"repeatOnOptions\">\n </kendo-recurrence-monthly-yearly-editor>\n\n <kendo-recurrence-end-rule-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"endAfterOptions\"\n [userDatePickerOptions]=\"endOnOptions\">\n </kendo-recurrence-end-rule-editor>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:o.IntlService}]},propDecorators:{cssClass:[{type:h.HostBinding,args:["class.k-recurrence-editor"]}],start:[{type:h.Input}],timezone:[{type:h.Input}],weekStart:[{type:h.Input}],repeatEveryOptions:[{type:h.Input}],endAfterOptions:[{type:h.Input}],repeatOnOptions:[{type:h.Input}],endOnOptions:[{type:h.Input}],valueChange:[{type:h.Output}]}});Object.defineProperty(w.prototype,"autoFocusedElement",{get:function(){return this.editTemplate?this.editTemplate.autoFocusedElement:".k-form-field-wrap input"},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isEditingSeries",{get:function(){return 2===this.editMode&&Boolean(this.formGroup.get(this.fields.recurrenceRule))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"eventTimezone",{get:function(){return Un(this.formGroup,this.fields.startTimezone,this.timezone)},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"endTimezone",{get:function(){return Un(this.formGroup,this.fields.endTimezone,this.eventTimezone)},enumerable:!1,configurable:!0}),w.prototype.onChange=function(){if(this.changeDetector.markForCheck(),this.editService.hasNewEvent)this.editMode=2,this.formGroup=this.editService.context.formGroup,this.isNew=!0;else{if(!this.editService.isEditing())return void this.reset();var e=this.editService.context,t=e.dataItem,e=e.mode;this.formGroup=this.editService.context.formGroup,this.isNew=!1,this.editedEvent=t,this.editMode=y(e)?e:2}this.applyLocalTimezone(),this.editTemplate||(this.addTimeZoneCheckboxesToFormGroup(),this.subscribeToFormGroupChanges()),y(this.formGroup)&&(this.recurrenceStart=this.formGroup.get(this.fields.start).value),this.isActive=!0},w.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe()},w.prototype.onCancel=function(e){e.preventDefault(),this.onClose(),this.changeDetector.markForCheck()},w.prototype.onSave=function(e){e.preventDefault(),this.applyTimezone(),this.editService.save(),this.changeDetector.markForCheck()},w.prototype.onClose=function(){this.editService.endEdit(),this.changeDetector.markForCheck(),this.focusService.focus()},Object.defineProperty(w.prototype,"hasAllDay",{get:function(){return Boolean(this.formGroup.get(this.fields.isAllDay))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"hasStartTimeZone",{get:function(){return Boolean(this.formGroup.get(this.fields.startTimezone))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isStartTimeZoneVisible",{get:function(){return this.formGroup&&this.formGroup.get("startTimezoneCheckbox").value},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"hasEndTimeZone",{get:function(){return Boolean(this.formGroup.get(this.fields.endTimezone))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isEndTimeZoneVisible",{get:function(){return this.formGroup&&this.formGroup.get("endTimezoneCheckbox").value},enumerable:!1,configurable:!0}),w.prototype.getFormValue=function(e){if(e)return this.formGroup.get(e)},w.prototype.textFor=function(e){return this.localization.get(e)},w.prototype.onResourceClick=function(t){var e=(t.multiple?this.multipleResourceEditors:this.singleResourceEditors).filter(function(e){return e.resource.field===t.field}).pop();e&&e.focus()},w.prototype.getControl=function(e){return this.formGroup.get(e)},w.prototype.reset=function(){this.isActive=!1,this.setTimeZone=!1,this.setSeparateStartEndTimeZones=!1,this.removeTimeZoneCheckboxesFromFormGroup(),this.focusService.focus()},w.prototype.addTimeZoneCheckboxesToFormGroup=function(){var e;y(this.formGroup)&&(e=this.fields.startTimezone,this.formGroup.addControl("startTimezoneCheckbox",new B.FormControl(this.formGroup.contains(e)&&this.formGroup.get(e).value)),e=this.fields.endTimezone,this.formGroup.addControl("endTimezoneCheckbox",new B.FormControl(this.formGroup.contains(e)&&this.formGroup.get(e).value)))},w.prototype.removeTimeZoneCheckboxesFromFormGroup=function(){y(this.formGroup)&&(this.formGroup.removeControl("startTimezoneCheckbox"),this.formGroup.removeControl("endTimezoneCheckbox"))},w.prototype.subscribeToFormGroupChanges=function(){var t,n=this;y(this.formGroup)&&(t=this.fields,this.formGroup.get("startTimezoneCheckbox").valueChanges.subscribe(function(e){e||(n.formGroup.get(t.startTimezone).setValue(null,{emitEvent:!1}),n.formGroup.get(t.endTimezone).setValue(null,{emitEvent:!1}),n.formGroup.get("endTimezoneCheckbox").setValue(!1,{emitEvent:!1}))}),this.formGroup.get("endTimezoneCheckbox").valueChanges.subscribe(function(e){e||n.formGroup.get(t.endTimezone).setValue(null,{emitEvent:!1})}),this.formGroup.get(t.start).valueChanges.subscribe(function(e){n.recurrenceStart=e}))},w.prototype.applyLocalTimezone=function(){var e=this.fields,t=this.readDateAsLocal(e.start,this.eventTimezone),n=this.readDateAsLocal(e.end,this.endTimezone);this.formGroup.get(e.start).reset(t),this.formGroup.get(e.end).reset(n)},w.prototype.applyTimezone=function(){var e=this.fields,t=this.readDateWithTimezone(e.start,this.eventTimezone),n=this.readDateWithTimezone(e.end,this.endTimezone);this.formGroup.get(e.start).reset(t),this.formGroup.get(e.end).reset(n)},w.prototype.readDateWithTimezone=function(e,t){e=this.formGroup.get(e).value;return b.ZonedDate.fromUTCDate(xn(e),t).toLocalDate()},w.prototype.readDateAsLocal=function(e,t){e=this.formGroup.get(e).value;return b.toLocalDate(b.ZonedDate.fromLocalDate(e,t).toUTCDate())};T=w;function w(e,t,n,r,i,o){var a=this;this.ngZone=e,this.editService=t,this.localization=n,this.changeDetector=r,this.element=i,this.focusService=o,this.resources=[],this.timezone="Etc/UTC",this.setTimeZone=!1,this.setSeparateStartEndTimeZones=!1,this.subs=this.editService.changed.subscribe(function(){a.ngZone.run(function(){a.onChange()})}),this.subs.add(p.fromEvent(this.element.nativeElement,"keydown").pipe(N.filter(function(){return a.isActive})).subscribe(function(e){e.keyCode===l.Keys.Escape&&a.reset(),e.keyCode===l.Keys.Enter&&(lr(e,or.CtrlKey)||lr(e,or.MetaKey))&&a.onSave(e),e.stopPropagation()}))}T.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,deps:[{token:n.NgZone},{token:Ut},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:n.ElementRef},{token:f}],target:n.ɵɵFactoryTarget.Component}),T.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:T,selector:"kendo-scheduler-edit-dialog",inputs:{resources:"resources",timezone:"timezone",weekStart:"weekStart",fields:"fields",editTemplate:"editTemplate"},viewQueries:[{propertyName:"multipleResourceEditors",predicate:nr,descendants:!0},{propertyName:"singleResourceEditors",predicate:ar,descendants:!0}],ngImport:n,template:"\n <kendo-dialog (close)='onClose()' [minWidth]='750' *ngIf='isActive' title='{{ textFor(\"editorTitle\") }}' class='k-scheduler-edit-dialog' [autoFocusedElement]=\"autoFocusedElement\">\n <ng-container *ngIf='!editTemplate'>\n <div class='k-form k-form-horizontal'>\n <form novalidate [formGroup]='formGroup'>\n \x3c!-- Title --\x3e\n <div class='k-form-field'>\n <label for='k-event-title' class='k-form-label'>{{ textFor('editorEventTitle') }}</label>\n <div class='k-form-field-wrap'>\n <input #title id='k-event-title' kendoTextBox placeholder='Title' [formControl]='getControl(fields.title)' />\n </div>\n </div>\n\n \x3c!-- Start --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startDateTimePicker.focus()\">{{ textFor('editorEventStart') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #startDateTimePicker [formControl]='getControl(fields.start)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"hasStartTimeZone\">\n <label class='k-form-label' for='k-set-timezone'>{{ textFor('editorEventTimeZone') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-set-timezone' kendoCheckBox formControlName='startTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isStartTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startTzPicker.focus()\">{{ textFor('editorEventStartTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #startTzPicker [formControl]='getControl(fields.startTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- End --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endDateTimePicker.focus()\">{{ textFor('editorEventEnd') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #endDateTimePicker [formControl]='getControl(fields.end)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"isStartTimeZoneVisible && hasEndTimeZone\">\n <label class='k-form-label' for='k-use-separate'>{{ textFor('editorEventSeparateTimeZones') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-use-separate' kendoCheckBox formControlName='endTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isEndTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endTzPicker.focus()\">{{ textFor('editorEventEndTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #endTzPicker [formControl]='getControl(fields.endTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- All day --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' for='k-is-allday-chkbox'>{{ textFor('editorEventAllDay') }}</label>\n\n <div class='k-form-field-wrap' *ngIf=\"hasAllDay\">\n <input type='checkbox' id='k-is-allday-chkbox' kendoCheckBox [formControl]='getControl(fields.isAllDay)' />\n </div>\n </div>\n\n \x3c!-- Series --\x3e\n <kendo-recurrence-editor\n *ngIf=\"isEditingSeries\"\n [formControl]='getControl(fields.recurrenceRule)'\n [start]='recurrenceStart'\n [timezone]='eventTimezone'\n [weekStart]='weekStart'\n ></kendo-recurrence-editor>\n\n \x3c!-- Description --\x3e\n <div class='k-form-field' *ngIf='getFormValue(fields.description)'>\n <label class='k-form-label' for='k-event-description'>{{ textFor('editorEventDescription') }}</label>\n\n <div class='k-form-field-wrap'>\n <textarea id='k-event-description' kendoTextArea [formControl]='getControl(fields.description)'></textarea>\n </div>\n </div>\n\n \x3c!-- Resources --\x3e\n <ng-container *ngFor='let resource of resources'>\n <div class='k-form-field' *ngIf='getFormValue(resource.field)'>\n <label class='k-form-label' (click)=\"onResourceClick(resource)\">\n {{ resource.name ? resource.name : resource.field }}\n </label>\n <div class='k-form-field-wrap'>\n <kendo-multiple-resource-editor\n *ngIf='resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-multiple-resource-editor>\n <kendo-single-resource-editor\n *ngIf='!resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-single-resource-editor>\n </div>\n </div>\n </ng-container>\n </form>\n </div>\n </ng-container>\n\n <ng-container *ngIf='editTemplate'>\n <form novalidate [formGroup]='formGroup'>\n <ng-container [ngTemplateOutlet]='editTemplate.templateRef'\n [ngTemplateOutletContext]=\"{\n $implicit: formGroup,\n formGroup: formGroup,\n dataItem: editedEvent,\n editMode: editMode,\n isNew: isNew\n }\">\n </ng-container>\n </form>\n </ng-container>\n\n <kendo-dialog-actions>\n <button kendoButton (click)=\"onCancel($event)\">{{ textFor('cancel') }}</button>\n <button kendoButton themeColor=\"primary\" (click)=\"onSave($event)\" [disabled]=\"!formGroup.valid\">{{ textFor('save') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n ",isInline:!0,components:[{type:te.DialogComponent,selector:"kendo-dialog",inputs:["actions","actionsLayout","autoFocusedElement","title","width","minWidth","maxWidth","height","minHeight","maxHeight","animation"],outputs:["action","close"],exportAs:["kendoDialog"]},{type:dr,selector:"kendo-scheduler-datetime-picker",inputs:["isAllDay"],outputs:["valueChange"]},{type:pr,selector:"kendo-timezone-editor",inputs:["width"],outputs:["valueChange"]},{type:jr,selector:"kendo-recurrence-editor",inputs:["start","timezone","weekStart","repeatEveryOptions","endAfterOptions","repeatOnOptions","endOnOptions"],outputs:["valueChange"],exportAs:["kendoRecurrenceEditor"]},{type:nr,selector:"kendo-multiple-resource-editor"},{type:ar,selector:"kendo-single-resource-editor"},{type:te.DialogActionsComponent,selector:"kendo-dialog-actions",inputs:["actions","layout"],outputs:["action"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:ee.ɵNgNoValidate,selector:"form:not([ngNoForm]):not([ngNativeValidate])"},{type:ee.NgControlStatusGroup,selector:"[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]"},{type:ee.FormGroupDirective,selector:"[formGroup]",inputs:["formGroup"],outputs:["ngSubmit"],exportAs:["ngForm"]},{type:ie.TextBoxDirective,selector:"input[kendoTextBox]",inputs:["value"]},{type:ee.DefaultValueAccessor,selector:"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]"},{type:ee.NgControlStatus,selector:"[formControlName],[ngModel],[formControl]"},{type:ee.FormControlDirective,selector:"[formControl]",inputs:["disabled","formControl","ngModel"],outputs:["ngModelChange"],exportAs:["ngForm"]},{type:ee.CheckboxControlValueAccessor,selector:"input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]"},{type:ie.CheckBoxDirective,selector:"input[kendoCheckBox]",inputs:["size","rounded"]},{type:ee.FormControlName,selector:"[formControlName]",inputs:["disabled","formControlName","ngModel"],outputs:["ngModelChange"]},{type:ie.TextAreaDirective,selector:"textarea[kendoTextArea]",inputs:["autoSize","value"],outputs:["valueChange"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-edit-dialog",template:"\n <kendo-dialog (close)='onClose()' [minWidth]='750' *ngIf='isActive' title='{{ textFor(\"editorTitle\") }}' class='k-scheduler-edit-dialog' [autoFocusedElement]=\"autoFocusedElement\">\n <ng-container *ngIf='!editTemplate'>\n <div class='k-form k-form-horizontal'>\n <form novalidate [formGroup]='formGroup'>\n \x3c!-- Title --\x3e\n <div class='k-form-field'>\n <label for='k-event-title' class='k-form-label'>{{ textFor('editorEventTitle') }}</label>\n <div class='k-form-field-wrap'>\n <input #title id='k-event-title' kendoTextBox placeholder='Title' [formControl]='getControl(fields.title)' />\n </div>\n </div>\n\n \x3c!-- Start --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startDateTimePicker.focus()\">{{ textFor('editorEventStart') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #startDateTimePicker [formControl]='getControl(fields.start)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"hasStartTimeZone\">\n <label class='k-form-label' for='k-set-timezone'>{{ textFor('editorEventTimeZone') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-set-timezone' kendoCheckBox formControlName='startTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isStartTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startTzPicker.focus()\">{{ textFor('editorEventStartTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #startTzPicker [formControl]='getControl(fields.startTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- End --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endDateTimePicker.focus()\">{{ textFor('editorEventEnd') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #endDateTimePicker [formControl]='getControl(fields.end)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"isStartTimeZoneVisible && hasEndTimeZone\">\n <label class='k-form-label' for='k-use-separate'>{{ textFor('editorEventSeparateTimeZones') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-use-separate' kendoCheckBox formControlName='endTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isEndTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endTzPicker.focus()\">{{ textFor('editorEventEndTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #endTzPicker [formControl]='getControl(fields.endTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- All day --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' for='k-is-allday-chkbox'>{{ textFor('editorEventAllDay') }}</label>\n\n <div class='k-form-field-wrap' *ngIf=\"hasAllDay\">\n <input type='checkbox' id='k-is-allday-chkbox' kendoCheckBox [formControl]='getControl(fields.isAllDay)' />\n </div>\n </div>\n\n \x3c!-- Series --\x3e\n <kendo-recurrence-editor\n *ngIf=\"isEditingSeries\"\n [formControl]='getControl(fields.recurrenceRule)'\n [start]='recurrenceStart'\n [timezone]='eventTimezone'\n [weekStart]='weekStart'\n ></kendo-recurrence-editor>\n\n \x3c!-- Description --\x3e\n <div class='k-form-field' *ngIf='getFormValue(fields.description)'>\n <label class='k-form-label' for='k-event-description'>{{ textFor('editorEventDescription') }}</label>\n\n <div class='k-form-field-wrap'>\n <textarea id='k-event-description' kendoTextArea [formControl]='getControl(fields.description)'></textarea>\n </div>\n </div>\n\n \x3c!-- Resources --\x3e\n <ng-container *ngFor='let resource of resources'>\n <div class='k-form-field' *ngIf='getFormValue(resource.field)'>\n <label class='k-form-label' (click)=\"onResourceClick(resource)\">\n {{ resource.name ? resource.name : resource.field }}\n </label>\n <div class='k-form-field-wrap'>\n <kendo-multiple-resource-editor\n *ngIf='resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-multiple-resource-editor>\n <kendo-single-resource-editor\n *ngIf='!resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-single-resource-editor>\n </div>\n </div>\n </ng-container>\n </form>\n </div>\n </ng-container>\n\n <ng-container *ngIf='editTemplate'>\n <form novalidate [formGroup]='formGroup'>\n <ng-container [ngTemplateOutlet]='editTemplate.templateRef'\n [ngTemplateOutletContext]=\"{\n $implicit: formGroup,\n formGroup: formGroup,\n dataItem: editedEvent,\n editMode: editMode,\n isNew: isNew\n }\">\n </ng-container>\n </form>\n </ng-container>\n\n <kendo-dialog-actions>\n <button kendoButton (click)=\"onCancel($event)\">{{ textFor('cancel') }}</button>\n <button kendoButton themeColor=\"primary\" (click)=\"onSave($event)\" [disabled]=\"!formGroup.valid\">{{ textFor('save') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n "}]}],ctorParameters:function(){return[{type:n.NgZone},{type:Ut},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:n.ElementRef},{type:f}]},propDecorators:{multipleResourceEditors:[{type:h.ViewChildren,args:[nr]}],singleResourceEditors:[{type:h.ViewChildren,args:[ar]}],resources:[{type:h.Input}],timezone:[{type:h.Input}],weekStart:[{type:h.Input}],fields:[{type:h.Input}],editTemplate:[{type:h.Input}]}});c(Zr,qr=P.ComponentMessages);var qr,I=Zr;function Zr(){return null!==qr&&qr.apply(this,arguments)||this}I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:null,target:n.ɵɵFactoryTarget.Directive}),I.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:I,inputs:{allEvents:"allEvents",allDay:"allDay",dateHeader:"dateHeader",timeHeader:"timeHeader",eventHeader:"eventHeader",deleteTitle:"deleteTitle",nextTitle:"nextTitle",previousTitle:"previousTitle",today:"today",calendarToday:"calendarToday",showFullDay:"showFullDay",showWorkDay:"showWorkDay",dayViewTitle:"dayViewTitle",multiDayViewTitle:"multiDayViewTitle",weekViewTitle:"weekViewTitle",workWeekViewTitle:"workWeekViewTitle",monthViewTitle:"monthViewTitle",timelineViewTitle:"timelineViewTitle",timelineWeekViewTitle:"timelineWeekViewTitle",timelineMonthViewTitle:"timelineMonthViewTitle",agendaViewTitle:"agendaViewTitle",cancel:"cancel",save:"save",editorEventTitle:"editorEventTitle",editorEventStart:"editorEventStart",editorEventStartTimeZone:"editorEventStartTimeZone",editorEventEnd:"editorEventEnd",editorEventEndTimeZone:"editorEventEndTimeZone",editorEventAllDay:"editorEventAllDay",editorEventDescription:"editorEventDescription",editorEventSeparateTimeZones:"editorEventSeparateTimeZones",editorEventTimeZone:"editorEventTimeZone",recurrenceEditorRepeat:"recurrenceEditorRepeat",recurrenceEditorDailyInterval:"recurrenceEditorDailyInterval",recurrenceEditorDailyRepeatEvery:"recurrenceEditorDailyRepeatEvery",recurrenceEditorWeeklyInterval:"recurrenceEditorWeeklyInterval",recurrenceEditorWeeklyRepeatEvery:"recurrenceEditorWeeklyRepeatEvery",recurrenceEditorWeeklyRepeatOn:"recurrenceEditorWeeklyRepeatOn",recurrenceEditorMonthlyDay:"recurrenceEditorMonthlyDay",recurrenceEditorMonthlyInterval:"recurrenceEditorMonthlyInterval",recurrenceEditorMonthlyRepeatEvery:"recurrenceEditorMonthlyRepeatEvery",recurrenceEditorMonthlyRepeatOn:"recurrenceEditorMonthlyRepeatOn",recurrenceEditorYearlyOf:"recurrenceEditorYearlyOf",recurrenceEditorYearlyRepeatEvery:"recurrenceEditorYearlyRepeatEvery",recurrenceEditorYearlyRepeatOn:"recurrenceEditorYearlyRepeatOn",recurrenceEditorYearlyInterval:"recurrenceEditorYearlyInterval",recurrenceEditorFrequenciesDaily:"recurrenceEditorFrequenciesDaily",recurrenceEditorFrequenciesMonthly:"recurrenceEditorFrequenciesMonthly",recurrenceEditorFrequenciesNever:"recurrenceEditorFrequenciesNever",recurrenceEditorFrequenciesWeekly:"recurrenceEditorFrequenciesWeekly",recurrenceEditorFrequenciesYearly:"recurrenceEditorFrequenciesYearly",recurrenceEditorOffsetPositionsFirst:"recurrenceEditorOffsetPositionsFirst",recurrenceEditorOffsetPositionsSecond:"recurrenceEditorOffsetPositionsSecond",recurrenceEditorOffsetPositionsThird:"recurrenceEditorOffsetPositionsThird",recurrenceEditorOffsetPositionsFourth:"recurrenceEditorOffsetPositionsFourth",recurrenceEditorOffsetPositionsLast:"recurrenceEditorOffsetPositionsLast",recurrenceEditorWeekdaysDay:"recurrenceEditorWeekdaysDay",recurrenceEditorWeekdaysWeekday:"recurrenceEditorWeekdaysWeekday",recurrenceEditorWeekdaysWeekendday:"recurrenceEditorWeekdaysWeekendday",recurrenceEditorEndAfter:"recurrenceEditorEndAfter",recurrenceEditorEndOccurrence:"recurrenceEditorEndOccurrence",recurrenceEditorEndLabel:"recurrenceEditorEndLabel",recurrenceEditorEndNever:"recurrenceEditorEndNever",recurrenceEditorEndOn:"recurrenceEditorEndOn",editorTitle:"editorTitle",destroy:"destroy",deleteConfirmation:"deleteConfirmation",editRecurringConfirmation:"editRecurringConfirmation",editOccurrence:"editOccurrence",editSeries:"editSeries",deleteRecurringConfirmation:"deleteRecurringConfirmation",deleteOccurrence:"deleteOccurrence",deleteSeries:"deleteSeries",deleteDialogTitle:"deleteDialogTitle",deleteRecurringDialogTitle:"deleteRecurringDialogTitle",editRecurringDialogTitle:"editRecurringDialogTitle",selectView:"selectView"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.Directive}],propDecorators:{allEvents:[{type:h.Input}],allDay:[{type:h.Input}],dateHeader:[{type:h.Input}],timeHeader:[{type:h.Input}],eventHeader:[{type:h.Input}],deleteTitle:[{type:h.Input}],nextTitle:[{type:h.Input}],previousTitle:[{type:h.Input}],today:[{type:h.Input}],calendarToday:[{type:h.Input}],showFullDay:[{type:h.Input}],showWorkDay:[{type:h.Input}],dayViewTitle:[{type:h.Input}],multiDayViewTitle:[{type:h.Input}],weekViewTitle:[{type:h.Input}],workWeekViewTitle:[{type:h.Input}],monthViewTitle:[{type:h.Input}],timelineViewTitle:[{type:h.Input}],timelineWeekViewTitle:[{type:h.Input}],timelineMonthViewTitle:[{type:h.Input}],agendaViewTitle:[{type:h.Input}],cancel:[{type:h.Input}],save:[{type:h.Input}],editorEventTitle:[{type:h.Input}],editorEventStart:[{type:h.Input}],editorEventStartTimeZone:[{type:h.Input}],editorEventEnd:[{type:h.Input}],editorEventEndTimeZone:[{type:h.Input}],editorEventAllDay:[{type:h.Input}],editorEventDescription:[{type:h.Input}],editorEventSeparateTimeZones:[{type:h.Input}],editorEventTimeZone:[{type:h.Input}],recurrenceEditorRepeat:[{type:h.Input}],recurrenceEditorDailyInterval:[{type:h.Input}],recurrenceEditorDailyRepeatEvery:[{type:h.Input}],recurrenceEditorWeeklyInterval:[{type:h.Input}],recurrenceEditorWeeklyRepeatEvery:[{type:h.Input}],recurrenceEditorWeeklyRepeatOn:[{type:h.Input}],recurrenceEditorMonthlyDay:[{type:h.Input}],recurrenceEditorMonthlyInterval:[{type:h.Input}],recurrenceEditorMonthlyRepeatEvery:[{type:h.Input}],recurrenceEditorMonthlyRepeatOn:[{type:h.Input}],recurrenceEditorYearlyOf:[{type:h.Input}],recurrenceEditorYearlyRepeatEvery:[{type:h.Input}],recurrenceEditorYearlyRepeatOn:[{type:h.Input}],recurrenceEditorYearlyInterval:[{type:h.Input}],recurrenceEditorFrequenciesDaily:[{type:h.Input}],recurrenceEditorFrequenciesMonthly:[{type:h.Input}],recurrenceEditorFrequenciesNever:[{type:h.Input}],recurrenceEditorFrequenciesWeekly:[{type:h.Input}],recurrenceEditorFrequenciesYearly:[{type:h.Input}],recurrenceEditorOffsetPositionsFirst:[{type:h.Input}],recurrenceEditorOffsetPositionsSecond:[{type:h.Input}],recurrenceEditorOffsetPositionsThird:[{type:h.Input}],recurrenceEditorOffsetPositionsFourth:[{type:h.Input}],recurrenceEditorOffsetPositionsLast:[{type:h.Input}],recurrenceEditorWeekdaysDay:[{type:h.Input}],recurrenceEditorWeekdaysWeekday:[{type:h.Input}],recurrenceEditorWeekdaysWeekendday:[{type:h.Input}],recurrenceEditorEndAfter:[{type:h.Input}],recurrenceEditorEndOccurrence:[{type:h.Input}],recurrenceEditorEndLabel:[{type:h.Input}],recurrenceEditorEndNever:[{type:h.Input}],recurrenceEditorEndOn:[{type:h.Input}],editorTitle:[{type:h.Input}],destroy:[{type:h.Input}],deleteConfirmation:[{type:h.Input}],editRecurringConfirmation:[{type:h.Input}],editOccurrence:[{type:h.Input}],editSeries:[{type:h.Input}],deleteRecurringConfirmation:[{type:h.Input}],deleteOccurrence:[{type:h.Input}],deleteSeries:[{type:h.Input}],deleteDialogTitle:[{type:h.Input}],deleteRecurringDialogTitle:[{type:h.Input}],editRecurringDialogTitle:[{type:h.Input}],selectView:[{type:h.Input}]}});c(Ur,Gr=I);var Gr,_r=Ur;function Ur(e){var t=Gr.call(this)||this;return t.service=e,t}_r.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:_r,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),_r.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:_r,selector:"[kendoSchedulerLocalizedMessages]",providers:[{provide:I,useExisting:h.forwardRef(function(){return _r})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:_r,decorators:[{type:h.Directive,args:[{providers:[{provide:I,useExisting:h.forwardRef(function(){return _r})}],selector:"[kendoSchedulerLocalizedMessages]"}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});Object.defineProperty(S.prototype,"dir",{get:function(){return this.direction},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"selectedViewIndex",{get:function(){return this.viewIndex},set:function(e){this.viewIndex=e,this.onViewIndexChange()},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"weekStart",{get:function(){return y(this._weekStart)?this._weekStart:this.intlService.firstDay()},set:function(e){this._weekStart=e},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"timezone",{get:function(){return this._timezone},set:function(e){this._timezone=e,this.events=this.events||[]},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"events",{get:function(){return this._events},set:function(e){this._events=e,this.processEvents(e)},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"selectedDate",{get:function(){return this._selectedDate},set:function(e){e&&(this._selectedDate=e,this.viewContext.notifySelectedDate(e))},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"modelFields",{get:function(){return this._modelFields},set:function(e){this._modelFields=Object.assign(Object.assign({},on),e)},enumerable:!1,configurable:!0}),S.prototype.ngOnInit=function(){this.selectedDate||(this.selectedDate=b.getDate(new Date))},S.prototype.ngAfterContentInit=function(){var o=this;if(h.isDevMode()&&0===this.views.length)throw new Error("No views declared for <kendo-scheduler>. Please, declare at least one view.");this.subs=this.views.changes.subscribe(function(){return o.resetViewIndex()}),this.subs.add(this.intlService.changes.subscribe(this.intlChange.bind(this))),this.subs.add(this.viewState.nextDate.subscribe(function(e){o.selectedDate=e})),this.subs.add(this.viewState.dateRange.subscribe(function(e){0!==e.start.getTime()&&(e=new ae(o,o.selectedDate,e),o.dateChange.emit(e))})),this.subs.add(this.viewState.navigate.subscribe(function(e){var t=e.viewName,e=e.date,n=o.views.toArray(),r=n.find(function(e){return e.name===t}),i=new pe(o,{type:"show-date",view:r||{name:t,title:t},date:e});o.navigate.next(i),r&&!i.isDefaultPrevented()&&(i=n.indexOf(r),o.selectedView=r,o.setViewIndex(i),o.selectedDate=e)})),this.subs.add(this.viewState.viewEvent.subscribe(function(e){var t=e.name,n=e.args,r=o[t],i=o[t+"Confirmed"];(l.hasObservers(r)||i&&l.hasObservers(i))&&o.zone.run(function(){var e=new qe[t](o,n);r.emit(e),n.prevented=e.prevented,i&&!n.prevented&&i.emit(e)})})),this.subs.add(this.viewState.layoutEnd.subscribe(function(){o.resizeSensor&&o.resizeSensor.acceptSize()})),this.subs.add(this.viewState.slotSelectionStart.subscribe(function(e){l.hasObservers(o.slotDragStart)&&o.zone.run(function(){o.slotDragStart.emit(Object.assign(e,{sender:o}))})})),this.subs.add(this.viewState.slotSelectionDrag.subscribe(function(e){l.hasObservers(o.slotDrag)&&o.zone.run(function(){o.slotDrag.emit(new ot(o,e))})})),this.subs.add(this.viewState.slotSelectionEnd.subscribe(function(e){l.hasObservers(o.slotDragEnd)&&o.zone.run(function(){o.slotDragEnd.emit(new at(o,e))})})),this.subs.add(this.focusService.ariaActiveDescendant.subscribe(function(e){o.renderer[e?"setAttribute":"removeAttribute"](o.wrapper.nativeElement,"aria-activedescendant",e)})),this.onViewIndexChange(),this.notifyOptionsChange=this.notifyOptionsChange.bind(this),this.subs.add(this.allDayEventTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.eventTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.timeSlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.timeSlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.minorTimeHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.majorTimeHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.monthDaySlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.dateHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.allDaySlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.groupHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.agendaDateTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.agendaTimeTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.views.changes.subscribe(function(){o.changeDetector.markForCheck()})),this.attachEditHandlers(),this.dialogsService.container=this.confirmationDialogContainerRef,this.notifyOptionsChange(),this.subs.add(this.pdfService.exportClick.subscribe(function(){var e=new ln;o.pdfExport.emit(e),e.isDefaultPrevented()||o.saveAsPDF()})),this.subs.add(this.pdfService.done.subscribe(function(){o.loadingComponent.toggle(!1)})),this.subs.add(this.localization.changes.subscribe(function(e){e=e.rtl;o.rtl=e,o.direction=o.rtl?"rtl":"ltr"})),this.subs.add(this.viewState.optionsChange.subscribe(function(){o.changeDetector.markForCheck()})),this.attachElementEventHandlers()},S.prototype.ngOnChanges=function(e){var t=this;l.isChanged("resources",e)&&!l.isChanged("events",e)&&this.viewItems&&this.viewItems.forEach(function(e){Wt(e.event,t.resources)}),l.anyChanged(["group","resources","min","max","showWorkHours","startTime","scrollTime","endTime","eventHeight","workDayStart","workDayEnd","workWeekStart","workWeekEnd","weekStart","slotDuration","slotDivisions","editable","timezone","slotClass","slotFill","columnWidth","eventClass","eventStyles","isSlotSelected","selectable"],e)&&this.notifyOptionsChange(e)},S.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe(),this.detachElementEventHandlers&&this.detachElementEventHandlers()},S.prototype.onResize=function(e){this.viewContext.notifyResize()},S.prototype.onNavigationAction=function(e){var t=new pe(this,e);if(this.navigate.next(t),t.isDefaultPrevented())return!0;this.focusService.clearActiveDescendant(),"view-change"===e.type?(t=this.views.toArray().indexOf(e.view),this.selectedView=e.view,this.setViewIndex(t)):"select-date"===e.type?this.isInRange(e.date)&&(this.selectedDate=e.date):"today"===e.type?(t=new Date,this.isInRange(t)&&(this.selectedDate=t)):this.viewContext.notifyAction(e)},S.prototype.addEvent=function(e){var t,n;e instanceof B.FormGroup||(t=Object.keys(e).reduce((n=e,function(e,t){return e[t]=new B.FormControl(n[t]),e}),{}),e=new B.FormGroup(t)),this.editService.addEvent(e)},S.prototype.editEvent=function(e,t){var n=(t=void 0===t?{}:t).group,t=t.mode;this.editService.editEvent(e,n,t)},S.prototype.closeEvent=function(){this.editService.close()},S.prototype.isEditing=function(){return this.editService.isEditing()},S.prototype.openRecurringConfirmationDialog=function(e){return this.dialogsService.openRecurringConfirmationDialog(e)},S.prototype.openRemoveConfirmationDialog=function(){return this.dialogsService.openRemoveConfirmationDialog()},S.prototype.saveAsPDF=function(){var e=this;this.loadingComponent.toggle(!0),this.zone.runOutsideAngular(function(){setTimeout(function(){e.pdfService.save()},0)})},S.prototype.scrollToTime=function(e){this.viewContext.notifyAction({type:"scroll-time",time:e})},S.prototype.slotByPosition=function(e,t){return this.viewContext.executeMethod("slotByPosition",{x:e,y:t})},S.prototype.eventFromElement=function(e){return this.viewContext.executeMethod("eventFromElement",{element:e})},Object.defineProperty(S.prototype,"activeEvent",{get:function(){var e=this.focusService.activeElement;if(e)return this.eventFromElement(e.nativeElement)},enumerable:!1,configurable:!0}),S.prototype.focusNext=function(e){return this.focusService.focusNext(e)},S.prototype.focusPrev=function(e){e=Object.assign({offset:-1},e);return this.focusService.focusNext(e)},S.prototype.focus=function(){return this.focusService.focus()},S.prototype.isInRange=function(e){return(!this.min||this.min<=e)&&(!this.max||e<=this.max)},S.prototype.notifyOptionsChange=function(e){var t=this.workWeek;this.viewContext.notifyOptionsChange({group:this.group,resources:this.resources,allDayEventTemplate:this.allDayEventTemplate?this.allDayEventTemplate.first:null,eventTemplate:this.eventTemplate?this.eventTemplate.first:null,timeSlotTemplate:this.timeSlotTemplate?this.timeSlotTemplate.first:null,minorTimeHeaderTemplate:this.minorTimeHeaderTemplate?this.minorTimeHeaderTemplate.first:null,majorTimeHeaderTemplate:this.majorTimeHeaderTemplate?this.majorTimeHeaderTemplate.first:null,monthDaySlotTemplate:this.monthDaySlotTemplate?this.monthDaySlotTemplate.first:null,dateHeaderTemplate:this.dateHeaderTemplate?this.dateHeaderTemplate.first:null,allDaySlotTemplate:this.allDaySlotTemplate?this.allDaySlotTemplate.first:null,groupHeaderTemplate:this.groupHeaderTemplate?this.groupHeaderTemplate.first:null,agendaDateTemplate:this.agendaDateTemplate?this.agendaDateTemplate.first:null,agendaTimeTemplate:this.agendaTimeTemplate?this.agendaTimeTemplate.first:null,min:this.min,max:this.max,showWorkHours:this.showWorkHours,startTime:this.startTime,scrollTime:this.scrollTime,endTime:this.endTime,workDayStart:this.workDayStart,workDayEnd:this.workDayEnd,workWeekStart:t.start,workWeekEnd:t.end,weekStart:this.weekStart,slotDuration:this.slotDuration,slotDivisions:this.slotDivisions,eventHeight:this.eventHeight,editable:this.editable,selectable:this.selectable,timezone:this.timezone,currentTimeMarker:this.currentTimeMarker,highlightOngoingEvents:this.highlightOngoingEvents,slotClass:this.slotClass,slotFill:this.slotFill,columnWidth:this.columnWidth,eventClass:this.eventClass,eventStyles:this.eventStyles,isSlotSelected:this.isSlotSelected,changes:e})},Object.defineProperty(S.prototype,"workWeek",{get:function(){var e=this.intlService.weekendRange(),t=e.start,e=e.end,e=y(this.workWeekStart)?this.workWeekStart:(e+1)%7,t=0<t?t-1:b.Day.Saturday;return{start:e,end:y(this.workWeekEnd)?this.workWeekEnd:t}},enumerable:!1,configurable:!0}),S.prototype.resetViewIndex=function(){var e=this.selectedViewIndex,e=Math.max(0,Math.min(e,this.views.length-1));this.setViewIndex(e),this.onViewIndexChange()},S.prototype.onViewIndexChange=function(){var e;this.views&&(e=this.views.toArray()[this.viewIndex])&&(this.selectedView=e)},S.prototype.setViewIndex=function(e){var t=this.selectedViewIndex!==e;return t&&(this.selectedViewIndex=e,this.selectedViewIndexChange.emit(e)),t},S.prototype.processEvents=function(e){var t=this,n=this.timezone,r=this.modelFields,e=e.map(function(e){return Mt(e,r,t.resources)}).filter(function(e){return!((e=e).recurrenceRule&&!y(e.recurrenceId))}).map(function(e){return{start:b.ZonedDate.fromLocalDate(e.start,n),end:b.ZonedDate.fromLocalDate(e.end,n),event:e}});this.viewItems=e,this.viewContext.notifyItems(e)},S.prototype.attachEditHandlers=function(){this.editService&&this.subs.add(this.editService.changes.subscribe(this.emitCRUDEvent.bind(this)))},S.prototype.emitCRUDEvent=function(e){switch(Object.assign(e,{sender:this}),e.action){case"cancel":this.cancel.emit(e);break;case"save":this.save.emit(e)}},S.prototype.intlChange=function(){var e=this.selectedView;this.selectedView=null,y(this.workWeekStart)&&y(this.workWeekEnd)||this.notifyOptionsChange(),this.changeDetector.detectChanges(),this.selectedView=e,h.NgZone.isInAngularZone()?this.changeDetector.markForCheck():this.changeDetector.detectChanges()},S.prototype.attachElementEventHandlers=function(){var a,s=this;l.isDocumentAvailable()&&(a=this.wrapper.nativeElement,this.zone.runOutsideAngular(function(){var e=s.renderer.listen("window","blur",function(e){s.domEvents.windowBlur.emit(e)}),t=s.renderer.listen(a,"click",function(e){s.domEvents.click.emit(e)}),n=s.renderer.listen(a,"keydown",function(e){s.domEvents.keydown.emit(e)}),r=!1,i=s.renderer.listen(a,"focusin",function(e){s.domEvents.focus.emit(e),r||(s.domEvents.focusIn.emit(e),s.renderer.addClass(s.wrapper.nativeElement,"k-focus"),r=!0)}),o=s.renderer.listen(a,"focusout",function(e){!function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}(e.relatedTarget||document.activeElement,function(e){return e===a})&&(s.domEvents.focusOut.emit(e),s.renderer.removeClass(s.wrapper.nativeElement,"k-focus"),r=!1)});s.detachElementEventHandlers=function(){e(),t(),n(),i(),o()}}))};var Yr=S;function S(e,t,n,r,i,o,a,s,l,c,d,u,p){this.wrapper=e,this.viewContext=t,this.viewState=n,this.editService=r,this.dialogsService=i,this.intlService=o,this.changeDetector=a,this.zone=s,this.pdfService=l,this.localization=c,this.domEvents=d,this.renderer=u,this.focusService=p,this.hostClasses=!0,this.ariaRole="application",this.rtl=!1,this.editable=!1,this.selectable=!1,this.eventHeight=25,this.columnWidth=100,this.startTime="00:00",this.endTime="00:00",this.workDayStart="08:00",this.workDayEnd="17:00",this.slotDuration=60,this.slotDivisions=2,this.slotFill=.9,this.scrollTime=this.workDayStart,this.currentTimeMarker=!0,this.highlightOngoingEvents=!0,this.isSlotSelected=Yn,this.selectedViewIndexChange=new h.EventEmitter,this.navigate=new h.EventEmitter,this.dateChange=new h.EventEmitter,this.slotClick=new h.EventEmitter,this.slotDblClick=new h.EventEmitter,this.create=new h.EventEmitter,this.eventClick=new h.EventEmitter,this.eventDblClick=new h.EventEmitter,this.eventKeydown=new h.EventEmitter,this.cancel=new h.EventEmitter,this.save=new h.EventEmitter,this.remove=new h.EventEmitter,this.resizeStart=new h.EventEmitter,this.resize=new h.EventEmitter,this.resizeEnd=new h.EventEmitter,this.dragStart=new h.EventEmitter,this.drag=new h.EventEmitter,this.dragEnd=new h.EventEmitter,this.slotDragStart=new h.EventEmitter,this.slotDrag=new h.EventEmitter,this.slotDragEnd=new h.EventEmitter,this.pdfExport=new h.EventEmitter,this.dragEndConfirmed=new h.EventEmitter,this.resizeEndConfirmed=new h.EventEmitter,this.removeConfirmed=new h.EventEmitter,this.viewIndex=0,this._timezone="",this._modelFields=on,z.validatePackage(oe),this.dateRangeStream=n.dateRange,this.selectedDateStream=t.selectedDate}Yr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Yr,deps:[{token:n.ElementRef},{token:m},{token:g},{token:Ut},{token:Jt},{token:o.IntlService},{token:n.ChangeDetectorRef},{token:n.NgZone},{token:v},{token:r.LocalizationService},{token:Xt},{token:n.Renderer2},{token:f}],target:n.ɵɵFactoryTarget.Component}),Yr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Yr,selector:"kendo-scheduler",inputs:{selectedViewIndex:"selectedViewIndex",editable:"editable",selectable:"selectable",min:"min",max:"max",eventHeight:"eventHeight",columnWidth:"columnWidth",showWorkHours:"showWorkHours",startTime:"startTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",weekStart:"weekStart",slotDuration:"slotDuration",slotDivisions:"slotDivisions",slotFill:"slotFill",scrollTime:"scrollTime",group:"group",resources:"resources",loading:"loading",timezone:"timezone",events:"events",selectedDate:"selectedDate",modelFields:"modelFields",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",isSlotSelected:"isSlotSelected"},outputs:{selectedViewIndexChange:"selectedViewIndexChange",navigate:"navigate",dateChange:"dateChange",slotClick:"slotClick",slotDblClick:"slotDblClick",create:"create",eventClick:"eventClick",eventDblClick:"eventDblClick",eventKeydown:"eventKeydown",cancel:"cancel",save:"save",remove:"remove",resizeStart:"resizeStart",resize:"resize",resizeEnd:"resizeEnd",dragStart:"dragStart",drag:"drag",dragEnd:"dragEnd",slotDragStart:"slotDragStart",slotDrag:"slotDrag",slotDragEnd:"slotDragEnd",pdfExport:"pdfExport"},host:{properties:{"class.k-widget":"this.hostClasses","class.k-scheduler":"this.hostClasses","class.k-floatwrap":"this.hostClasses","attr.role":"this.ariaRole","class.k-rtl":"this.rtl","attr.dir":"this.dir"}},providers:[Ut,Jt,Xt,$t,f,nn,{provide:P.LocalizationService,useExisting:nn},{provide:P.L10N_PREFIX,useValue:"kendo.scheduler"},ct,m,g,v],queries:[{propertyName:"editDialogTemplate",first:!0,predicate:Kt,descendants:!0},{propertyName:"toolbarTemplate",first:!0,predicate:lt,descendants:!0},{propertyName:"views",predicate:d},{propertyName:"allDayEventTemplate",predicate:mt},{propertyName:"eventTemplate",predicate:ft},{propertyName:"timeSlotTemplate",predicate:It},{propertyName:"minorTimeHeaderTemplate",predicate:Dt},{propertyName:"majorTimeHeaderTemplate",predicate:kt},{propertyName:"monthDaySlotTemplate",predicate:Tt},{propertyName:"dateHeaderTemplate",predicate:yt},{propertyName:"allDaySlotTemplate",predicate:gt},{propertyName:"groupHeaderTemplate",predicate:vt},{propertyName:"agendaDateTemplate",predicate:u},{propertyName:"agendaTimeTemplate",predicate:ht}],viewQueries:[{propertyName:"resizeSensor",first:!0,predicate:l.ResizeSensorComponent,descendants:!0,static:!0},{propertyName:"confirmationDialogContainerRef",first:!0,predicate:["confirmationDialogContainer"],descendants:!0,read:h.ViewContainerRef,static:!0},{propertyName:"loadingComponent",first:!0,predicate:ve,descendants:!0,static:!0}],usesOnChanges:!0,ngImport:n,template:'\n <ng-container kendoSchedulerLocalizedMessages\n i18n-allEvents="kendo.scheduler.allEvents|The All events text displayed in the timeline views when there is no vertical grouping."\n allEvents="All events"\n\n i18n-allDay="kendo.scheduler.allDay|The all day text displayed in the day and week views."\n allDay="all day"\n\n i18n-dateHeader="kendo.scheduler.dateHeader|The date header text displayed in the agenda view."\n dateHeader="Date"\n\n i18n-timeHeader="kendo.scheduler.timeHeader|The time header text displayed in the agenda view."\n timeHeader="Time"\n\n i18n-deleteTitle="kendo.scheduler.deleteTitle|The delete icon title."\n deleteTitle="Delete"\n\n i18n-eventHeader="kendo.scheduler.eventHeader|The event header text displayed in the agenda view."\n eventHeader="Event"\n\n i18n-nextTitle="kendo.scheduler.nextTitle|The title of the navigation next button."\n nextTitle="Next"\n\n i18n-previousTitle="kendo.scheduler.previousTitle|The title of the navigation previous button."\n previousTitle="Previous"\n\n i18n-showFullDay="kendo.scheduler.showFullDay|The text of the show full day button displayed in the footer of the day, week and timeline views."\n showFullDay="Show full day"\n\n i18n-showWorkDay="kendo.scheduler.showWorkDay|The text of the show work day button displayed in the footer of the day, week and timeline views."\n showWorkDay="Show business hours"\n\n i18n-today="kendo.scheduler.today|The today button text displayed in the navigation."\n today="Today"\n\n i18n-calendarToday="kendo.scheduler.calendarToday|The text of today\'s date in the header of the Calendar."\n calendarToday="TODAY"\n\n i18n-dayViewTitle="kendo.scheduler.dayViewTitle|The day view title."\n dayViewTitle="Day"\n\n i18n-multiDayViewTitle="kendo.scheduler.multiDayViewTitle|The multi day view title."\n multiDayViewTitle="Multi-Day"\n\n i18n-weekViewTitle="kendo.scheduler.weekViewTitle|The week view title."\n weekViewTitle="Week"\n\n i18n-workWeekViewTitle="kendo.scheduler.workWeekViewTitle|The work week view title."\n workWeekViewTitle="Work Week"\n\n i18n-monthViewTitle="kendo.scheduler.monthViewTitle|The month view title."\n monthViewTitle="Month"\n\n i18n-timelineViewTitle="kendo.scheduler.timelineViewTitle|The timeline view title."\n timelineViewTitle="Timeline"\n\n i18n-timelineWeekViewTitle="kendo.scheduler.timelineWeekViewTitle|The timeline week view title."\n timelineWeekViewTitle="Timeline Week"\n\n i18n-timelineMonthViewTitle="kendo.scheduler.timelineMonthViewTitle|The timeline month view title."\n timelineMonthViewTitle="Timeline Month"\n\n i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."\n agendaViewTitle="Agenda"\n\n i18n-cancel="kendo.scheduler.cancel|The text similar to \'Cancel\' displayed in scheduler."\n cancel="Cancel"\n\n i18n-save="kendo.scheduler.save|The text similar to \'Save\' displayed in scheduler."\n save="Save"\n\n i18n-editorEventTitle="kendo.scheduler.editorEventTitle|The text similar to \'Title\' displayed in the scheduler event editor."\n editorEventTitle=\'Title\'\n\n i18n-editorEventStart="kendo.scheduler.editorEventStart|The text similar to \'Start\' displayed in the scheduler event editor."\n editorEventStart="Start"\n\n i18n-editorEventStartTimeZone="kendo.scheduler.editorEventStartTimeZone|The text similar to \'Start Time Zone\' displayed in the scheduler event editor."\n editorEventStartTimeZone="Start Time Zone"\n\n i18n-editorEventEnd="kendo.scheduler.editorEventEnd|The text similar to \'End\' displayed in the scheduler event editor."\n editorEventEnd="End"\n\n i18n-editorEventEndTimeZone="kendo.scheduler.editorEventEndTimeZone|The text similar to \'End Time Zone\' displayed in the scheduler event editor."\n editorEventEndTimeZone="End Time Zone"\n\n i18n-editorEventAllDay="kendo.scheduler.editorEventAllDay|The text similar to \'All Day event\' displayed in the scheduler event editor."\n editorEventAllDay="All Day Event"\n\n i18n-editorEventDescription="kendo.scheduler.editorEventDescription|The text similar to \'Description\' displayed in the scheduler event editor."\n editorEventDescription="Description"\n\n i18n-editorEventSeparateTimeZones="kendo.scheduler.editorEventSeparateTimeZones|The text similar to \'Use separate Start and End Time Zones\' displayed in the scheduler event editor."\n editorEventSeparateTimeZones="End in different Time Zone"\n\n i18n-editorEventTimeZone="kendo.scheduler.editorEventTimeZone|The text similar to \'Time Zone\' displayed in the scheduler event editor."\n editorEventTimeZone=\'Specify Time Zone\'\n\n i18n-editorTitle="kendo.scheduler.editorTitle|The text similar to \'Event\' displayed as title of the scheduler event editor."\n editorTitle=\'Event\'\n\n i18n-recurrenceEditorRepeat="kendo.scheduler.recurrenceEditorRepeat|The text similar to \'Repeat\' displayed in the scheduler recurrence editor."\n recurrenceEditorRepeat=\'Repeat\'\n\n i18n-recurrenceEditorDailyInterval="kendo.scheduler.recurrenceEditorDailyInterval|The text similar to \'day(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyInterval=\'day(s)\'\n\n i18n-recurrenceEditorDailyRepeatEvery="kendo.scheduler.recurrenceEditorDailyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyInterval="kendo.scheduler.recurrenceEditorWeeklyInterval|The text similar to \'week(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyInterval=\'week(s)\'\n\n i18n-recurrenceEditorWeeklyRepeatEvery="kendo.scheduler.recurrenceEditorWeeklyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyRepeatOn="kendo.scheduler.recurrenceEditorWeeklyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorMonthlyDay="kendo.scheduler.recurrenceEditorMonthlyDay|The text similar to \'Day\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyDay=\'Day\'\n\n i18n-recurrenceEditorMonthlyInterval="kendo.scheduler.recurrenceEditorMonthlyInterval|The text similar to \'month(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyInterval=\'month(s)\'\n\n i18n-recurrenceEditorMonthlyRepeatEvery="kendo.scheduler.recurrenceEditorMonthlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorMonthlyRepeatOn="kendo.scheduler.recurrenceEditorMonthlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyOf="kendo.scheduler.recurrenceEditorYearlyOf|The text similar to \'of\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyOf=\'of\'\n\n i18n-recurrenceEditorYearlyRepeatEvery="kendo.scheduler.recurrenceEditorYearlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorYearlyRepeatOn="kendo.scheduler.recurrenceEditorYearlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyInterval="kendo.scheduler.recurrenceEditorYearlyInterval|The text similar to \'year(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyInterval=\'year(s)\'\n\n i18n-recurrenceEditorFrequenciesDaily="kendo.scheduler.recurrenceEditorFrequenciesDaily|The text similar to \'Daily\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesDaily=\'Daily\'\n\n i18n-recurrenceEditorFrequenciesMonthly="kendo.scheduler.recurrenceEditorFrequenciesMonthly|The text similar to \'Monthly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesMonthly=\'Monthly\'\n\n i18n-recurrenceEditorFrequenciesNever="kendo.scheduler.recurrenceEditorFrequenciesNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesNever=\'Never\'\n\n i18n-recurrenceEditorFrequenciesWeekly="kendo.scheduler.recurrenceEditorFrequenciesWeekly|The text similar to \'Weekly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesWeekly=\'Weekly\'\n\n i18n-recurrenceEditorFrequenciesYearly="kendo.scheduler.recurrenceEditorFrequenciesYearly|The text similar to \'Yearly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesYearly=\'Yearly\'\n\n i18n-recurrenceEditorOffsetPositionsFirst="kendo.scheduler.recurrenceEditorOffsetPositionsFirst|The text similar to \'First\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFirst=\'First\'\n\n i18n-recurrenceEditorOffsetPositionsSecond="kendo.scheduler.recurrenceEditorOffsetPositionsSecond|The text similar to \'Second\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsSecond=\'Second\'\n\n i18n-recurrenceEditorOffsetPositionsThird="kendo.scheduler.recurrenceEditorOffsetPositionsThird|The text similar to \'Third\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsThird=\'Third\'\n\n i18n-recurrenceEditorOffsetPositionsFourth="kendo.scheduler.recurrenceEditorOffsetPositionsFourth|The text similar to \'Fourth\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFourth=\'Fourth\'\n\n i18n-recurrenceEditorOffsetPositionsLast="kendo.scheduler.recurrenceEditorOffsetPositionsLast|The text similar to \'Last\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsLast=\'Last\'\n\n i18n-recurrenceEditorWeekdaysDay="kendo.scheduler.recurrenceEditorWeekdaysDay|The text similar to \'Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysDay=\'Day\'\n\n i18n-recurrenceEditorWeekdaysWeekday="kendo.scheduler.recurrenceEditorWeekdaysWeekday|The text similar to \'Weekday\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekday=\'Weekday\'\n\n i18n-recurrenceEditorWeekdaysWeekendday="kendo.scheduler.recurrenceEditorWeekdaysWeekendday|The text similar to \'Weekend Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekendday=\'Weekend Day\'\n\n i18n-recurrenceEditorEndAfter="kendo.scheduler.recurrenceEditorEndAfter|The text similar to \'After\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndAfter=\'After\'\n\n i18n-recurrenceEditorEndOccurrence="kendo.scheduler.recurrenceEditorEndOccurrence|The text similar to \'occurrence(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOccurrence=\'occurrence(s)\'\n\n i18n-recurrenceEditorEndLabel="kendo.scheduler.recurrenceEditorEndLabel|The text similar to \'End\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndLabel=\'End\'\n\n i18n-recurrenceEditorEndNever="kendo.scheduler.recurrenceEditorEndNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndNever=\'Never\'\n\n i18n-recurrenceEditorEndOn="kendo.scheduler.recurrenceEditorEndOn|The text similar to \'On\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOn=\'On\'\n\n i18n-destroy="kendo.scheduler.destroy|The text of the \'Delete\' button displayed in the scheduler remove confirmation dialog."\n destroy=\'Delete\'\n\n i18n-deleteConfirmation="kendo.scheduler.deleteConfirmation|The text similar to \'Are you sure you want to delete this event?\' displayed in scheduler remove confirmation dialog."\n deleteConfirmation=\'Are you sure you want to delete this event?\'\n\n i18n-editRecurringConfirmation="kendo.scheduler.editRecurringConfirmation|The text similar to \'Do you want to edit only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n editRecurringConfirmation=\'Do you want to edit only this event occurrence or the whole series?\'\n\n i18n-editOccurrence="kendo.scheduler.editOccurrence|The text of the \'Edit current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n editOccurrence=\'Edit current occurrence\'\n\n i18n-editSeries="kendo.scheduler.editSeries|The text of the \'Edit the series\' button displayed in the scheduler recurring confirmation dialog."\n editSeries=\'Edit the series\'\n\n i18n-deleteRecurringConfirmation="kendo.scheduler.deleteRecurringConfirmation|The text similar to \'Do you want to delete only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n deleteRecurringConfirmation=\'Do you want to delete only this event occurrence or the whole series?\'\n\n i18n-deleteOccurrence="kendo.scheduler.deleteOccurrence|The text of the \'Delete current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n deleteOccurrence=\'Delete current occurrence\'\n\n i18n-deleteSeries="kendo.scheduler.deleteSeries|The text similar of the \'Delete the series\' button displayed in the scheduler recurring confirmation dialog."\n deleteSeries=\'Delete the series\'\n\n i18n-deleteDialogTitle="kendo.scheduler.deleteDialogTitle|The title of the remove confirmation dialog, similar to \'Delete Event\'."\n deleteDialogTitle=\'Delete Event\'\n\n i18n-deleteRecurringDialogTitle="kendo.scheduler.deleteRecurringDialogTitle|The title of the recurring remove confirmation dialog, similar to \'Delete Recurring Item\'"\n deleteRecurringDialogTitle=\'Delete Recurring Item\'\n\n i18n-editRecurringDialogTitle="kendo.scheduler.editRecurringDialogTitle|The title of the recurring edit confirmation dialog, similar to \'Edit Recurring Item\'"\n editRecurringDialogTitle=\'Edit Recurring Item\'\n\n i18n-selectView="kendo.scheduler.selectView|The value of the aria-label attribute of the <select> element used for switching the Scheduler views."\n selectView=\'Select View\'\n >\n </ng-container>\n\n <kendo-scheduler-toolbar\n [dateRange]="dateRangeStream"\n [selectedDate]="selectedDateStream"\n [views]="$any(views)"\n [selectedView]="selectedView"\n [template]="toolbarTemplate"\n (navigate)="onNavigationAction($event)"\n [min]="min"\n [max]="max"\n ></kendo-scheduler-toolbar>\n\n <ng-container *ngTemplateOutlet="selectedView?.template">\n </ng-container>\n\n <ng-container #confirmationDialogContainer>\n </ng-container>\n\n <kendo-scheduler-edit-dialog\n [resources]="resources"\n [editTemplate]="editDialogTemplate"\n [timezone]="timezone"\n [weekStart]="weekStart"\n [fields]="modelFields"\n ></kendo-scheduler-edit-dialog>\n\n <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>\n\n <div [loading]="loading" kendoSchedulerLoading>\n </div>\n ',isInline:!0,styles:[".k-scheduler.k-focus { box-shadow: 0 0.5px 0.5px 0.5px rgba(0, 0, 0, .12); }"],components:[{type:k,selector:"kendo-scheduler-toolbar",inputs:["selectedView","views","dateRange","selectedDate","template","min","max"],outputs:["navigate"]},{type:T,selector:"kendo-scheduler-edit-dialog",inputs:["resources","timezone","weekStart","fields","editTemplate"]},{type:J.ResizeSensorComponent,selector:"kendo-resize-sensor",inputs:["rateLimit"],outputs:["resize"]},{type:ve,selector:"[kendoSchedulerLoading]",inputs:["loading"]}],directives:[{type:_r,selector:"[kendoSchedulerLocalizedMessages]"},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],changeDetection:n.ChangeDetectionStrategy.OnPush,encapsulation:n.ViewEncapsulation.None}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Yr,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler",providers:[Ut,Jt,Xt,$t,f,nn,{provide:P.LocalizationService,useExisting:nn},{provide:P.L10N_PREFIX,useValue:"kendo.scheduler"},ct,m,g,v],styles:[".k-scheduler.k-focus { box-shadow: 0 0.5px 0.5px 0.5px rgba(0, 0, 0, .12); }"],encapsulation:h.ViewEncapsulation.None,template:'\n <ng-container kendoSchedulerLocalizedMessages\n i18n-allEvents="kendo.scheduler.allEvents|The All events text displayed in the timeline views when there is no vertical grouping."\n allEvents="All events"\n\n i18n-allDay="kendo.scheduler.allDay|The all day text displayed in the day and week views."\n allDay="all day"\n\n i18n-dateHeader="kendo.scheduler.dateHeader|The date header text displayed in the agenda view."\n dateHeader="Date"\n\n i18n-timeHeader="kendo.scheduler.timeHeader|The time header text displayed in the agenda view."\n timeHeader="Time"\n\n i18n-deleteTitle="kendo.scheduler.deleteTitle|The delete icon title."\n deleteTitle="Delete"\n\n i18n-eventHeader="kendo.scheduler.eventHeader|The event header text displayed in the agenda view."\n eventHeader="Event"\n\n i18n-nextTitle="kendo.scheduler.nextTitle|The title of the navigation next button."\n nextTitle="Next"\n\n i18n-previousTitle="kendo.scheduler.previousTitle|The title of the navigation previous button."\n previousTitle="Previous"\n\n i18n-showFullDay="kendo.scheduler.showFullDay|The text of the show full day button displayed in the footer of the day, week and timeline views."\n showFullDay="Show full day"\n\n i18n-showWorkDay="kendo.scheduler.showWorkDay|The text of the show work day button displayed in the footer of the day, week and timeline views."\n showWorkDay="Show business hours"\n\n i18n-today="kendo.scheduler.today|The today button text displayed in the navigation."\n today="Today"\n\n i18n-calendarToday="kendo.scheduler.calendarToday|The text of today\'s date in the header of the Calendar."\n calendarToday="TODAY"\n\n i18n-dayViewTitle="kendo.scheduler.dayViewTitle|The day view title."\n dayViewTitle="Day"\n\n i18n-multiDayViewTitle="kendo.scheduler.multiDayViewTitle|The multi day view title."\n multiDayViewTitle="Multi-Day"\n\n i18n-weekViewTitle="kendo.scheduler.weekViewTitle|The week view title."\n weekViewTitle="Week"\n\n i18n-workWeekViewTitle="kendo.scheduler.workWeekViewTitle|The work week view title."\n workWeekViewTitle="Work Week"\n\n i18n-monthViewTitle="kendo.scheduler.monthViewTitle|The month view title."\n monthViewTitle="Month"\n\n i18n-timelineViewTitle="kendo.scheduler.timelineViewTitle|The timeline view title."\n timelineViewTitle="Timeline"\n\n i18n-timelineWeekViewTitle="kendo.scheduler.timelineWeekViewTitle|The timeline week view title."\n timelineWeekViewTitle="Timeline Week"\n\n i18n-timelineMonthViewTitle="kendo.scheduler.timelineMonthViewTitle|The timeline month view title."\n timelineMonthViewTitle="Timeline Month"\n\n i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."\n agendaViewTitle="Agenda"\n\n i18n-cancel="kendo.scheduler.cancel|The text similar to \'Cancel\' displayed in scheduler."\n cancel="Cancel"\n\n i18n-save="kendo.scheduler.save|The text similar to \'Save\' displayed in scheduler."\n save="Save"\n\n i18n-editorEventTitle="kendo.scheduler.editorEventTitle|The text similar to \'Title\' displayed in the scheduler event editor."\n editorEventTitle=\'Title\'\n\n i18n-editorEventStart="kendo.scheduler.editorEventStart|The text similar to \'Start\' displayed in the scheduler event editor."\n editorEventStart="Start"\n\n i18n-editorEventStartTimeZone="kendo.scheduler.editorEventStartTimeZone|The text similar to \'Start Time Zone\' displayed in the scheduler event editor."\n editorEventStartTimeZone="Start Time Zone"\n\n i18n-editorEventEnd="kendo.scheduler.editorEventEnd|The text similar to \'End\' displayed in the scheduler event editor."\n editorEventEnd="End"\n\n i18n-editorEventEndTimeZone="kendo.scheduler.editorEventEndTimeZone|The text similar to \'End Time Zone\' displayed in the scheduler event editor."\n editorEventEndTimeZone="End Time Zone"\n\n i18n-editorEventAllDay="kendo.scheduler.editorEventAllDay|The text similar to \'All Day event\' displayed in the scheduler event editor."\n editorEventAllDay="All Day Event"\n\n i18n-editorEventDescription="kendo.scheduler.editorEventDescription|The text similar to \'Description\' displayed in the scheduler event editor."\n editorEventDescription="Description"\n\n i18n-editorEventSeparateTimeZones="kendo.scheduler.editorEventSeparateTimeZones|The text similar to \'Use separate Start and End Time Zones\' displayed in the scheduler event editor."\n editorEventSeparateTimeZones="End in different Time Zone"\n\n i18n-editorEventTimeZone="kendo.scheduler.editorEventTimeZone|The text similar to \'Time Zone\' displayed in the scheduler event editor."\n editorEventTimeZone=\'Specify Time Zone\'\n\n i18n-editorTitle="kendo.scheduler.editorTitle|The text similar to \'Event\' displayed as title of the scheduler event editor."\n editorTitle=\'Event\'\n\n i18n-recurrenceEditorRepeat="kendo.scheduler.recurrenceEditorRepeat|The text similar to \'Repeat\' displayed in the scheduler recurrence editor."\n recurrenceEditorRepeat=\'Repeat\'\n\n i18n-recurrenceEditorDailyInterval="kendo.scheduler.recurrenceEditorDailyInterval|The text similar to \'day(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyInterval=\'day(s)\'\n\n i18n-recurrenceEditorDailyRepeatEvery="kendo.scheduler.recurrenceEditorDailyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyInterval="kendo.scheduler.recurrenceEditorWeeklyInterval|The text similar to \'week(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyInterval=\'week(s)\'\n\n i18n-recurrenceEditorWeeklyRepeatEvery="kendo.scheduler.recurrenceEditorWeeklyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyRepeatOn="kendo.scheduler.recurrenceEditorWeeklyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorMonthlyDay="kendo.scheduler.recurrenceEditorMonthlyDay|The text similar to \'Day\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyDay=\'Day\'\n\n i18n-recurrenceEditorMonthlyInterval="kendo.scheduler.recurrenceEditorMonthlyInterval|The text similar to \'month(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyInterval=\'month(s)\'\n\n i18n-recurrenceEditorMonthlyRepeatEvery="kendo.scheduler.recurrenceEditorMonthlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorMonthlyRepeatOn="kendo.scheduler.recurrenceEditorMonthlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyOf="kendo.scheduler.recurrenceEditorYearlyOf|The text similar to \'of\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyOf=\'of\'\n\n i18n-recurrenceEditorYearlyRepeatEvery="kendo.scheduler.recurrenceEditorYearlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorYearlyRepeatOn="kendo.scheduler.recurrenceEditorYearlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyInterval="kendo.scheduler.recurrenceEditorYearlyInterval|The text similar to \'year(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyInterval=\'year(s)\'\n\n i18n-recurrenceEditorFrequenciesDaily="kendo.scheduler.recurrenceEditorFrequenciesDaily|The text similar to \'Daily\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesDaily=\'Daily\'\n\n i18n-recurrenceEditorFrequenciesMonthly="kendo.scheduler.recurrenceEditorFrequenciesMonthly|The text similar to \'Monthly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesMonthly=\'Monthly\'\n\n i18n-recurrenceEditorFrequenciesNever="kendo.scheduler.recurrenceEditorFrequenciesNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesNever=\'Never\'\n\n i18n-recurrenceEditorFrequenciesWeekly="kendo.scheduler.recurrenceEditorFrequenciesWeekly|The text similar to \'Weekly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesWeekly=\'Weekly\'\n\n i18n-recurrenceEditorFrequenciesYearly="kendo.scheduler.recurrenceEditorFrequenciesYearly|The text similar to \'Yearly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesYearly=\'Yearly\'\n\n i18n-recurrenceEditorOffsetPositionsFirst="kendo.scheduler.recurrenceEditorOffsetPositionsFirst|The text similar to \'First\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFirst=\'First\'\n\n i18n-recurrenceEditorOffsetPositionsSecond="kendo.scheduler.recurrenceEditorOffsetPositionsSecond|The text similar to \'Second\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsSecond=\'Second\'\n\n i18n-recurrenceEditorOffsetPositionsThird="kendo.scheduler.recurrenceEditorOffsetPositionsThird|The text similar to \'Third\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsThird=\'Third\'\n\n i18n-recurrenceEditorOffsetPositionsFourth="kendo.scheduler.recurrenceEditorOffsetPositionsFourth|The text similar to \'Fourth\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFourth=\'Fourth\'\n\n i18n-recurrenceEditorOffsetPositionsLast="kendo.scheduler.recurrenceEditorOffsetPositionsLast|The text similar to \'Last\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsLast=\'Last\'\n\n i18n-recurrenceEditorWeekdaysDay="kendo.scheduler.recurrenceEditorWeekdaysDay|The text similar to \'Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysDay=\'Day\'\n\n i18n-recurrenceEditorWeekdaysWeekday="kendo.scheduler.recurrenceEditorWeekdaysWeekday|The text similar to \'Weekday\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekday=\'Weekday\'\n\n i18n-recurrenceEditorWeekdaysWeekendday="kendo.scheduler.recurrenceEditorWeekdaysWeekendday|The text similar to \'Weekend Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekendday=\'Weekend Day\'\n\n i18n-recurrenceEditorEndAfter="kendo.scheduler.recurrenceEditorEndAfter|The text similar to \'After\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndAfter=\'After\'\n\n i18n-recurrenceEditorEndOccurrence="kendo.scheduler.recurrenceEditorEndOccurrence|The text similar to \'occurrence(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOccurrence=\'occurrence(s)\'\n\n i18n-recurrenceEditorEndLabel="kendo.scheduler.recurrenceEditorEndLabel|The text similar to \'End\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndLabel=\'End\'\n\n i18n-recurrenceEditorEndNever="kendo.scheduler.recurrenceEditorEndNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndNever=\'Never\'\n\n i18n-recurrenceEditorEndOn="kendo.scheduler.recurrenceEditorEndOn|The text similar to \'On\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOn=\'On\'\n\n i18n-destroy="kendo.scheduler.destroy|The text of the \'Delete\' button displayed in the scheduler remove confirmation dialog."\n destroy=\'Delete\'\n\n i18n-deleteConfirmation="kendo.scheduler.deleteConfirmation|The text similar to \'Are you sure you want to delete this event?\' displayed in scheduler remove confirmation dialog."\n deleteConfirmation=\'Are you sure you want to delete this event?\'\n\n i18n-editRecurringConfirmation="kendo.scheduler.editRecurringConfirmation|The text similar to \'Do you want to edit only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n editRecurringConfirmation=\'Do you want to edit only this event occurrence or the whole series?\'\n\n i18n-editOccurrence="kendo.scheduler.editOccurrence|The text of the \'Edit current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n editOccurrence=\'Edit current occurrence\'\n\n i18n-editSeries="kendo.scheduler.editSeries|The text of the \'Edit the series\' button displayed in the scheduler recurring confirmation dialog."\n editSeries=\'Edit the series\'\n\n i18n-deleteRecurringConfirmation="kendo.scheduler.deleteRecurringConfirmation|The text similar to \'Do you want to delete only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n deleteRecurringConfirmation=\'Do you want to delete only this event occurrence or the whole series?\'\n\n i18n-deleteOccurrence="kendo.scheduler.deleteOccurrence|The text of the \'Delete current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n deleteOccurrence=\'Delete current occurrence\'\n\n i18n-deleteSeries="kendo.scheduler.deleteSeries|The text similar of the \'Delete the series\' button displayed in the scheduler recurring confirmation dialog."\n deleteSeries=\'Delete the series\'\n\n i18n-deleteDialogTitle="kendo.scheduler.deleteDialogTitle|The title of the remove confirmation dialog, similar to \'Delete Event\'."\n deleteDialogTitle=\'Delete Event\'\n\n i18n-deleteRecurringDialogTitle="kendo.scheduler.deleteRecurringDialogTitle|The title of the recurring remove confirmation dialog, similar to \'Delete Recurring Item\'"\n deleteRecurringDialogTitle=\'Delete Recurring Item\'\n\n i18n-editRecurringDialogTitle="kendo.scheduler.editRecurringDialogTitle|The title of the recurring edit confirmation dialog, similar to \'Edit Recurring Item\'"\n editRecurringDialogTitle=\'Edit Recurring Item\'\n\n i18n-selectView="kendo.scheduler.selectView|The value of the aria-label attribute of the <select> element used for switching the Scheduler views."\n selectView=\'Select View\'\n >\n </ng-container>\n\n <kendo-scheduler-toolbar\n [dateRange]="dateRangeStream"\n [selectedDate]="selectedDateStream"\n [views]="$any(views)"\n [selectedView]="selectedView"\n [template]="toolbarTemplate"\n (navigate)="onNavigationAction($event)"\n [min]="min"\n [max]="max"\n ></kendo-scheduler-toolbar>\n\n <ng-container *ngTemplateOutlet="selectedView?.template">\n </ng-container>\n\n <ng-container #confirmationDialogContainer>\n </ng-container>\n\n <kendo-scheduler-edit-dialog\n [resources]="resources"\n [editTemplate]="editDialogTemplate"\n [timezone]="timezone"\n [weekStart]="weekStart"\n [fields]="modelFields"\n ></kendo-scheduler-edit-dialog>\n\n <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>\n\n <div [loading]="loading" kendoSchedulerLoading>\n </div>\n '}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:m},{type:g},{type:Ut},{type:Jt},{type:o.IntlService},{type:n.ChangeDetectorRef},{type:n.NgZone},{type:v},{type:r.LocalizationService},{type:Xt},{type:n.Renderer2},{type:f}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-widget"]},{type:h.HostBinding,args:["class.k-scheduler"]},{type:h.HostBinding,args:["class.k-floatwrap"]}],ariaRole:[{type:h.HostBinding,args:["attr.role"]}],rtl:[{type:h.HostBinding,args:["class.k-rtl"]}],dir:[{type:h.HostBinding,args:["attr.dir"]}],selectedViewIndex:[{type:h.Input}],editable:[{type:h.Input}],selectable:[{type:h.Input}],min:[{type:h.Input}],max:[{type:h.Input}],eventHeight:[{type:h.Input}],columnWidth:[{type:h.Input}],showWorkHours:[{type:h.Input}],startTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],weekStart:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],slotFill:[{type:h.Input}],scrollTime:[{type:h.Input}],group:[{type:h.Input}],resources:[{type:h.Input}],loading:[{type:h.Input}],timezone:[{type:h.Input}],events:[{type:h.Input}],selectedDate:[{type:h.Input}],modelFields:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],isSlotSelected:[{type:h.Input}],selectedViewIndexChange:[{type:h.Output}],navigate:[{type:h.Output}],dateChange:[{type:h.Output}],slotClick:[{type:h.Output}],slotDblClick:[{type:h.Output}],create:[{type:h.Output}],eventClick:[{type:h.Output}],eventDblClick:[{type:h.Output}],eventKeydown:[{type:h.Output}],cancel:[{type:h.Output}],save:[{type:h.Output}],remove:[{type:h.Output}],resizeStart:[{type:h.Output}],resize:[{type:h.Output}],resizeEnd:[{type:h.Output}],dragStart:[{type:h.Output}],drag:[{type:h.Output}],dragEnd:[{type:h.Output}],slotDragStart:[{type:h.Output}],slotDrag:[{type:h.Output}],slotDragEnd:[{type:h.Output}],pdfExport:[{type:h.Output}],editDialogTemplate:[{type:h.ContentChild,args:[Kt,{static:!1}]}],toolbarTemplate:[{type:h.ContentChild,args:[lt,{static:!1}]}],views:[{type:h.ContentChildren,args:[d]}],resizeSensor:[{type:h.ViewChild,args:[l.ResizeSensorComponent,{static:!0}]}],confirmationDialogContainerRef:[{type:h.ViewChild,args:["confirmationDialogContainer",{read:h.ViewContainerRef,static:!0}]}],loadingComponent:[{type:h.ViewChild,args:[ve,{static:!0}]}],allDayEventTemplate:[{type:h.ContentChildren,args:[mt]}],eventTemplate:[{type:h.ContentChildren,args:[ft]}],timeSlotTemplate:[{type:h.ContentChildren,args:[It]}],minorTimeHeaderTemplate:[{type:h.ContentChildren,args:[Dt]}],majorTimeHeaderTemplate:[{type:h.ContentChildren,args:[kt]}],monthDaySlotTemplate:[{type:h.ContentChildren,args:[Tt]}],dateHeaderTemplate:[{type:h.ContentChildren,args:[yt]}],allDaySlotTemplate:[{type:h.ContentChildren,args:[gt]}],groupHeaderTemplate:[{type:h.ContentChildren,args:[vt]}],agendaDateTemplate:[{type:h.ContentChildren,args:[u]}],agendaTimeTemplate:[{type:h.ContentChildren,args:[ht]}]}});Object.defineProperty(Kr.prototype,"data",{set:function(e){this.originalData=e||[],this.localDataChangesService&&(this.localDataChangesService.data=e),this.scheduler.events=this.process()},enumerable:!1,configurable:!0}),Kr.prototype.ngOnInit=function(){var t=this;this.subscription=this.scheduler.dateChange.subscribe(function(e){return t.onDateChange(e)})},Kr.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe(),this.dataChangedSubscription&&this.dataChangedSubscription.unsubscribe()},Kr.prototype.rebind=function(){this.data=this.originalData,this.changeDetector.markForCheck()},Kr.prototype.process=function(){var s,l,c=this;return this.dateRange?(s=[],l=this.scheduler.modelFields,this.originalData.forEach(function(e){var n,r,t,i,o,a;x(e,l.recurrenceRule)?(n=e,r=l,t=c.dateRange,i=c.scheduler.timezone,o=c.scheduler.weekStart,(o=_.parseRule({recurrenceRule:x(n,r.recurrenceRule),weekStart:o})).start||(a=x(n,r.start),o.start=b.ZonedDate.fromLocalDate(a,i)),o.end||(a=x(n,r.end),o.end=b.ZonedDate.fromLocalDate(a,i)),(a=x(n,r.recurrenceExceptions))&&(o.exceptionDates=a.map(function(e){return b.ZonedDate.fromLocalDate(e,i)})),a=xn(t.start),t=xn(t.end),t=(o=_.expand(o,{rangeStart:b.ZonedDate.fromUTCDate(a,i),rangeEnd:b.ZonedDate.fromUTCDate(t,i)})).events.length?(a=o.events.map(function(e){var t=Lt(n);return At(t,r.id,0),At(t,r.recurrenceId,x(n,r.id)),At(t,r.start,e.start.toLocalDate()),At(t,r.end,e.end.toLocalDate()),t}),de([n],ce(a))):[],s.push.apply(s,de([],ce(t)))):s.push(e)}),s):[]},Kr.prototype.onDateChange=function(e){this.dateRange=e.dateRange,this.rebind()};ee=Kr;function Kr(e,t,n,r){this.scheduler=e,this.changeDetector=t,this.intl=n,this.localDataChangesService=r,this.originalData=[],r&&(this.dataChangedSubscription=this.localDataChangesService.changes.subscribe(this.rebind.bind(this)))}ee.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ee,deps:[{token:Yr},{token:n.ChangeDetectorRef},{token:o.IntlService},{token:$t}],target:n.ɵɵFactoryTarget.Directive}),ee.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ee,selector:"[kendoSchedulerBinding]",inputs:{data:["kendoSchedulerBinding","data"]},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ee,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerBinding]"}]}],ctorParameters:function(){return[{type:Yr},{type:n.ChangeDetectorRef},{type:o.IntlService},{type:$t}]},propDecorators:{data:[{type:h.Input,args:["kendoSchedulerBinding"]}]}});c(Qr,$r=I),Object.defineProperty(Qr.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var $r,Xr=Qr;function Qr(e){var t=$r.call(this)||this;return t.service=e,t}Xr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xr,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Xr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Xr,selector:"kendo-scheduler-messages",providers:[{provide:I,useExisting:h.forwardRef(function(){return Xr})}],usesInheritance:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xr,decorators:[{type:h.Component,args:[{providers:[{provide:I,useExisting:h.forwardRef(function(){return Xr})}],selector:"kendo-scheduler-messages",template:""}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});function Jr(e){return null}var ei,ie=[Kn,lt,Xn],I=function(){},t=(I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:[],target:n.ɵɵFactoryTarget.NgModule}),I.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,declarations:[k,Kn,lt,Xn],imports:[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule],exports:[k,Kn,lt,Xn]}),I.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,imports:[[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule],exports:de([k],ce(ie)),declarations:de([k],ce(ie))}]}]}),c(ti,ei=d),Object.defineProperty(ti.prototype,"viewSlotClass",{get:function(){return y(this.slotClass)?this.slotClass:this.schedulerOptions.slotClass||Jr},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewEventClass",{get:function(){return(y(this.eventClass)?this:this.schedulerOptions).eventClass},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewEventStyles",{get:function(){return(y(this.eventStyles)?this:this.schedulerOptions).eventStyles},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewHighlightOngoingEvents",{get:function(){return(y(this.highlightOngoingEvents)?this:this.schedulerOptions).highlightOngoingEvents},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewWeekStart",{get:function(){return this.schedulerOptions.weekStart},enumerable:!1,configurable:!0}),ti.prototype.ngOnChanges=function(e){this.viewState.notifyOptionsChange()},ti.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},ti.prototype.optionsChange=function(e){this.schedulerOptions=e},ti);function ti(e,t,n,r){var i=ei.call(this)||this;return i.localization=e,i.changeDetector=t,i.viewContext=n,i.viewState=r,i.schedulerOptions={},i.subs=i.localization.changes.subscribe(function(){t.markForCheck()}),i.subs.add(i.viewContext.optionsChange.subscribe(i.optionsChange.bind(i))),i}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),t.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:t,inputs:{slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",highlightOngoingEvents:"highlightOngoingEvents"},queries:[{propertyName:"eventTemplate",first:!0,predicate:ft,descendants:!0},{propertyName:"groupHeaderTemplate",first:!0,predicate:vt,descendants:!0}],viewQueries:[{propertyName:"template",first:!0,predicate:["content"],descendants:!0,static:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],template:[{type:h.ViewChild,args:["content",{static:!0}]}],eventTemplate:[{type:h.ContentChild,args:[ft,{static:!1}]}],groupHeaderTemplate:[{type:h.ContentChild,args:[vt,{static:!1}]}]}});function ni(n){return function(t){return function(e){return n(e,t)}}}var ri=ni(Y.orderBy),ii=ni(Y.groupBy),oi=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return function(e){return t.reduceRight(function(e,t){return t(e)},e)}};si.prototype[qt]=function(){return{next:function(){return{done:!0,value:null}}}},si.prototype.toString=function(){return"Empty Iterator"};var ai=si;function si(){}var li=0,ci=(di.empty=function(){return new ai},di.prototype[qt]=function(){return this.createIterator(this.events)},di.prototype.itemAt=function(e){var t,n,r=this.createIterator(this.events),i=0;do{if((n=r.next())&&i===e)return"group"===(t=n.value).type?t.dataItem.items[0]:t.dataItem}while(i++,n)},di.prototype.toString=function(){return this.events.toString()},di);function di(e,t,n){var o;this.start=e,this.end=t,this.events=n,this.createIterator=oi(function(t){var n,r,i;return le(this,function(e){switch(e.label){case 0:n=0,e.label=1;case 1:return n<t.length?[4,{type:"group",dataItem:r=t[n],rowSpan:r.items.length,elementId:"k-scheduler-"+o.counter+"-"+n}]:[3,7];case 2:e.sent(),i=1,e.label=3;case 3:return i<r.items.length?[4,{type:"event",dataItem:r.items[i],elementId:"k-scheduler-"+o.counter+"-"+n+"-item-"+i}]:[3,6];case 4:e.sent(),e.label=5;case 5:return i++,[3,3];case 6:return n++,[3,1];case 7:return[2]}})},((o=this).start,this.end,oi(ii([{field:"startDate"}]),ri([{field:"start",dir:"asc"},{field:"end",dir:"asc"}])))),this.counter=li,li++}function ui(e){var t=e.start,n=e.end,n=(e=void 0!==(e=e.isAllDay)&&e)?Sn(n):n,n=Math.ceil((n-+Sn(t))/b.MS_PER_DAY);return e?n+1:n}function pi(n){var r=n.length;return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r===e.length?n.apply(null,e):pi(n.bind.apply(n,de([null],ce(e))))}}function hi(e,t){return n=ui(e)-1,Array.from(new Array(n).keys()).reduce((i=e,o=t,function(e,t,n,r){return e.concat(oi(fi,mi(gi(o,e),i.end),yi(n===r.length-1))(i))}),[]);var i,o,n}var mi=function(t,n){return function(e){return Object.assign(Object.assign({},e),{start:Sn(t),end:e.tail&&!e.isAllDay?n:In(t,1),startDate:Sn(t)})}},gi=function(e,t){return t.length?t[t.length-1].end:e},yi=function(t){return function(e){return t&&(e.tail=!0),e}},fi=function(e){return e.tail||(e.mid=!0),e},vi=pi(function(t,n,e){for(var r=[],i=0;i<e.length;i++){var o=Object.assign({},e[i]);o.startDate=Sn(o.start),o.start>=t&&o.start<=n&&r.push(o),1<ui(o)&&(o.end=In(o.startDate,1),o.head=!0,r.push.apply(r,de([],ce(hi(Object.assign({},e[i]),o.end).filter(function(e){return Sn(e.end)<=n&&e.start>=t})))))}return r});function ki(e,t){for(var n,r,i,o,a=t.taskResources,s=t.resourceGroups,l=t.spans,c=t.allResources,t=t.dateRange,d=s||[{}],u=wn(t.start),p=wn(t.end),h=0;h<e.length;h++){var m=e[h],g=m.event;if(vn(m.start.toUTCDate(),m.end.toUTCDate(),u,p)){var y=Hn(g,{taskResources:a,hasGroups:s&&0<s.length,spans:l,allResources:c});if(y.length&&0<=y[0].leafIdx)for(var f=0;f<y.length;f++){var v=y[f],k=(k=m,n=v.leafIdx,r=v.resources,i=v.color,o=void 0,{event:o=k.event,start:k.start.toUTCDate(),end:k.end.toUTCDate(),title:o.title,isAllDay:o.isAllDay,color:i,resourceIdx:n,resources:r});(d[v.leafIdx].tasks=d[v.leafIdx].tasks||[]).push(k)}}}if(s){var D=a,T=d.filter(function(e){return e.tasks&&e.tasks.length});if(!T.length)return[];for(var I=T[0].resources.map(function(e){return{value:e,span:0,groupIdx:0}}),b=wn(t.start),w=wn(t.end),S=0;S<T.length;S++)for(var x=T[S],C=(x.tasks=vi(b,w,x.tasks),x.tasks.length),E=(x.tasks=new ci(b,w,x.tasks),!1),R=0;R<D.length;R++){var O,F=I[R];F.value!==x.resources[R]||E?(F.value=x.resources[R],(O=T[F.groupIdx]).spans=O.spans||[],O.spans[R]=F.span,F.span=C,F.groupIdx=S,E=!0):F.span+=C}return I.forEach(function(e,t){var n=T[e.groupIdx];n.spans=n.spans||[],n.spans[t]=e.span}),T}return d[0].tasks=new ci(u,p,vi(u,p,d[0].tasks||[])),d}Object.defineProperty(Di.prototype,"dateMessage",{get:function(){return this.localization.get("dateHeader")},enumerable:!1,configurable:!0}),Object.defineProperty(Di.prototype,"timeMessage",{get:function(){return this.localization.get("timeHeader")},enumerable:!1,configurable:!0}),Object.defineProperty(Di.prototype,"eventMessage",{get:function(){return this.localization.get("eventHeader")},enumerable:!1,configurable:!0});k=Di;function Di(e){this.localization=e,this.classes=!0}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),k.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"[kendoSchedulerAgendaHeader]",inputs:{resources:"resources"},host:{properties:{"class.k-scheduler-header":"this.classes","class.k-state-default":"this.classes"}},ngImport:n,template:'\n <div class="k-scheduler-header-wrap">\n <table class="k-scheduler-table" role="rowgroup">\n <tbody role="none">\n <tr role="row">\n <th *ngFor="let resource of resources" class="k-scheduler-groupcolumn" role="columnheader"></th>\n <th class="k-scheduler-datecolumn" role="columnheader">{{ dateMessage }}</th>\n <th class="k-scheduler-timecolumn" role="columnheader">{{ timeMessage }}</th>\n <th role="columnheader">{{ eventMessage }}</th>\n </tr>\n </tbody>\n </table>\n </div>\n ',isInline:!0,directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaHeader]",template:'\n <div class="k-scheduler-header-wrap">\n <table class="k-scheduler-table" role="rowgroup">\n <tbody role="none">\n <tr role="row">\n <th *ngFor="let resource of resources" class="k-scheduler-groupcolumn" role="columnheader"></th>\n <th class="k-scheduler-datecolumn" role="columnheader">{{ dateMessage }}</th>\n <th class="k-scheduler-timecolumn" role="columnheader">{{ timeMessage }}</th>\n <th role="columnheader">{{ eventMessage }}</th>\n </tr>\n </tbody>\n </table>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService}]},propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-header"]},{type:h.HostBinding,args:["class.k-state-default"]}],resources:[{type:h.Input}]}});Object.defineProperty(Ti.prototype,"rowSpan",{get:function(){return this.item.rowSpan},enumerable:!1,configurable:!0}),Object.defineProperty(Ti.prototype,"itemDate",{get:function(){return b.toLocalDate(this.item.dataItem.value)},enumerable:!1,configurable:!0});var C=Ti;function Ti(){this.classes=!0,this.roleAttribute="rowheader"}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[kendoSchedulerAgendaHeaderItem]",inputs:{item:["kendoSchedulerAgendaHeaderItem","item"],agendaDateTemplate:"agendaDateTemplate"},host:{properties:{"class.k-scheduler-datecolumn":"this.classes","attr.role":"this.roleAttribute","attr.rowspan":"this.rowSpan"}},ngImport:n,template:'\n <ng-container *ngIf="!agendaDateTemplate">\n <strong class="k-scheduler-agendaday">{{itemDate | kendoDate: \'dd\'}}</strong>\n <em class="k-scheduler-agendaweek">{{itemDate | kendoDate: \'EEEE\'}}</em>\n <span class="k-scheduler-agendadate">{{itemDate | kendoDate: \'y\'}}</span>\n </ng-container>\n <ng-container *ngIf="agendaDateTemplate" [ngTemplateOutlet]="agendaDateTemplate"\n [ngTemplateOutletContext]="{ date: itemDate }">\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],pipes:{kendoDate:o.DatePipe},changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaHeaderItem]",template:'\n <ng-container *ngIf="!agendaDateTemplate">\n <strong class="k-scheduler-agendaday">{{itemDate | kendoDate: \'dd\'}}</strong>\n <em class="k-scheduler-agendaweek">{{itemDate | kendoDate: \'EEEE\'}}</em>\n <span class="k-scheduler-agendadate">{{itemDate | kendoDate: \'y\'}}</span>\n </ng-container>\n <ng-container *ngIf="agendaDateTemplate" [ngTemplateOutlet]="agendaDateTemplate"\n [ngTemplateOutletContext]="{ date: itemDate }">\n </ng-container>\n '}]}],propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-datecolumn"]}],roleAttribute:[{type:h.HostBinding,args:["attr.role"]}],rowSpan:[{type:h.HostBinding,args:["attr.rowspan"]}],item:[{type:h.Input,args:["kendoSchedulerAgendaHeaderItem"]}],agendaDateTemplate:[{type:h.Input}]}});Object.defineProperty(bi.prototype,"eventTitle",{get:function(){return _n(b.toLocalDate(this.item.start),b.toLocalDate(this.item.end),this.item.isAllDay,this.localeId)+", "+this.item.event.title},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"eventColor",{get:function(){return this.item.color},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"deleteMessage",{get:function(){return this.localization.get("deleteTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"isRecurrence",{get:function(){return zn(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"isRecurrenceException",{get:function(){return An(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"removable",{get:function(){return this.editable&&!1!==this.editable.remove},enumerable:!1,configurable:!0});var Ii=bi;function bi(e,t){this.localization=e,this.localeId=t}Ii.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,deps:[{token:r.LocalizationService},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),Ii.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ii,selector:"[kendoSchedulerAgendaTaskItem]",inputs:{item:["kendoSchedulerAgendaTaskItem","item"],color:"color",eventTemplate:"eventTemplate",editable:"editable"},host:{properties:{"attr.aria-label":"this.eventTitle"}},ngImport:n,template:'\n <div class="k-task" [title]="item.title">\n <span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n <ng-container *ngIf="!eventTemplate">\n {{item?.title }}\n </ng-container>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: item.resources }">\n </ng-container>\n\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n </div>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaTaskItem]",template:'\n <div class="k-task" [title]="item.title">\n <span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n <ng-container *ngIf="!eventTemplate">\n {{item?.title }}\n </ng-container>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: item.resources }">\n </ng-container>\n\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]},propDecorators:{item:[{type:h.Input,args:["kendoSchedulerAgendaTaskItem"]}],color:[{type:h.Input}],eventTemplate:[{type:h.Input}],editable:[{type:h.Input}],eventTitle:[{type:h.HostBinding,args:["attr.aria-label"]}]}});wi.prototype.extractDataItem=function(e){return"group"===e.type?e.dataItem.items[0]:e.dataItem},wi.prototype.formatTime=function(e){var t;return e.isAllDay?this.localization.get("allDay"):(t="{0:t}-{1:t}",e.head?t="{0:t}":e.tail&&(t="{1:t}"),this.intlService.format(t,b.toLocalDate(e.start),b.toLocalDate(e.end)))},wi.prototype.trackByFn=function(e,t){return e},wi.prototype.cellClasses=function(e){var e=this.extractDataItem(e),t=[];return this.slotClass&&(t=t.concat(Gn(this.slotClass({start:e.start,end:e.end,resources:e.resources,event:e.event})))),t=this.eventClass?t.concat(Gn(this.eventClass({event:e.event,resources:e.resources}))):t},wi.prototype.getEventStyles=function(e){if(this.eventStyles)return e=this.extractDataItem(e),this.eventStyles({event:e.event,resources:e.resources})};var E=wi;function wi(e,t){this.intlService=e,this.localization=t,this.classes=!0}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:o.IntlService},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),E.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"[kendoSchedulerAgendaList]",inputs:{tasks:"tasks",eventTemplate:"eventTemplate",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",agendaTimeTemplate:"agendaTimeTemplate",agendaDateTemplate:"agendaDateTemplate",editable:"editable"},host:{properties:{"class.k-scheduler-content":"this.classes"}},ngImport:n,template:'\n <table class="k-scheduler-table" role="none">\n <tbody role="rowgroup">\n <ng-container *ngFor="let group of tasks; let groupIndex = index;">\n <tr *ngFor="let item of group.tasks; let index = index; trackBy: trackByFn" role="row">\n <ng-container *ngFor="let resource of group.resources; let resourceIndex = index">\n <td *ngIf="group.spans[resourceIndex] && index === 0" class="k-scheduler-groupcolumn" [attr.rowspan]="group.spans[resourceIndex]" role="rowheader">\n {{ resource }}\n </td>\n </ng-container>\n <td *ngIf="item.type === \'group\'"\n [kendoSchedulerAgendaHeaderItem]="item"\n [agendaDateTemplate]="agendaDateTemplate">\n </td>\n <td class="k-scheduler-timecolumn" role="gridcell">\n <div *ngIf="!agendaTimeTemplate">\n <span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>\n {{ formatTime(extractDataItem(item)) }}\n <span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>\n </div>\n <ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"\n [ngTemplateOutletContext]="extractDataItem(item)">\n </ng-container>\n </td>\n <td [attr.data-group-index]="groupIndex" [attr.data-task-index]="index" role="gridcell"\n [ngClass]="cellClasses(item)" [ngStyle]="getEventStyles(item)"\n [kendoSchedulerFocusIndex]="groupIndex"\n [id]="item.elementId"\n [kendoSchedulerAgendaTaskItem]="extractDataItem(item)"\n [editable]="editable"\n [eventTemplate]="eventTemplate"\n ></td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n ',isInline:!0,components:[{type:C,selector:"[kendoSchedulerAgendaHeaderItem]",inputs:["kendoSchedulerAgendaHeaderItem","agendaDateTemplate"]},{type:Ii,selector:"[kendoSchedulerAgendaTaskItem]",inputs:["kendoSchedulerAgendaTaskItem","color","eventTemplate","editable"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerAgendaList]",template:'\n <table class="k-scheduler-table" role="none">\n <tbody role="rowgroup">\n <ng-container *ngFor="let group of tasks; let groupIndex = index;">\n <tr *ngFor="let item of group.tasks; let index = index; trackBy: trackByFn" role="row">\n <ng-container *ngFor="let resource of group.resources; let resourceIndex = index">\n <td *ngIf="group.spans[resourceIndex] && index === 0" class="k-scheduler-groupcolumn" [attr.rowspan]="group.spans[resourceIndex]" role="rowheader">\n {{ resource }}\n </td>\n </ng-container>\n <td *ngIf="item.type === \'group\'"\n [kendoSchedulerAgendaHeaderItem]="item"\n [agendaDateTemplate]="agendaDateTemplate">\n </td>\n <td class="k-scheduler-timecolumn" role="gridcell">\n <div *ngIf="!agendaTimeTemplate">\n <span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>\n {{ formatTime(extractDataItem(item)) }}\n <span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>\n </div>\n <ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"\n [ngTemplateOutletContext]="extractDataItem(item)">\n </ng-container>\n </td>\n <td [attr.data-group-index]="groupIndex" [attr.data-task-index]="index" role="gridcell"\n [ngClass]="cellClasses(item)" [ngStyle]="getEventStyles(item)"\n [kendoSchedulerFocusIndex]="groupIndex"\n [id]="item.elementId"\n [kendoSchedulerAgendaTaskItem]="extractDataItem(item)"\n [editable]="editable"\n [eventTemplate]="eventTemplate"\n ></td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService}]},propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-content"]}],tasks:[{type:h.Input}],eventTemplate:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],agendaTimeTemplate:[{type:h.Input}],agendaDateTemplate:[{type:h.Input}],editable:[{type:h.Input}]}});Object.defineProperty(xi.prototype,"eventTemplateRef",{get:function(){return this.eventTemplate||(this.schedulerEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(xi.prototype,"agendaTimeTemplateRef",{get:function(){return this.agendaTimeTemplate||(this.schedulerAgendaTimeTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(xi.prototype,"agendaDateTemplateRef",{get:function(){return this.agendaDateTemplate||(this.schedulerAgendaDateTemplate||{}).templateRef},enumerable:!1,configurable:!0}),xi.prototype.ngOnInit=function(){var n=this;this.updateContentHeight=this.updateContentHeight.bind(this),this.subs.add(this.viewContext.selectedDate.subscribe(this.onSelectDate.bind(this))),this.subs.add(this.viewContext.action.subscribe(this.onAction.bind(this))),this.subs.add(this.viewContext.execute.subscribe(this.execute.bind(this))),this.subs.add(this.viewContext.resize.subscribe(this.updateContentHeight)),this.subs.add(p.combineLatest([this.viewContext.items,this.viewState.dateRange]).pipe(N.map(function(e){var e=ce(e,2),t=e[0],e=e[1];return n.items=t,n.range=e,n.createEventGroups()})).subscribe(function(e){n.tasks.next(e)})),this.subs.add(this.viewContext.optionsChange.subscribe(this.optionsChange.bind(this)));this.subs.add(p.combineLatest(this.tasks,this.localization.changes).pipe(N.switchMap(function(){return n.zone.onStable.pipe(N.take(1))})).subscribe(this.updateContentHeight)),this.subs.add(this.pdfService.createElement.subscribe(this.createPDFElement.bind(this)))},xi.prototype.ngOnChanges=function(e){l.anyChanged(["selectedDateFormat","selectedShortDateFormat","numberOfDays"],e)&&this.viewState.notifyDateRange(this.dateRange(this.selectedDate))},xi.prototype.ngAfterViewInit=function(){var e,t=this;this.element&&(e=this.content.nativeElement,this.zone.runOutsideAngular(function(){t.subs.add(p.merge(p.fromEvent(e,"click"),p.fromEvent(e,"contextmenu"),p.fromEvent(e,"dblclick")).subscribe(function(e){return t.onClick(e)})),t.subs.add(p.fromEvent(e,"keydown").subscribe(function(e){return t.onKeydown(e)}))}))},xi.prototype.onClick=function(e){var t,n,r,i=this.targetTask(e.target);i&&(t=i.task,i=i.eventTarget,r="dblclick"===(n=e.type),"click"===n&&mn(e.target,function(e){return yn(e,"k-event-delete")},i)?this.viewState.emitEvent("remove",{event:t.event,dataItem:t.event.dataItem}):this.viewState.emitEvent(r?"eventDblClick":"eventClick",{type:n,event:t.event,originalEvent:e}))},xi.prototype.onKeydown=function(e){var t=this.targetTask(e.target);t&&(t=t.task,this.viewState.emitEvent("eventKeydown",{event:t.event,dataItem:t.event.dataItem,originalEvent:e}))},xi.prototype.targetTask=function(e){e=mn(e,function(e){return e.hasAttribute("data-task-index")},this.element.nativeElement);if(e)return{eventTarget:e,task:this.elementTask(e)}},xi.prototype.updateContentHeight=function(){for(var e=this.element.nativeElement,t=e.parentNode,n=this.content.nativeElement,r=(this.renderer.setStyle(n,"height",""),t.clientHeight),i=0;i<t.children.length;i++){var o=t.children[i];o===e||qn(o)||(r-=o.offsetHeight)}var a=this.headerWrap.nativeElement,s=(r-=this.headerWrap?a.offsetHeight:0,this.renderer.setStyle(n,"height",r+"px"),this.localization.rtl);fn(n,"vertical")||this.renderer.setStyle(a,s?"padding-inline-start":"padding-inline-end","0px"),this.renderer.removeStyle(a,s?"padding-inline-end":"padding-inline-start"),this.viewState.notifyLayoutEnd()},xi.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},xi.prototype.optionsChange=function(e){this.group=e.group,this.resources=e.resources,this.groupResources(),this.min=e.min,this.max=e.max,this.editable=e.editable,this.items&&this.items.length&&this.tasks.next(this.createEventGroups()),this.schedulerEventTemplate=e.eventTemplate,this.schedulerAgendaTimeTemplate=e.agendaTimeTemplate,this.schedulerAgendaDateTemplate=e.agendaDateTemplate},xi.prototype.onSelectDate=function(e){this.selectedDate=e,this.viewState.notifyDateRange(this.dateRange())},xi.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=b.getDate(b.addDays(n,this.numberOfDays)),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=b.getDate(b.addDays(n,-this.numberOfDays)),this.isInRange(t))&&this.viewState.notifyNextDate(t)},xi.prototype.createEventGroups=function(){var e=this.groupedResources.length?function(e){for(var t=[],n=e[0],r=n.data,i=0;i<r.length;i++){var o=r[i];t.push({resources:[x(o,n.textField)]})}for(var a=1;a<e.length;a++){for(var s=e[a],l=s.data,c=[],d=0;d<t.length;d++)for(var u=t[d],i=0;i<l.length;i++){o=l[i];c.push({resources:u.resources.concat(x(o,s.textField))})}t=c}return t}(this.groupedResources):null;return this.groups=ki(this.items,{taskResources:this.taskResources,resourceGroups:e,allResources:this.resources,spans:this.spans,dateRange:this.range})},xi.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=b.getDate(e),t=b.getDate(b.addDays(e,this.numberOfDays)),n=b.getDate(b.addDays(e,this.numberOfDays-1));return{start:e,end:t,text:this.intl.format(this.selectedDateFormat,e,n),shortText:this.intl.format(this.selectedShortDateFormat,e,n)}},xi.prototype.groupResources=function(){var n=this.resources||[],r=(this.group||{}).resources,i=this.groupedResources=[];if(r&&r.length)for(var e=0;e<r.length;e++)!function(e){var t=r[e],e=n.find(function(e){return e.name===t});e&&i.push(e)}(e);this.spans=this.resourceSpans()},xi.prototype.resourceSpans=function(){for(var e=[1],t=this.groupedResources,n=1,r=t.length-1;0<r;r--)n*=(t[r].data||[]).length||1,e.unshift(n);return e},Object.defineProperty(xi.prototype,"taskResources",{get:function(){return this.groupedResources.length?this.groupedResources:this.resources&&this.resources.length?[this.resources[0]]:[{}]},enumerable:!1,configurable:!0}),xi.prototype.isInRange=function(e){e=this.dateRange(e);return(!this.min||this.min<e.end)&&(!this.max||e.start<=this.max)},xi.prototype.createPDFElement=function(){var e=this.element.nativeElement.cloneNode(!0),t=(e.style.width=this.element.nativeElement.offsetWidth+"px",e.querySelector(".k-scheduler-content").style.height="auto",e.querySelector(".k-scheduler-header"));t.style.paddingRight=0,t.style.paddingLeft=0,this.pdfService.elementReady.emit({element:e})},xi.prototype.elementTask=function(e){var t=parseInt(e.getAttribute("data-task-index"),10),e=parseInt(e.getAttribute("data-group-index"),10);return this.groups[e].tasks.itemAt(t)},xi.prototype.execute=function(e){var t;"slotByPosition"===e.name?(t=this.slotByPosition(e.args),e.result(t)):"eventFromElement"===e.name&&(t=this.elementTask(e.args.element))&&e.result(t.event)},xi.prototype.slotByPosition=function(e){var t=e.x,n=e.y,e=this.content.nativeElement.querySelector("table"),r=Ln(e);if(r.top<=n&&n<=r.top+r.height){var i=e.rows;if(i.length){r=Ln(i[0].cells[i[0].cells.length-1]);if(r.left<=t&&t<=r.left+r.width)for(var o=0;o<i.length;o++){var a,s=i[o],l=Ln(s);if(l.top<=n&&n<=l.top+l.height)return l=s.querySelector("[data-task-index]"),a=(s=this.elementTask(l)).event,{element:new h.ElementRef(l),start:a.start,end:a.end,event:a,resources:s.resources,isAllDay:s.isAllDay}}}}};var Si=xi;function xi(e,t,n,r,i,o,a,s){this.viewContext=e,this.viewState=t,this.intl=n,this.renderer=r,this.element=i,this.zone=o,this.pdfService=a,this.localization=s,this.tasks=new p.BehaviorSubject(null),this.groupedResources=[],this.spans=[],this.subs=new p.Subscription}Si.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,deps:[{token:m},{token:g},{token:o.IntlService},{token:n.Renderer2},{token:n.ElementRef},{token:n.NgZone},{token:v},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Si.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Si,selector:"agenda-view-internal",inputs:{eventTemplate:"eventTemplate",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",agendaTimeTemplate:"agendaTimeTemplate",agendaDateTemplate:"agendaDateTemplate",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},viewQueries:[{propertyName:"headerWrap",first:!0,predicate:["headerWrap"],descendants:!0,read:h.ElementRef,static:!0},{propertyName:"content",first:!0,predicate:["content"],descendants:!0,read:h.ElementRef,static:!0}],usesOnChanges:!0,ngImport:n,template:'\n <table class="k-scheduler-layout k-scheduler-agendaview k-scheduler-agenda" role="grid">\n <tbody role="none">\n <tr>\n <td>\n <div kendoSchedulerAgendaHeader [resources]="groupedResources" #headerWrap></div>\n </td>\n </tr>\n <tr>\n <td>\n <div kendoSchedulerAgendaList #content\n [editable]="editable"\n [eventTemplate]="eventTemplateRef"\n [slotClass]="slotClass"\n [eventClass]="eventClass"\n [eventStyles]="eventStyles"\n [agendaTimeTemplate]="agendaTimeTemplateRef"\n [agendaDateTemplate]="agendaDateTemplateRef"\n [tasks]="tasks | async">\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n ',isInline:!0,components:[{type:k,selector:"[kendoSchedulerAgendaHeader]",inputs:["resources"]},{type:E,selector:"[kendoSchedulerAgendaList]",inputs:["tasks","eventTemplate","slotClass","eventClass","eventStyles","agendaTimeTemplate","agendaDateTemplate","editable"]}],pipes:{async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,decorators:[{type:h.Component,args:[{selector:"agenda-view-internal",template:'\n <table class="k-scheduler-layout k-scheduler-agendaview k-scheduler-agenda" role="grid">\n <tbody role="none">\n <tr>\n <td>\n <div kendoSchedulerAgendaHeader [resources]="groupedResources" #headerWrap></div>\n </td>\n </tr>\n <tr>\n <td>\n <div kendoSchedulerAgendaList #content\n [editable]="editable"\n [eventTemplate]="eventTemplateRef"\n [slotClass]="slotClass"\n [eventClass]="eventClass"\n [eventStyles]="eventStyles"\n [agendaTimeTemplate]="agendaTimeTemplateRef"\n [agendaDateTemplate]="agendaDateTemplateRef"\n [tasks]="tasks | async">\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n '}]}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:n.Renderer2},{type:n.ElementRef},{type:n.NgZone},{type:v},{type:r.LocalizationService}]},propDecorators:{eventTemplate:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],agendaTimeTemplate:[{type:h.Input}],agendaDateTemplate:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}],headerWrap:[{type:h.ViewChild,args:["headerWrap",{read:h.ElementRef,static:!0}]}],content:[{type:h.ViewChild,args:["content",{read:h.ElementRef,static:!0}]}]}});c(Ri,Ci=t),Object.defineProperty(Ri.prototype,"title",{get:function(){return this.localization.get("agendaViewTitle")},enumerable:!1,configurable:!0});var Ci,Ei=Ri;function Ri(e,t,n,r){e=Ci.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:D} - {1:D}",e.selectedShortDateFormat="{0:d} - {1:d}",e.numberOfDays=7,e.name="agenda",e}Ei.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ei,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Ei.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ei,selector:"kendo-scheduler-agenda-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Ei})}],queries:[{propertyName:"eventTemplate",first:!0,predicate:ft,descendants:!0},{propertyName:"agendaTimeTemplate",first:!0,predicate:ht,descendants:!0},{propertyName:"agendaDateTemplate",first:!0,predicate:u,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <agenda-view-internal\n [numberOfDays]="numberOfDays"\n [eventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [agendaTimeTemplate]="agendaTimeTemplate?.templateRef"\n [agendaDateTemplate]="agendaDateTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </agenda-view-internal>\n </ng-template>\n ',isInline:!0,components:[{type:Si,selector:"agenda-view-internal",inputs:["eventTemplate","slotClass","eventClass","eventStyles","agendaTimeTemplate","agendaDateTemplate","selectedDateFormat","selectedShortDateFormat","numberOfDays"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ei,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-agenda-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Ei})}],template:'\n <ng-template #content>\n <agenda-view-internal\n [numberOfDays]="numberOfDays"\n [eventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [agendaTimeTemplate]="agendaTimeTemplate?.templateRef"\n [agendaDateTemplate]="agendaDateTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </agenda-view-internal>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}],eventTemplate:[{type:h.ContentChild,args:[ft,{static:!1}]}],agendaTimeTemplate:[{type:h.ContentChild,args:[ht,{static:!1}]}],agendaDateTemplate:[{type:h.ContentChild,args:[u,{static:!1}]}]}});Fi.exports=function(){return[un]};var Oi=Fi;function Fi(){}Oi.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,deps:[],target:n.ɵɵFactoryTarget.NgModule}),Oi.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,declarations:[un],exports:[un]}),Oi.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,decorators:[{type:h.NgModule,args:[{declarations:[un],exports:[un]}]}]});var R=[k,C,E,Ii,Ei,Si],Hi=function(){},Vi=(Hi.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,deps:[],target:n.ɵɵFactoryTarget.NgModule}),Hi.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,declarations:[k,C,E,Ii,Ei,Si],imports:[Z.CommonModule,L.IntlModule,Oi],exports:[Ei]}),Hi.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,imports:[[Z.CommonModule,L.IntlModule,Oi]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,L.IntlModule,Oi],exports:[Ei],declarations:[R]}]}]}),Wi.prototype.registerItem=function(e){this.itemGroup(e).registerItem(e)},Wi.prototype.unregisterItem=function(e,t){t=t||{index:e.index,resourceIndex:e.resourceIndex,rangeIndex:e.rangeIndex};var n=this.groups[t.resourceIndex];n&&n.unregisterItem(e,t)},Wi.prototype.registerSlot=function(e){this.slotGroup(e).registerSlot(e)},Wi.prototype.unregisterSlot=function(e){var t=this.groups[e.id.resourceIndex];t&&t.unregisterSlot(e)},Wi.prototype.invalidate=function(){this.clearEmptyGroups(),this.cleanRanges(),this.slotsChange.emit(),this.forEachSlot(function(e){e.invalidate()})},Wi.prototype.cleanRanges=function(){this.groups.forEach(function(e){e.cleanRanges()})},Wi.prototype.clearEmptyGroups=function(){for(var e=this.groups,t=this.groups.length-1;0<t&&!e[t].hasSlots;)e.splice(t,1),t--},Wi.prototype.itemGroup=function(e){e=e.resourceIndex;return this.groups[e]||(this.groups[e]=this.createGroup(e)),this.groups[e]},Wi.prototype.slotGroup=function(e){e=e.id.resourceIndex;return this.groups[e]||(this.groups[e]=this.createGroup(e)),this.groups[e]},Wi);function Wi(){this.containerSize=0,this.slotsChange=new h.EventEmitter,this.groups=[]}Object.defineProperty(Mi.prototype,"taskIndex",{get:function(){return this.item.index},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"touchAction",{get:function(){return this.editable&&!1!==this.editable.drag?"none":null},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"eventTitle",{get:function(){return _n(b.toLocalDate(this.item.startTime),b.toLocalDate(this.item.endTime),this.item.isAllDay,this.localeId)+", "+this.item.event.title},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"deleteMessage",{get:function(){return this.localization.get("deleteTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"resizable",{get:function(){return this.editable&&!1!==this.editable.resize},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"removable",{get:function(){return this.editable&&!1!==this.editable.remove},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"isRecurrence",{get:function(){return zn(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"isRecurrenceException",{get:function(){return An(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"nativeElement",{get:function(){if(this.element)return this.element.nativeElement},enumerable:!1,configurable:!0}),Mi.prototype.setStyles=function(e){var t=this.nativeElement;if(t)for(var n in e)e.hasOwnProperty(n)&&this.renderer.setStyle(t,n,e[n])},Mi.prototype.toggle=function(e){this.setStyles({display:e?null:"none"})},Mi.prototype.reflow=function(){var e=this.rect;e&&this.setStyles({left:this.localization.rtl?"":e.left+"px",right:this.localization.rtl?e.left+"px":"",top:e.top+"px",width:e.width+"px",height:e.height+"px"})},Mi.prototype.ngOnInit=function(){var t=this;this.dragHint||this.subs.add(this.slotService.slotsChange.subscribe(function(){t.rect=null,t.setStyles({width:0,left:0});var e={index:t.index,resourceIndex:t.resourceIndex,rangeIndex:t.rangeIndex};t.slotService.unregisterItem(t,e),0<=t.resourceIndex&&t.slotService.registerItem(t)}))},Mi.prototype.ngOnChanges=function(e){var t,n;this.dragHint||l.anyChanged(["index","resourceIndex","rangeIndex"],e)&&(t=e.resourceIndex,n=e.index,e=e.rangeIndex,t=t?t.previousValue:this.resourceIndex,n=n?n.previousValue:this.index,e=e?e.previousValue:this.rangeIndex,this.slotService.unregisterItem(this,{index:n,resourceIndex:t,rangeIndex:e}),0<=this.resourceIndex?(this.slotService.registerItem(this),this.toggle(!0)):this.toggle(!1))},Mi.prototype.ngOnDestroy=function(){this.dragHint||(this.slotService.unregisterItem(this),this.subs.unsubscribe())};k=Mi;function Mi(e,t,n,r,i,o){this.slotService=e,this.localization=t,this.focusService=n,this.element=r,this.renderer=i,this.localeId=o,this.className=!0,this.subs=new p.Subscription}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:"invalid",target:n.ɵɵFactoryTarget.Directive}),k.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:k,inputs:{item:"item",resourceIndex:"resourceIndex",rangeIndex:"rangeIndex",index:"index",eventTemplate:"eventTemplate",editable:"editable",dragHint:"dragHint",resources:"resources"},host:{properties:{"class.k-event":"this.className","attr.data-task-index":"this.taskIndex","style.touch-action":"this.touchAction","attr.aria-label":"this.eventTitle"}},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:Vi},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0}]},propDecorators:{item:[{type:h.Input}],resourceIndex:[{type:h.Input}],rangeIndex:[{type:h.Input}],index:[{type:h.Input}],eventTemplate:[{type:h.Input}],editable:[{type:h.Input}],dragHint:[{type:h.Input}],resources:[{type:h.Input}],className:[{type:h.HostBinding,args:["class.k-event"]}],taskIndex:[{type:h.HostBinding,args:["attr.data-task-index"]}],touchAction:[{type:h.HostBinding,args:["style.touch-action"]}],eventTitle:[{type:h.HostBinding,args:["attr.aria-label"]}]}});Object.defineProperty(zi.prototype,"first",{get:function(){if(0<this.count)return this.items[Object.keys(this.items)[0]]},enumerable:!1,configurable:!0}),Object.defineProperty(zi.prototype,"last",{get:function(){var e;if(0<this.count)return e=Object.keys(this.items),this.items[e[e.length-1]]},enumerable:!1,configurable:!0}),zi.prototype.addItem=function(e,t){this.items[e]||this.count++,this.items[e]=t},zi.prototype.removeItem=function(e,t){this.items[e]===t&&(delete this.items[e],this.count--)},zi.prototype.toArray=function(){var t=this;return Object.keys(this.items).map(function(e){return t.items[e]})};var Pi=zi;function zi(){this.count=0,this.items={}}var Ai=new Date(1980,0,1),Ni=new Date(1980,0,2),Bi="k-event-ongoing",ji=(Object.defineProperty(Li.prototype,"slots",{get:function(){return this.slotMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"items",{get:function(){return this.itemMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"start",{get:function(){var e=this.slotMap.first;return e?e.start:null},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"end",{get:function(){var e=this.slotMap.last;return e?In(e.end,1):null},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"hasSlots",{get:function(){return 0<this.slotMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"hasItems",{get:function(){return 0<this.itemMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"firstSlot",{get:function(){return this.slotMap.first},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"lastSlot",{get:function(){return this.slotMap.last},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"rect",{get:function(){var e=this.firstSlot.rect,t=this.lastSlot.rect;return{left:e.left,top:e.top,width:t.left-e.left+t.width,height:t.top-e.top+t.height}},enumerable:!1,configurable:!0}),Li.prototype.registerItem=function(e){this.itemMap.addItem(e.item.index,e)},Li.prototype.unregisterItem=function(e,t){this.itemMap.removeItem(t,e)},Li.prototype.registerSlot=function(e){this.slotMap.addItem(e.id.index,e)},Li.prototype.unregisterSlot=function(e){this.slotMap.removeItem(e.id.index,e)},Li.prototype.layout=function(o){var e,a,t;this.hasItems&&(e=this.items,e=Y.orderBy(e,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),a={},t=this.slots,e.forEach(function(i){return t.filter(function(e){return vn(i.item.startTime,i.item.endTime,e.start,e.end)}).forEach(function(e){var t=a[e.key]=a[e.key]||{events:[],height:e.linkHeight},n=(t.slot=e).rect,r=i.item.data[i.resourceIndex];r.rowIndex=Pn(t.events,r),t.height+o+2+13>n.height||r.hidden?(r.hidden=!0,e.showMore({width:n.width,left:n.left,top:n.top+e.linkHeight+r.rowIndex*(o+2)})):((t.events[r.rowIndex]=i).rect||(i.rect={top:n.top+e.linkHeight+r.rowIndex*(o+2),left:n.left,height:o,width:0}),i.rect.width+=n.width+1,t.height+=o+2)})}),e.forEach(function(e){e.rect&&--e.rect.width,e.reflow()}))},Li);function Li(e){this.index=e,this.slotMap=new Pi,this.itemMap=new Pi}Object.defineProperty(Zi.prototype,"hasSlots",{get:function(){return Boolean(this.dayRanges.find(function(e){return e&&e.hasSlots}))},enumerable:!1,configurable:!0}),Zi.prototype.registerSlot=function(e){this.slotRange(e).registerSlot(e)},Zi.prototype.unregisterSlot=function(e){var t=this.dayRanges[e.id.rangeIndex];t.unregisterSlot(e),t.hasSlots||delete this.dayRanges[e.id.rangeIndex]},Zi.prototype.registerItem=function(e){this.dayRanges[e.rangeIndex].registerItem(e)},Zi.prototype.unregisterItem=function(e,t){var n=this.dayRanges[t.rangeIndex];n&&n.unregisterItem(e,t.index)},Zi.prototype.slotRange=function(e){var t=this.dayRanges,e=e.id.rangeIndex;return t[e]||(t[e]=new ji(e)),t[e]},Zi.prototype.forEachRange=function(e){for(var t=0;t<this.dayRanges.length;t++)e(this.dayRanges[t])},Zi.prototype.cleanRanges=function(){this.dayRanges=this.dayRanges.filter(function(e){return Boolean(e)})};var qi=Zi;function Zi(e){this.index=e,this.dayRanges=[]}c(Ui,Gi=Vi),Ui.prototype.layout=function(t){this.groups.forEach(function(e){return e.forEachRange(function(e){return e.layout(t)})})},Ui.prototype.slotByIndex=function(e){var e=ce(e.split(":").map(function(e){return parseInt(e,10)}),3),t=e[0],n=e[1],e=e[2];return this.groups[t].dayRanges[n].slots[e]},Ui.prototype.forEachSlot=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})})})},Ui.prototype.forEachItem=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.items.forEach(function(e){return t(e)})})})},Ui.prototype.createGroup=function(e){return new qi(e)},Ui.prototype.invalidate=function(){Gi.prototype.invalidate.call(this),this.forEachItem(function(e){var t=e.item.data;Object.keys(t).forEach(function(e){t[e].hidden=!1})})},Ui.prototype.slotByPosition=function(t,n){var r;if(this.groups.find(function(e){return r=e.dayRanges.find(function(e){return Nn(e.rect,t,n)})}),r)return r.slots.find(function(e){return Nn(e.rect,t,n)})},Ui.prototype.dragRanges=function(e,t){var n=new Date(e.start.getTime()-t.start),r=new Date(e.start.getTime()+t.end),t=this.groups[e.id.resourceIndex],i=[];return t.dayRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(n,r,e.start,e.end)});e.length&&i.push(e)}),{start:n,end:r,ranges:i}},Ui.prototype.groupSlotByPosition=function(e,t,n){e=this.groups[e.id.resourceIndex].dayRanges.find(function(e){return Nn(e.rect,t,n)});if(e)return e.slots.find(function(e){return Nn(e.rect,t,n)})},Ui.prototype.resizeRanges=function(e,t,n,r){var i,o,a=this.groups[t.resources[0].leafIdx],s=[],l=t.start.toUTCDate(),t=t.end.toUTCDate();return n?((i=e.start.getTime()+r.start)>t.getTime()&&(i=new Date(Math.min(Cn(t,l).getTime(),t.getTime()))),o=t):(i=l,(o=e.start.getTime()+r.end)<i.getTime()&&(o=new Date(Math.max(Cn(l,t).getTime(),i.getTime())))),a.dayRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(i,o,e.start,e.end)});e.length&&s.push(e)}),{start:new Date(i),end:new Date(o),ranges:s}};var Gi,_i=Ui;function Ui(){return null!==Gi&&Gi.apply(this,arguments)||this}c(Ki,Yi=k),Ki.prototype.reflow=function(){this.item.data[this.resourceIndex].hidden?this.toggle(!1):(this.toggle(!0),Yi.prototype.reflow.call(this))};var Yi,C=Ki;function Ki(e,t,n,r,i,o){e=Yi.call(this,e,t,n,r,i,o)||this;return e.localeId=o,e}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:_i},{token:r.LocalizationService},{token:f},{token:n.ElementRef},{token:n.Renderer2},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[monthViewItem]",usesInheritance:!0,ngImport:n,template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>\n </span>\n\n <ng-container *ngIf="resizable">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{selector:"[monthViewItem]",template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>\n </span>\n\n <ng-container *ngIf="resizable">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:_i},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]}});Object.defineProperty(O.prototype,"eventTemplateRef",{get:function(){return this.еventTemplate||(this.schedulerEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(O.prototype,"groupHeaderTemplateRef",{get:function(){return this.groupHeaderTemplate||(this.schedulerGroupHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),O.prototype.ngOnInit=function(){var n=this,e=this.updateView.bind(this);this.resourcesByIndex=this.resourcesByIndex.bind(this),this.subs.add(this.viewContext.selectedDate.subscribe(this.onSelectDate.bind(this))),this.subs.add(this.viewContext.action.subscribe(this.onAction.bind(this))),this.subs.add(this.viewContext.execute.subscribe(this.execute.bind(this))),this.subs.add(this.viewContext.resize.subscribe(function(){n.toggleElement(!1),n.updateView()})),this.subs.add(this.viewContext.optionsChange.subscribe(this.optionsChange.bind(this))),this.subs.add(this.changes.subscribe(function(){n.toggleElement(!1)})),this.subs.add(p.combineLatest(this.viewContext.items,this.viewState.dateRange,this.viewRangeChange).pipe(N.map(function(e){var e=ce(e,2),t=e[0],e=e[1];return n.createTasks(t,e)})).subscribe(function(e){n.tasks=e.map(function(e){return Object.assign(Object.assign({},e),{elementId:l.guid()})}),n.assignResources(),n.onTasksChange()})),this.subs.add(p.combineLatest(this.items,this.changes,this.localization.changes).pipe(N.switchMap(function(){return n.onStable()})).subscribe(e)),this.subs.add(this.pdfService.createElement.subscribe(this.createPDFElement.bind(this)))},O.prototype.ngOnChanges=function(e){l.anyChanged(["selectedDateFormat","selectedShortDateFormat"],e)&&this.viewState.notifyDateRange(this.dateRange(this.selectedDate)),e.eventHeight&&this.changes.next(null)},O.prototype.ngAfterViewInit=function(){var t=this;this.bindEvents(),this.subs.add(this.localization.changes.subscribe(function(e){e=e.rtl;t.rtl=e}))},O.prototype.ngOnDestroy=function(){this.subs.unsubscribe(),this.domEvents.forEach(function(e){return e()}),this.domEvents=[],this.draggable&&(this.draggable.destroy(),this.draggable=null)},O.prototype.itemIndex=function(e,t){return e},O.prototype.resourcesByIndex=function(e){if(!this.resources)return[];if(!this.group)return this.resources.reduce(function(e,t){return e.concat(t.data||[])},[]);if(!this.resourcesCache[e]){for(var t=this.taskResources,n=[],r=e,i=0;i<t.length;i++){var o=t[i].data||[],a=Math.floor(r/this.spans[i]);n.push(o[a]),r-=a*this.spans[i]}this.resourcesCache[e]=n}return this.resourcesCache[e]},O.prototype.dragResourcesByIndex=function(e){var t=this.resources||[],n=[];if(this.groupedResources.length)for(var r=this.resourcesByIndex(e).slice(0),i=this.taskResources,o=0;o<i.length;o++){var a=this.resources.indexOf(i[o]);0<=a&&(n[a]=r[o])}for(o=0;o<t.length;o++)n[o]||(n[o]=Fn(this.dragging.task.event,t[o]));return n},O.prototype.getEventClasses=function(e,t,n){if(this.eventClass)return this.eventClass({event:e.event,resources:t,isAllDay:n})},O.prototype.getEventStyles=function(e,t,n){var r={backgroundColor:t.color,borderColor:t.color};return this.eventStyles&&Object.assign(r,this.eventStyles({event:e.event,resources:t.resources,isAllDay:n})),r},O.prototype.toPlainDate=function(e){return xn(this.convertDate(e))},O.prototype.toPlainDateTime=function(e,t){return e&&t?this.toPlainDate(Cn(e,t)):null},O.prototype.optionsChange=function(e){this.schedulerEventTemplate=e.eventTemplate,this.schedulerGroupHeaderTemplate=e.groupHeaderTemplate,this.min=e.min,this.max=e.max,this.editable=e.editable,this.timezone=e.timezone,this.selectable=e.selectable,this.isSlotSelected=e.isSlotSelected,e.changes&&!l.anyChanged(["group","resources"],e.changes,!1)&&e.group===this.group&&e.resources===this.resources||(this.group=e.group,this.resources=e.resources,this.groupResources(),this.resourcesCache={},this.tasks&&this.tasks.length&&(this.assignResources(),this.onTasksChange()),this.changes.next(null))},O.prototype.toggleElement=function(e){this.element&&this.renderer.setStyle(this.element.nativeElement,"display",e?"block":"none")},O.prototype.onStable=function(){return this.zone.onStable.asObservable().pipe(N.take(1))},O.prototype.updateView=function(){this.slotService.invalidate(),this.toggleElement(!0),this.reflow(),this.viewState.notifyLayoutEnd(),this.viewState.emitEvent(pt.refreshSlotSelection)},O.prototype.assignResources=function(){for(var e=this.tasks,t={taskResources:this.taskResources,hasGroups:0<this.groupedResources.length,allResources:this.resources,spans:this.spans},n=0;n<e.length;n++){var r=e[n];r.resources=Hn(r.event,t)}},O.prototype.bindEvents=function(){var t=this,n=this.content.nativeElement,e=this.element.nativeElement;this.zone.runOutsideAngular(function(){var r;t.times&&t.subs.add(p.merge(p.fromEvent(t.times.nativeElement,"mousewheel"),p.fromEvent(t.times.nativeElement,"DOMMouseScroll")).pipe(N.filter(function(e){return!e.ctrlKey}),N.tap((r=n,function(e){var t=gn(e),n=r.scrollTop;0===n&&0<t||r.scrollHeight<=r.offsetHeight+n&&t<0||e.preventDefault()})),N.map(gn)).subscribe(function(e){return n.scrollTop-=e})),t.subs.add(p.merge(Zt(n),p.fromEvent(n,"contextmenu")).subscribe(function(e){return t.onClick(e)})),t.subs.add(Gt(n).subscribe(function(e){return t.onClick(e,"dblclick")})),t.subs.add(p.fromEvent(e,"keydown").subscribe(function(e){return t.onKeydown(e)})),t.domEvents.push(t.renderer.listen(n,"scroll",function(){t.headerWrap&&(t.headerWrap.nativeElement.scrollLeft=n.scrollLeft),t.times&&(t.times.nativeElement.scrollTop=n.scrollTop)})),t.draggable=new K.Draggable({press:t.onPress.bind(t),drag:t.onDrag.bind(t),release:t.onRelease.bind(t)}),t.draggable.bindTo(e)})},O.prototype.onPress=function(e){var t=this.editable&&!1!==this.editable.resize,n=this.editable&&!1!==this.editable.drag,r=e.originalEvent.target;if(yn(r,"k-resize-handle")){if(!t)return;this.initResize(e)}else n&&(t=this.targetTask(r))&&(e.isTouch||e.originalEvent.preventDefault(),this.pressLocation={x:e.pageX,y:e.pageY},this.pressTarget=t);!this.pressTarget&&this.selectable&&this.initDragSelect(e),this.dragArgs=e},O.prototype.onDrag=function(e){this.resizing?(this.resize(e),this.scrollContainer(this.resize,e)):(this.initDrag(e),this.dragging&&(this.drag(e),e.originalEvent.preventDefault(),this.scrollContainer(this.drag,e)),this.dragSelecting&&this.dragSelect(e)),this.dragArgs=e},O.prototype.onRelease=function(e){clearInterval(this.scrollInterval);var t=this.resizing,n=this.dragging,r=this.dragSelecting;t&&(this.emitEvent("resizeEnd",{event:t.task.event,dataItem:t.task.event.dataItem,start:this.convertDate(t.start),end:this.convertDate(t.end)}),this.resizeHints=[]),n&&(this.emitEvent("dragEnd",{event:n.task.event,dataItem:n.task.event.dataItem,start:n.start?this.convertDate(n.start):n.task.start.toLocalDate(),end:n.end?this.convertDate(n.end):n.task.end.toLocalDate(),resources:n.resources,isAllDay:this.draggedIsAllDay(n.task,n.slot)}),this.dragHints=[]),(t||n)&&(this.removeSlotClass(),this.updateHintContainer(),this.resizing=null,this.dragging=null),r&&(n=(t=En(this.dragSelectOrigin,this.dragSelecting)).start,r=t.end,t={start:this.convertDate(n),end:this.convertDate(r),isAllDay:this.dragSelecting.isDaySlot,resources:this.resourcesByIndex(this.dragSelecting.id.resourceIndex),originalEvent:e.originalEvent},this.viewState.notifySlotSelectionEnd(t),this.dragSelectOrigin=null,this.dragSelecting=null,this.cdr.markForCheck()),this.container=null,this.dragArgs=null,this.pressLocation=null,this.pressTarget=null},O.prototype.setHintClass=function(e){(this.dragging||this.resizing).hintClass=e},O.prototype.updateHintClass=function(){var t=this.dragging||this.resizing,n=!1;this.hints.forEach(function(e){e.class!==t.hintClass&&(e.class=t.hintClass,n=!0)}),n&&this.updateHintContainer()},O.prototype.removeHintClass=function(){(this.dragging||this.resizing).hintClass=null},O.prototype.setSlotClass=function(e){var t=this.dragging||this.resizing;t.slotClass=e,this.renderer.addClass(t.slot.nativeElement,t.slotClass)},O.prototype.removeSlotClass=function(){var e=this.dragging||this.resizing;e.slotClass&&(this.renderer.removeClass(e.slot.nativeElement,e.slotClass),e.slotClass=null)},Object.defineProperty(O.prototype,"hints",{get:function(){return this.dragging?this.dragHints:this.resizeHints},enumerable:!1,configurable:!0}),O.prototype.initDrag=function(e){var t,n,r,i;!this.dragging&&this.pressLocation&&(t=this.pressLocation.x,n=this.pressLocation.y,r=e.pageX,i=e.pageY,10<=Math.sqrt(Math.pow(t-r,2)+Math.pow(n-i,2)))&&(r=(t=this.pressTarget).task,this.emitEvent("dragStart",{event:r.event,dataItem:r.event.dataItem})?(this.pressLocation=null,this.pressTarget=null):(this.updateDragContainer(e),void 0!==this.containerOffset&&(i=(n=this.coordinatesOffset(this.pressLocation.x,this.pressLocation.y)).x,e=n.y,n=this.slotByPosition(Math.ceil(i),Math.ceil(e),this.container))&&(this.dragging=t,this.dragging.offset={start:n.start.getTime()-r.start.toUTCDate().getTime(),end:r.end.toUTCDate().getTime()-n.start.getTime()},this.dragging.slot=n,this.dragging.startResources=this.dragging.resourceItems=this.dragResourcesByIndex(n.id.resourceIndex),this.dragging.resources=this.resourceValues(r,this.dragging.startResources))))},O.prototype.updateDragContainer=function(e){this.container||(this.container=this.content.nativeElement,this.containerOffset=Ln(this.container))},O.prototype.drag=function(e){if(this.updateDragContainer(e),this.container){var e=this.coordinatesOffset(e.pageX,e.pageY),t=e.x,e=e.y,t=this.slotByPosition(t,e,this.container);if(t&&(t!==this.dragging.slot||!this.dragHints.length)){var e=this.dragging,n=e.slot,r=e.task,i=this.dragRanges(t),o=i.ranges,a=i.start,s=i.end,i=i.isAllDay,l=void 0,c=void 0,c=n.id.resourceIndex!==t.id.resourceIndex?(l=this.dragResourcesByIndex(t.id.resourceIndex),this.resourceValues(r,l)):(l=e.resourceItems,e.resources);if(this.removeSlotClass(),e.start=a,e.end=s,e.slot=t,e.resources=c,e.resourceItems=l,e.hintClass=null,this.emitEvent("drag",{event:r.event,dataItem:r.event.dataItem,start:this.convertDate(a),end:this.convertDate(s),resources:c,isAllDay:i,setHintClass:this.setHintClass,setSlotClass:this.setSlotClass}))this.updateHintClass();else{var d=this.dragResourceColor(r,l),u=this.dragHintClasses();this.dragHints=[];for(var p=0;p<o.length;p++){var h=o[p],m=h[0],h=h[h.length-1],h=this.dragHintSize(m,h),g=m.rect.left,m={top:jn(m.rect.top),left:this.localization.rtl?"":jn(g),right:this.localization.rtl?jn(g):"",width:h.width,height:h.height,backgroundColor:d,borderColor:d};this.eventStyles&&Object.assign(m,this.eventStyles(this.dragHintEventStyleArgs())),this.dragHints.push({item:Object.assign({},this.dragging.task,{startTime:a,endTime:s}),resources:l,class:u,style:m})}this.updateHintContainer()}}}},O.prototype.initDragSelect=function(e){var t,n;this.updateDragContainer(e),this.containerOffset&&(t=(n=this.coordinatesOffset(e.pageX,e.pageY)).x,n=n.y,t=this.slotByPosition(t,n,this.container))&&(n={start:this.convertDate(t.start),end:this.convertDate(t.end),isAllDay:t.isDaySlot,resources:this.resourcesByIndex(t.id.resourceIndex),originalEvent:e.originalEvent},e=new nt(null,n),this.viewState.notifySlotSelectionStart(e),e.isDefaultPrevented()||(this.dragSelecting=t,this.dragSelectOrigin=t,this.cdr.markForCheck()))},O.prototype.dragSelect=function(e){var t,n=this.coordinatesOffset(e.pageX,e.pageY),r=n.x,n=n.y,r=this.slotByPosition(r,n,this.container);r&&this.dragSelecting!==r&&(this.dragSelecting=r,t=(n=En(this.dragSelectOrigin,this.dragSelecting)).start,n=n.end,t={start:this.convertDate(t),end:this.convertDate(n),isAllDay:r.isDaySlot,resources:this.resourcesByIndex(r.id.resourceIndex),originalEvent:e.originalEvent},this.viewState.notifySlotSelectionDrag(t),this.cdr.markForCheck())},O.prototype.dragHintClasses=function(){var e=this.dragging.hintClass,t=[];return e&&t.push(e),this.eventClass&&(e=this.eventClass(this.dragHintEventStyleArgs()),t=t.concat(Gn(e))),t},O.prototype.dragHintEventStyleArgs=function(){return{event:this.dragging.task.event,resources:this.dragging.resourceItems}},O.prototype.draggedIsAllDay=function(e,t){return Boolean(e.event.isAllDay)},O.prototype.dragResourceColor=function(e,t){var n;return this.groupedResources.length?(n=this.resources.indexOf(this.groupedResources[0]),x(t[n],this.groupedResources[0].colorField)):this.resources&&this.resources.length?e.resources[0].color:""},O.prototype.resourceValues=function(e,t){for(var n={},r=0;r<t.length;r++){var i=this.resources[r],o=t[r],a=void 0;Array.isArray(o)?a=x(e.event,i.field):(a=x(t[r],i.valueField),i.multiple&&(a=x(this.dragging.startResources[r],i.valueField)!==a?[a]:x(e.event.dataItem,i.field))),At(n,i.field,a)}return n},O.prototype.initResize=function(e){e.originalEvent.preventDefault();var t=e.originalEvent.target,n=this.targetTask(t);this.emitEvent("resizeStart",{event:n.task.event,dataItem:n.task.event.dataItem})||((this.resizing=n).start=n.task.start.toUTCDate(),n.end=n.task.end.toUTCDate(),yn(t,"k-resize-n")?n.direction="n":yn(t,"k-resize-s")?n.direction="s":yn(t,"k-resize-w")?n.direction="w":n.direction="e",this.updateDragContainer(e),e=(t=this.coordinatesOffset(e.pageX,e.pageY)).x,t=t.y,n.slot=this.slotByPosition(Math.ceil(e),Math.ceil(t),this.container),n.offset={start:n.task.start.toUTCDate().getTime()-n.slot.start.getTime(),end:n.task.end.toUTCDate().getTime()-n.slot.start.getTime()})},O.prototype.resize=function(e){var e=this.coordinatesOffset(e.pageX,e.pageY),t=e.x,e=e.y,n=this.resizing,r=n.direction,i=n.task,o=n.offset,t=this.slotService.groupSlotByPosition(n.slot,t,e);t&&t!==n.slot&&(this.removeSlotClass(),r=(e=this.slotService.resizeRanges(t,i,"w"===r||"n"===r,o)).start,o=e.end,e=e.ranges,n.hintClass=null,n.start=r,n.end=o,n.slot=t,this.emitEvent("resize",{event:i.event,dataItem:i.event.dataItem,start:this.convertDate(r),end:this.convertDate(o),setHintClass:this.setHintClass,setSlotClass:this.setSlotClass})?this.updateHintClass():(this.updateResizeHints(e,r,o),this.updateHintContainer()))},O.prototype.updateResizeHints=function(e,t,n){var r=this.resizing,i=r.direction,o="w"===i||"e"===i,a="w"===i||"n"===i;this.resizeHints=[];for(var s=0;s<e.length;s++){var l=e[s],c=l[0],l=l[l.length-1],d=0===s,u=s===e.length-1;this.resizeHints.push({first:d,last:u,rect:{left:c.rect.left,top:c.top,height:o?c.height:Math.abs(l.rect.top-c.rect.top)+l.rect.height,width:o?Math.abs(l.rect.left-c.rect.left)+l.rect.width:c.width},start:(d&&!a?r:c).start,end:(u&&a?r:l).end,class:r.hintClass})}},O.prototype.coordinatesOffset=function(e,t,n,r){void 0===n&&(n=this.container);e=e-(r=void 0===r?this.containerOffset:r).left+n.scrollLeft;return{x:this.localization.rtl?this.slotService.containerSize-e:e,y:t-r.top+n.scrollTop}},O.prototype.scrollContainer=function(e,t){var n,r,i,o,a,s,l,c,d,u=this,p=(clearInterval(this.scrollInterval),this.container);p&&(n=t.pageY-this.containerOffset.top,r=Math.abs(p.offsetHeight-n),i=t.pageY-this.dragArgs.pageY,o=t.pageX-this.containerOffset.left,a=Math.abs(p.offsetWidth-o),s=t.pageX-this.dragArgs.pageX,l=!1,d=c=0,r<60&&p.scrollTop+p.offsetHeight<p.scrollHeight&&0<i?(l=!0,d=15,this.container.scrollTop+=60-r):n<60&&0<p.scrollTop&&i<0&&(l=!0,d=-15,this.container.scrollTop-=60-n),a<60&&p.scrollLeft+p.offsetWidth<p.scrollWidth&&0<s?(l=!0,c=15,this.container.scrollLeft+=60-a):o<60&&0<p.scrollLeft&&i<0&&(l=!0,c=-15,this.container.scrollLeft-=60-o),l)&&(this.scrollInterval=setInterval(function(){u.container?(u.container.scrollLeft+=c,u.container.scrollTop+=d,e.call(u,t)):clearInterval(u.scrollInterval)},50))},O.prototype.emitEvent=function(e,t){return this.viewState.emitEvent(e,t),t.prevented},O.prototype.targetTask=function(e){var t,e=mn(e,function(e){return e.hasAttribute("data-task-index")},this.element.nativeElement);if(e)return t=parseInt(e.getAttribute("data-task-index"),10),{target:e,task:this.tasks.find(function(e){return e.index===t})}},O.prototype.updateHintContainer=function(){this.hintContainer&&this.hintContainer.detectChanges()},O.prototype.convertDate=function(e){return b.ZonedDate.fromUTCDate(e,this.timezone).toLocalDate()},O.prototype.onClick=function(e,t){void 0===t&&(t=e.type),this.emitSlotEvent(e,t),this.emitTaskEvent(e,t)},O.prototype.emitSlotEvent=function(e,t){var n,r=mn(e.target,function(e){return e.hasAttribute("data-slot-index")},this.element.nativeElement);r&&(r=r.getAttribute("data-slot-index"),n="dblclick"===t?"slotDblClick":"slotClick",r=this.slotByIndex(r,e),this.viewState.emitEvent(n,{type:t,slot:r,start:this.convertDate(r.start),end:this.convertDate(r.end),isAllDay:r.isDaySlot,originalEvent:e,resources:this.resources&&this.resources.length?this.resourcesByIndex(r.id.resourceIndex):[]}))},O.prototype.emitTaskEvent=function(e,t){var n,r,i=this.targetTask(e.target);i&&(n=i.task,r="dblclick"===t,"click"===t&&mn(e.target,function(e){return yn(e,"k-event-delete")},i.target)?this.viewState.emitEvent("remove",{event:n.event,dataItem:n.event.dataItem}):(this.viewState.emitEvent(r?"eventDblClick":"eventClick",{type:t,event:n.event,originalEvent:e}),i.target.focus()))},O.prototype.onKeydown=function(e){var t=this.targetTask(e.target);t&&(t=t.task,this.viewState.emitEvent("eventKeydown",{event:t.event,dataItem:t.event.dataItem,originalEvent:e}))},O.prototype.syncTables=function(){var e,t;this.timesTable&&this.renderer.setStyle(this.timesTable.nativeElement,"height",this.contentTable.nativeElement.offsetHeight+"px"),fn(this.content.nativeElement,"vertical")||this.renderer.setStyle(this.header.nativeElement,this.localization.rtl?"padding-inline-start":"padding-inline-end","0px"),this.renderer.removeStyle(this.header.nativeElement,this.localization.rtl?"padding-inline-end":"padding-inline-start"),this.times&&(e=this.times.nativeElement,this.timesHeader.nativeElement.style.width=e.offsetWidth+"px",t="auto"===this.contentHeight?this.content.nativeElement.offsetHeight:this.contentHeight,this.renderer.setStyle(e,"height",t-(fn(this.content.nativeElement,"horizontal")?l.getScrollbarWidth():0)+"px"),e.scrollTop=this.content.nativeElement.scrollTop)},O.prototype.updateContentHeight=function(){var e=this.element.nativeElement,t=e.parentNode,n=this.content.nativeElement,r=this.autoHeight||!t.style.height,i=n.scrollLeft,o=n.scrollTop;if(this.renderer.setStyle(n,"height",""),this.times&&this.renderer.setStyle(this.times.nativeElement,"height",""),r)this.contentHeight="auto";else{for(var a=t.clientHeight,s=0;s<t.children.length;s++){var l=t.children[s];l===e||qn(l)||(a-=l.offsetHeight)}a-=this.headerWrap?this.headerWrap.nativeElement.offsetHeight:0,this.renderer.setStyle(n,"height",a+"px"),this.contentHeight=a,n.scrollLeft=i,n.scrollTop=o}},O.prototype.groupResources=function(){var e=this.resources||[],t=this.group||{};this.groupedResources=zt(t,e),"vertical"!==t.orientation?(this.horizontalResources=this.groupedResources,this.verticalResources=[]):(this.verticalResources=this.groupedResources,this.horizontalResources=[]),this.spans=this.resourceSpans()},Object.defineProperty(O.prototype,"taskResources",{get:function(){return this.groupedResources.length?this.groupedResources:this.resources&&this.resources.length?[this.resources[0]]:[{}]},enumerable:!1,configurable:!0}),O.prototype.resourceSpans=function(){for(var e=[1],t=this.groupedResources,n=1,r=t.length-1;0<r;r--)n*=(t[r].data||[]).length||1,e.unshift(n);return e},O.prototype.isInRange=function(e){e=this.dateRange(e);return(!this.min||this.min<e.end)&&(!this.max||e.start<=this.max)},O.prototype.createPDFElement=function(){var e=this.contentHeight,t=this.content.nativeElement.scrollTop,n=("auto"!==e&&(this.autoHeight=!0,this.updateView()),this.element.nativeElement.cloneNode(!0));n.style.width=this.pdfWidth()+"px","auto"!==e&&(this.autoHeight=!1,this.updateView()),this.pdfService.elementReady.emit({element:n}),this.content.nativeElement.scrollTop=t},O.prototype.pdfWidth=function(){return this.element.nativeElement.offsetWidth},O.prototype.containerByPosition=function(e){var t=e.x,e=e.y,n=this.content.nativeElement,r=Ln(n);if(r.top<=e&&e<=r.top+r.height&&r.left<=t&&t<=r.left+r.width)return{element:n,offset:r}},O.prototype.execute=function(e){var t,n;"slotByPosition"===e.name?(n=this.containerByPosition(e.args))&&(t=this.coordinatesOffset(e.args.x,e.args.y,n.element,n.offset),t=this.slotByPosition(t.x,t.y,n.element),e.result(this.slotFields(t))):"eventFromElement"===e.name&&(n=this.targetTask(e.args.element))&&e.result(n.task.event)},O.prototype.slotFields=function(e){return{element:e.element,resources:this.groupedResources.length?this.resourcesByIndex(e.id.resourceIndex):[],start:this.convertDate(e.start),end:this.convertDate(e.end)}};E=O;function O(e,t,n,r,i,o,a,s,l,c,d){this.viewContext=e,this.viewState=t,this.intl=n,this.slotService=r,this.zone=i,this.renderer=o,this.element=a,this.pdfService=s,this.localization=l,this.cdr=c,this.scrollBarWidthService=d,this.items=new p.BehaviorSubject(null),this.horizontalResources=[],this.verticalResources=[],this.dragHints=[],this.resizeHints=[],this.getField=x,this.changes=new p.BehaviorSubject(null),this.viewRangeChange=new p.BehaviorSubject(null),this.subs=new p.Subscription,this.groupedResources=[],this.spans=[],this.domEvents=[],this.resourcesCache={},this.dragSelecting=null,this.dragSelectOrigin=null,this.autoHeight=!1,this.rtl=!1,this.isSlotSelected=function(){return!1},this.setSlotClass=this.setSlotClass.bind(this),this.setHintClass=this.setHintClass.bind(this),this.weekStart=n.firstDay()}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:m},{token:g},{token:o.IntlService},{token:Vi},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Directive}),E.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:E,inputs:{"еventTemplate":"еventTemplate",groupHeaderTemplate:"groupHeaderTemplate",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",eventHeight:"eventHeight",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",weekStart:"weekStart"},viewQueries:[{propertyName:"content",first:!0,predicate:["content"],descendants:!0},{propertyName:"header",first:!0,predicate:["header"],descendants:!0},{propertyName:"contentTable",first:!0,predicate:["contentTable"],descendants:!0},{propertyName:"times",first:!0,predicate:["times"],descendants:!0},{propertyName:"timesHeader",first:!0,predicate:["timesHeader"],descendants:!0},{propertyName:"timesTable",first:!0,predicate:["timesTable"],descendants:!0},{propertyName:"headerWrap",first:!0,predicate:["headerWrap"],descendants:!0},{propertyName:"hintContainer",first:!0,predicate:["hintContainer"],descendants:!0}],usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:Vi},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:J.ScrollbarWidthService}]},propDecorators:{"еventTemplate":[{type:h.Input}],groupHeaderTemplate:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],eventHeight:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],weekStart:[{type:h.Input}],content:[{type:h.ViewChild,args:["content",{static:!1}]}],header:[{type:h.ViewChild,args:["header",{static:!1}]}],contentTable:[{type:h.ViewChild,args:["contentTable",{static:!1}]}],times:[{type:h.ViewChild,args:["times",{static:!1}]}],timesHeader:[{type:h.ViewChild,args:["timesHeader",{static:!1}]}],timesTable:[{type:h.ViewChild,args:["timesTable",{static:!1}]}],headerWrap:[{type:h.ViewChild,args:["headerWrap",{static:!1}]}],hintContainer:[{type:h.ViewChild,args:["hintContainer",{static:!1}]}]}});$i.prototype.detectChanges=function(){this.changeDetector.detectChanges()};Ii=$i;function $i(e){this.changeDetector=e,this.changeDetector.detach()}Ii.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,deps:[{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Component}),Ii.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ii,selector:"kendo-hint-container",queries:[{propertyName:"hintTemplate",first:!0,predicate:h.TemplateRef,descendants:!0}],ngImport:n,template:'\n <ng-container [ngTemplateOutlet]="hintTemplate">\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,decorators:[{type:h.Component,args:[{selector:"kendo-hint-container",template:'\n <ng-container [ngTemplateOutlet]="hintTemplate">\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:n.ChangeDetectorRef}]},propDecorators:{hintTemplate:[{type:h.ContentChild,args:[h.TemplateRef,{static:!1}]}]}});Object.defineProperty(Xi.prototype,"left",{get:function(){return this.hint.rect.left},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"top",{get:function(){return this.hint.rect.top},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"width",{get:function(){return this.hint.rect.width},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"height",{get:function(){return this.hint.rect.height},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"start",{get:function(){return b.toLocalDate(this.hint.start)},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"end",{get:function(){return b.toLocalDate(this.hint.end)},enumerable:!1,configurable:!0});Si=Xi;function Xi(){this.marqueeClasses=!0}Si.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,deps:[],target:n.ɵɵFactoryTarget.Component}),Si.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Si,selector:"[kendoResizeHint]",inputs:{hint:"hint",format:"format"},host:{properties:{"class.k-marquee":"this.marqueeClasses","class.k-scheduler-marquee":"this.marqueeClasses","class.k-first":"this.marqueeClasses","class.k-last":"this.marqueeClasses","style.left.px":"this.left","style.right.px":"this.left","style.top.px":"this.top","style.width.px":"this.width","style.height.px":"this.height"}},ngImport:n,template:'\n <div class="k-marquee-color"></div>\n <div class="k-marquee-text">\n <div class="k-label-top" *ngIf="hint.first">{{ start | kendoDate : format }}</div>\n <div class="k-label-bottom" *ngIf="hint.last">{{ end | kendoDate : format }}</div>\n </div>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}],pipes:{kendoDate:o.DatePipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,decorators:[{type:h.Component,args:[{selector:"[kendoResizeHint]",template:'\n <div class="k-marquee-color"></div>\n <div class="k-marquee-text">\n <div class="k-label-top" *ngIf="hint.first">{{ start | kendoDate : format }}</div>\n <div class="k-label-bottom" *ngIf="hint.last">{{ end | kendoDate : format }}</div>\n </div>\n '}]}],propDecorators:{hint:[{type:h.Input}],format:[{type:h.Input}],marqueeClasses:[{type:h.HostBinding,args:["class.k-marquee"]},{type:h.HostBinding,args:["class.k-scheduler-marquee"]},{type:h.HostBinding,args:["class.k-first"]},{type:h.HostBinding,args:["class.k-last"]}],left:[{type:h.HostBinding,args:["style.left.px"]},{type:h.HostBinding,args:["style.right.px"]}],top:[{type:h.HostBinding,args:["style.top.px"]}],width:[{type:h.HostBinding,args:["style.width.px"]}],height:[{type:h.HostBinding,args:["style.height.px"]}]}});Object.defineProperty(Qi.prototype,"slotIndex",{get:function(){return this.key},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"start",{get:function(){return this._start},set:function(e){this._start=e},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"end",{get:function(){return this._end},set:function(e){this._end=e},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"rect",{get:function(){var e;return this._rect||(e=this.nativeElement,this._rect={left:this.localization.rtl?this.slotService.containerSize-(e.offsetLeft+e.clientWidth):e.offsetLeft,top:e.offsetTop,width:e.clientWidth,height:e.clientHeight}),this._rect},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"top",{get:function(){return this.element?this.nativeElement.offsetTop:0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"padding",{get:function(){return this.element&&l.isDocumentAvailable()?2*parseInt(window.getComputedStyle(this.nativeElement).paddingTop,10):0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"height",{get:function(){return this.element?this.nativeElement.offsetHeight:0},set:function(e){this.element&&(this.nativeElement.style.height=e+"px"),this._rect&&(this._rect.height=e)},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"width",{get:function(){return this.element?this.nativeElement.offsetWidth:0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"key",{get:function(){return this.id.resourceIndex+":"+this.id.rangeIndex+":"+this.id.index},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"nativeElement",{get:function(){return this.element.nativeElement},enumerable:!1,configurable:!0}),Qi.prototype.ngOnInit=function(){this.slotService.registerSlot(this)},Qi.prototype.ngOnDestroy=function(){this.slotService.unregisterSlot(this)},Qi.prototype.invalidate=function(){this._rect=null};R=Qi;function Qi(e,t,n){this.element=e,this.slotService=t,this.localization=n,this._rect=null}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:n.ElementRef},{token:Vi},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),R.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:R,inputs:{id:"id"},host:{properties:{"attr.data-slot-index":"this.slotIndex"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:n.ElementRef},{type:Vi},{type:r.LocalizationService}]},propDecorators:{id:[{type:h.Input}],slotIndex:[{type:h.HostBinding,args:["attr.data-slot-index"]}]}});c(to,Ji=R),Object.defineProperty(to.prototype,"start",{get:function(){return this.startDate},set:function(e){this.startDate=wn(e)},enumerable:!1,configurable:!0}),Object.defineProperty(to.prototype,"end",{get:function(){return In(this.start,1)},enumerable:!1,configurable:!0}),Object.defineProperty(to.prototype,"linkHeight",{get:function(){var e;return null===this._linkHeight&&(e=function(e){for(var t=e.children,n=t.length,r=0;r<n;r++)if(1===t[r].nodeType)return t[r]}(this.nativeElement),this._linkHeight=e?e.offsetHeight+e.offsetTop:0),this._linkHeight},enumerable:!1,configurable:!0}),to.prototype.ngOnDestroy=function(){Ji.prototype.ngOnDestroy.call(this),this.removeShowMore()},to.prototype.showMore=function(e){var t;this.showMoreElement||((t=this.showMoreElement=document.createElement("div")).innerHTML='<span class="k-icon k-i-more-horizontal"></span>',t.className="k-more-events k-button",t.style.width=e.width+"px",t.style.left=e.left+"px",t.style.top=e.top+"px",this.nativeElement.appendChild(t))},to.prototype.hideMore=function(){this.removeShowMore()},to.prototype.invalidate=function(){Ji.prototype.invalidate.call(this),this._linkHeight=null,this.removeShowMore()},to.prototype.removeShowMore=function(){this.showMoreElement&&(this.showMoreElement.parentNode.removeChild(this.showMoreElement),this.showMoreElement=null)};var Ji,eo=to;function to(e,t,n){e=Ji.call(this,e,t,n)||this;return e.isDaySlot=!0,e._linkHeight=null,e}eo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,deps:[{token:n.ElementRef},{token:_i},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),eo.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:eo,selector:"[monthSlot]",inputs:{start:"start"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,decorators:[{type:h.Directive,args:[{selector:"[monthSlot]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:_i},{type:r.LocalizationService}]},propDecorators:{start:[{type:h.Input}]}});ro.prototype[qt]=function(){var t,n,r,i,o,a;return le(this,function(e){switch(e.label){case 0:for(t=this.resources,n=Math.max(0,this.lastIndex),t&&t.length||(t=[{}]),r=t[n].data||[],i=r.length,o=1,a=0;a<=n;a++)o*=(t[a].data||[]).length||1;a=0,e.label=1;case 1:return a<o?[4,r[a%i]]:[3,4];case 2:e.sent(),e.label=3;case 3:return a++,[3,1];case 4:return[2]}})};var no=ro;function ro(e,t){void 0===t&&(t=e.length-1),this.resources=e,this.lastIndex=t}oo.prototype.transform=function(e,t){return new no(e=void 0===e?[]:e,t)};var io=oo;function oo(){}io.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,deps:[],target:n.ɵɵFactoryTarget.Pipe}),io.ɵpipe=n.ɵɵngDeclarePipe({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,name:"resourceIterator"}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,decorators:[{type:h.Pipe,args:[{name:"resourceIterator"}]}]});so.prototype[qt]=function(){var t;return le(this,function(e){switch(e.label){case 0:t=0,e.label=1;case 1:return t<this.count?[4,t]:[3,4];case 2:e.sent(),e.label=3;case 3:return t++,[3,1];case 4:return[2]}})};var ao=so;function so(e){this.count=e}lo.prototype.transform=function(e){return new ao(e)};qt=lo;function lo(){}qt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,deps:[],target:n.ɵɵFactoryTarget.Pipe}),qt.ɵpipe=n.ɵɵngDeclarePipe({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,name:"repeat"}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,decorators:[{type:h.Pipe,args:[{name:"repeat"}]}]});c(H,co=E),Object.defineProperty(H.prototype,"monthDaySlotTemplateRef",{get:function(){return this.monthDaySlotTemplate||(this.schedulerMonthDaySlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),H.prototype.ngOnChanges=function(e){l.isChanged("weekStart",e)&&this.onSelectDate(this.selectedDate),co.prototype.ngOnChanges.call(this,e)},H.prototype.ngAfterViewInit=function(){this.updateOngoingEvents(),co.prototype.ngAfterViewInit.call(this)},H.prototype.ngOnDestroy=function(){clearTimeout(this.ongoingEventsTimeout),co.prototype.ngOnDestroy.call(this)},H.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=7,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},H.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=6,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},H.prototype.verticalItem=function(e,t){for(var n=this.verticalResources[t].data||[],r=this.verticalResources,i=1,o=t+1;o<r.length;o++)i*=(r[o].data||[]).length||1;return n[e/i%n.length]},H.prototype.daySlotClass=function(e,t){if(this.slotClass)return this.slotClass({start:e,end:b.addDays(e,1),resources:this.resourcesByIndex(t),isAllDay:!1})},H.prototype.cellTitle=function(e){return this.intl.formatDate(e,"D")},H.prototype.addDay=function(e){return b.addDays(e,1)},H.prototype.optionsChange=function(e){this.schedulerMonthDaySlotTemplate=e.monthDaySlotTemplate,co.prototype.optionsChange.call(this,e)},H.prototype.createTasks=function(e,t){this.weeks=this.createDaySlots(t);for(var n=t.start,t=t.end,r=e,i=this.weeks,o=[],a=wn(n),s=wn(t),l=0;l<r.length;l++){var c=r[l],d={},u=c.start.toUTCDate(),p=c.end,h=(c.end.getTime()!==p.getTime()?p.addDays(1):p).toUTCDate();if(vn(u,h,a,s))for(var m=0;m<i.length;m++){var g,y=i[m],f=wn(y[0]),y=In(wn(y[y.length-1]),1);vn(u,h,f,y)&&(g={index:l,startTime:u,endTime:h,start:c.start,end:c.end,event:c.event,isAllDay:c.event.isAllDay,rangeIndex:m,data:d},o.push(g),g.head=g.endTime>y,g.tail=g.startTime<f)}}return _t(o)},H.prototype.onTasksChange=function(){for(var e=this.tasks,t=0;t<e.length;t++){var n,r=e[t],i=r.resources,o=(n=o=void 0,r.data);for(n in o)o.hasOwnProperty(n)&&delete o[n];for(var a=0;a<i.length;a++)r.data[i[a].leafIdx]={}}this.items.next(this.tasks)},H.prototype.reflow=function(){this.updateContentHeight();var e=this.content.nativeElement;this.slotService.containerSize=e.scrollWidth,"auto"===this.contentHeight&&(e.style.overflow="visible"),this.slotService.layout(this.eventHeight),"auto"===this.contentHeight&&(e.style.overflow=""),this.syncTables()},H.prototype.onClick=function(e,t){var n=this;if("click"===(t=void 0===t?e.type:t)){var r,i=mn(e.target,function(e){return e.hasAttribute("data-slot-index")},this.element.nativeElement),o=mn(e.target,function(e){return yn(e,"k-more-events k-nav-day")},i);if(i&&o)return o=i.getAttribute("data-slot-index"),r=this.slotService.slotByIndex(o),void this.zone.run(function(){n.viewState.navigateTo({viewName:"day",date:b.toLocalDate(r.start)}),n.focusService.clearActiveDescendant()})}co.prototype.onClick.call(this,e,t)},H.prototype.slotByIndex=function(e,t){return this.slotService.slotByIndex(e)},H.prototype.onSelectDate=function(e){var t=this.dateRange(e);this.selectedDate=e,this.viewState.notifyDateRange(t),this.weeks=this.createDaySlots(t)},H.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=b.firstDayOfMonth(b.addMonths(n,1)),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=b.firstDayOfMonth(b.addMonths(n,-1)),this.isInRange(t))&&this.viewState.notifyNextDate(t)},H.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=b.firstDayOfMonth(b.getDate(e)),t=b.firstDayInWeek(e,this.weekStart);return{start:t,end:b.addDays(t,42),text:this.intl.format(this.selectedDateFormat,e),shortText:this.intl.format(this.selectedShortDateFormat,e)}},H.prototype.dragRanges=function(e){return this.slotService.dragRanges(e,this.dragging.offset)},H.prototype.dragHintSize=function(e,t){return{width:jn(t.rect.left-e.rect.left+t.rect.width),height:jn(e.height)}},H.prototype.slotByPosition=function(e,t){return this.slotService.slotByPosition(e,t)},H.prototype.updateOngoingEvents=function(){var e=this,t=!this.highlightOngoingEvents||!1===this.highlightOngoingEvents.enabled;l.isDocumentAvailable()&&!t&&(clearTimeout(this.ongoingEventsTimeout),this.zone.runOutsideAngular(function(){e.ongoingEventsTimeout=setTimeout(e.updateOngoingEvents,e.highlightOngoingEvents.updateInterval||6e4)}),this.toggleOngoingClass())},H.prototype.currentTime=function(){return new Date},H.prototype.toggleOngoingClass=function(){var n=this,r=this.currentTime(),i=y(this.highlightOngoingEvents.cssClass)?this.highlightOngoingEvents.cssClass:Bi;this.eventElements.forEach(function(e){var t=kn(r,e.item.start,e.item.end);n.renderer[t?"addClass":"removeClass"](e.nativeElement,i)})},H.prototype.createDaySlots=function(e){for(var t=[],n=e.start,r=0;r<6;r++){var i=[];t.push(i);for(var o=0;o<7;o++)i.push(n),n=b.addDays(n,1)}return t};var co,F=H;function H(e,t,n,r,i,o,a,s,l,c,d,u){e=co.call(this,e,t,n,r,i,a,o,s,l,c,u)||this;return e.focusService=d,e.resizeHintFormat={skeleton:"Md"},e.weeks=[],e.updateOngoingEvents=e.updateOngoingEvents.bind(e),e}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:m},{token:g},{token:o.IntlService},{token:_i},{token:n.NgZone},{token:n.ElementRef},{token:n.Renderer2},{token:v},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),F.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"month-view",inputs:{monthDaySlotTemplate:"monthDaySlotTemplate",highlightOngoingEvents:"highlightOngoingEvents"},providers:[_i],viewQueries:[{propertyName:"eventElements",predicate:C,descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-monthview k-scheduler-flex-layout">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader *ngIf="verticalResources.length">\n <table class="k-scheduler-table" aria-hidden="true">\n <tr>\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex">\n <th *ngFor="let day of weeks[0]; trackBy: itemIndex">\n {{ day | kendoDate: \'EEEE\' }}\n </th>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times k-scheduler-resources" #times *ngIf="verticalResources.length">\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex">\n <tr>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell" [ngClass]="{ \'k-last-resource\': resourceIndex === verticalResources.length - 1 }">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-slot-cell k-empty-slot">\n </th>\n </tr>\n <tr *ngFor="let index of 5 | repeat; trackBy: itemIndex">\n <th class="k-slot-cell k-empty-slot"></th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" tabindex="0" #content>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">\n <tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex">\n <td *ngFor="let day of week; let index = index; trackBy: itemIndex"\n monthSlot\n [ngClass]="daySlotClass(day, verticalResources.length ? verticalIndex : horizontalIndex)"\n [start]="day"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [title]="cellTitle(day)"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(day),\n end: addDay(toPlainDate(day)),\n isAllDay: true,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <span aria-hidden="true" class="k-link k-nav-day" *ngIf="!monthDaySlotTemplateRef">{{ day | kendoDate: \'dd\' }}</span>\n <ng-container *ngIf="monthDaySlotTemplateRef" [ngTemplateOutlet]="monthDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: day, resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n monthViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n monthViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:C,selector:"[monthViewItem]"},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:eo,selector:"[monthSlot]",inputs:["start"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}],pipes:{resourceIterator:io,kendoDate:o.DatePipe,repeat:qt,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Component,args:[{selector:"month-view",providers:[_i],template:'\n <div class="k-scheduler-layout k-scheduler-monthview k-scheduler-flex-layout">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader *ngIf="verticalResources.length">\n <table class="k-scheduler-table" aria-hidden="true">\n <tr>\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex">\n <th *ngFor="let day of weeks[0]; trackBy: itemIndex">\n {{ day | kendoDate: \'EEEE\' }}\n </th>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times k-scheduler-resources" #times *ngIf="verticalResources.length">\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex">\n <tr>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell" [ngClass]="{ \'k-last-resource\': resourceIndex === verticalResources.length - 1 }">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-slot-cell k-empty-slot">\n </th>\n </tr>\n <tr *ngFor="let index of 5 | repeat; trackBy: itemIndex">\n <th class="k-slot-cell k-empty-slot"></th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" tabindex="0" #content>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">\n <tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex">\n <td *ngFor="let day of week; let index = index; trackBy: itemIndex"\n monthSlot\n [ngClass]="daySlotClass(day, verticalResources.length ? verticalIndex : horizontalIndex)"\n [start]="day"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [title]="cellTitle(day)"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(day),\n end: addDay(toPlainDate(day)),\n isAllDay: true,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <span aria-hidden="true" class="k-link k-nav-day" *ngIf="!monthDaySlotTemplateRef">{{ day | kendoDate: \'dd\' }}</span>\n <ng-container *ngIf="monthDaySlotTemplateRef" [ngTemplateOutlet]="monthDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: day, resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n monthViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n monthViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:_i},{type:n.NgZone},{type:n.ElementRef},{type:n.Renderer2},{type:v},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{monthDaySlotTemplate:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],eventElements:[{type:h.ViewChildren,args:[C]}]}});c(ho,uo=t),Object.defineProperty(ho.prototype,"title",{get:function(){return this.localization.get("monthViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(ho.prototype,"viewEventHeight",{get:function(){return y(this.eventHeight)?this.eventHeight:this.schedulerOptions.eventHeight||25},enumerable:!1,configurable:!0});var uo,po=ho;function ho(e,t,n,r){e=uo.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:Y}",e.selectedShortDateFormat="{0:y}",e.name="month",e}po.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:po,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),po.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:po,selector:"kendo-scheduler-month-view",inputs:{eventHeight:"eventHeight",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return po})}],queries:[{propertyName:"monthDaySlotTemplate",first:!0,predicate:Tt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <month-view\n [eventHeight]="viewEventHeight"\n [еventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [monthDaySlotTemplate]="monthDaySlotTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [weekStart]="viewWeekStart">\n </month-view>\n </ng-template>\n ',isInline:!0,components:[{type:F,selector:"month-view",inputs:["monthDaySlotTemplate","highlightOngoingEvents"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:po,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-month-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return po})}],template:'\n <ng-template #content>\n <month-view\n [eventHeight]="viewEventHeight"\n [еventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [monthDaySlotTemplate]="monthDaySlotTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [weekStart]="viewWeekStart">\n </month-view>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{eventHeight:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],monthDaySlotTemplate:[{type:h.ContentChild,args:[Tt,{static:!1}]}]}});go.prototype.onItemClick=function(e,t){e.preventDefault(),this.itemClick.emit(t)};var mo=go;function go(){this.hostClasses=!0,this.inlineJustifyContentStyle="start",this.itemClick=new h.EventEmitter}mo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mo,deps:[],target:n.ɵɵFactoryTarget.Component}),mo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:mo,selector:"[viewFooter]",inputs:{items:"items"},outputs:{itemClick:"itemClick"},host:{properties:{"class.k-scheduler-footer":"this.hostClasses","class.k-toolbar":"this.hostClasses","style.justify-content":"this.inlineJustifyContentStyle"}},ngImport:n,template:'\n <span class="k-scheduler-navigation">\n <button type="button" kendoButton *ngFor="let item of items" [ngClass]="item.cssClass" (click)="onItemClick($event, item)">\n <span class="k-button-icon k-icon" [ngClass]="item.iconClass"></span>\n <span class="k-button-text">{{ item.text }}</span>\n </button>\n </span>\n ',isInline:!0,directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mo,decorators:[{type:h.Component,args:[{selector:"[viewFooter]",template:'\n <span class="k-scheduler-navigation">\n <button type="button" kendoButton *ngFor="let item of items" [ngClass]="item.cssClass" (click)="onItemClick($event, item)">\n <span class="k-button-icon k-icon" [ngClass]="item.iconClass"></span>\n <span class="k-button-text">{{ item.text }}</span>\n </button>\n </span>\n '}]}],propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-footer"]},{type:h.HostBinding,args:["class.k-toolbar"]}],inlineJustifyContentStyle:[{type:h.HostBinding,args:["style.justify-content"]}],itemClick:[{type:h.Output}],items:[{type:h.Input}]}});yo.prototype.ngOnInit=function(){this.toggleWorkHours(),this.footer.items=this.footerItems},yo.prototype.ngOnChanges=function(){this.toggleWorkHours()},yo.prototype.toggleWorkHours=function(){this.footerItems[0].text=this.showWorkHours?this.localization.get("showFullDay"):this.localization.get("showWorkDay")};a=yo;function yo(e,t){this.footer=e,this.localization=t,this.showWorkHours=!1,this.footerItems=[{cssClass:"k-scheduler-fullday",iconClass:"k-i-clock",text:""}]}a.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:a,deps:[{token:mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),a.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:a,selector:"[kendoWorkHoursFooter]",inputs:{showWorkHours:"showWorkHours"},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:a,decorators:[{type:h.Directive,args:[{selector:"[kendoWorkHoursFooter]"}]}],ctorParameters:function(){return[{type:mo},{type:r.LocalizationService}]},propDecorators:{showWorkHours:[{type:h.Input}]}});var fo,vo=[mo,a,qt,io,Ii,Si],ko=function(){},vo=(ko.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,deps:[],target:n.ɵɵFactoryTarget.NgModule}),ko.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,declarations:[mo,a,qt,io,Ii,Si],imports:[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],exports:[mo,a,qt,io,Ii,Si,L.IntlModule,Z.CommonModule,Oi]}),ko.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,imports:[[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],L.IntlModule,Z.CommonModule,Oi]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],exports:[vo,L.IntlModule,Z.CommonModule,Oi],declarations:[vo]}]}]}),function(){}),F=(vo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,deps:[],target:n.ɵɵFactoryTarget.NgModule}),vo.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,declarations:[po,F,C,eo],imports:[ko],exports:[po]}),vo.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,imports:[[ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,decorators:[{type:h.NgModule,args:[{imports:[ko],exports:[po],declarations:[po,F,C,eo]}]}]}),c(Do,fo=t),Object.defineProperty(Do.prototype,"viewEventHeight",{get:function(){return this.optionValue("eventHeight")||25},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"shouldShowWorkHours",{get:function(){return this.optionValue("showWorkHours")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewStartTime",{get:function(){return this.optionValue("startTime")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewEndTime",{get:function(){return this.optionValue("endTime")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkDayStart",{get:function(){return this.optionValue("workDayStart")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkDayEnd",{get:function(){return this.optionValue("workDayEnd")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkWeekStart",{get:function(){return this.optionValue("workWeekStart")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkWeekEnd",{get:function(){return this.optionValue("workWeekEnd")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewSlotDuration",{get:function(){return this.optionValue("slotDuration")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewSlotDivisions",{get:function(){return this.optionValue("slotDivisions")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewCurrentTimeMarker",{get:function(){return this.optionValue("currentTimeMarker")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewHighlightOngoingEvents",{get:function(){return this.optionValue("highlightOngoingEvents")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewScrollTime",{get:function(){return this.optionValue("scrollTime")},enumerable:!1,configurable:!0}),Do.prototype.optionValue=function(e){return(y(this[e])?this:this.schedulerOptions)[e]},Do);function Do(e,t,n,r){return fo.call(this,e,t,n,r)||this}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,inputs:{showWorkHours:"showWorkHours",eventHeight:"eventHeight",startTime:"startTime",scrollTime:"scrollTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",slotDuration:"slotDuration",slotDivisions:"slotDivisions",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents"},queries:[{propertyName:"timeSlotTemplate",first:!0,predicate:It,descendants:!0},{propertyName:"dateHeaderTemplate",first:!0,predicate:yt,descendants:!0}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{timeSlotTemplate:[{type:h.ContentChild,args:[It,{static:!1}]}],dateHeaderTemplate:[{type:h.ContentChild,args:[yt,{static:!1}]}],showWorkHours:[{type:h.Input}],eventHeight:[{type:h.Input}],startTime:[{type:h.Input}],scrollTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}]}});c(Io,To=F),Object.defineProperty(Io.prototype,"viewSlotFill",{get:function(){return this.optionValue("slotFill")},enumerable:!1,configurable:!0});var To,C=Io;function Io(e,t,n,r){return To.call(this,e,t,n,r)||this}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),C.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:C,inputs:{slotFill:"slotFill"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{slotFill:[{type:h.Input}]}});function bo(e,t,n){return void 0===n&&(n=!0),e.start.getTime()<=t.getTime()?(n?e.height:e.width)*((t.getTime()-e.start.getTime())/(e.end.getTime()-e.start.getTime())):0}function wo(e,t){var n=Pt(e.columnIndex)?e.columnIndex:Number.MAX_VALUE,r=Pt(t.columnIndex)?t.columnIndex:Number.MAX_VALUE;return n===r?e.item.startTime.getTime()-t.item.startTime.getTime():n-r}var So=25;function xo(e,o){var a=0,s=[];e.forEach(function(e){for(var e=o[e],i=e.slot,l=e.events,t=l.length,c=!0,n=(l.sort(wo),a=Math.max(t,a),s.push(i),function(o){var a=l[o];if(c=c&&a.item.endTime.getTime()<=i.end.getTime(),Pt(a.columnIndex))return"continue";a.rect={top:i.rect.top+bo(i,a.item.startTime)},a.columnIndex=o,a.lastColumn=!0;for(var s,e=function(t,e){var n,r,i=l[t];return i.columnIndex>e+1?(a.columnIndex=e+1,a.lastColumn=!1,l.splice(o,1),l.splice(a.columnIndex,0,a),s=e,"break"):vn(a.item.startTime,a.item.endTime,i.item.startTime,i.item.endTime)||(n=i.rect.top,r=a.rect.top,n<=r&&r<=n+So)?(e=i.columnIndex,i.lastColumn=!1,void(s=e)):(a.columnIndex=t,a.lastColumn=!l.some(function(e){return e.columnIndex&&t<e.columnIndex&&vn(a.item.startTime,a.item.endTime,e.item.startTime,e.item.endTime)}),l.splice(o,1),l.splice(t,0,a),s=e,"break")},t=0,n=-1;t<o;t++){var r=e(t,n),n=s;if("break"===r)break}}),r=0;r<t;r++)n(r);c&&(s.forEach(function(e){return e.columns=a}),s=[],a=0)}),s.forEach(function(e){return e.columns=a})}function Co(e,t){if(void 0!==t.rowIndex)return t.rowIndex;for(var n=0;n<e.length;n++){var r=e[n];if(!r||!vn(t.item.startTime,t.item.endTime,r.item.startTime,r.item.endTime))return n}return e.length}function Eo(e,t,n,r,i){var o=e[0].padding;if(!t.length)return{height:n-o};t.forEach(function(e){e.rowIndex=void 0,e.rect={height:r,width:0}});var t=Y.orderBy(t,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),a={},s=(t.forEach(function(t){return e.filter(function(e){return vn(t.item.startTime,t.item.endTime,e.start,e.end)}).forEach(function(e){e=a[e.key]=a[e.key]||{rows:[],slot:e,events:[]};t.rowIndex=i(e.rows,t),e.rows[t.rowIndex]=t,e.events.push(t)})}),e[0].top),l=0;return Object.keys(a).forEach(function(e){for(var t=a[e].events,n=0,r=0;r<t.length;r++){var i=t[r];i&&(i.rect.top=s+i.rowIndex*(10+i.rect.height),n=Math.max(n,i.rect.top-s+i.rect.height))}l=Math.max(n,l)}),{height:l+=n-o,slotItems:a}}function Ro(s,e,l){Object.keys(s).forEach(function(e){for(var e=s[e],t=e.slot,n=e.events,r=t.rect,i=0;i<n.length;i++){var o,a=n[i];a&&(Pt(a.rect.left)||(a.rect.left=t.rect.left+(l?bo(t,a.item.startTime,!1):0)),o=l&&a.item.endTime.getTime()<t.end.getTime()?bo(t,a.item.endTime,!1):r.width,a.rect.width=t.rect.left+o-a.rect.left)}}),e.forEach(function(e){e.reflow()})}Object.defineProperty(Fo.prototype,"slots",{get:function(){return this.slotMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"firstSlot",{get:function(){return this.slotMap.first},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"lastSlot",{get:function(){return this.slotMap.last},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"items",{get:function(){return this.itemMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"rect",{get:function(){var e=this.firstSlot.rect,t=this.lastSlot.rect;return{left:e.left,top:e.top,width:t.left-e.left+t.width,height:t.top-e.top+t.height}},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"start",{get:function(){var e=this.slotMap.first;return e?e.start:null},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"end",{get:function(){var e=this.slotMap.last;return e?e.end:null},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"hasSlots",{get:function(){return 0<this.slotMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"hasItems",{get:function(){return 0<this.itemMap.count},enumerable:!1,configurable:!0}),Fo.prototype.registerItem=function(e){this.itemMap.addItem(e.item.index,e)},Fo.prototype.unregisterItem=function(e,t){this.itemMap.removeItem(t.index,e)},Fo.prototype.registerSlot=function(e){this.slotMap.addItem(e.id.index,e)},Fo.prototype.unregisterSlot=function(e){this.slotMap.removeItem(e.id.index,e)},Fo.prototype.layout=function(e){var c,d,t,n=this.items;n.length&&(c=Math.max(Math.min(e.fill||.9,1),.1),e=Y.orderBy(n,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),n.forEach(function(e,t){e.rect=null,e.columnIndex=void 0}),d={},t=this.slots,e.forEach(function(n){return t.filter(function(e){return vn(n.item.startTime,n.item.endTime,e.start,e.end)}).forEach(function(e){var t=d[e.key]=d[e.key]||{events:[]};t.slot=e,t.events.push(n)})}),xo(n=Object.keys(d),d),n.forEach(function(e){var e=d[e],n=e.slot,e=e.events,r=n.rect,i=r.left,t=n.columns,o=r.width*c-2*(t-1)-2,a=i+2,s=o/t,l=a+o+2*(t-1);e.forEach(function(e){Pt(e.rect.left)||(e.rect.left=a+e.columnIndex*(2+s),e.rect.width=e.lastColumn?l-e.rect.left:s,e.origin={left:i,right:i+r.width});var t=n.end.getTime()<=e.item.endTime.getTime()?r.height:bo(n,e.item.endTime);e.rect.height=r.top+t-e.rect.top})}),e.forEach(function(e){return e.reflow()}))},Fo.prototype.initDaySlots=function(e,t){var n=this.slots;n.length&&(e=(n=Eo(n,this.items,e,t,Pn)).height,t=n.slotItems,this.setSlotsHeight(e),this.slotItems=t)},Fo.prototype.setDayOffsets=function(){this.itemMap.count&&this.slotItems&&(Ro(this.slotItems,this.items),this.slotItems=null)},Fo.prototype.setSlotsHeight=function(e){this.firstSlot.height=e};var Oo=Fo;function Fo(e){this.index=e,this.slotMap=new Pi,this.itemMap=new Pi}Vo.prototype.registerSlot=function(e){this.slotRange(e).registerSlot(e)},Vo.prototype.unregisterSlot=function(e){var t=this.slotRange(e);t.unregisterSlot(e),t.hasSlots||delete this.slotRanges(e)[e.id.rangeIndex]},Vo.prototype.registerItem=function(e){var t=this.itemRange(e);t?(t.registerItem(e),e.rangeIndex=t.index):(e.rangeIndex=void 0,e.toggle(!1))},Vo.prototype.unregisterItem=function(e,t){var n;void 0!==e.rangeIndex&&((n=e.item.isAllDay?this.dayRanges:this.timeRanges)[t.rangeIndex]&&n[t.rangeIndex].unregisterItem(e,t),e.rangeIndex=void 0)},Vo.prototype.forEachDateRange=function(e){for(var t=0;t<this.dayRanges.length;t++)e(this.dayRanges[t])},Vo.prototype.forEachTimeRange=function(e){for(var t=0;t<this.timeRanges.length;t++)e(this.timeRanges[t])},Vo.prototype.slotRange=function(e){var t=this.slotRanges(e),e=e.id.rangeIndex;return t[e]||(t[e]=new Oo(e)),t[e]},Vo.prototype.slotRanges=function(e){return e.isDaySlot?this.dayRanges:this.timeRanges},Vo.prototype.initTimeSlots=function(e,t,n){var r=this.slots;r.length&&(e=(r=Eo(r,this.items,e,t,Co)).height,t=r.slotItems,this.setSlotsHeight(Math.max(e,n)),this.slotItems=t)},Vo.prototype.setTimelineOffsets=function(){var e=this.items;this.slotItems&&e.length&&(Ro(this.slotItems,e,!0),this.slotItems=null)},Vo.prototype.setSlotsHeight=function(e){this.timeRanges[0].setSlotsHeight(e)},Object.defineProperty(Vo.prototype,"items",{get:function(){return this.timeRanges.reduce(function(e,t){return e.concat(t.items)},[])},enumerable:!1,configurable:!0}),Object.defineProperty(Vo.prototype,"slots",{get:function(){return this.timeRanges.reduce(function(e,t){return e.concat(t.slots)},[])},enumerable:!1,configurable:!0}),Object.defineProperty(Vo.prototype,"hasSlots",{get:function(){return Boolean(this.dayRanges.find(function(e){return e&&e.hasSlots})||this.timeRanges.find(function(e){return e&&e.hasSlots}))},enumerable:!1,configurable:!0}),Vo.prototype.cleanRanges=function(){this.dayRanges=this.dayRanges.filter(function(e){return Boolean(e)}),this.timeRanges=this.timeRanges.filter(function(e){return Boolean(e)})},Vo.prototype.itemRange=function(e){var t=e.item,e=t.isAllDay?this.dayRanges:this.timeRanges;return Pt(t.rangeIndex)?e[t.rangeIndex]:e.find(function(e){return vn(t.startTime,t.endTime,e.start,e.end)})};var Ho=Vo;function Vo(e){this.index=e,this.dayRanges=[],this.timeRanges=[]}c(Po,Wo=Vi),Po.prototype.layoutDays=function(t){void 0===t&&(t=25),this.groups.forEach(function(e){return e.forEachDateRange(function(e){return e.slots.forEach(function(e){e.element.nativeElement.style.height=""})})});var n=this.groups[0].dayRanges[0].slots[0].height;this.groups.forEach(function(e){e.forEachDateRange(function(e){return e.initDaySlots(n,t)})}),this.groups.forEach(function(e){e.forEachDateRange(function(e){return e.setDayOffsets()})})},Po.prototype.layoutTimeline=function(n,r){this.groups.forEach(function(e){return e.forEachTimeRange(function(e){return e.slots.forEach(function(e){e.element.nativeElement.style.height=""})})});var i=this.groups[0].timeRanges[0].slots[0].height;this.groups.forEach(function(e,t){e.initTimeSlots(i,n,r&&r[t]?r[t].nativeElement.children[0].children[0].offsetHeight:0)}),this.groups.forEach(function(e){return e.setTimelineOffsets()})},Po.prototype.layoutTimes=function(t){this.groups.forEach(function(e){return e.forEachTimeRange(function(e){return e.layout(t)})})},Po.prototype.forEachDateRange=function(n){this.groups.forEach(function(e,t){n(e.dayRanges[0],t)})},Po.prototype.syncDateRanges=function(){var t=0;return this.groups.forEach(function(e){e=e.dayRanges[0].firstSlot;e&&(t=Math.max(e.rect.height-e.padding,t))}),this.groups.forEach(function(e){e.dayRanges[0].setSlotsHeight(t)}),t},Po.prototype.forEachGroup=function(e){this.groups.forEach(e)},Po.prototype.forEachSlot=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})}),e.timeRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})})})},Po.prototype.createGroup=function(e){return new Ho(e)},Po.prototype.slotByIndex=function(e,t){void 0===t&&(t=!1);var e=ce(e.split(":").map(function(e){return parseInt(e,10)}),3),n=e[0],r=e[1],e=e[2];return this.groups[n][t?"dayRanges":"timeRanges"][r].slots[e]},Po.prototype.slotByPosition=function(t,n,e,r){var i;if(e){if(this.groups.find(function(e){return i=e.dayRanges.find(function(e){return Bn(e.rect,t)})}),i)return i.slots.find(function(e){return Bn(e.rect,t)})}else if(this.groups.find(function(e){return i=(i=r?e.dayRanges.find(function(e){return Nn(e.rect,t,n)}):i)||e.timeRanges.find(function(e){return Nn(e.rect,t,n)})}),i)return i.slots.find(function(e){return Nn(e.rect,t,n)})},Po.prototype.groupSlotByPosition=function(e,t,n){var r=this.groups[e.id.resourceIndex],e=e.isDaySlot?r.dayRanges.find(function(e){return Nn(e.rect,t,n)}):r.timeRanges.find(function(e){return Nn(e.rect,t,n)});if(e)return e.slots.find(function(e){return Nn(e.rect,t,n)})},Po.prototype.dragRanges=function(e,t,n){var r,i=new Date(e.start.getTime()-t.start),o=new Date(e.start.getTime()+t.end),t=this.groups[e.id.resourceIndex];return n=n?(r=[],t.timeRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(i,o,e.start,e.end)});e.length&&r.push(e)}),n=r[r.length-1],[r[0][0],n[n.length-1]]):t.slotRange(e).slots.filter(function(e){return vn(i,o,e.start,e.end)}),{start:i,end:o,ranges:[n]}},Po.prototype.resizeRanges=function(e,t,n,r){var i,o,a=this.groups[e.id.resourceIndex],a=t.isAllDay?a.dayRanges:a.timeRanges,s=[],l=t.start.toUTCDate(),c=t.end.toUTCDate();return n?(n=e.start.getTime()+r.start,i=l.getTime()===c.getTime()?this.findDateSlot(c,a,!0).end:c,o=n>=c.getTime()?t.isAllDay?new Date(Math.min(Cn(c,l).getTime(),c.getTime())):this.findDateSlot(i,a).start:r.start&&t.isAllDay?new Date(n):new Date(e.start.getTime())):(o=l,i=e.start.getTime()<=o.getTime()?t.isAllDay?new Date(Math.max(Cn(l,c).getTime(),l.getTime())):this.findDateSlot(o,a,!0).end:r.end&&t.isAllDay?new Date(e.start.getTime()+r.end):e.end),a.forEach(function(e){e=e.slots.filter(function(e){return vn(o,i,e.start,e.end)});e.length&&s.push(e)}),{start:o,end:i,ranges:s}},Po.prototype.timePosition=function(t,e,n){var r,e=this.groups[e].timeRanges.find(function(e){return kn(t,e.start,e.end)});return(e=e&&e.slots.find(function(e){return kn(t,e.start,e.end)}))?(r=(n?e.height:e.width)*((t.getTime()-e.start.getTime())/(e.end.getTime()-e.start.getTime())),n?e.rect.top+r:e.rect.left+r):void 0},Po.prototype.findDateSlot=function(t,e,n){var r;return e.forEach(function(e){e=n?e.slots.filter(function(e){return vn(t,t,e.start,e.end)}):e.slots.filter(function(e){return kn(t,e.start,e.end)});e.length&&(r=e[0])}),r};var Wo,Mo=Po;function Po(){return null!==Wo&&Wo.apply(this,arguments)||this}function zo(e){var t=e.start,e=e.end,t=t.stripTime(),n=e.stripTime();return t.getTime()!==n.getTime()&&(n.getTime()!==e.getTime()||t.addDays(1).getTime()!==n.getTime())}c(No,Ao=k),Object.defineProperty(No.prototype,"eventTime",{get:function(){return this.intlService.format("{0:t}–{1:t}",b.toLocalDate(this.item.startTime),b.toLocalDate(this.item.endTime))},enumerable:!1,configurable:!0});var Ao,eo=No;function No(e,t,n,r,i,o,a){t=Ao.call(this,t,n,r,i,o,a)||this;return t.intlService=e,t.localeId=a,t}eo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,deps:[{token:o.IntlService},{token:Mo},{token:r.LocalizationService},{token:f},{token:n.ElementRef},{token:n.Renderer2},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),eo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:eo,selector:"[dayTimeViewItem]",inputs:{vertical:"vertical",isAllDay:"isAllDay"},usesInheritance:!0,ngImport:n,template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template k-event-time" *ngIf="!isAllDay">{{ eventTime }}</div>\n <div class="k-event-template" aria-hidden="true">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>\n </span>\n\n <span class="k-event-top-actions" *ngIf="item.tail && vertical">\n <span class="k-icon k-i-caret-alt-up"></span>\n </span>\n\n <span class="k-event-bottom-actions" *ngIf="item.head && vertical">\n <span class="k-icon k-i-caret-alt-down"></span>\n </span>\n\n <ng-container *ngIf="resizable && vertical">\n <span class="k-resize-handle k-resize-n" *ngIf="!item.tail"></span>\n <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>\n </ng-container>\n\n <ng-container *ngIf="resizable && !vertical">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,decorators:[{type:h.Component,args:[{selector:"[dayTimeViewItem]",template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template k-event-time" *ngIf="!isAllDay">{{ eventTime }}</div>\n <div class="k-event-template" aria-hidden="true">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>\n </span>\n\n <span class="k-event-top-actions" *ngIf="item.tail && vertical">\n <span class="k-icon k-i-caret-alt-up"></span>\n </span>\n\n <span class="k-event-bottom-actions" *ngIf="item.head && vertical">\n <span class="k-icon k-i-caret-alt-down"></span>\n </span>\n\n <ng-container *ngIf="resizable && vertical">\n <span class="k-resize-handle k-resize-n" *ngIf="!item.tail"></span>\n <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>\n </ng-container>\n\n <ng-container *ngIf="resizable && !vertical">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:Mo},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]},propDecorators:{vertical:[{type:h.Input}],isAllDay:[{type:h.Input}]}});function Bo(e){return b.getDate(e)}function jo(e,t){return b.getDate(b.addDays(e,t||1))}function Lo(e,t,n){return b.getDate(b.addDays(e,n*t))}c(V,qo=E),Object.defineProperty(V.prototype,"classNames",{get:function(){return"k-scheduler-"+this.name+"view"},enumerable:!1,configurable:!0}),Object.defineProperty(V.prototype,"timeSlotTemplateRef",{get:function(){return this.timeSlotTemplate||(this.schedulerTimeSlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(V.prototype,"dateHeaderTemplateRef",{get:function(){return this.dateHeaderTemplate||(this.schedulerDateHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),V.prototype.ngOnChanges=function(e){(e.startTime||e.endTime||e.showWorkHours||e.workDayStart||e.workDayEnd||e.workWeekStart||e.workWeekEnd||e.slotDivisions||e.slotDuration)&&(this.timeSlots=this.createTimeSlots(),this.initWorkDay(),this.changes.next(null)),l.isChanged("currentTimeMarker",e)&&(this.showCurrentTime=this.enableCurrentTime()),l.isChanged("weekStart",e)&&this.onSelectDate(this.selectedDate),qo.prototype.ngOnChanges.call(this,e)},V.prototype.ngOnDestroy=function(){qo.prototype.ngOnDestroy.call(this),clearTimeout(this.currentTimeTimeout),clearTimeout(this.ongoingEventsTimeout)},V.prototype.verticalItem=function(e,t){for(var n=this.verticalResources[t].data||[],r=this.verticalResources,i=1,o=t+1;o<r.length;o++)i*=(r[o].data||[]).length||1;return n[e/i%n.length]},V.prototype.timeSlotClass=function(e,t,n){if(this.slotClass)return this.slotClass({start:Cn(t,e.start),end:Cn(t,e.end),resources:this.resourcesByIndex(n),isAllDay:!1})},V.prototype.toggleOngoingClass=function(){var n=this,r=this.currentTime(),i=y(this.highlightOngoingEvents.cssClass)?this.highlightOngoingEvents.cssClass:Bi;this.eventElements.forEach(function(e){var t=kn(r,e.item.start,e.item.end);n.renderer[t?"addClass":"removeClass"](e.nativeElement,i)})},V.prototype.scrollToTime=function(e){if("string"==typeof(e=void 0===e?this.scrollTime:e)){var t=this.intl.parseDate(e);if(!t)return;t=bn(this.daySlots[0].start,t)}else t=xn(e);var n,r,i,o,e=this.slotService.timePosition(t,0,this.verticalTime);Pt(e)&&((t=this.content.nativeElement)[this.verticalTime?"scrollTop":"scrollLeft"]=this.localization.rtl&&!this.verticalTime?(r=e,i=(n=t).scrollLeft,o=r,n.scrollLeft=-1,n.scrollLeft<0?o=-r:0<i&&(o=n.scrollWidth-n.offsetWidth-r),o):e)},V.prototype.optionsChange=function(e){this.schedulerTimeSlotTemplate=e.timeSlotTemplate,this.schedulerDateHeaderTemplate=e.dateHeaderTemplate,qo.prototype.optionsChange.call(this,e)},V.prototype.updateView=function(){qo.prototype.updateView.call(this),this.updateCurrentTime(),this.updateOngoingEvents(),this.initialUpdate&&(this.scrollToTime(),this.initialUpdate=!1)},V.prototype.enableCurrentTime=function(){var e,t,n,r;return!(!this.currentTimeMarker||!1===this.currentTimeMarker.enabled||!this.selectedDate)&&(r=this.dateRange(),this.currentDate=b.ZonedDate.fromLocalDate(this.currentTime(),!1!==this.currentTimeMarker.localTimezone?"":this.timezone),e=Tn(n=this.currentDate.toLocalDate()),t=this.timeSlots,n=kn(n,r.start,r.end),r=t.length&&kn(e,t[0].start,t[t.length-1].end),n)&&r},V.prototype.currentTime=function(){return new Date},V.prototype.updateCurrentTime=function(){var e,t=this;l.isDocumentAvailable()&&((e=this.enableCurrentTime())!==this.showCurrentTime&&(this.showCurrentTime=e,this.changeDetector.detectChanges()),clearTimeout(this.currentTimeTimeout),e)&&(this.zone.runOutsideAngular(function(){t.currentTimeTimeout=setTimeout(t.updateCurrentTime,t.currentTimeMarker.updateInterval||6e4)}),this.positionCurrentTime())},V.prototype.updateOngoingEvents=function(){var e=this,t=!this.highlightOngoingEvents||!1===this.highlightOngoingEvents.enabled;l.isDocumentAvailable()&&!t&&(clearTimeout(this.ongoingEventsTimeout),this.zone.runOutsideAngular(function(){e.ongoingEventsTimeout=setTimeout(e.updateOngoingEvents,e.highlightOngoingEvents.updateInterval||6e4)}),this.toggleOngoingClass())},V.prototype.positionCurrentTime=function(){var r,i,o,a,s,l,c,d=this;this.currentTimeElements&&this.currentTimeElements.length&&(r=this.currentDate.toUTCDate(),i=this.currentTimeArrows?this.currentTimeArrows.toArray():[],o=i.length?this.currentTimeArrowOffset():0,a=i.length?i[0].nativeElement.offsetHeight/2:4,s=this.contentTable.nativeElement.clientWidth,l=this.contentTable.nativeElement.clientHeight,c=this.verticalTime,this.currentTimeElements.forEach(function(e,t){var n=d.slotService.timePosition(r,t,c);void 0!==n&&(e=e.nativeElement,i[t]&&(t=i[t].nativeElement,Zn(t,{top:c?n-a:o,left:t=c?o:n-a,right:t})),Zn(e,{top:c?n:0,left:t=c?0:n,right:t,width:c?s:1,height:c?1:l}))}))},V.prototype.bindEvents=function(){var t=this;qo.prototype.bindEvents.call(this),this.zone.runOutsideAngular(function(){t.subs.add(Zt(t.headerWrap.nativeElement).subscribe(function(e){return t.onHeaderClick(e)})),t.subs.add(p.fromEvent(t.headerWrap.nativeElement,"contextmenu").subscribe(function(e){return t.onClick(e)})),t.subs.add(Gt(t.headerWrap.nativeElement).subscribe(function(e){return t.onClick(e,"dblclick")}))})},V.prototype.onHeaderClick=function(e){var t,n=this;this.onClick(e),this.daySlots.length<=1||(e=e.target.getAttribute("data-dayslot-index"))&&(t=this.daySlots[parseInt(e,10)],this.zone.run(function(){n.viewState.navigateTo({viewName:"day",date:t.start}),n.focusService.clearActiveDescendant()}))},V.prototype.slotByIndex=function(e,t){return this.slotService.slotByIndex(e,t.target.hasAttribute("data-day-slot"))},V.prototype.onSelectDate=function(e){this.selectedDate=e,this.daySlots=this.createDaySlots(),this.showCurrentTime=this.enableCurrentTime(),this.viewState.notifyDateRange(this.dateRange())},V.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=this.getNextDate(n,1,this.numberOfDays),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=this.getNextDate(n,-1,this.numberOfDays),this.isInRange(t))&&this.viewState.notifyNextDate(t),"scroll-time"===e.type&&this.scrollToTime(e.time)},V.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=this.getStartDate(e),t=this.getEndDate(e,this.numberOfDays),n=this.getEndDate(e,this.numberOfDays-1);return{start:e,end:t,text:this.intl.format(this.selectedDateFormat,e,n),shortText:this.intl.format(this.selectedShortDateFormat,e,n)}},V.prototype.createDaySlots=function(){for(var e=this.getStartDate(this.selectedDate),t=this.getEndDate(e,this.numberOfDays),n=[];e<t;){var r=b.addDays(e,1);n.push({start:e,end:r}),e=r}return n},V.prototype.createTimeSlots=function(){for(var e=this.intl,t=(s={showWorkHours:this.showWorkHours,startTime:this.startTime,endTime:this.endTime,workDayStart:this.workDayStart,workDayEnd:this.workDayEnd,slotDivisions:this.slotDivisions,slotDuration:this.slotDuration}).showWorkHours,n=s.startTime,r=s.endTime,i=s.workDayStart,o=s.workDayEnd,a=s.slotDivisions,s=s.slotDuration,i=Tn(e.parseDate(t?i:n)).getTime(),l=Tn(e.parseDate(t?o:r)).getTime(),c=(l<=i&&(l=Tn(Ai).getTime()+b.MS_PER_DAY),[]),d=Math.round(s/a*6e4),u=i,p=0;u<l;)c.push({start:new Date(u),end:new Date(u+d),isMajor:p%a==0}),p++,u+=d;return c},V.prototype.initWorkDay=function(){var e=this.intl.parseDate(this.workDayStart),t=(this.workDayStartTime=Tn(e),this.intl.parseDate(this.workDayEnd));this.workDayEndTime=t<=e?b.addDays(Ai,1):Tn(t)},V.prototype.slotByPosition=function(e,t,n){n=n?yn(n.parentNode,"k-scheduler-header-wrap"):t<0;return this.slotService.slotByPosition(e,t,n,Boolean(this.verticalResources.length))},V.prototype.slotFields=function(e){var t=qo.prototype.slotFields.call(this,e);return e.isDaySlot?t.isAllDay=!0:(t.start=this.convertDate(e.start),t.end=this.convertDate(e.end)),t};var qo,t=V;function V(e,t,n,r,i,o,a,s,l,c,d,u){t=qo.call(this,t,n,r,i,o,a,s,l,c,e,u)||this;return t.changeDetector=e,t.focusService=d,t.numberOfDays=1,t.startTime="00:00",t.endTime="00:00",t.workDayStart="08:00",t.workDayEnd="17:00",t.workWeekStart=1,t.workWeekEnd=5,t.slotDuration=60,t.slotDivisions=2,t.showWorkHours=!1,t.getStartDate=Bo,t.getEndDate=jo,t.getNextDate=Lo,t.daySlots=[],t.timeSlots=[],t.resizeHintFormat="t",t.showCurrentTime=!1,t.verticalTime=!0,t.initialUpdate=!0,t.updateCurrentTime=t.updateCurrentTime.bind(t),t.toggleOngoingClass=t.toggleOngoingClass.bind(t),t.updateOngoingEvents=t.updateOngoingEvents.bind(t),t}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:n.ChangeDetectorRef},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:r.LocalizationService},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),t.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:t,selector:"kendo-day-time-view",inputs:{timeSlotTemplate:"timeSlotTemplate",dateHeaderTemplate:"dateHeaderTemplate",numberOfDays:"numberOfDays",scrollTime:"scrollTime",startTime:"startTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",slotDuration:"slotDuration",slotDivisions:"slotDivisions",showWorkHours:"showWorkHours",getStartDate:"getStartDate",getEndDate:"getEndDate",getNextDate:"getNextDate",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents"},viewQueries:[{propertyName:"currentTimeElements",predicate:["currentTimeMarker"],descendants:!0},{propertyName:"eventElements",predicate:eo,descendants:!0},{propertyName:"currentTimeArrows",predicate:["currentTimeArrow"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Component,args:[{selector:"kendo-day-time-view",template:""}]}],ctorParameters:function(){return[{type:n.ChangeDetectorRef},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:r.LocalizationService},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{timeSlotTemplate:[{type:h.Input}],dateHeaderTemplate:[{type:h.Input}],numberOfDays:[{type:h.Input}],scrollTime:[{type:h.Input}],startTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],showWorkHours:[{type:h.Input}],getStartDate:[{type:h.Input}],getEndDate:[{type:h.Input}],getNextDate:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],currentTimeElements:[{type:h.ViewChildren,args:["currentTimeMarker"]}],eventElements:[{type:h.ViewChildren,args:[eo]}],currentTimeArrows:[{type:h.ViewChildren,args:["currentTimeArrow"]}]}});c(Go,Zo=R),Object.defineProperty(Go.prototype,"nonWorkHour",{get:function(){var e,t,n=this.date.getDay();return this.invariantStart<this.workDayStart||this.workDayEnd<this.invariantEnd||(n=n,e=this.workWeekStart,!((t=this.workWeekEnd)<e?n<=t||e<=n:e<=n&&n<=t))},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"startLocalTime",{get:function(){return this.date&&this.invariantStart?Cn(this.date,this.invariantStart):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"endLocalTime",{get:function(){return this.date&&this.invariantEnd?Cn(this.date,this.invariantEnd):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"start",{get:function(){return this.date&&this.invariantStart?bn(this.date,this.invariantStart):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"end",{get:function(){var e;return this.date&&this.invariantEnd?(e=bn(this.date,this.invariantEnd),Ni.getTime()<=this.invariantEnd.getTime()?In(e,1):e):null},enumerable:!1,configurable:!0});var Zo,k=Go;function Go(e,t,n){e=Zo.call(this,e,t,n)||this;return e.isDaySlot=!1,e}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:n.ElementRef},{token:Mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),k.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"[timeSlot]",inputs:{invariantStart:"invariantStart",invariantEnd:"invariantEnd",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",date:"date"},host:{properties:{"class.k-nonwork-hour":"this.nonWorkHour"}},exportAs:["timeSlot"],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Directive,args:[{selector:"[timeSlot]",exportAs:"timeSlot"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:Mo},{type:r.LocalizationService}]},propDecorators:{invariantStart:[{type:h.Input}],invariantEnd:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],date:[{type:h.Input}],nonWorkHour:[{type:h.HostBinding,args:["class.k-nonwork-hour"]}]}});c(Uo,_o=R),Object.defineProperty(Uo.prototype,"start",{get:function(){return this.startDate?wn(this.startDate):null},set:function(e){this.startDate=e},enumerable:!1,configurable:!0}),Object.defineProperty(Uo.prototype,"end",{get:function(){return this.endDate?wn(this.endDate):null},set:function(e){this.endDate=e},enumerable:!1,configurable:!0}),Object.defineProperty(Uo.prototype,"daySlot",{get:function(){return!0},enumerable:!1,configurable:!0});var _o,E=Uo;function Uo(e,t,n){e=_o.call(this,e,t,n)||this;return e.isDaySlot=!0,e}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:n.ElementRef},{token:Mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),E.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"[daySlot]",inputs:{start:"start",end:"end"},host:{properties:{"attr.data-day-slot":"this.daySlot"}},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Directive,args:[{selector:"[daySlot]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:Mo},{type:r.LocalizationService}]},propDecorators:{start:[{type:h.Input}],end:[{type:h.Input}],daySlot:[{type:h.HostBinding,args:["attr.data-day-slot"]}]}});c(W,Yo=t),Object.defineProperty(W.prototype,"allDaySlotTemplateRef",{get:function(){return this.allDaySlotTemplate||(this.schedulerAllDaySlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayEventTemplateRef",{get:function(){return this.allDayEventTemplate||(this.schedulerAllDayEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"minorTimeHeaderTemplateRef",{get:function(){return this.minorTimeHeaderTemplate||(this.schedulerMinorTimeHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"majorTimeHeaderTemplateRef",{get:function(){return this.majorTimeHeaderTemplate||(this.schedulerMajorTimeHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayMessage",{get:function(){return this.localization.get("allDay")},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayResizeHint",{get:function(){return this.resizing&&this.resizing.task.isAllDay},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayDragHint",{get:function(){return this.dragging&&this.dragging.slot.isDaySlot},enumerable:!1,configurable:!0}),W.prototype.optionsChange=function(e){this.schedulerAllDaySlotTemplate=e.allDaySlotTemplate,this.schedulerAllDayEventTemplate=e.allDayEventTemplate,this.schedulerMinorTimeHeaderTemplate=e.minorTimeHeaderTemplate,this.schedulerMajorTimeHeaderTemplate=e.majorTimeHeaderTemplate,Yo.prototype.optionsChange.call(this,e)},W.prototype.ngOnChanges=function(e){Yo.prototype.ngOnChanges.call(this,e),e.slotFill&&this.changes.next(null),l.anyChanged(["startTime","endTime","showWorkHours","workDayStart","workDayEnd","workWeekStart","workWeekEnd"],e)&&this.viewRangeChange.next(null),(l.isChanged("numberOfDays",e,!0)||l.isChanged("weekStart",e))&&(this.daySlots=this.createDaySlots(),this.viewState.notifyDateRange(this.dateRange()))},W.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=this.daySlots.length,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},W.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=this.timeSlots.length+1,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},W.prototype.allDaySlotClass=function(e,t){if(this.slotClass)return this.slotClass({start:e.start,end:e.end,resources:this.resourcesByIndex(t),isAllDay:!0})},W.prototype.createTasks=function(e,t){for(var n=this.timeSlots[0],r=this.timeSlots[this.timeSlots.length-1].end,i=!(r.getHours()||r.getMinutes()),o=this.daySlots.map(function(e){return{start:bn(e.start,n.start),end:i?wn(e.end):bn(e.start,r)}}),a=t.start,t=t.end,s=e,l=o,c=[],d=wn(a),u=wn(t),p=0;p<s.length;p++)for(var h=s[p],m=zo(h),g=m&&!h.event.isAllDay&&h.end.getTime()-h.start.getTime()<b.MS_PER_DAY,y=h.event.isAllDay||m&&!g,f=(y?Dn(h):h.end).toUTCDate(),v=(y?h.start.stripTime():h.start).toUTCDate(),k=0;k<l.length;k++){var D=l[k].start,T=l[k].end;if(vn(v,f,D,T)){D={index:p,isAllDay:y,startTime:v,endTime:f,rangeIndex:y?0:k,start:h.start,end:h.end,event:h.event};if(c.push(D),!g){D.head=u<f,D.tail=v<d;break}var T=l[k+1],I=l[k-1];D.head=(T?T.start:u)<f,D.tail=v<(I?I.end:d)}}return _t(c)},W.prototype.onTasksChange=function(){this.items.next(this.tasks.filter(function(e){return!e.isAllDay})),this.allDayItems.next(this.tasks.filter(function(e){return e.isAllDay}))},W.prototype.reflow=function(){var n,e,t=this.slotService;this.verticalResources.length||(this.updateContentHeight(),this.syncTables()),this.slotService.containerSize=this.content.nativeElement.clientWidth,t.layoutDays(this.eventHeight),this.updateContentHeight(),this.syncTables(),this.dayCells.length&&(n=this.dayCells.toArray(),this.verticalResources.length?t.forEachDateRange(function(e,t){e=e.firstSlot;n[t].nativeElement.style.height=e.rect.height-e.padding+"px"}):(e=t.syncDateRanges(),n[0].nativeElement.style.height=e+"px")),t.layoutTimes({fill:this.slotFill}),this.syncTables()},W.prototype.dragHorizontal=function(e){return e.isDaySlot},W.prototype.updateHintContainer=function(){this.headerHintContainer&&this.headerHintContainer.detectChanges(),Yo.prototype.updateHintContainer.call(this)},W.prototype.onRelease=function(e){Yo.prototype.onRelease.call(this,e),this.dragContainers=null},W.prototype.updateDragContainer=function(t){this.dragContainers||(this.dragContainers=this.containers);var e=this.dragContainers.find(function(e){e=e.offset;return e.top<=t.pageY&&t.pageY<=e.top+e.height})||{};this.container=e.element,this.containerOffset=e.offset},W.prototype.containerByPosition=function(e){var t=e.x,n=e.y;return this.containers.find(function(e){e=e.offset;return e.top<=n&&n<=e.top+e.height&&e.left<=t&&t<=e.left+e.width})},Object.defineProperty(W.prototype,"containers",{get:function(){var e=this.headerWrap.nativeElement.children[1],t=this.content.nativeElement;return[{element:t,offset:Ln(t)},{element:e,offset:Ln(e)}]},enumerable:!1,configurable:!0}),W.prototype.scrollContainer=function(e,t){clearInterval(this.scrollInterval),this.container&&this.container===this.content.nativeElement&&Yo.prototype.scrollContainer.call(this,e,t)},W.prototype.dragRanges=function(e){var t,n,r=this.dragging.task;return e.isDaySlot&&!r.isAllDay?{ranges:[[e]],start:Cn(e.start,r.start.toUTCDate()),end:Cn(e.start,r.end.toUTCDate()),isAllDay:!0}:(t=r.isAllDay&&!e.isDaySlot,n=this.slotService.dragRanges(e,t?{start:0,end:0}:this.dragging.offset),t&&(n.end=e.end),n.isAllDay=this.draggedIsAllDay(r,e),n)},W.prototype.dragHintEventStyleArgs=function(){return{event:this.dragging.task.event,resources:this.dragging.resourceItems,isAllDay:Boolean(this.allDayDragHint)}},W.prototype.draggedIsAllDay=function(e,t){return Boolean(t.isDaySlot&&(e.event.isAllDay||!zo(e)))},W.prototype.dragHintSize=function(e,t){var n,e=e.isDaySlot?(n=jn(t.rect.left-e.rect.left+t.rect.width),jn(e.height)):(n=jn(.9*e.rect.width),jn(this.dragging.task.isAllDay?e.rect.height:t.rect.top-e.rect.top+t.rect.height));return{width:n,height:e}},W.prototype.currentTimeArrowOffset=function(){var e,t;return this.verticalResources.length?(e=this.times.nativeElement.querySelector(".k-scheduler-times-all-day"),t=this.times.nativeElement,this.localization.rtl?t.offsetWidth-e.offsetWidth:e.offsetLeft):0};var Yo,R=W;function W(e,t,n,r,i,o,a,s,l,c,d,u){l=Yo.call(this,l,t,n,r,i,o,a,s,c,e,d,u)||this;return l.name="day",l.dateFormat={skeleton:"MEd"},l.allDayResizeHintFormat={skeleton:"Md"},l.allDayItems=new p.BehaviorSubject(null),l}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:r.LocalizationService},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:n.ChangeDetectorRef},{token:v},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),R.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:R,selector:"multi-day-view",inputs:{name:"name",slotFill:"slotFill",allDaySlotTemplate:"allDaySlotTemplate",allDayEventTemplate:"allDayEventTemplate",minorTimeHeaderTemplate:"minorTimeHeaderTemplate",majorTimeHeaderTemplate:"majorTimeHeaderTemplate"},providers:[Mo],viewQueries:[{propertyName:"headerHintContainer",first:!0,predicate:["headerHintContainer"],descendants:!0},{propertyName:"dayCells",predicate:["allDayCell"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n <tr>\n <th [style.height]="\'auto\'">​</th>\n </tr>\n <tr *ngIf="!verticalResources.length">\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <th *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link k-nav-day" [attr.data-dayslot-index]="index">{{ slot.start | kendoDate: dateFormat }}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n </ng-container>\n </tr>\n </table>\n <div style="position: relative;" *ngIf="!verticalResources.length">\n <table class="k-scheduler-table k-scheduler-header-all-day k-user-select-none" aria-hidden="true">\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [id]="{ resourceIndex: resourceIndex, rangeIndex: 0, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(resourceIndex)\n })"\n [ngClass]="allDaySlotClass(slot, resourceIndex)">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(resourceIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #headerHintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && allDayDragHint"\n class="k-event-drag-hint"\n dayTimeViewItem\n [isAllDay]="true"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="dragHints[0].item"\n [resources]="dragHints[0].resources">\n </div>\n\n <div *ngIf="resizeHints.length && allDayResizeHint"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="allDayResizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-right">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr *ngIf="verticalResources.length">\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n <tr *ngFor="let slot of timeSlots; let timeSlotIndex = index;trackBy: itemIndex">\n <th *ngIf="slot.isMajor" [ngClass]="{ \'k-slot-cell\': slotDivisions === 1 }">\n <ng-container *ngIf="!majorTimeHeaderTemplateRef">{{ slot.start | kendoDate: \'t\' }}</ng-container>\n <ng-container *ngIf="majorTimeHeaderTemplateRef" [ngTemplateOutlet]="majorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n <th *ngIf="!slot.isMajor" [ngClass]="{ \'k-slot-cell\': timeSlotIndex % slotDivisions === slotDivisions - 1 }">\n <ng-container *ngIf="minorTimeHeaderTemplateRef" [ngTemplateOutlet]="minorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }">\n </ng-container>\n </th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content k-user-select-none" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeMarker class="k-current-time">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <tr class="k-scheduler-header-all-day" *ngIf="verticalResources.length">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(verticalIndex)\n })"\n [id]="{ resourceIndex: verticalIndex, rangeIndex: 0, index: index }">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(verticalIndex) }"></ng-container>\n </td>\n </tr>\n <tr *ngFor="let slot of timeSlots; index as index; trackBy: itemIndex" [class.k-middle-row]="slot.isMajor">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <td *ngFor="let daySlot of daySlots; index as rangeIndex; trackBy: itemIndex"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.startLocalTime, resources: resourcesByIndex(timeSlot.id.resourceIndex) }">\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [vertical]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && (!allDayDragHint || verticalResources.length)"\n class="k-event-drag-hint"\n role="button"\n dayTimeViewItem\n [isAllDay]="allDayDragHint"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [resources]="dragHints[0].resources"\n [item]="dragHints[0].item">\n </div>\n\n <ng-container *ngIf="resizeHints.length && (!allDayResizeHint || verticalResources.length)">\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="allDayResizeHint ? allDayResizeHintFormat : resizeHintFormat">\n </div>\n </ng-container>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:eo,selector:"[dayTimeViewItem]",inputs:["vertical","isAllDay"]},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:E,selector:"[daySlot]",inputs:["start","end"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]},{type:k,selector:"[timeSlot]",inputs:["invariantStart","invariantEnd","workDayStart","workDayEnd","workWeekStart","workWeekEnd","date"],exportAs:["timeSlot"]}],pipes:{resourceIterator:io,kendoDate:o.DatePipe,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Component,args:[{selector:"multi-day-view",providers:[Mo],template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n <tr>\n <th [style.height]="\'auto\'">​</th>\n </tr>\n <tr *ngIf="!verticalResources.length">\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <th *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link k-nav-day" [attr.data-dayslot-index]="index">{{ slot.start | kendoDate: dateFormat }}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n </ng-container>\n </tr>\n </table>\n <div style="position: relative;" *ngIf="!verticalResources.length">\n <table class="k-scheduler-table k-scheduler-header-all-day k-user-select-none" aria-hidden="true">\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [id]="{ resourceIndex: resourceIndex, rangeIndex: 0, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(resourceIndex)\n })"\n [ngClass]="allDaySlotClass(slot, resourceIndex)">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(resourceIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #headerHintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && allDayDragHint"\n class="k-event-drag-hint"\n dayTimeViewItem\n [isAllDay]="true"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="dragHints[0].item"\n [resources]="dragHints[0].resources">\n </div>\n\n <div *ngIf="resizeHints.length && allDayResizeHint"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="allDayResizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-right">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr *ngIf="verticalResources.length">\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n <tr *ngFor="let slot of timeSlots; let timeSlotIndex = index;trackBy: itemIndex">\n <th *ngIf="slot.isMajor" [ngClass]="{ \'k-slot-cell\': slotDivisions === 1 }">\n <ng-container *ngIf="!majorTimeHeaderTemplateRef">{{ slot.start | kendoDate: \'t\' }}</ng-container>\n <ng-container *ngIf="majorTimeHeaderTemplateRef" [ngTemplateOutlet]="majorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n <th *ngIf="!slot.isMajor" [ngClass]="{ \'k-slot-cell\': timeSlotIndex % slotDivisions === slotDivisions - 1 }">\n <ng-container *ngIf="minorTimeHeaderTemplateRef" [ngTemplateOutlet]="minorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }">\n </ng-container>\n </th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content k-user-select-none" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeMarker class="k-current-time">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <tr class="k-scheduler-header-all-day" *ngIf="verticalResources.length">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(verticalIndex)\n })"\n [id]="{ resourceIndex: verticalIndex, rangeIndex: 0, index: index }">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(verticalIndex) }"></ng-container>\n </td>\n </tr>\n <tr *ngFor="let slot of timeSlots; index as index; trackBy: itemIndex" [class.k-middle-row]="slot.isMajor">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <td *ngFor="let daySlot of daySlots; index as rangeIndex; trackBy: itemIndex"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.startLocalTime, resources: resourcesByIndex(timeSlot.id.resourceIndex) }">\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [vertical]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && (!allDayDragHint || verticalResources.length)"\n class="k-event-drag-hint"\n role="button"\n dayTimeViewItem\n [isAllDay]="allDayDragHint"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [resources]="dragHints[0].resources"\n [item]="dragHints[0].item">\n </div>\n\n <ng-container *ngIf="resizeHints.length && (!allDayResizeHint || verticalResources.length)">\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="allDayResizeHint ? allDayResizeHintFormat : resizeHintFormat">\n </div>\n </ng-container>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:n.ChangeDetectorRef},{type:v},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{name:[{type:h.Input}],slotFill:[{type:h.Input}],allDaySlotTemplate:[{type:h.Input}],allDayEventTemplate:[{type:h.Input}],minorTimeHeaderTemplate:[{type:h.Input}],majorTimeHeaderTemplate:[{type:h.Input}],dayCells:[{type:h.ViewChildren,args:["allDayCell"]}],headerHintContainer:[{type:h.ViewChild,args:["headerHintContainer",{static:!1}]}]}});c(Xo,Ko=C),Object.defineProperty(Xo.prototype,"title",{get:function(){return this.localization.get("dayViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(Xo.prototype,"selectedDateFormat",{get:function(){return this._selectedDateFormat},set:function(e){this._selectedDateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(Xo.prototype,"selectedShortDateFormat",{get:function(){return this._selectedShortDateFormat},set:function(e){this._selectedShortDateFormat=e},enumerable:!1,configurable:!0});var Ko,$o=Xo;function Xo(e,t,n,r){e=Ko.call(this,e,t,n,r)||this;return e.name="day",e._selectedDateFormat="{0:D}",e._selectedShortDateFormat="{0:d}",e}$o.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$o,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),$o.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:$o,selector:"kendo-scheduler-day-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return $o})}],queries:[{propertyName:"allDaySlotTemplate",first:!0,predicate:gt,descendants:!0},{propertyName:"allDayEventTemplate",first:!0,predicate:mt,descendants:!0},{propertyName:"minorTimeHeaderTemplate",first:!0,predicate:Dt,descendants:!0},{propertyName:"majorTimeHeaderTemplate",first:!0,predicate:kt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$o,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-day-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return $o})}],template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],allDaySlotTemplate:[{type:h.ContentChild,args:[gt,{static:!1}]}],allDayEventTemplate:[{type:h.ContentChild,args:[mt,{static:!1}]}],minorTimeHeaderTemplate:[{type:h.ContentChild,args:[Dt,{static:!1}]}],majorTimeHeaderTemplate:[{type:h.ContentChild,args:[kt,{static:!1}]}]}});c(ea,Qo=$o),Object.defineProperty(ea.prototype,"selectedDateFormat",{get:function(){return this.dateFormat||this.defaultDateFormat},set:function(e){this.dateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"selectedShortDateFormat",{get:function(){return this.shortDateFormat||this.defaultShortDateFormat},set:function(e){this.shortDateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"title",{get:function(){return this.localization.get("multiDayViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"defaultDateFormat",{get:function(){return 1===this.numberOfDays?"{0:D}":"{0:D} - {1:D}"},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"defaultShortDateFormat",{get:function(){return 1===this.numberOfDays?"{0:d}":"{0:d} - {1:d}"},enumerable:!1,configurable:!0});var Qo,Jo=ea;function ea(e,t,n,r){e=Qo.call(this,e,t,n,r)||this;return e.numberOfDays=1,e.name="multiDay",e}Jo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jo,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Jo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Jo,selector:"kendo-scheduler-multi-day-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Jo})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n viewName="day"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jo,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-multi-day-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Jo})}],template:'\n <ng-template #content>\n <multi-day-view\n viewName="day"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}]}});c(ra,ta=C),Object.defineProperty(ra.prototype,"title",{get:function(){return this.localization.get("weekViewTitle")},enumerable:!1,configurable:!0}),ra.prototype.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),this.viewWeekStart)};var ta,na=ra;function ra(e,t,n,r,i){t=ta.call(this,t,n,r,i)||this;return t.intl=e,t.selectedDateFormat="{0:D} - {1:D}",t.selectedShortDateFormat="{0:d} - {1:d}",t.name="week",t.getStartDate=t.getStartDate.bind(t),t}na.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:na,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),na.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:na,selector:"kendo-scheduler-week-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return na})}],queries:[{propertyName:"allDaySlotTemplate",first:!0,predicate:gt,descendants:!0},{propertyName:"allDayEventTemplate",first:!0,predicate:mt,descendants:!0},{propertyName:"minorTimeHeaderTemplate",first:!0,predicate:Dt,descendants:!0},{propertyName:"majorTimeHeaderTemplate",first:!0,predicate:kt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:na,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return na})}],template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],allDaySlotTemplate:[{type:h.ContentChild,args:[gt,{static:!1}]}],allDayEventTemplate:[{type:h.ContentChild,args:[mt,{static:!1}]}],minorTimeHeaderTemplate:[{type:h.ContentChild,args:[Dt,{static:!1}]}],majorTimeHeaderTemplate:[{type:h.ContentChild,args:[kt,{static:!1}]}]}});c(aa,ia=na),Object.defineProperty(aa.prototype,"title",{get:function(){return this.localization.get("workWeekViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(aa.prototype,"numberOfDays",{get:function(){return this.viewWorkWeekStart>this.viewWorkWeekEnd?7-this.viewWorkWeekStart+this.viewWorkWeekEnd+1:this.viewWorkWeekEnd-this.viewWorkWeekStart+1},enumerable:!1,configurable:!0}),aa.prototype.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),this.viewWorkWeekStart)},aa.prototype.getNextDate=function(e,t,n){return b.getDate(b.addDays(e,7*t))};var ia,oa=aa;function aa(e,t,n,r,i){e=ia.call(this,e,t,n,r,i)||this;return e.name="workWeek",e.getNextDate=e.getNextDate.bind(e),e}oa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:oa,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),oa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:oa,selector:"kendo-scheduler-work-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return oa})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n viewName="workWeekview"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [getStartDate]="getStartDate"\n [getNextDate]="getNextDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:oa,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-work-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return oa})}],template:'\n <ng-template #content>\n <multi-day-view\n viewName="workWeekview"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [getStartDate]="getStartDate"\n [getNextDate]="getNextDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]}});var sa,C=[k,E,eo],la=function(){},C=(la.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,deps:[],target:n.ɵɵFactoryTarget.NgModule}),la.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,declarations:[k,E,eo],imports:[Z.CommonModule,Oi,ko],exports:[k,E,eo]}),la.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,imports:[[Z.CommonModule,Oi,ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,Oi,ko],exports:[C],declarations:[C]}]}]}),[$o,Jo,na,oa]),ca=function(){},da=(ca.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,deps:[],target:n.ɵɵFactoryTarget.NgModule}),ca.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,declarations:[$o,Jo,na,oa,R],imports:[ko,la],exports:[$o,Jo,na,oa]}),ca.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,imports:[[ko,la]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,decorators:[{type:h.NgModule,args:[{imports:[ko,la],exports:[C],declarations:de(de([],ce(C)),[R])}]}]}),c(ua,sa=d),Object.defineProperty(ua.prototype,"name",{get:function(){return this._name||this.title},set:function(e){this._name=e},enumerable:!1,configurable:!0}),ua);function ua(e){var t=sa.call(this)||this;return t.template=e,t}da.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:da,deps:[{token:n.TemplateRef}],target:n.ɵɵFactoryTarget.Directive}),da.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:da,selector:"[kendoSchedulerView]",inputs:{title:["kendoSchedulerView","title"],name:["kendoSchedulerViewName","name"]},providers:[{provide:d,useExisting:h.forwardRef(function(){return da})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:da,decorators:[{type:h.Directive,args:[{providers:[{provide:d,useExisting:h.forwardRef(function(){return da})}],selector:"[kendoSchedulerView]"}]}],ctorParameters:function(){return[{type:n.TemplateRef}]},propDecorators:{title:[{type:h.Input,args:["kendoSchedulerView"]}],name:[{type:h.Input,args:["kendoSchedulerViewName"]}]}});c(ha,pa=t),Object.defineProperty(ha.prototype,"classNames",{get:function(){return"k-scheduler-"+this.viewName+"-view"},enumerable:!1,configurable:!0}),ha.prototype.ngOnChanges=function(e){e.columnWidth&&this.changes.next(null),pa.prototype.ngOnChanges.call(this,e)},ha.prototype.reflow=function(){var e=this.slotService,n=(this.updateContentHeight(),e.containerSize=this.content.nativeElement.scrollWidth,this.verticalResources.length?this.verticalResourceRows.toArray():[]);e.layoutTimeline(this.eventHeight,n),n.length&&e.forEachGroup(function(e,t){n[t].nativeElement.style.height=e.timeRanges[0].slots[0].height+"px"}),this.syncTables()},Object.defineProperty(ha.prototype,"allEventsMessage",{get:function(){return this.localization.get("allEvents")},enumerable:!1,configurable:!0}),Object.defineProperty(ha.prototype,"slotsCount",{get:function(){for(var e=this.horizontalResources,t=this.daySlots.length*this.timeSlots.length,n=0;n<e.length;n++)t*=(e[n].data||[]).length||1;return t},enumerable:!1,configurable:!0}),ha.prototype.timeColspan=function(e){var t=this.timeSlots.length,n=t%this.slotDivisions;return 0==n||e<t-n?this.slotDivisions:1},ha.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=this.daySlots.length*this.timeSlots.length,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},ha.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=1,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},ha.prototype.createTasks=function(e,t){for(var n=t.start,r=t.end,i=e,o=[],a=wn(n),s=wn(r),l=0;l<i.length;l++){var c=i[l],d=c.event,u={index:l,start:c.start,end:c.end,event:d,isAllDay:!1},c=d.isAllDay?Dn(c):u.end,d=d.isAllDay?u.start.stripTime():u.start;u.startTime=d.toUTCDate(),u.endTime=c.toUTCDate(),vn(u.startTime,u.endTime,a,s)&&(o.push(u),u.head=u.endTime>r,u.tail=u.startTime<n)}return o},ha.prototype.onTasksChange=function(){this.items.next(this.tasks)},ha.prototype.dragRanges=function(e){return this.slotService.dragRanges(e,this.dragging.offset,!0)},ha.prototype.dragHintSize=function(e,t){return{width:jn(t.rect.left-e.rect.left+t.rect.width),height:jn(e.height)}},ha.prototype.updateResizeHints=function(e,t,n){var r=e[e.length-1];pa.prototype.updateResizeHints.call(this,[[e[0][0],r[r.length-1]]],t,n)},ha.prototype.pdfWidth=function(){return this.content.nativeElement.scrollWidth+this.times.nativeElement.offsetWidth},ha.prototype.currentTimeArrowOffset=function(){return this.headerWrap.nativeElement.querySelector("tr:last-child").offsetTop};var pa,C=ha;function ha(e,t,n,r,i,o,a,s,l,c,d,u){t=pa.call(this,t,n,r,i,o,a,s,l,c,e,d,u)||this;return t.name="timeline",t.columnWidth=100,t.viewName="timeline",t.verticalTime=!1,t}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"timeline-multi-day-view",inputs:{name:"name",columnWidth:"columnWidth",viewName:"viewName"},providers:[Mo],viewQueries:[{propertyName:"verticalResourceRows",predicate:["verticalResourceRows"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr><th [style.height]="\'auto\'"></th></tr>\n <tr><th class="k-slot-cell"></th></tr>\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header >\n <div class="k-scheduler-header-wrap" #headerWrap>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-down">\n </div>\n </ng-container>\n <table class="k-scheduler-table" aria-hidden="true">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let index = index; trackBy: itemIndex;">\n <th [attr.colspan]="timeSlots.length" class="k-slot-cell">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link" [ngClass]="{ \'k-nav-day\': numberOfDays > 1 }" [attr.data-dayslot-index]="index">{{ daySlot.start | kendoDate: \'m\'}}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: daySlot.start }"></ng-container>\n </th>\n </ng-container>\n </ng-container>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let timeSlot of timeSlots; let index = index; trackBy: itemIndex;">\n <th *ngIf="timeSlot.isMajor" [attr.colspan]="timeColspan(index)" >{{ timeSlot.start | kendoDate: \'t\' }}</th>\n </ng-container>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <tr *ngIf="!verticalResources.length">\n <th rowspan="1" #titleCell>\n {{ allEventsMessage }}\n </th>\n </tr>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr #verticalResourceRows>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <div>\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </div>\n </th>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n class="k-current-time" #currentTimeMarker>\n </div>\n </ng-container>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of timeSlots; let index = index; trackBy: itemIndex;"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n selectableSlot\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.start, resources: resourcesByIndex(timeSlot.id.resourceIndex ) }">\n </ng-container>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n dayTimeViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n <div *ngIf="resizeHints && resizeHints.length"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:eo,selector:"[dayTimeViewItem]",inputs:["vertical","isAllDay"]},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:k,selector:"[timeSlot]",inputs:["invariantStart","invariantEnd","workDayStart","workDayEnd","workWeekStart","workWeekEnd","date"],exportAs:["timeSlot"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}],pipes:{resourceIterator:io,repeat:qt,kendoDate:o.DatePipe,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{selector:"timeline-multi-day-view",providers:[Mo],template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr><th [style.height]="\'auto\'"></th></tr>\n <tr><th class="k-slot-cell"></th></tr>\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header >\n <div class="k-scheduler-header-wrap" #headerWrap>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-down">\n </div>\n </ng-container>\n <table class="k-scheduler-table" aria-hidden="true">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let index = index; trackBy: itemIndex;">\n <th [attr.colspan]="timeSlots.length" class="k-slot-cell">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link" [ngClass]="{ \'k-nav-day\': numberOfDays > 1 }" [attr.data-dayslot-index]="index">{{ daySlot.start | kendoDate: \'m\'}}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: daySlot.start }"></ng-container>\n </th>\n </ng-container>\n </ng-container>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let timeSlot of timeSlots; let index = index; trackBy: itemIndex;">\n <th *ngIf="timeSlot.isMajor" [attr.colspan]="timeColspan(index)" >{{ timeSlot.start | kendoDate: \'t\' }}</th>\n </ng-container>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <tr *ngIf="!verticalResources.length">\n <th rowspan="1" #titleCell>\n {{ allEventsMessage }}\n </th>\n </tr>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr #verticalResourceRows>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <div>\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </div>\n </th>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n class="k-current-time" #currentTimeMarker>\n </div>\n </ng-container>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of timeSlots; let index = index; trackBy: itemIndex;"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n selectableSlot\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.start, resources: resourcesByIndex(timeSlot.id.resourceIndex ) }">\n </ng-container>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n dayTimeViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n <div *ngIf="resizeHints && resizeHints.length"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{name:[{type:h.Input}],columnWidth:[{type:h.Input}],viewName:[{type:h.Input}],verticalResourceRows:[{type:h.ViewChildren,args:["verticalResourceRows"]}]}});c(ga,ma=F),Object.defineProperty(ga.prototype,"viewColumnWidth",{get:function(){return this.optionValue("columnWidth")},enumerable:!1,configurable:!0});var ma,R=ga;function ga(e,t,n,r){return ma.call(this,e,t,n,r)||this}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),R.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:R,inputs:{columnWidth:"columnWidth"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{columnWidth:[{type:h.Input}]}});c(va,ya=R),Object.defineProperty(va.prototype,"title",{get:function(){return this.localization.get("timelineViewTitle")},enumerable:!1,configurable:!0});var ya,fa=va;function va(e,t,n,r){e=ya.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:D}",e.selectedShortDateFormat="{0:d}",e.name="timeline",e}fa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:fa,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),fa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:fa,selector:"kendo-scheduler-timeline-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return fa})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:fa,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return fa})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});c(Ta,ka=R),Object.defineProperty(Ta.prototype,"title",{get:function(){return this.localization.get("timelineWeekViewTitle")},enumerable:!1,configurable:!0});var ka,Da=Ta;function Ta(e,t,n,r,i){var o=ka.call(this,t,n,r,i)||this;return o.selectedDateFormat="{0:D} - {1:D}",o.selectedShortDateFormat="{0:d} - {1:d}",o.name="timelineWeek",o.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),o.viewWeekStart)},o}Da.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Da,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Da.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Da,selector:"kendo-scheduler-timeline-week-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Da})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-week"\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Da,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Da})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-week"\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});c(wa,Ia=R),Object.defineProperty(wa.prototype,"title",{get:function(){return this.localization.get("timelineMonthViewTitle")},enumerable:!1,configurable:!0});var Ia,ba=wa;function wa(e,t,n,r){var i=Ia.call(this,e,t,n,r)||this;return i.selectedDateFormat="{0:Y}",i.selectedShortDateFormat="{0:y}",i.name="timelineMonth",i.getStartDate=function(e){return b.firstDayOfMonth(b.getDate(e))},i.getEndDate=function(e){return b.addMonths(i.getStartDate(e),1)},i.getNextDate=function(e,t){return b.addMonths(e,t)},i}ba.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ba,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),ba.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ba,selector:"kendo-scheduler-timeline-month-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return ba})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-month"\n [name]="name"\n [getNextDate]="getNextDate"\n [getStartDate]="getStartDate"\n [getEndDate]="getEndDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ba,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-month-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return ba})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-month"\n [name]="name"\n [getNextDate]="getNextDate"\n [getStartDate]="getStartDate"\n [getEndDate]="getEndDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});function Sa(e){return!(!e.id||!e.recurrenceRule)}var t=[fa,Da,ba],s=function(){},xa=(s.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,deps:[],target:n.ɵɵFactoryTarget.NgModule}),s.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,declarations:[fa,Da,ba,C],imports:[la,ko],exports:[fa,Da,ba]}),s.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,imports:[[la,ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,decorators:[{type:h.NgModule,args:[{imports:[la,ko],exports:[t],declarations:de(de([],ce(t)),[C])}]}]}),Object.defineProperty(Ca.prototype,"fields",{get:function(){return this.scheduler.modelFields},enumerable:!1,configurable:!0}),Object.defineProperty(Ca.prototype,"hasLocalData",{get:function(){return y(this.localDataChangesService.data)},enumerable:!1,configurable:!0}),Object.defineProperty(Ca.prototype,"data",{get:function(){return this.hasLocalData?this.localDataChangesService.data:this.scheduler.events},enumerable:!1,configurable:!0}),Ca.prototype.create=function(e){var t=this.fields.id,n=x(e,t);y(n)||At(e,t,this.nextId()),this.data.push(e),this.dataChanged()},Ca.prototype.createException=function(e,t){t=this.buildException(t);this.removeOccurrenceInternal(e),this.create(t)},Ca.prototype.update=function(e,t){Bt(e,t),this.dataChanged()},Ca.prototype.remove=function(e){for(var t=this.fields.id,n=x(e,t),r=this.data,i=0;i<r.length;i++)if(n===x(r[i],t)){r.splice(i,1);break}this.dataChanged()},Ca.prototype.removeSeries=function(e){var e=Mt(e,this.fields),t=Sa(e);this.removeItemAndExceptions(t?e.id:e.recurrenceId),this.dataChanged()},Ca.prototype.removeOccurrence=function(e){this.removeOccurrenceInternal(e),this.dataChanged()},Ca.prototype.findRecurrenceMaster=function(e){var t=this.scheduler.modelFields,e=Mt(e,t),n=Sa(e)?e.id:e.recurrenceId;return this.data.find(function(e){return x(e,t.id)===n})},Ca.prototype.isRecurring=function(e){return Ht(e,this.scheduler.modelFields)},Ca.prototype.isException=function(e){return Vt(e,this.scheduler.modelFields)},Ca.prototype.nextId=function(){return l.guid()},Ca.prototype.buildException=function(e){var t=this.fields,n=this.findRecurrenceMaster(e);if(n)return e=Lt(e),At(e,t.id,this.nextId()),At(e,t.recurrenceId,x(n,t.id)),At(e,t.recurrenceRule,null),e;if(h.isDevMode())throw new Error("Unable to find recurrence head for event. Please check that recurrenceId is set and refers to an existing event.")},Ca.prototype.removeItemAndExceptions=function(e){for(var t=this.data,n=this.scheduler.modelFields,r=t.length-1;0<=r;r--)e!==x(t[r],n.recurrenceId)&&e!==x(t[r],n.id)||t.splice(r,1)},Ca.prototype.removeOccurrenceInternal=function(e){var t=this.fields,n=this.findRecurrenceMaster(e),e=x(e,t.start),r=x(n,t.recurrenceExceptions)||[];At(n,t.recurrenceExceptions,de(de([],ce(r)),[e]))},Ca.prototype.dataChanged=function(){this.hasLocalData&&this.localDataChangesService.changes.emit()},Ca);function Ca(e,t){this.scheduler=e,this.localDataChangesService=t}function Ea(e){if(e.markAsTouched(),e.hasOwnProperty("controls")){var t,n=e.controls;for(t in n)n.hasOwnProperty(t)&&Ea(n[t])}}function Ra(e,t){if(e&&e.getTime&&t&&t.getTime)return e.getTime()===t.getTime();if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return;return 1}return e==t}var Oa=["getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds"];function Fa(e,t,n,r){var i=[],o=x(e,r),a=x(t,r),s=x(n,r);return Oa.forEach(function(e){i.push((a[e]()===s[e]()?o:s)[e]())}),new(Date.bind.apply(Date,de([void 0],ce(i))))}Object.defineProperty(Ha.prototype,"editService",{get:function(){return this.userEditService||this.defaultEditService},set:function(e){this.userEditService=e},enumerable:!1,configurable:!0}),Ha.prototype.ngOnInit=function(){this.subscriptions=p.merge(this.scheduler.slotDblClick,this.scheduler.create).subscribe(this.addHandler.bind(this)),this.subscriptions.add(this.scheduler.removeConfirmed.subscribe(this.removeHandler.bind(this))),this.subscriptions.add(this.scheduler.cancel.subscribe(this.cancelHandler.bind(this))),this.subscriptions.add(this.scheduler.resizeEndConfirmed.subscribe(this.resizeEndHandler.bind(this))),this.subscriptions.add(this.scheduler.dragEndConfirmed.subscribe(this.dragEndHandler.bind(this)))},Ha.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Ha.prototype.createDefaultService=function(){return new xa(this.scheduler,this.localDataChangesService)},Ha.prototype.addHandler=function(e){if(this.closeEditor(),this.isEnabled("add")){for(var t=this.scheduler.modelFields,n={},r=(At(n,t.start,e.start),At(n,t.end,e.end),At(n,t.isAllDay,e.isAllDay),At(n,t.title,e.title),zt(this.scheduler.group,this.scheduler.resources)),i=e.resources,o=0;o<r.length;o++){var a=r[o],s=x(i[o],a.valueField);At(n,a.field,a.multiple?[s]:s)}t=new Je(this.scheduler,{dataItem:n});this.add.emit(t),t.isDefaultPrevented()||this.scheduler.addEvent(this.createModel({action:"add",isNew:!0,dataItem:n}))}},Ha.prototype.removeHandler=function(e){var t=this,n=e.dataItem;this.isEnabled("remove")&&(this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(1).subscribe(function(e){void 0!==e&&(t.handleRemove(n,e),t.focusService.focusFirst())}):this.dialogsService.openRemoveConfirmationDialog().subscribe(function(e){e&&(t.handleRemove(n,0),t.focusService.focusFirst())}))},Ha.prototype.cancelHandler=function(){this.closeEditor()},Ha.prototype.closeEditor=function(){this.scheduler.closeEvent()},Ha.prototype.handleUpdate=function(e,t,n){var r=this.editService;1!==n||r.isException(e)?r.update(e,t):r.createException(e,t)},Ha.prototype.handleRemove=function(e,t){var n=this.editService;2===t?n.removeSeries(e):1!==t||n.isException(e)?n.remove(e):n.removeOccurrence(e)},Ha.prototype.resizeEndHandler=function(e){var n,r,i,o=this,t=e.event,a=e.start,e=e.end;Ra(a,t.start)&&Ra(e,t.end)||(n=t.dataItem,r=this.scheduler.modelFields,At(i={},r.start,a),At(i,r.end,e),this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(0).subscribe(function(e){var t=n;2===e?(t=o.editService.findRecurrenceMaster(n),At(i,r.start,Fa(t,n,i,r.start)),At(i,r.end,Fa(t,n,i,r.end))):void 0!==e&&(i=Bt(Lt(n),i)),o.handleUpdate(t,i,e)}):this.editService.update(n,i))},Ha.prototype.dragEndHandler=function(e){var n=this,r=e.event.dataItem,t=e.start,i=e.end,o=e.resources,e=e.isAllDay,a=this.scheduler.modelFields,s=zt(this.scheduler.group,this.scheduler.resources).map(function(e){return e.field}),s=[a.start,a.end,a.isAllDay].concat(s),l=Lt(o);At(l,a.start,t),At(l,a.end,i),At(l,a.isAllDay,e),function(e,t,n){for(var r=0;r<n.length;r++){var i=n[r];if(!Ra(x(e,i),x(t,i)))return 1}}(r,l,s)&&(this.editService.isRecurring(r)?this.dialogsService.openRecurringConfirmationDialog(0).subscribe(function(e){var t=r;2===e?(t=n.editService.findRecurrenceMaster(r),At(l,a.start,Fa(t,r,l,a.start)),At(l,a.end,Fa(t,r,l,a.end))):void 0!==e&&(l=Bt(Lt(r),l)),n.handleUpdate(t,l,e)}):this.editService.update(r,l))},Ha.prototype.isEnabled=function(e){var t=this.scheduler.editable;return t&&!1!==t[e]};F=Ha;function Ha(e,t,n,r){this.scheduler=e,this.localDataChangesService=t,this.dialogsService=n,this.focusService=r,this.add=new h.EventEmitter,this.edit=new h.EventEmitter,this.defaultTitle="No title",this.defaultEditService=this.createDefaultService(),this.scheduler.editable=!0}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:Yr},{token:$t},{token:Jt},{token:f}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,inputs:{editService:"editService"},outputs:{add:"add",edit:"edit"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:Yr},{type:$t},{type:Jt},{type:f}]},propDecorators:{add:[{type:h.Output}],edit:[{type:h.Output}],editService:[{type:h.Input}]}});c(Wa,Va=F),Wa.prototype.ngOnInit=function(){Va.prototype.ngOnInit.call(this),this.subscriptions.add(this.scheduler.eventDblClick.subscribe(this.editHandler.bind(this))),this.subscriptions.add(this.scheduler.save.subscribe(this.saveHandler.bind(this)))},Wa.prototype.editHandler=function(e){var n,t,r=this;this.isEnabled("edit")&&(t=new $e(this.scheduler,{dataItem:e.event.dataItem,event:e.event}),this.edit.emit(t),t.isDefaultPrevented()||(n=e.event.dataItem,this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(0).pipe(N.filter(function(e){return void 0!==e})).subscribe(function(e){2===e&&(n=r.editService.findRecurrenceMaster(n));var t=r.createModel({action:"edit",isNew:!1,mode:e,dataItem:n});r.scheduler.editEvent(n,{group:t,mode:e})}):(t=this.createModel({action:"edit",isNew:!1,mode:0,dataItem:n}),this.scheduler.editEvent(n,{group:t}))))},Wa.prototype.saveHandler=function(e){var t;this.isFormValid(e)&&(t=e.formGroup.value,e.isNew?this.editService.create(t):this.handleUpdate(e.dataItem,t,e.mode)),this.closeEditor()},Wa.prototype.createModel=function(e){return e.event=e.dataItem,this.createFormGroup(e)},Wa.prototype.isFormValid=function(e){var t=e.formGroup,e=e.isNew;return!!t.valid||((t.dirty||e)&&Ea(t),!1)};var Va,t=Wa;function Wa(e,t,n,r){r=Va.call(this,e,t,n,r)||this;return r.scheduler=e,r.localDataChangesService=t,r.dialogsService=n,r}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:Yr},{token:$t},{token:Jt},{token:f}],target:n.ɵɵFactoryTarget.Directive}),t.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:t,selector:"[kendoSchedulerReactiveEditing]",inputs:{createFormGroup:["kendoSchedulerReactiveEditing","createFormGroup"]},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerReactiveEditing]"}]}],ctorParameters:function(){return[{type:Yr},{type:$t},{type:Jt},{type:f}]},propDecorators:{createFormGroup:[{type:h.Input,args:["kendoSchedulerReactiveEditing"]}]}});c(za,Ma=i),Object.defineProperty(za.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var Ma,Pa=za;function za(e){var t=Ma.call(this)||this;return t.service=e,t}Pa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Pa,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Pa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Pa,selector:"kendo-recurrence-editor-messages",providers:[{provide:i,useExisting:h.forwardRef(function(){return Pa})}],usesInheritance:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Pa,decorators:[{type:h.Component,args:[{providers:[{provide:i,useExisting:h.forwardRef(function(){return Pa})}],selector:"kendo-recurrence-editor-messages",template:""}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});function Aa(e){return yn(e,"k-scheduler-content")}Na.prototype.onKeydown=function(t){var e=this.shortcuts.find(function(e){return e.match(t)});e&&!this.dialogsService.isOpen&&e.action(t)},Na.prototype.onEventKeydown=function(t){var e=this.taskShortcuts.find(function(e){return e.match(t.originalEvent)});e&&!this.dialogsService.isOpen&&e.action(t.originalEvent,t.event)},Na.prototype.focusWait=function(){var e=this;this.viewState.layoutEnd.pipe(N.take(1)).subscribe(function(){return e.focusService.focus()})};F=Na;function Na(e,t,n,r,i,o,a){var s=this;this.scheduler=e,this.domEvents=t,this.focusService=n,this.zone=r,this.changeDetector=i,this.viewState=o,this.dialogsService=a,this.shortcuts=[{match:function(e){return e.keyCode===l.Keys.KeyC&&cr(e)},action:function(e){var t,n=s.scheduler,r=(new Date).getHours(),i=n.selectedDate,o=new Date(i.getFullYear(),i.getMonth(),i.getDate(),r+1),i=new Date(i.getFullYear(),i.getMonth(),i.getDate(),r+2);n.group&&(r=n.resources||[],0<(r=zt(n.group||{},r)).length)&&(t=r[0].data[0]),n.create.emit({start:b.ZonedDate.fromLocalDate(o,n.timezone).toLocalDate(),end:b.ZonedDate.fromLocalDate(i,n.timezone).toLocalDate(),isAllDay:!1,resources:[t],originalEvent:e,sender:n})}},{match:function(e){return e.keyCode>=l.Keys.Digit1&&e.keyCode<=l.Keys.Digit9&&lr(e,or.AltKey)},action:function(e){var t=s.scheduler,e=e.keyCode-l.Keys.Digit0-1,n=t.views.toArray()[e];n&&s.zone.run(function(){t.onNavigationAction({type:"view-change",view:n})||(s.changeDetector.markForCheck(),s.focusWait())})}},{match:function(e){return e.keyCode===l.Keys.KeyT&&cr(e)},action:function(){s.zone.run(function(){s.scheduler.onNavigationAction({type:"today"}),s.focusWait()})}},{match:function(e){return(e.keyCode===l.Keys.ArrowLeft||e.keyCode===l.Keys.ArrowRight)&&lr(e,or.ShiftKey)},action:function(e){var t=e.keyCode===l.Keys.ArrowLeft?"prev":"next";s.zone.run(function(){s.scheduler.onNavigationAction({type:t}),s.focusWait()})}},{match:function(e){return(e.keyCode===l.Keys.ArrowUp||e.keyCode===l.Keys.ArrowLeft)&&cr(e)&&!Aa(e.target)},action:function(e){s.scheduler.onNavigationAction({type:"focus-prev"})||(s.focusService.focusNext({offset:-1}),e.preventDefault())}},{match:function(e){return(e.keyCode===l.Keys.ArrowDown||e.keyCode===l.Keys.ArrowRight)&&cr(e)&&!Aa(e.target)},action:function(e){s.scheduler.onNavigationAction({type:"focus-next"})||(s.focusService.focusNext({offset:1}),e.preventDefault())}}],this.taskShortcuts=[{match:function(e){return(e.keyCode===l.Keys.Delete||e.keyCode===l.Keys.Backspace)&&cr(e)},action:function(e,t){s.viewState.emitEvent("remove",{event:t,dataItem:t.dataItem}),e.preventDefault()}},{match:function(e){return e.keyCode===l.Keys.Enter&&cr(e)},action:function(e,t){s.viewState.emitEvent("eventDblClick",{type:"dblclick",event:t,originalEvent:e}),e.preventDefault()}}],this.subs=new p.Subscription,this.subs.add(this.domEvents.keydown.subscribe(function(e){return s.onKeydown(e)})),this.subs.add(this.scheduler.eventKeydown.subscribe(function(e){return s.onEventKeydown(e)}))}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:Yr},{token:Xt},{token:f},{token:n.NgZone},{token:n.ChangeDetectorRef},{token:g},{token:Jt}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"kendo-scheduler",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive,args:[{selector:"kendo-scheduler"}]}],ctorParameters:function(){return[{type:Yr},{type:Xt},{type:f},{type:n.NgZone},{type:n.ChangeDetectorRef},{type:g},{type:Jt}]}});Ba.prototype.ngOnInit=function(){this.scheduler.isSlotSelected=this.isSlotSelected.bind(this)},Ba.prototype.ngOnChanges=function(e){var t;l.isChanged("slotSelection",e,!1)&&(t={isAllDay:!1,resources:this.scheduler.resources.reduce(function(e,t){return e.push.apply(e,de([],ce(t.data))),e},[])},this.selectedRange=Object.assign(t,e.slotSelection.currentValue),this.cdr.markForCheck())},Ba.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Ba.prototype.isSlotSelected=function(e){var t=e.start,n=e.end,r=e.isAllDay,e=e.resources;return!!(t&&n&&this.selectedRange)&&!!Wn(this.selectedRange.resources,e)&&this.selectedRange&&r===this.selectedRange.isAllDay&&this.isInRange(t,n)},Ba.prototype.initDragSelect=function(e){var t=e.start,n=e.end,r=e.isAllDay,e=e.resources;this.selectionOriginResources=e.slice(),this.selectedRange={start:t,end:n,isAllDay:r,resources:e.slice()},this.cdr.markForCheck()},Ba.prototype.onDrag=function(e){var t=e.start,n=e.end,e=e.resources;Wn(this.selectionOriginResources,e)&&(this.selectedRange.start=t,this.selectedRange.end=n,this.cdr.markForCheck())},Ba.prototype.onRelease=function(){this.selectionOriginResources=null,this.selectedRange&&this.slotSelectionChangeSource.emit(this.selectedRange)},Ba.prototype.isInRange=function(e,t){if(this.selectedRange)return vn(e,t,this.selectedRange.start,this.selectedRange.end)};i=Ba;function Ba(e,t){var n=this,e=(this.scheduler=e,this.cdr=t,this.slotSelectionChange=new h.EventEmitter,this.selectedRange=null,this.slotSelectionChangeSource=new h.EventEmitter,this.subscriptions=new p.Subscription,this.scheduler.selectable=!0,this.subscriptions.add(this.slotSelectionChangeSource.pipe(N.distinctUntilChanged(Mn)).subscribe(function(e){n.slotSelectionChange.emit(e)})),this.scheduler.slotDragStart),t=this.scheduler.slotDrag,r=this.scheduler.slotDragEnd,e=e.pipe(N.filter(function(e){return!e.isDefaultPrevented()}));this.subscriptions.add(e.subscribe(function(e){return n.initDragSelect(e)})),this.subscriptions.add(t.subscribe(function(e){return n.onDrag(e)})),this.subscriptions.add(r.subscribe(function(){return n.onRelease()}))}i.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,deps:[{token:Yr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),i.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:i,selector:"[kendoSchedulerSlotSelectable]",inputs:{slotSelection:"slotSelection"},outputs:{slotSelectionChange:"slotSelectionChange"},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerSlotSelectable]"}]}],ctorParameters:function(){return[{type:Yr},{type:n.ChangeDetectorRef}]},propDecorators:{slotSelection:[{type:h.Input}],slotSelectionChange:[{type:h.Output}]}});var ja=de([Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve],ce([u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It])),ie=de([Ei,vo,ca,t,s,ie],ce(ja)),La=[q.ButtonsModule,U.CheckBoxModule,U.TextAreaModule,A.DateInputsModule,j.DialogModule,U.NumericTextBoxModule,U.TextBoxModule,G.DropDownsModule,B.ReactiveFormsModule,Oi],qa=function(){},Za=(qa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,deps:[],target:n.ɵɵFactoryTarget.NgModule}),qa.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,declarations:[Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve,u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It],imports:[Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s,q.ButtonsModule,U.CheckBoxModule,U.TextAreaModule,A.DateInputsModule,j.DialogModule,U.NumericTextBoxModule,U.TextBoxModule,G.DropDownsModule,B.ReactiveFormsModule,Oi],exports:[Ei,vo,ca,t,s,Kn,lt,Xn,Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve,u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It]}),qa.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,providers:[{provide:L.IntlService,useClass:L.CldrIntlService}],imports:[de([Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s],ce(La)),vo,ca,s]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,decorators:[{type:h.NgModule,args:[{imports:de([Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s],ce(La)),declarations:ja,exports:ie,providers:[{provide:L.IntlService,useClass:L.CldrIntlService}]}]}]}),["yyyyMMddTHHmmssSSSXXX","yyyyMMddTHHmmssXXX","yyyyMMddTHHmmss","yyyyMMddTHHmm","yyyyMMddTHH","yyyyMMdd"]),A=(M.prototype.create=function(e){this.logCreate(e),this.saveChanges()},M.prototype.createException=function(e,t){t=this.buildException(t);this.logRemoveOccurrence(e),this.logCreate(t),this.saveChanges()},M.prototype.update=function(e,t){this.assignValues(e,t),this.logUpdate(e),this.saveChanges()},M.prototype.remove=function(e){this.logRemove(e),this.saveChanges()},M.prototype.removeSeries=function(e){var t=this.getId(e),n=this.getRecurrenceId(e),e=this.isRecurrenceHead(e);this.removeItemAndExceptions(e?t:n),this.saveChanges()},M.prototype.removeOccurrence=function(e){this.logRemoveOccurrence(e),this.saveChanges()},M.prototype.findRecurrenceMaster=function(e){var t=this.getId(e),n=this.getRecurrenceId(e),e=this.isRecurrenceHead(e)?t:n,t=this.itemIndex(e,this.data);return this.data[t]},M.prototype.isRecurring=function(e){return Ht(e,this.fields)},M.prototype.isException=function(e){return Vt(e,this.fields)},M.prototype.isNew=function(e){e=this.getId(e);return!y(e)},M.prototype.nextId=function(){},M.prototype.assignValues=function(e,t){jt(t,e)},M.prototype.cloneEvent=function(e){var t={};return this.assignValues(t,e),t},M.prototype.parseExceptions=function(e){return y(e)&&""!==e?e.split(";").map(function(e){return L.parseDate(e,Za)||void 0}):[]},M.prototype.serializeExceptions=function(e){return e&&0!==e.length?e.map(function(e){return L.formatDate(b.toLocalDate(e),"yyyyMMddTHHmmss")+"Z"}).join(";"):""},M.prototype.reset=function(){this.data=[],this.deletedItems=[],this.updatedItems=[],this.createdItems=[]},M.prototype.itemIndex=function(e,t){for(var n=0;n<t.length;n++)if(this.getId(t[n])===e)return n;return-1},M.prototype.buildException=function(e){var t=this.fields,n=this.findRecurrenceMaster(e),e=this.cloneEvent(e);return Nt(e,n,t.id),this.setId(e,this.nextId()),this.setRecurrenceRule(e,void 0),this.setRecurrenceId(e,this.getId(n)),e},M.prototype.isRecurrenceHead=function(e){var t=this.getId(e),e=this.getRecurrenceRule(e);return!(!t||!e)},M.prototype.logCreate=function(e){this.data=de(de([],ce(this.data)),[e]),this.source.next(this.data),this.createdItems.push(e)},M.prototype.logUpdate=function(e){var t,n=this.getId(e);this.isNew(e)?(t=this.createdItems.indexOf(e),this.createdItems.splice(t,1,e)):-1!==(t=this.itemIndex(n,this.updatedItems))?this.updatedItems.splice(t,1,e):this.updatedItems.push(e)},M.prototype.logRemove=function(e){var t=this.getId(e),n=this.itemIndex(t,this.data);this.data=this.data.filter(function(e,t){return t!==n}),this.source.next(this.data),0<=(n=this.itemIndex(t,this.createdItems))?this.createdItems.splice(n,1):this.deletedItems.push(e),0<=(n=this.itemIndex(t,this.updatedItems))&&this.updatedItems.splice(n,1)},M.prototype.logRemoveOccurrence=function(e){var t=this.findRecurrenceMaster(e),e=this.getStart(e),n=this.getRecurrenceExceptions(t)||[];this.setRecurrenceExceptions(t,de(de([],ce(n)),[e])),this.logUpdate(t)},M.prototype.removeItemAndExceptions=function(t){var n=this;this.deletedItems=this.deletedItems.concat(this.data.filter(function(e){return n.getRecurrenceId(e)===t||n.getId(e)===t}))},M.prototype.hasChanges=function(){return 0<this.deletedItems.length+this.updatedItems.length+this.createdItems.length},M.prototype.saveChanges=function(){this.hasChanges()&&(this.save(this.createdItems,this.updatedItems,this.deletedItems),this.reset())},M);function M(e){this.data=[],this.source=new p.BehaviorSubject([]),this.createdItems=[],this.updatedItems=[],this.deletedItems=[],this.events=this.source.asObservable(),this.fields=Object.assign(Object.assign({},on),e),this.getId=Ct(this.fields.id),this.getRecurrenceId=Ct(this.fields.recurrenceId),this.getRecurrenceRule=Ct(this.fields.recurrenceRule),this.getRecurrenceExceptions=Ct(this.fields.recurrenceExceptions),this.getStart=Ct(this.fields.start),this.setId=Ot(this.fields.id),this.setRecurrenceRule=Ot(this.fields.recurrenceRule),this.setRecurrenceExceptions=Ot(this.fields.recurrenceExceptions),this.setRecurrenceId=Ot(this.fields.recurrenceId)}function Ga(e){var t="div";return t=document.createElement(t),e&&(t.className=e),t}_a.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Object.defineProperty(_a.prototype,"drawOptions",{get:function(){return{_destructive:!0,avoidLinks:this.avoidLinks,margin:this.margin,scale:this.scale}},enumerable:!1,configurable:!0}),Object.defineProperty(_a.prototype,"pdfOptions",{get:function(){return{author:this.author,creator:this.creator,date:this.date,imgDPI:this.imageResolution,keywords:this.keywords,margin:this.margin,producer:this.producer,subject:this.subject,title:this.title}},enumerable:!1,configurable:!0}),Object.defineProperty(_a.prototype,"saveOptions",{get:function(){return{forceProxy:this.forceProxy,proxyData:this.proxyData,proxyTarget:this.proxyTarget,proxyURL:this.proxyURL}},enumerable:!1,configurable:!0}),_a.prototype.createElement=function(n){var r=this;this.ngZone.runOutsideAngular(function(){var e=r.container=Ga(),t=(e.style.top=e.style.left="-10000px",e.style.position="absolute",Ga("k-widget k-scheduler k-floatwrap"));t.style.position="relative",t.appendChild(n.element),e.appendChild(t),document.body.appendChild(e),r.save(t)})},_a.prototype.save=function(e){this.drawElement(e,this.drawOptions).then(this.exportGroup).then(this.saveDataUri).then(this.done,this.done)},_a.prototype.drawElement=function(e,t){return $.drawDOM(e,t)},_a.prototype.exportGroup=function(e){return $.exportPDF(e,this.pdfOptions)},_a.prototype.saveDataUri=function(e){X.saveAs(e,this.fileName,this.saveOptions)},_a.prototype.done=function(){this.container&&(document.body.removeChild(this.container),this.container=null),this.pdfService.done.emit()};U=_a;function _a(e,t){this.pdfService=e,this.ngZone=t,this.creator="Kendo UI PDF Generator",this.subscriptions=this.pdfService.elementReady.subscribe(this.createElement.bind(this)),this.saveDataUri=this.saveDataUri.bind(this),this.exportGroup=this.exportGroup.bind(this),this.done=this.done.bind(this)}U.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:U,deps:[{token:v},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Component}),U.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:U,selector:"kendo-scheduler-pdf",inputs:{author:"author",avoidLinks:"avoidLinks",creator:"creator",date:"date",imageResolution:"imageResolution",fileName:"fileName",forceProxy:"forceProxy",keywords:"keywords",margin:"margin",scale:"scale",proxyData:"proxyData",proxyURL:"proxyURL",proxyTarget:"proxyTarget",producer:"producer",subject:"subject",title:"title"},ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:U,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-pdf",template:""}]}],ctorParameters:function(){return[{type:v},{type:n.NgZone}]},propDecorators:{author:[{type:h.Input}],avoidLinks:[{type:h.Input}],creator:[{type:h.Input}],date:[{type:h.Input}],imageResolution:[{type:h.Input}],fileName:[{type:h.Input}],forceProxy:[{type:h.Input}],keywords:[{type:h.Input}],margin:[{type:h.Input}],scale:[{type:h.Input}],proxyData:[{type:h.Input}],proxyURL:[{type:h.Input}],proxyTarget:[{type:h.Input}],producer:[{type:h.Input}],subject:[{type:h.Input}],title:[{type:h.Input}]}});c(Ya,Ua=q.Button),Ya.prototype.onClick=function(e){e.preventDefault(),this.pdfService.exportClick.emit()},Ya.prototype.ngOnInit=function(){this.icon="pdf"};var Ua,G=Ya;function Ya(e,t,n,r,i){t=Ua.call(this,t,n,null,r,i)||this;return t.pdfService=e,t}G.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:G,deps:[{token:v},{token:n.ElementRef},{token:n.Renderer2},{token:r.LocalizationService},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Directive}),G.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:G,selector:"[kendoSchedulerPDFCommand]",host:{listeners:{click:"onClick($event)"}},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:G,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerPDFCommand]"}]}],ctorParameters:function(){return[{type:v},{type:n.ElementRef},{type:n.Renderer2},{type:r.LocalizationService},{type:n.NgZone}]},propDecorators:{onClick:[{type:h.HostListener,args:["click",["$event"]]}]}});Z=[U,G],I=function(){};I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:[],target:n.ɵɵFactoryTarget.NgModule}),I.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,declarations:[U,G],exports:[U,G]}),I.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.NgModule,args:[{declarations:[Z],exports:[Z]}]}]}),e.AddEvent=Je,e.AgendaDateTemplateDirective=u,e.AgendaTimeTemplateDirective=ht,e.AgendaViewComponent=Ei,e.AllDayEventTemplateDirective=mt,e.AllDaySlotTemplateDirective=gt,e.BaseEditService=A,e.CancelEvent=Ze,e.DataBindingDirective=ee,e.DateChangeEvent=ae,e.DateHeaderTemplateDirective=yt,e.DaySlotDirective=E,e.DayTimeModule=la,e.DayTimeSlotService=Mo,e.DayTimeViewItemComponent=eo,e.DayViewComponent=$o,e.DragEndEvent=Te,e.DragEvent=we,e.DragStartEvent=Ce,e.EditDialogComponent=T,e.EditDialogTemplateDirective=Kt,e.EditEvent=$e,e.EditEventBase=je,e.EndRuleRadioButtonDirective=re,e.EventClickEvent=ge,e.EventKeydownEvent=ye,e.EventTemplateDirective=ft,e.FocusService=f,e.FocusableDirective=un,e.GroupHeaderTemplateDirective=vt,e.HintContainerComponent=Ii,e.IsSlotSelectedArgs=ut,e.LoadingComponent=ve,e.LocalizedMessagesDirective=_r,e.MajorTimeHeaderTemplateDirective=kt,e.MinorTimeHeaderTemplateDirective=Dt,e.MonthDaySlotTemplateDirective=Tt,e.MonthViewComponent=po,e.MonthViewModule=vo,e.MultiDayViewComponent=Jo,e.MultiDayViewModule=ca,e.MultipleResourceEditorComponent=nr,e.NavigateEvent=pe,e.PDFCommandDirective=G,e.PDFComponent=U,e.PDFExportEvent=ln,e.PDFModule=I,e.PDFService=v,e.ReactiveEditingDirective=t,e.RecurrenceEditorComponent=jr,e.RecurrenceEditorCustomMessagesComponent=Pa,e.RecurrenceEditorLocalizedMessagesDirective=Nr,e.RecurrenceEndRuleEditorComponent=Wr,e.RecurrenceFrequencyEditorComponent=D,e.RecurrenceIntervalEditorComponent=Sr,e.RecurrenceMonthlyYearlyEditorComponent=Fr,e.RecurrenceWeekdayRuleEditorComponent=Cr,e.RemoveEvent=Oe,e.RepeatOnRadioButtonDirective=Rr,e.RepeatPipe=qt,e.ResizeEndEvent=Ve,e.ResizeEvent=Pe,e.ResizeHintComponent=Si,e.ResizeStartEvent=Ne,e.ResourceIteratorPipe=io,e.SaveEvent=Ue,e.SchedulerComponent=Yr,e.SchedulerCustomMessagesComponent=Xr,e.SchedulerDateTimePickerComponent=dr,e.SchedulerModule=qa,e.SchedulerView=d,e.SchedulerViewDirective=da,e.SharedModule=Oi,e.ShortcutsDirective=F,e.SingleResourceEditorComponent=ar,e.SlotClickEvent=me,e.SlotDragEndEvent=at,e.SlotDragEvent=ot,e.SlotDragStartEvent=nt,e.SlotSelectableDirective=i,e.TimeSlotDirective=k,e.TimeSlotTemplateDirective=It,e.TimeZoneEditorComponent=pr,e.TimelineBase=R,e.TimelineMonthViewComponent=ba,e.TimelineMultiDayViewComponent=C,e.TimelineViewComponent=fa,e.TimelineViewModule=s,e.TimelineWeekViewComponent=Da,e.ToolbarNavigationComponent=Kn,e.ToolbarService=ct,e.ToolbarTemplateDirective=lt,e.ToolbarViewSelectorComponent=Xn,e.VIEW_EVENT_MAP=qe,e.ViewContextService=m,e.ViewFooterComponent=mo,e.ViewStateService=g,e.ViewsSharedModule=ko,e.WeekViewComponent=na,e.WorkHoursFooterDirective=a,e.WorkWeekViewComponent=oa,Object.defineProperty(e,"__esModule",{value:!0})});
5
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-angular-common"),require("@progress/kendo-date-math"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-dateinputs"),require("rxjs"),require("rxjs/operators"),require("@angular/forms"),require("@progress/kendo-angular-dialog"),require("@progress/kendo-angular-intl"),require("@progress/kendo-angular-popup"),require("@progress/kendo-angular-buttons"),require("@angular/common"),require("@progress/kendo-angular-dropdowns"),require("@progress/kendo-recurrence"),require("@progress/kendo-angular-inputs"),require("@progress/kendo-data-query"),require("@progress/kendo-draggable"),require("@progress/kendo-drawing"),require("@progress/kendo-file-saver")):"function"==typeof define&&define.amd?define("KendoAngularScheduler",["exports","@angular/core","@progress/kendo-angular-l10n","@progress/kendo-angular-common","@progress/kendo-date-math","@progress/kendo-licensing","@progress/kendo-angular-dateinputs","rxjs","rxjs/operators","@angular/forms","@progress/kendo-angular-dialog","@progress/kendo-angular-intl","@progress/kendo-angular-popup","@progress/kendo-angular-buttons","@angular/common","@progress/kendo-angular-dropdowns","@progress/kendo-recurrence","@progress/kendo-angular-inputs","@progress/kendo-data-query","@progress/kendo-draggable","@progress/kendo-drawing","@progress/kendo-file-saver"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularScheduler={},e.ng.core,e.KendoAngularL10N,e.KendoAngularCommon,e.KendoDateMath,e.KendoLicensing,e.KendoAngularDateinputs,e.rxjs,e.rxjs.operators,e.ng.forms,e.KendoAngularDialog,e.KendoAngularIntl,e.KendoAngularPopup,e.KendoAngularButtons,e.ng.common,e.KendoAngularDropdowns,e.KendoRecurrence,e.KendoAngularInputs,e.KendoDataQuery,e.KendoDraggable,e.KendoDrawing,e.KendoFileSaver)}(this,function(e,h,P,l,b,z,A,p,N,B,j,L,t,q,Z,G,_,U,Y,K,$,X){"use strict";function Q(n){var r;return n&&n.__esModule?n:(r=Object.create(null),n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(r,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),r.default=n,Object.freeze(r))}var n=Q(h),r=Q(P),J=Q(l),i=Q(A),ee=Q(B),te=Q(j),o=Q(L),ne=Q(t),a=Q(q),s=Q(Z),re=Q(G),ie=Q(U),oe={name:"@progress/kendo-angular-scheduler",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1668698925,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},ae=function(e,t,n){this.sender=e,this.selectedDate=t,this.dateRange=n},se=function(e,t){return(se=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(e,t){e.__proto__=t}:function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}))(e,t)};function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}se(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function le(r,i){var o,a,s,l={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},c={next:e(0),throw:e(1),return:e(2)};return"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function e(n){return function(e){var t=[n,e];if(o)throw new TypeError("Generator is already executing.");for(;l=c&&t[c=0]?0:l;)try{if(o=1,a&&(s=2&t[0]?a.return:t[0]?a.throw||((s=a.return)&&s.call(a),0):a.next)&&!(s=s.call(a,t[1])).done)return s;switch(a=0,(t=s?[2&t[0],s.value]:t)[0]){case 0:case 1:s=t;break;case 4:return l.label++,{value:t[1],done:!1};case 5:l.label++,a=t[1],t=[0];continue;case 7:t=l.ops.pop(),l.trys.pop();continue;default:if(!(s=0<(s=l.trys).length&&s[s.length-1])&&(6===t[0]||2===t[0])){l=0;continue}if(3===t[0]&&(!s||t[1]>s[0]&&t[1]<s[3]))l.label=t[1];else if(6===t[0]&&l.label<s[1])l.label=s[1],s=t;else{if(!(s&&l.label<s[2])){s[2]&&l.ops.pop(),l.trys.pop();continue}l.label=s[2],l.ops.push(t)}}t=i.call(r,l)}catch(e){t=[6,e],a=0}finally{o=s=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}}}Object.create;function ce(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),a=[];try{for(;(void 0===t||0<t--)&&!(r=o.next()).done;)a.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a}function de(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||((r=r||Array.prototype.slice.call(t,0,i))[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))}Object.create;c(he,ue=A.PreventableEvent);var ue,pe=he;function he(e,t){var n=ue.call(this)||this;return n.sender=e,n.action=t,n}function me(e,t){this.sender=e,Object.assign(this,t)}function ge(e,t){this.sender=e,Object.assign(this,t)}function ye(e,t){this.sender=e,Object.assign(this,t)}function fe(e,t){this.sender=e,Object.assign(this,t)}ke.prototype.preventDefault=function(){this.prevented=!0},ke.prototype.isDefaultPrevented=function(){return this.prevented};var ve=ke;function ke(){this.prevented=!1}c(Ie,De=ve);var De,Te=Ie;function Ie(e,t){var n=De.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Se,be=ve);var be,we=Se;function Se(e,t){var n=be.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Ee,xe=ve);var xe,Ce=Ee;function Ee(e,t){var n=xe.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Fe,Re=ve);var Re,Oe=Fe;function Fe(e,t){var n=Re.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(We,He=ve);var He,Ve=We;function We(e,t){var n=He.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(ze,Me=ve);var Me,Pe=ze;function ze(e,t){var n=Me.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(Be,Ae=ve);var Ae,Ne=Be;function Be(e,t){var n=Ae.call(this)||this;return n.sender=e,Object.assign(n,t),n}function je(e,t){this.sender=e,Object.assign(this,t)}var Le,qe={slotClick:me,slotDblClick:me,eventClick:ge,eventDblClick:ge,eventKeydown:ye,create:fe,remove:Oe,resizeStart:Ne,resize:Pe,resizeEnd:Ve,dragStart:Ce,drag:we,dragEnd:Te},Ze=(c(Ge,Le=je),Ge);function Ge(){return null!==Le&&Le.apply(this,arguments)||this}c(Ye,_e=je);var _e,Ue=Ye;function Ye(){return null!==_e&&_e.apply(this,arguments)||this}c(Xe,Ke=ve);var Ke,$e=Xe;function Xe(e,t){var n=Ke.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(et,Qe=ve);var Qe,Je=et;function et(e,t){var n=Qe.call(this)||this;return n.sender=e,Object.assign(n,t),n}c(rt,tt=ve);var tt,nt=rt;function rt(e,t){var n=tt.call(this)||this;return n.sender=e,Object.assign(n,t),n}var it,ot=function(e,t){this.sender=e,Object.assign(this,t)},at=(c(st,it=ot),st);function st(){return null!==it&&it.apply(this,arguments)||this}var lt=function(e){this.templateRef=e},ct=(lt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:lt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),lt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:lt,selector:"[kendoSchedulerToolbarTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:lt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerToolbarTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),dt.prototype.navigate=function(e){this.actionSource.next(e)},dt);function dt(){this.actionSource=new p.Subject,this.action=this.actionSource.asObservable()}ct.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct,deps:[],target:n.ɵɵFactoryTarget.Injectable}),ct.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ct,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});function d(){}function ut(){}e.EditMode=void 0,(u=e.EditMode||(e.EditMode={}))[u.Event=0]="Event",u[u.Occurrence=1]="Occurrence",u[u.Series=2]="Series",e.CrudOperation=void 0,(u=e.CrudOperation||(e.CrudOperation={}))[u.Edit=0]="Edit",u[u.Remove=1]="Remove";(u=pt=pt||{}).initDragSelect="initDragSelect",u.dragSelect="dragSelect",u.refreshSlotSelection="refreshSlotSelection",u.dragSelectRelease="dragSelectRelease";var pt,u=function(e){this.templateRef=e},ht=(u.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:u,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),u.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:u,selector:"[kendoSchedulerAgendaDateTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:u,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAgendaDateTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),mt=(ht.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ht,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),ht.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ht,selector:"[kendoSchedulerAgendaTimeTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ht,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAgendaTimeTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),gt=(mt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),mt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:mt,selector:"[kendoSchedulerAllDayEventTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAllDayEventTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),yt=(gt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:gt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),gt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:gt,selector:"[kendoSchedulerAllDaySlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:gt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerAllDaySlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),ft=(yt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:yt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),yt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:yt,selector:"[kendoSchedulerDateHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:yt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerDateHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),vt=(ft.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ft,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),ft.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ft,selector:"[kendoSchedulerEventTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ft,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerEventTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),kt=(vt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),vt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:vt,selector:"[kendoSchedulerGroupHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerGroupHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),Dt=(kt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:kt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),kt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:kt,selector:"[kendoSchedulerMajorTimeHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:kt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMajorTimeHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),Tt=(Dt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Dt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Dt,selector:"[kendoSchedulerMinorTimeHeaderTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMinorTimeHeaderTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),It=(Tt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Tt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Tt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Tt,selector:"[kendoSchedulerMonthDaySlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Tt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerMonthDaySlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),function(e){this.templateRef=e}),m=(It.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:It,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),It.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:It,selector:"[kendoSchedulerTimeSlotTemplate]",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:It,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerTimeSlotTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]}}),bt.prototype.notifyAction=function(e){this.actionSource.next(e)},bt.prototype.notifyItems=function(e){this.itemsSource.next(e)},bt.prototype.notifySelectedDate=function(e){this.selectedDateSource.next(e)},bt.prototype.notifyResize=function(){this.resizeSource.next()},bt.prototype.notifyOptionsChange=function(e){this.optionsChangeSource.next(e)},bt.prototype.executeMethod=function(e,t){var n;return this.executeSource.next({name:e,args:t,result:function(e){n=e}}),n},bt);function bt(){this.actionSource=new p.Subject,this.itemsSource=new p.BehaviorSubject([]),this.selectedDateSource=new p.BehaviorSubject(null),this.resizeSource=new p.Subject,this.optionsChangeSource=new p.BehaviorSubject({}),this.executeSource=new p.Subject,this.action=this.actionSource.asObservable(),this.items=this.itemsSource.asObservable(),this.selectedDate=this.selectedDateSource.asObservable(),this.resize=this.resizeSource.asObservable(),this.optionsChange=this.optionsChangeSource.asObservable(),this.execute=this.executeSource.asObservable()}m.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m,deps:[],target:n.ɵɵFactoryTarget.Injectable}),m.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:m,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});wt.prototype.notifyNextDate=function(e){this.nextDateSource.next(e)},wt.prototype.notifyDateRange=function(e){this.dateRangeSource.next(e)},wt.prototype.notifyLayoutEnd=function(){this.layoutEndSource.next()},wt.prototype.navigateTo=function(e){this.navigateSource.next(e)},wt.prototype.notifyOptionsChange=function(){this.optionsChangeSource.next(null)},wt.prototype.emitEvent=function(e,t){this.viewEventSource.next({name:e,args:t})},wt.prototype.notifySlotSelectionStart=function(e){this.slotSelectionStartSource.next(e)},wt.prototype.notifySlotSelectionDrag=function(e){this.slotSelectionStartDragSource.next(e)},wt.prototype.notifySlotSelectionEnd=function(e){this.slotSelectionStartEndSource.next(e)};var g=wt;function wt(){this.dateRangeSource=new p.BehaviorSubject({start:new Date(0),end:new Date(0),text:"",shortText:""}),this.nextDateSource=new p.Subject,this.navigateSource=new p.Subject,this.viewEventSource=new p.Subject,this.layoutEndSource=new p.Subject,this.optionsChangeSource=new p.Subject,this.slotSelectionStartSource=new p.Subject,this.slotSelectionStartDragSource=new p.Subject,this.slotSelectionStartEndSource=new p.Subject,this.dateRange=this.dateRangeSource.asObservable(),this.nextDate=this.nextDateSource.asObservable(),this.navigate=this.navigateSource.asObservable(),this.viewEvent=this.viewEventSource.asObservable(),this.layoutEnd=this.layoutEndSource.asObservable(),this.optionsChange=this.optionsChangeSource.asObservable(),this.slotSelectionStart=this.slotSelectionStartSource.asObservable(),this.slotSelectionDrag=this.slotSelectionStartDragSource.asObservable(),this.slotSelectionEnd=this.slotSelectionStartEndSource.asObservable()}g.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g,deps:[],target:n.ɵɵFactoryTarget.Injectable}),g.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:g,decorators:[{type:h.Injectable}],ctorParameters:function(){return[]}});var St=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,xt={};function Ct(e){var i;return xt[e]||(i=[],e.replace(St,function(e,t,n,r){i.push(void 0!==t?t:n||r)}),xt[e]=function(e){for(var t=e,n=0;n<i.length&&t;n++)t=t[i[n]];return t}),xt[e]}xt[void 0]=function(){};var Et=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,Rt={};function Ot(e){var o;return Rt[e]||(o=[],e.replace(Et,function(e,t,n,r){o.push(void 0!==t?t:n||r)}),Rt[e]=function(e,t){for(var n=e,r=o.length-1,i=0;i<r&&n;i++)n=n[o[i]]=n[o[i]]||{};n[o[r]]=t}),Rt[e]}Rt[void 0]=function(e){return e};function Ft(e){return e.charAt(0).toUpperCase()+e.slice(1)}function y(e){return null!=e}function Ht(e,t){var n=Ct(t.recurrenceId)(e);return!(!Ct(t.recurrenceRule)(e)&&!n)}function Vt(e,t){var n=Ct(t.id)(e),t=Ct(t.recurrenceId)(e);return y(n)&&0!==n&&y(t)}function Wt(e,t){if(t)for(var n=0;n<t.length;n++)Nt(e,e.dataItem,t[n].field)}function Mt(e,t,n){return t={id:Ct(t.id)(e),start:Ct(t.start)(e),startTimezone:Ct(t.startTimezone)(e),end:Ct(t.end)(e),endTimezone:Ct(t.endTimezone)(e),isAllDay:Ct(t.isAllDay)(e),title:Ct(t.title)(e),description:Ct(t.description)(e),recurrenceRule:Ct(t.recurrenceRule)(e),recurrenceExceptions:Ct(t.recurrenceExceptions)(e),recurrenceId:Ct(t.recurrenceId)(e),dataItem:e},Wt(t,n),t}var Pt=function(e){return"number"==typeof e&&!isNaN(e)};function zt(e,n){var r=[];if(e&&e.resources&&e.resources.length)for(var i=e.resources,t=0;t<i.length;t++)!function(t){var e=n.find(function(e){return e.name===i[t]});r.push(e)}(t);return r}var x=function(e,t){return Ct(t)(e)},At=function(e,t,n){return Ot(t)(e,n)};function Nt(e,t,n){At(e,n,x(t,n))}function Bt(e,t){return jt(t,e),e}function jt(e,t){for(var n in e){var r;e.hasOwnProperty(n)&&(r=e[n],Array.isArray(r)?t[n]=r.slice(0):!r||"object"!=typeof r||r instanceof Date?t[n]=r:(t[n]=t[n]||{},jt(r,t[n])))}}function Lt(e){var t={};return jt(e,t),t}var qt=function(){if("function"==typeof Symbol&&Symbol.iterator)return Symbol.iterator;for(var e=Object.getOwnPropertyNames(Map.prototype),t=Map.prototype,n=0;n<e.length;++n){var r=e[n];if("entries"!==r&&"size"!==r&&t[r]===t.entries)return r}}();function Zt(e){return p.fromEvent(e,"click")}function Gt(e){var e=Zt(e),t=e.pipe(N.auditTime(250));return e.pipe(N.buffer(t),N.filter(function(e){return 2===e.length}),N.filter(function(e){return e[1].target===e[0].target}),N.map(function(e){return e[1]}))}function _t(e){return e.sort(function(e,t){return e.startTime-t.startTime||t.endTime-e.endTime}),e}Yt.prototype.endEdit=function(){var e=this.hasNewEvent?this.newEventGroup.group:this.editedEvent.formGroup;this.changes.emit({action:"cancel",formGroup:e})},Yt.prototype.removeEvent=function(e){this.changes.emit({action:"remove",dataItem:e})},Yt.prototype.addEvent=function(e){this.newEventGroup={formGroup:e},this.onChanged()},Yt.prototype.editEvent=function(e,t,n){this.editedEvent={dataItem:e,formGroup:t=void 0===t?void 0:t,mode:n},this.onChanged()},Yt.prototype.close=function(){this.newEventGroup=this.editedEvent=null,this.onChanged()},Yt.prototype.save=function(){var e=this.context,t=e.dataItem,e=e.formGroup;this.changes.emit({action:"save",dataItem:t,formGroup:e,isNew:this.hasNewEvent,mode:this.occurrenceEditMode})},Yt.prototype.isEditing=function(){return y(this.context)},Object.defineProperty(Yt.prototype,"occurrenceEditMode",{get:function(){return this.hasNewEvent?2:this.editedEvent.mode||0},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"hasNewEvent",{get:function(){return y(this.newEventGroup)},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"newEvent",{get:function(){return this.hasNewEvent?this.newEventGroup.group.value:{}},enumerable:!1,configurable:!0}),Object.defineProperty(Yt.prototype,"context",{get:function(){return this.hasNewEvent?this.newEventGroup:this.editedEvent},enumerable:!1,configurable:!0}),Yt.prototype.onChanged=function(){var e=this;this.ngZone.runOutsideAngular(function(){e.changedSource.next()})};var Ut=Yt;function Yt(e){this.ngZone=e,this.changes=new h.EventEmitter,this.changedSource=new p.Subject,this.changed=this.changedSource.asObservable().pipe(N.debounceTime(0))}Ut.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut,deps:[{token:n.NgZone}],target:n.ɵɵFactoryTarget.Injectable}),Ut.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ut,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:n.NgZone}]}});var Kt=function(e){this.templateRef=e},$t=(Kt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kt,deps:[{token:n.TemplateRef,optional:!0}],target:n.ɵɵFactoryTarget.Directive}),Kt.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Kt,selector:"[kendoSchedulerEditDialogTemplate]",inputs:{autoFocusedElement:"autoFocusedElement"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kt,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerEditDialogTemplate]"}]}],ctorParameters:function(){return[{type:n.TemplateRef,decorators:[{type:h.Optional}]}]},propDecorators:{autoFocusedElement:[{type:h.Input}]}}),function(){this.changes=new h.EventEmitter}),Xt=($t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t,deps:[],target:n.ɵɵFactoryTarget.Injectable}),$t.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$t,decorators:[{type:h.Injectable}]}),function(){this.focus=new h.EventEmitter,this.focusIn=new h.EventEmitter,this.focusOut=new h.EventEmitter,this.click=new h.EventEmitter,this.keydown=new h.EventEmitter,this.windowBlur=new h.EventEmitter}),f=(Xt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt,deps:[],target:n.ɵɵFactoryTarget.Injectable}),Xt.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xt,decorators:[{type:h.Injectable}]}),Object.defineProperty(Qt.prototype,"activeElement",{get:function(){if(this.activeItem)return this.activeItem.element},enumerable:!1,configurable:!0}),Qt.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},Qt.prototype.register=function(e){this.activeItem||(this.activeItem=e).toggle(!0),this.items.add(e),this.elementMap.set(e.element.nativeElement,e),this.toggleWrapper()},Qt.prototype.unregister=function(e){this.items.delete(e),this.elementMap.delete(e.element.nativeElement),e===this.activeItem&&this.activateNext(),this.toggleWrapper()},Qt.prototype.focus=function(){(this.activeItem||this.wrapper.nativeElement).focus()},Qt.prototype.focusNext=function(e){var t=this.activeItem;return this.activateNext(e),this.activeItem&&this.activeItem.focus(),this.activeItem!==t},Qt.prototype.focusFirst=function(){var t=this,e=Array.from(this.items.values())[0];e&&(this.activate(e.element.nativeElement),this.focus(),this.zone.onStable.pipe(N.take(1)).subscribe(function(){var e=Array.from(t.items.values())[0];e?(e=e.element.nativeElement.getAttribute("id"),t.ariaActiveDescendant.next(e),t.lastActiveDescendantId=e):t.clearActiveDescendant()}))},Qt.prototype.clearActiveDescendant=function(){this.ariaActiveDescendant.next(null)},Qt.prototype.activate=function(t){var n=this;this.items.forEach(function(e){e.toggle(e===t),e===t&&(e=e.element.nativeElement.getAttribute("id"),n.ariaActiveDescendant.next(e),n.lastActiveDescendantId=e)}),this.activeItem=t},Qt.prototype.activateNext=function(e){this.activeItem=this.findNext(e)},Qt.prototype.findNext=function(e){var e=Object.assign({nowrap:!1,offset:1},e),t=e.offset,e=e.nowrap,n=Array.from(this.items.values()).filter(function(e){return e.canFocus()}).sort(function(e,t){return e.focusIndex-t.focusIndex});return 0===n.length?null:this.activeItem?(t=n.indexOf(this.activeItem)+t,e?t=Math.max(0,Math.min(n.length-1,t)):(t%=n.length)<0&&(t=n.length-1),n[t]):e?null:n[0]},Qt.prototype.toggleWrapper=function(){this.wrapper&&this.renderer.setAttribute(this.wrapper.nativeElement,"tabindex",this.activeItem?"-1":"0")},Qt.prototype.onFocusIn=function(e){e=this.elementMap.get(e.target);this.lastActiveDescendantId&&this.lastActiveDescendantId!==(null==e?void 0:e.element.nativeElement.getAttribute("id"))&&this.ariaActiveDescendant.next(this.lastActiveDescendantId),e&&e!==this.focusedItem&&(this.focusedItem&&this.focusedItem.toggleFocus(!1),this.activate(e),e.toggleFocus(!0),this.focusedItem=e)},Qt.prototype.onFocusOut=function(){this.focusedItem&&(this.focusedItem.toggleFocus(!1),this.focusedItem=null,this.clearActiveDescendant())},Qt);function Qt(e,t,n,r){var i=this;this.renderer=e,this.wrapper=t,this.domEvents=n,this.zone=r,this.ariaActiveDescendant=new h.EventEmitter,this.items=new Set,this.elementMap=new WeakMap,this.subs=new p.Subscription,this.subs.add(this.domEvents.focus.subscribe(function(e){return i.onFocusIn(e)})),this.subs.add(this.domEvents.focusOut.subscribe(function(){return i.onFocusOut()}))}f.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f,deps:[{token:n.Renderer2,optional:!0},{token:n.ElementRef,optional:!0},{token:Xt},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Injectable}),f.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:f,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:n.Renderer2,decorators:[{type:h.Optional}]},{type:n.ElementRef,decorators:[{type:h.Optional}]},{type:Xt},{type:n.NgZone}]}});en.prototype.openRemoveConfirmationDialog=function(){var t=this,e=this.dialogService.open({title:this.textFor("deleteDialogTitle"),content:this.textFor("deleteConfirmation"),actions:[{text:this.textFor("cancel"),value:!1},{text:this.textFor("destroy"),value:!0}],appendTo:this.container,autoFocusedElement:"button:nth-child(2)"});return this.isOpen=!0,this.changeDetector.markForCheck(),e.result.pipe(N.map(function(e){return t.isOpen=!1,e instanceof j.DialogCloseResult?(t.focusService.focus(),!1):(t.viewState.layoutEnd.pipe(N.take(1)).subscribe(function(){return t.focusService.focus()}),e.value)}))},en.prototype.openRecurringConfirmationDialog=function(e){var t=this,e=this.dialogService.open({actions:[{text:0===e?this.textFor("editOccurrence"):this.textFor("deleteOccurrence"),value:1},{text:0===e?this.textFor("editSeries"):this.textFor("deleteSeries"),value:2}],appendTo:this.container,autoFocusedElement:"button:nth-child(1)",content:0===e?this.textFor("editRecurringConfirmation"):this.textFor("deleteRecurringConfirmation"),title:0===e?this.textFor("editRecurringDialogTitle"):this.textFor("deleteRecurringDialogTitle")});return this.isOpen=!0,this.changeDetector.markForCheck(),e.result.pipe(N.map(function(e){if(t.isOpen=!1,t.focusService.focus(),!(e instanceof j.DialogCloseResult))return e.value}))},en.prototype.textFor=function(e){return this.localization.get(e)};var Jt=en;function en(e,t,n,r,i){this.dialogService=e,this.localization=t,this.changeDetector=n,this.focusService=r,this.viewState=i,this.isOpen=!1}Jt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt,deps:[{token:te.DialogService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:f},{token:g}],target:n.ɵɵFactoryTarget.Injectable}),Jt.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jt,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:te.DialogService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:f},{type:g}]}});c(rn,tn=P.LocalizationService);var tn,nn=rn;function rn(e,t,n){return tn.call(this,e,t,n)||this}nn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn,deps:[{token:P.L10N_PREFIX},{token:r.MessageService,optional:!0},{token:P.RTL,optional:!0}],target:n.ɵɵFactoryTarget.Injectable}),nn.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nn,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:void 0,decorators:[{type:h.Inject,args:[P.L10N_PREFIX]}]},{type:r.MessageService,decorators:[{type:h.Optional}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[P.RTL]}]}]}});var on={id:"id",start:"start",startTimezone:"startTimezone",end:"end",endTimezone:"endTimezone",isAllDay:"isAllDay",title:"title",description:"description",recurrenceRule:"recurrenceRule",recurrenceId:"recurrenceId",recurrenceExceptions:"recurrenceExceptions"},v=(an.prototype.save=function(){if(l.hasObservers(this.elementReady)){if(l.hasObservers(this.createElement))this.createElement.emit();else if(h.isDevMode())throw new Error("No active Scheduler view to export.")}else if(h.isDevMode())throw new Error("Creating PDF requires including the PDFModule and adding the <kendo-scheduler-pdf> component.")},an);function an(){this.createElement=new h.EventEmitter,this.exportClick=new h.EventEmitter,this.done=new h.EventEmitter,this.elementReady=new h.EventEmitter}v.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v,deps:[],target:n.ɵɵFactoryTarget.Injectable}),v.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:v,decorators:[{type:h.Injectable}]});c(cn,sn=ve);var sn,ln=cn;function cn(){return null!==sn&&sn.apply(this,arguments)||this}Object.defineProperty(dn.prototype,"display",{get:function(){return this.loading||this.force?"block":"none"},enumerable:!1,configurable:!0}),dn.prototype.toggle=function(e){this.force=e,this.renderer.setStyle(this.element.nativeElement,"display",this.display)};ve=dn;function dn(e,t){this.element=e,this.renderer=t,this.hostClasses=!0}ve.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ve,deps:[{token:n.ElementRef},{token:n.Renderer2}],target:n.ɵɵFactoryTarget.Component}),ve.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ve,selector:"[kendoSchedulerLoading]",inputs:{loading:"loading"},host:{properties:{"class.k-loading-mask":"this.hostClasses","style.display":"this.display"}},ngImport:n,template:'\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n ',isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ve,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerLoading]",template:'\n <div class="k-loading-image"></div>\n <div class="k-loading-color"></div>\n '}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-loading-mask"]}],loading:[{type:h.Input}],display:[{type:h.HostBinding,args:["style.display"]}]}});Object.defineProperty(pn.prototype,"visible",{get:function(){return"none"!==this.element.nativeElement.style.display},enumerable:!1,configurable:!0}),Object.defineProperty(pn.prototype,"enabled",{get:function(){return!this.element.nativeElement.disabled},enumerable:!1,configurable:!0}),pn.prototype.ngOnDestroy=function(){this.focusService.unregister(this)},pn.prototype.toggle=function(e){e!==this.active&&(this.renderer.setAttribute(this.element.nativeElement,"tabIndex",e?"0":"-1"),this.active=e)},pn.prototype.canFocus=function(){return this.visible&&this.enabled},pn.prototype.focus=function(){this.element.nativeElement.focus()},pn.prototype.toggleFocus=function(e){var t="k-selected",n=this.element.nativeElement;e?this.renderer.addClass(n,t):this.renderer.removeClass(n,t),n.matches(".k-scheduler-agendaview .k-scheduler-content .k-selected")&&(null!=(t=n.closest(".k-scheduler-agendaview").querySelector('[aria-selected="true"]'))&&t.removeAttribute("aria-selected"),this.renderer.setAttribute(n,"aria-selected",e.toString()))};var un=pn;function pn(e,t,n){this.element=e,this.renderer=t,this.focusService=n,this.focusIndex=0,this.toggle(!1),this.focusService.register(this)}un.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:un,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:f}],target:n.ɵɵFactoryTarget.Directive}),un.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:un,selector:"[kendoSchedulerFocusIndex]",inputs:{focusIndex:["kendoSchedulerFocusIndex","focusIndex"]},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:un,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerFocusIndex]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:f}]},propDecorators:{focusIndex:[{type:h.Input,args:["kendoSchedulerFocusIndex"]}]}});function hn(e){return String(e).trim().split(" ")}function mn(e,t,n){for(;e&&e!==n&&!t(e);)e=e.parentNode;if(e!==n)return e}function gn(e){var t=e.wheelDeltaY;return e.wheelDelta&&(void 0===t||t)?e.wheelDelta:e.detail&&e.axis===e.VERTICAL_AXIS?10*-e.detail:0}var yn=function(e,t){var n=hn(t);return Boolean(hn(e.className).find(function(e){return 0<=n.indexOf(e)}))};function fn(e,t){t="vertical"===t?"Height":"Width";return e["scroll"+t]>e["client"+t]&&0<l.getScrollbarWidth()}function vn(e,t,n,r){return e<n&&r<t||n<=e&&e<r||n<t&&t<=r&&e<t}function kn(e,t,n){return t.getTime()<=e.getTime()&&e.getTime()<=n.getTime()}function Dn(e){var t=e.start,e=e.end,t=t.stripTime(),n=e.stripTime();return n.getTime()!==e.getTime()||t.getTime()===n.getTime()?n.addDays(1):n}function Tn(e){var t=new Date(1980,0,1,0,0,0);return e&&t.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),t}function In(e,t){return(e=new Date(e.getTime())).setUTCDate(e.getUTCDate()+t),e}function bn(e,t){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()))}function wn(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()))}function Sn(e){return new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()))}function xn(e){return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))}function Cn(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate(),t.getHours(),t.getMinutes())}function En(e,t){var n,r;return t.end<=e.end?(r=e.end,n=t.start):(n=e.start,r=t.end),{start:n,end:r}}function Rn(e,t){for(var n=t.data,r=0;r<n.length;r++)if(x(n[r],t.valueField)===e)return r;return-1}function On(e,t){e=Rn(e,t);return 0<=e?t.data[e]:{}}function Fn(e,t){var n,e=x(e,t.field);return Array.isArray(e)?(n=t,e.map(function(e){return On(e,n)})):On(e,t)}function Hn(e,t){for(var n=t.taskResources,r=t.hasGroups,i=t.spans,t=t.allResources,o=void 0===t?[]:t,a=[],s=0;s<n.length;s++){var l=n[s];if(l.data){for(var c=o.indexOf(l),d=x(e,l.field),u=(Array.isArray(d)||(d=[d]),[]),p=0;p<d.length;p++){var h=Rn(d[p],l);if(h<0){if(r)continue;return[{leafIdx:0,resources:[]}]}var m=l.data[h];if(0!==s||!r&&0!==p){if(r){var g=a;1<d.length&&(g=function(e){for(var t=[],n=0;n<e.length;n++){var r=Object.assign({},e[n]);r.resources=r.resources.slice(0),t.push(r)}return t}(a),u.push.apply(u,g));for(var y=0;y<g.length;y++)g[y].leafIdx+=h*i[s],g[y].resources[c]=m}else if(0<p)for(var f=0;f<a.length;f++)a[f].resources[c].push(m)}else{var v=[];v[c]=l.multiple&&!r?[m]:m,a.push({leafIdx:r?h*i[s]:0,color:x(m,l.colorField),resources:v})}}u.length&&(a=u)}else a=[{leafIdx:0,resources:[]}]}for(var k=e,D=a,T=o,I=0;I<D.length;I++)for(var b=D[I],w=0;w<T.length;w++){var S=T[w];!b.resources[w]&&S.data&&(b.resources[w]=Fn(k,S))}return a}function Vn(e){return Array.isArray(e)&&1===e.length&&void 0===e[0]}function Wn(e,n){return e.length===n.length&&(!(!Vn(e)||!Vn(n))||e.every(function(t){return n.some(function(e){return e.value===t.value})}))}function Mn(e,t){return e.start.getTime()===t.start.getTime()&&e.end.getTime()===t.end.getTime()&&e.isAllDay===t.isAllDay&&Wn(e.resources,t.resources)}function Pn(e,t){if(void 0!==t.rowIndex)return t.rowIndex;for(var n=0;n<e.length;n++)if(!e[n])return n;return e.length}function zn(e){return Boolean(e.event&&e.event.recurrenceRule)}function An(e){return e.event&&y(e.event.recurrenceId)&&!e.event.recurrenceRule}function Nn(e,t,n){return e.left<=t&&t<=e.left+e.width&&e.top<=n&&n<=e.top+e.height}function Bn(e,t){return e.left<=t&&t<=e.left+e.width}function jn(e){return e+"px"}function Ln(e){var t;return e?(e=e.getBoundingClientRect(),t=document.documentElement,{top:e.top+(window.pageYOffset||t.scrollTop)-(t.clientTop||0),left:e.left+(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0),width:e.width,height:e.height}):null}function qn(e){return"KENDO-RESIZE-SENSOR"===e.nodeName||yn(e,"k-loading-mask")}function Zn(e,t){for(var n in t)t.hasOwnProperty(n)&&(e.style[n]=jn(t[n]))}function Gn(e){var t=[];if("string"==typeof e)t.push(e);else if(Array.isArray(e))t.push.apply(t,e);else if("object"==typeof e)for(var n in e)e.hasOwnProperty(n)&&e[n]&&t.push(n);return t}function _n(e,t,n,r){var i={skeleton:"yMMMMEEEEdhm"},o=b.isEqualDate(e,t)?"t":i;return n?""+L.formatDate(e,{skeleton:"yMMMMEEEEd"},r):L.formatDate(e,i,r)+"–"+L.formatDate(t,o,r)}function Un(e,t,n){e=e.get(t);return e&&e.value||n}function Yn(){return!1}Object.defineProperty($n.prototype,"calendar",{set:function(e){e&&e.focus()},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"todayText",{get:function(){return this.localization.get("today")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"calendarTodayText",{get:function(){return this.localization.get("calendarToday")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"nextText",{get:function(){return this.localization.get("nextTitle")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"previousText",{get:function(){return this.localization.get("previousTitle")},enumerable:!1,configurable:!0}),Object.defineProperty($n.prototype,"ctx",{get:function(){return this.toolbarService.context},enumerable:!1,configurable:!0}),$n.prototype.onBlur=function(){this.closePopup()},$n.prototype.ngOnInit=function(){var t=this;this.subs.add(this.ctx.dateRange.subscribe(function(e){t.dateRangeText.short=null==e?void 0:e.shortText,t.dateRangeText.long=null==e?void 0:e.text,t.setDateRangeText()})),this.subs.add(this.viewContext.resize.subscribe(function(){t.setDateRangeText()}))},$n.prototype.ngOnDestroy=function(){this.subs.unsubscribe(),this.closePopup()},$n.prototype.toggleSelectedDate=function(e,t){return this.popupRef?this.closePopup():(e={anchor:e,content:t},this.localization.rtl&&(e.popupClass="k-rtl"),this.popupRef=this.popupService.open(e)),!1},$n.prototype.selectDate=function(e){this.closePopup(),this.toolbarService.navigate({type:"select-date",date:e})},$n.prototype.prevClick=function(){return this.toolbarService.navigate({type:"prev"}),!1},$n.prototype.nextClick=function(){return this.toolbarService.navigate({type:"next"}),!1},$n.prototype.todayClick=function(){return this.toolbarService.navigate({type:"today"}),!1},$n.prototype.closePopup=function(){this.popupRef&&(this.popupRef.close(),this.popupRef=null)},$n.prototype.setDateRangeText=function(){var e=window.matchMedia("(min-width: 1024px)").matches;this.dateRangeText.current=e?this.dateRangeText.long:this.dateRangeText.short,this.cd.detectChanges()};var Kn=$n;function $n(e,t,n,r,i){this.popupService=e,this.toolbarService=t,this.localization=n,this.cd=r,this.viewContext=i,this.inlineDisplayStyle="flex",this.inlineFlexFlowStyle="inherit",this.inlineGapStyle="inherit",this.dateRangeText={short:"",long:"",current:""},this.subs=this.localization.changes.subscribe(function(){r.markForCheck()})}Kn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kn,deps:[{token:ne.PopupService},{token:ct},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m}],target:n.ɵɵFactoryTarget.Component}),Kn.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Kn,selector:"[kendoSchedulerToolbarNavigation]",inputs:{min:"min",max:"max"},host:{properties:{"style.display":"this.inlineDisplayStyle","style.flex-flow":"this.inlineFlexFlowStyle","style.gap":"this.inlineGapStyle"}},providers:[t.PopupService],viewQueries:[{propertyName:"calendar",first:!0,predicate:["calendar"],descendants:!0}],ngImport:n,template:'\n <span class="k-scheduler-navigation k-button-group">\n <button kendoButton\n (click)="todayClick()"\n class="k-nav-today"\n [attr.title]="todayText"\n >\n <span class="k-button-text">{{todayText}}</span>\n </button>\n <button kendoButton\n (click)="prevClick()"\n class="k-nav-prev"\n icon="arrow-60-left"\n [attr.title]="previousText"\n [attr.aria-label]="previousText"\n >\n </button>\n <button kendoButton\n (click)="nextClick()"\n type="button"\n class="k-nav-next"\n icon="arrow-60-right"\n [attr.title]="nextText"\n [attr.aria-label]="nextText"\n >\n </button>\n </span>\n\n <button\n #anchor\n kendoButton\n icon="calendar"\n fillMode="flat"\n (mousedown)="toggleSelectedDate({ nativeElement: anchor }, template)"\n role="button"\n class="k-nav-current"\n tabindex="-1"\n [attr.aria-live]="\'polite\'"\n >\n <span>{{ dateRangeText?.current }}</span>\n </button>\n\n <ng-template #template>\n <kendo-calendar #calendar (blur)="onBlur()" (valueChange)="selectDate($event)" [value]="ctx.selectedDate | async" [min]="min" [max]="max">\n <kendo-calendar-messages [today]="calendarTodayText">\n </kendo-calendar-messages>\n </kendo-calendar>\n </ng-template>\n ',isInline:!0,components:[{type:i.CalendarComponent,selector:"kendo-calendar",inputs:["id","focusedDate","min","max","rangeValidation","selection","value","disabled","tabindex","tabIndex","disabledDates","navigation","activeView","bottomView","topView","type","animateNavigation","weekNumber","cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate"],outputs:["activeViewChange","navigate","activeViewDateChange","blur","focus","valueChange"],exportAs:["kendo-calendar"]},{type:i.CalendarCustomMessagesComponent,selector:"kendo-calendar-messages"}],directives:[{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}],pipes:{async:s.AsyncPipe},changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Kn,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerToolbarNavigation]",changeDetection:h.ChangeDetectionStrategy.OnPush,providers:[t.PopupService],template:'\n <span class="k-scheduler-navigation k-button-group">\n <button kendoButton\n (click)="todayClick()"\n class="k-nav-today"\n [attr.title]="todayText"\n >\n <span class="k-button-text">{{todayText}}</span>\n </button>\n <button kendoButton\n (click)="prevClick()"\n class="k-nav-prev"\n icon="arrow-60-left"\n [attr.title]="previousText"\n [attr.aria-label]="previousText"\n >\n </button>\n <button kendoButton\n (click)="nextClick()"\n type="button"\n class="k-nav-next"\n icon="arrow-60-right"\n [attr.title]="nextText"\n [attr.aria-label]="nextText"\n >\n </button>\n </span>\n\n <button\n #anchor\n kendoButton\n icon="calendar"\n fillMode="flat"\n (mousedown)="toggleSelectedDate({ nativeElement: anchor }, template)"\n role="button"\n class="k-nav-current"\n tabindex="-1"\n [attr.aria-live]="\'polite\'"\n >\n <span>{{ dateRangeText?.current }}</span>\n </button>\n\n <ng-template #template>\n <kendo-calendar #calendar (blur)="onBlur()" (valueChange)="selectDate($event)" [value]="ctx.selectedDate | async" [min]="min" [max]="max">\n <kendo-calendar-messages [today]="calendarTodayText">\n </kendo-calendar-messages>\n </kendo-calendar>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:ne.PopupService},{type:ct},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m}]},propDecorators:{calendar:[{type:h.ViewChild,args:["calendar",{static:!1}]}],inlineDisplayStyle:[{type:h.HostBinding,args:["style.display"]}],inlineFlexFlowStyle:[{type:h.HostBinding,args:["style.flex-flow"]}],inlineGapStyle:[{type:h.HostBinding,args:["style.gap"]}],min:[{type:h.Input}],max:[{type:h.Input}]}});Object.defineProperty(Qn.prototype,"ctx",{get:function(){return this.service.context},enumerable:!1,configurable:!0}),Object.defineProperty(Qn.prototype,"selectView",{get:function(){return this.localization.get("selectView")},enumerable:!1,configurable:!0}),Qn.prototype.ngOnDestroy=function(){this.detachDomEvents&&this.detachDomEvents()},Qn.prototype.select=function(e){this.ctx.selectedView!==e&&this.service.navigate({type:"view-change",view:e})},Qn.prototype.onChange=function(t){var e=this.ctx.views.find(function(e){return e.name===t.target.value});e&&this.select(e)},Qn.prototype.isSelected=function(e){return this.ctx.selectedView===e};var Xn=Qn;function Qn(e,t){this.service=e,this.localization=t,this.hostClasses=!0}Xn.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xn,deps:[{token:ct},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Xn.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Xn,selector:"[kendoSchedulerToolbarViewSelector]",host:{properties:{"class.k-scheduler-views-wrapper":"this.hostClasses"}},ngImport:n,template:'\n <select\n *ngIf="ctx.views?.length > 1"\n (change)="onChange($event)"\n class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"\n [attr.aria-label]="selectView"\n >\n <option *ngFor="let view of ctx.views"\n [selected]="isSelected(view) === true"\n [value]="view.name"\n >\n {{ view.title }}\n </option>\n </select>\n <span class="k-scheduler-views k-button-group">\n <button kendoButton\n type="button"\n *ngFor="let view of ctx.views"\n [selected]="isSelected(view)"\n [attr.aria-pressed]="isSelected(view)"\n (click)="select(view)"\n >\n <span class="k-button-text">\n {{ view.title }}\n </span>\n </button>\n </span>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xn,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerToolbarViewSelector]",template:'\n <select\n *ngIf="ctx.views?.length > 1"\n (change)="onChange($event)"\n class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"\n [attr.aria-label]="selectView"\n >\n <option *ngFor="let view of ctx.views"\n [selected]="isSelected(view) === true"\n [value]="view.name"\n >\n {{ view.title }}\n </option>\n </select>\n <span class="k-scheduler-views k-button-group">\n <button kendoButton\n type="button"\n *ngFor="let view of ctx.views"\n [selected]="isSelected(view)"\n [attr.aria-pressed]="isSelected(view)"\n (click)="select(view)"\n >\n <span class="k-button-text">\n {{ view.title }}\n </span>\n </button>\n </span>\n '}]}],ctorParameters:function(){return[{type:ct},{type:r.LocalizationService}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-views-wrapper"]}]}});Jn.prototype.ngOnInit=function(){var t=this;this.subs.add(this.selectedDate.subscribe(function(e){return t.templateContext.selectedDate=e})),this.subs.add(this.dateRange.subscribe(function(e){return t.templateContext.dateRange=e}))},Jn.prototype.ngOnChanges=function(){this.service.context={dateRange:this.dateRange,selectedDate:this.selectedDate,views:this.views,selectedView:this.selectedView},Object.assign(this.templateContext,{views:this.views,selectedView:this.selectedView})},Jn.prototype.ngOnDestroy=function(){this.subs.unsubscribe()};var k=Jn;function Jn(e){var t=this;this.service=e,this.hostClasses=!0,this.navigate=new h.EventEmitter,this.templateContext={},this.subs=new p.Subscription,this.subs.add(e.action.subscribe(function(e){return t.navigate.next(e)}))}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:ct}],target:n.ɵɵFactoryTarget.Component}),k.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"kendo-scheduler-toolbar",inputs:{selectedView:"selectedView",views:"views",dateRange:"dateRange",selectedDate:"selectedDate",template:"template",min:"min",max:"max"},outputs:{navigate:"navigate"},host:{properties:{"class.k-scheduler-toolbar":"this.hostClasses","class.k-toolbar":"this.hostClasses"}},usesOnChanges:!0,ngImport:n,template:'\n <ng-template\n *ngIf="template; else defaultTemplate"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext"\n >\n </ng-template>\n\n <ng-template #defaultTemplate>\n <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>\n <span class="k-spacer"></span>\n <div kendoSchedulerToolbarViewSelector></div>\n </ng-template>\n ',isInline:!0,components:[{type:Kn,selector:"[kendoSchedulerToolbarNavigation]",inputs:["min","max"]},{type:Xn,selector:"[kendoSchedulerToolbarViewSelector]"}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-toolbar",template:'\n <ng-template\n *ngIf="template; else defaultTemplate"\n [ngTemplateOutlet]="template.templateRef"\n [ngTemplateOutletContext]="templateContext"\n >\n </ng-template>\n\n <ng-template #defaultTemplate>\n <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>\n <span class="k-spacer"></span>\n <div kendoSchedulerToolbarViewSelector></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:ct}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-toolbar"]},{type:h.HostBinding,args:["class.k-toolbar"]}],selectedView:[{type:h.Input}],views:[{type:h.Input}],dateRange:[{type:h.Input}],selectedDate:[{type:h.Input}],template:[{type:h.Input}],navigate:[{type:h.Output}],min:[{type:h.Input}],max:[{type:h.Input}]}});er.prototype.writeValue=function(e){this.resourceValue=e},er.prototype.getResourceStyle=function(e){return{"background-color":x(e,this.resource.colorField),"margin-right":y(x(e,this.resource.valueField))?"8px":"4px"}},er.prototype.onResourceValueChange=function(e){this.resourceValue=e,this.emitChange(this.resourceValue)},er.prototype.registerOnChange=function(e){this.onChangeCallback=e},er.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},er.prototype.emitChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)};var D=er;function er(){this.valueChange=new h.EventEmitter,this.getField=x,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){}}D.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,deps:[],target:n.ɵɵFactoryTarget.Directive}),D.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:D,inputs:{resource:"resource"},outputs:{valueChange:"valueChange"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,decorators:[{type:h.Directive}],propDecorators:{resource:[{type:h.Input}],valueChange:[{type:h.Output}]}});var tr,T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return nr})},nr=(c(rr,tr=D),rr.prototype.getTagStyle=function(e){return{"background-color":e[this.resource.colorField]}},rr.prototype.focus=function(){this.resourceMultiSelect.focus()},rr);function rr(){return null!==tr&&tr.apply(this,arguments)||this}nr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nr,deps:null,target:n.ɵɵFactoryTarget.Component}),nr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:nr,selector:"kendo-multiple-resource-editor",providers:[T],viewQueries:[{propertyName:"resourceMultiSelect",first:!0,predicate:["resourceMultiSelect"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:n,template:"\n <kendo-multiselect\n #resourceMultiSelect\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n <ng-template kendoMultiSelectTagTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getTagStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-multiselect>\n ",isInline:!0,components:[{type:re.MultiSelectComponent,selector:"kendo-multiselect",inputs:["focusableId","autoClose","loading","data","value","valueField","textField","tabindex","tabIndex","size","rounded","fillMode","placeholder","disabled","itemDisabled","checkboxes","readonly","filterable","virtual","popupSettings","listHeight","valuePrimitive","clearButton","tagMapper","allowCustom","valueNormalizer"],outputs:["filterChange","valueChange","open","opened","close","closed","focus","blur","removeTag"],exportAs:["kendoMultiSelect"]}],directives:[{type:re.ItemTemplateDirective,selector:"[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:re.TagTemplateDirective,selector:"[kendoMultiSelectTagTemplate],[kendoMultiSelectTreeTagTemplate]"}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:nr,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-multiple-resource-editor",template:"\n <kendo-multiselect\n #resourceMultiSelect\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n <ng-template kendoMultiSelectTagTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getTagStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-multiselect>\n "}]}],propDecorators:{resourceMultiSelect:[{type:h.ViewChild,args:["resourceMultiSelect",{static:!0}]}]}});var ir,or,T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return ar})},ar=(c(sr,ir=D),sr.prototype.focus=function(){this.resourceDropDown.focus()},sr);function sr(){return null!==ir&&ir.apply(this,arguments)||this}function lr(e,t){return e.altKey===((t&or.AltKey)===or.AltKey)&&e.ctrlKey===((t&or.CtrlKey)===or.CtrlKey)&&e.shiftKey===((t&or.ShiftKey)===or.ShiftKey)&&e.metaKey===((t&or.MetaKey)===or.MetaKey)}function cr(e){return lr(e,or.None)}ar.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ar,deps:null,target:n.ɵɵFactoryTarget.Component}),ar.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ar,selector:"kendo-single-resource-editor",providers:[T],viewQueries:[{propertyName:"resourceDropDown",first:!0,predicate:["resourceDropDown"],descendants:!0,static:!0}],usesInheritance:!0,ngImport:n,template:"\n <kendo-dropdownlist\n #resourceDropDown\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-dropdownlist>\n ",isInline:!0,components:[{type:re.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]}],directives:[{type:re.ItemTemplateDirective,selector:"[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ar,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-single-resource-editor",template:"\n <kendo-dropdownlist\n #resourceDropDown\n [data]='resource.data'\n [textField]='resource.textField'\n [valueField]='resource.valueField'\n [valuePrimitive]='true'\n [value]='resourceValue'\n (valueChange)='onResourceValueChange($event)'\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <span *ngIf=\"resource.colorField\" class=\"k-scheduler-mark\"\n [ngStyle]=\"getResourceStyle(dataItem)\"></span>\n {{ getField(dataItem, resource.textField) }}\n </ng-template>\n </kendo-dropdownlist>\n "}]}],propDecorators:{resourceDropDown:[{type:h.ViewChild,args:["resourceDropDown",{static:!0}]}]}}),(D=or=or||{})[D.None=0]="None",D[D.AltKey=1]="AltKey",D[D.CtrlKey=2]="CtrlKey",D[D.ShiftKey=4]="ShiftKey",D[D.MetaKey=8]="MetaKey";var T={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return dr})},dr=(ur.prototype.writeValue=function(e){e instanceof Date&&(this.date=e)},ur.prototype.onValueChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)},ur.prototype.focus=function(){this.datePicker.focus()},ur.prototype.registerOnChange=function(e){this.onChangeCallback=e},ur.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},ur);function ur(){this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){}}dr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:dr,deps:[],target:n.ɵɵFactoryTarget.Component}),dr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:dr,selector:"kendo-scheduler-datetime-picker",inputs:{isAllDay:"isAllDay"},outputs:{valueChange:"valueChange"},providers:[T],viewQueries:[{propertyName:"datePicker",first:!0,predicate:["datepicker"],descendants:!0,static:!0}],ngImport:n,template:"\n <kendo-datepicker\n #datepicker\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-datepicker>\n <kendo-timepicker *ngIf='!isAllDay'\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-timepicker>\n ",isInline:!0,styles:["\n kendo-datepicker,\n kendo-timepicker {\n width: 170px;\n }\n "],components:[{type:i.DatePickerComponent,selector:"kendo-datepicker",inputs:["cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate","activeView","bottomView","topView","calendarType","animateCalendarNavigation","disabled","readonly","readOnlyInput","popupSettings","navigation","min","max","incompleteDateValidation","focusedDate","value","format","twoDigitYearMax","formatPlaceholder","placeholder","tabindex","tabIndex","disabledDates","title","rangeValidation","disabledDatesValidation","weekNumber","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-datepicker"]},{type:i.TimePickerComponent,selector:"kendo-timepicker",inputs:["disabled","readonly","readOnlyInput","format","formatPlaceholder","placeholder","min","max","incompleteDateValidation","cancelButton","nowButton","steps","popupSettings","tabindex","tabIndex","title","rangeValidation","value","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-timepicker"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:dr,decorators:[{type:h.Component,args:[{providers:[T],selector:"kendo-scheduler-datetime-picker",template:"\n <kendo-datepicker\n #datepicker\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-datepicker>\n <kendo-timepicker *ngIf='!isAllDay'\n [(value)]='date'\n (valueChange)='onValueChange($event)'\n ></kendo-timepicker>\n ",styles:["\n kendo-datepicker,\n kendo-timepicker {\n width: 170px;\n }\n "]}]}],propDecorators:{datePicker:[{type:h.ViewChild,args:["datepicker",{static:!0}]}],isAllDay:[{type:h.Input}],valueChange:[{type:h.Output}]}});var D={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return pr})},pr=(hr.prototype.onTimeZoneChange=function(e){this.tz=e,this.onChangeCallback(this.tz),this.valueChange.emit(e)},hr.prototype.onTimeZoneFilterChange=function(t){this.tzSource=this.tzNames.filter(function(e){return-1!==e.toLowerCase().indexOf(t.toLowerCase())})},hr.prototype.writeValue=function(e){"string"==typeof e&&0<=this.tzNames.indexOf(e)&&(this.tz=e)},hr.prototype.focus=function(){this.tzComboBox.focus()},hr.prototype.registerOnChange=function(e){this.onChangeCallback=e},hr.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},hr);function hr(){this.width=260,this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){},this.tzNames=b.timezoneNames(),this.tzSource=this.tzNames.slice()}pr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:pr,deps:[],target:n.ɵɵFactoryTarget.Component}),pr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:pr,selector:"kendo-timezone-editor",inputs:{width:"width"},outputs:{valueChange:"valueChange"},providers:[D],viewQueries:[{propertyName:"tzComboBox",first:!0,predicate:["tzcombobox"],descendants:!0,static:!0}],ngImport:n,template:'\n <kendo-combobox\n #tzcombobox\n [style.width.px]="width"\n [allowCustom]="false"\n [data]="tzSource"\n [filterable]="true"\n [suggest]="true"\n [value]="tz"\n (filterChange)="onTimeZoneFilterChange($event)"\n (valueChange)="onTimeZoneChange($event)">\n </kendo-combobox>\n ',isInline:!0,components:[{type:re.ComboBoxComponent,selector:"kendo-combobox",inputs:["focusableId","allowCustom","data","value","textField","valueField","valuePrimitive","valueNormalizer","placeholder","popupSettings","listHeight","iconClass","loading","suggest","clearButton","disabled","itemDisabled","readonly","tabindex","tabIndex","filterable","virtual","size","rounded","fillMode"],outputs:["valueChange","selectionChange","filterChange","open","opened","close","closed","focus","blur"],exportAs:["kendoComboBox"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:pr,decorators:[{type:h.Component,args:[{providers:[D],selector:"kendo-timezone-editor",template:'\n <kendo-combobox\n #tzcombobox\n [style.width.px]="width"\n [allowCustom]="false"\n [data]="tzSource"\n [filterable]="true"\n [suggest]="true"\n [value]="tz"\n (filterChange)="onTimeZoneFilterChange($event)"\n (valueChange)="onTimeZoneChange($event)">\n </kendo-combobox>\n '}]}],ctorParameters:function(){return[]},propDecorators:{tzComboBox:[{type:h.ViewChild,args:["tzcombobox",{static:!0}]}],width:[{type:h.Input}],valueChange:[{type:h.Output}]}});var mr=0,gr=["first","second","third","fourth","last"],yr=["never","daily","weekly","monthly","yearly"],fr=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],vr=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],kr=[{day:0,offset:0},{day:6,offset:0}],Dr=(Tr.prototype.init=function(e,t,n,r){void 0===e&&(e=""),this.start=t,this.timezone=n,this.weekStart=r,this.rrule=_.parseRule({recurrenceRule:e,weekStart:r})},Tr.prototype.getUniqueId=function(){return mr++},Object.defineProperty(Tr.prototype,"frequencies",{get:function(){var t=this;return yr.map(function(e){return{value:e,text:t.localization.get("frequencies"+Ft(e))}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"frequency",{get:function(){var e;return!y(this.rrule)||null==(e=this.rrule.freq)||e.trim&&0===e.trim().length?"never":this.rrule.freq},enumerable:!1,configurable:!0}),Tr.prototype.setFrequency=function(e){this.rrule={},this.rrule.freq=e,this.rrule.interval=1,"weekly"===e&&(this.rrule.byWeekDay=[{day:this.start.getDay(),offset:0}]),"monthly"!==e&&"yearly"!==e||(this.rrule.byMonthDay=[this.start.getDate()]),"yearly"===e&&(this.rrule.byMonth=[this.start.getMonth()+1]),this.frequencyChange.emit(),this.onChange()},Object.defineProperty(Tr.prototype,"interval",{set:function(e){this.rrule.interval=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"count",{set:function(e){this.rrule.count=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"until",{get:function(){if(y(this.rrule.until))return b.toLocalDate(this.rrule.until)},set:function(e){this.rrule.until=b.ZonedDate.fromLocalDate(e,this.timezone),this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.setWeekDays=function(e){this.rrule.byWeekDay=e,this.onChange()},Object.defineProperty(Tr.prototype,"monthDays",{set:function(e){this.rrule.byMonthDay=e,this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"positions",{set:function(e){this.rrule.bySetPosition=e,this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.setMonths=function(e){this.rrule.byMonth=e,this.onChange()},Object.defineProperty(Tr.prototype,"months",{get:function(){return this.intl.dateFormatNames({type:"months",nameType:"wide"}).map(function(e,t){return{text:e,value:t+1}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"weekDays",{get:function(){var e=this.weekStart,t=this.intl.dateFormatNames({type:"days",nameType:"abbreviated"}).map(function(e,t){return{text:e,value:t}});return t.slice(e).concat(t.slice(0,e))},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"extendedWeekDays",{get:function(){var e=this.weekStart,t=this.intl.dateFormatNames({type:"days",nameType:"wide"}).map(function(e,t){return{text:e,value:t}}),t=t.slice(e).concat(t.slice(0,e));return[{text:this.localization.get("weekdaysDay"),value:"day"},{text:this.localization.get("weekdaysWeekday"),value:"weekday"},{text:this.localization.get("weekdaysWeekendday"),value:"weekend"}].concat(t)},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"offsetPositions",{get:function(){var n=this,r=[1,2,3,4,-1];return gr.map(function(e,t){return{text:n.localization.get("offsetPositions"+Ft(e)),value:r[t]}})},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"endRule",{get:function(){return y(this.rrule.count)?"count":y(this.rrule.until)?"until":"never"},set:function(e){"count"===e?this.rrule.until=null:"until"===e?this.rrule.count=null:(this.rrule.count=null,this.rrule.until=null),this.endRuleChange.emit(e),this.onChange()},enumerable:!1,configurable:!0}),Object.defineProperty(Tr.prototype,"repeatOnRule",{get:function(){return y(this.rrule.byWeekDay)?"weekday":y(this.rrule.byMonthDay)?"monthday":null},set:function(e){"monthday"===e?(this.rrule.byWeekDay=null,this.rrule.bySetPosition=null):this.rrule.byMonthDay=null,this.repeatOnRuleChange.emit(e),this.onChange()},enumerable:!1,configurable:!0}),Tr.prototype.onChange=function(){"never"===this.frequency?this.change.emit(null):this.change.emit(_.serializeRule(this.rrule,this.timezone))},Tr);function Tr(e,t){this.intl=e,this.localization=t,this.change=new h.EventEmitter,this.endRuleChange=new h.EventEmitter,this.frequencyChange=new h.EventEmitter,this.repeatOnRuleChange=new h.EventEmitter}Dr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr,deps:[{token:o.IntlService},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Injectable}),Dr.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Dr,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService}]}});c(br,Ir=P.LocalizationService),br.prototype.get=function(e){return this.schedulerLocalization?this.schedulerLocalization.get("recurrenceEditor"+Ft(e)):Ir.prototype.get.call(this,e)};var Ir,T=br;function br(e,t,n,r){e=Ir.call(this,e,t,n)||this;return e.schedulerLocalization=r,e}T.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,deps:[{token:P.L10N_PREFIX},{token:r.MessageService,optional:!0},{token:P.RTL,optional:!0},{token:nn,optional:!0}],target:n.ɵɵFactoryTarget.Injectable}),T.ɵprov=n.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,decorators:[{type:h.Injectable}],ctorParameters:function(){return[{type:void 0,decorators:[{type:h.Inject,args:[P.L10N_PREFIX]}]},{type:r.MessageService,decorators:[{type:h.Optional}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[P.RTL]}]},{type:nn,decorators:[{type:h.Optional},{type:h.Inject,args:[nn]}]}]}});wr.prototype.ngOnInit=function(){this.frequencies=this.recurrence.frequencies},Object.defineProperty(wr.prototype,"selected",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),wr.prototype.onClick=function(e){e.value!==this.selected&&this.recurrence.setFrequency(e.value)},wr.prototype.textFor=function(e){return this.localization.get(e)},wr.prototype.onFrequencyClick=function(){var e=this.weekDayButtons.toArray().find(function(e){return e.selected});e&&e.focus()};D=wr;function wr(e,t){this.recurrence=e,this.localization=t}D.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),D.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:D,selector:"kendo-recurrence-frequency-editor",viewQueries:[{propertyName:"weekDayButtons",predicate:q.Button,descendants:!0}],ngImport:n,template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="onFrequencyClick()">{{ textFor(\'repeat\') }}</label>\n\n <div class=\'k-form-field-wrap\'>\n <kendo-buttongroup [selection]="\'single\'">\n <button *ngFor=\'let freq of frequencies\' kendoButton\n [style.width.px]="100"\n [togglable]="true"\n [selected]="freq.value === selected"\n (click)="onClick(freq)"\n >{{ freq.text }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n ',isInline:!0,components:[{type:a.ButtonGroupComponent,selector:"kendo-buttongroup",inputs:["disabled","selection","width","tabIndex","navigable"],outputs:["navigate"],exportAs:["kendoButtonGroup"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:D,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-frequency-editor",template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="onFrequencyClick()">{{ textFor(\'repeat\') }}</label>\n\n <div class=\'k-form-field-wrap\'>\n <kendo-buttongroup [selection]="\'single\'">\n <button *ngFor=\'let freq of frequencies\' kendoButton\n [style.width.px]="100"\n [togglable]="true"\n [selected]="freq.value === selected"\n (click)="onClick(freq)"\n >{{ freq.text }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{weekDayButtons:[{type:h.ViewChildren,args:[q.Button]}]}});Object.defineProperty(xr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Object.defineProperty(xr.prototype,"currentFreq",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),xr.prototype.onIntervalChange=function(e){y(e)&&(this.recurrence.interval=e)},xr.prototype.onIntervalBlur=function(){y(this.intervalValue)||(this.recurrence.interval=this.intervalValue=1)},xr.prototype.textForRepeatEvery=function(){switch(this.currentFreq){case"daily":return this.textFor("dailyRepeatEvery");case"weekly":return this.textFor("weeklyRepeatEvery");case"monthly":return this.textFor("monthlyRepeatEvery");case"yearly":return this.textFor("yearlyRepeatEvery")}},xr.prototype.textForFrequency=function(){switch(this.currentFreq){case"daily":return this.textFor("dailyInterval");case"weekly":return this.textFor("weeklyInterval");case"monthly":return this.textFor("monthlyInterval");case"yearly":return this.textFor("yearlyInterval")}},xr.prototype.textFor=function(e){return this.localization.get(e)};var Sr=xr;function xr(e,t){this.recurrence=e,this.localization=t,this.numericOptions={min:1,format:"#",autoCorrect:!0,step:1,spinners:!0},this.intervalValue=this.recurrence.rrule.interval||1}Sr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Sr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Sr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Sr,selector:"kendo-recurrence-interval-editor",inputs:{userNumericOptions:"userNumericOptions"},ngImport:n,template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="intervalNumeric.focus()">{{ textForRepeatEvery() }}</label>\n\n <div class="k-form-field-wrap">\n <kendo-numerictextbox\n #intervalNumeric\n [style.width.px]="70"\n [min]="numericOptions.min"\n [max]="numericOptions.max"\n [decimals]="0"\n [format]="numericOptions.format"\n [autoCorrect]="numericOptions.autoCorrect"\n [readonly]="numericOptions.readonly"\n [selectOnFocus]="numericOptions.selectOnFocus"\n [spinners]="numericOptions.spinners"\n [step]="numericOptions.step"\n [title]="numericOptions.title"\n [(value)]="intervalValue"\n (blur)="onIntervalBlur()"\n (valueChange)="onIntervalChange($event)">\n </kendo-numerictextbox>\n\n <span>{{ textForFrequency() }}</span>\n </div>\n </div>\n ',isInline:!0,components:[{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Sr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-interval-editor",template:'\n <div class=\'k-form-field\'>\n <label class="k-form-label" (click)="intervalNumeric.focus()">{{ textForRepeatEvery() }}</label>\n\n <div class="k-form-field-wrap">\n <kendo-numerictextbox\n #intervalNumeric\n [style.width.px]="70"\n [min]="numericOptions.min"\n [max]="numericOptions.max"\n [decimals]="0"\n [format]="numericOptions.format"\n [autoCorrect]="numericOptions.autoCorrect"\n [readonly]="numericOptions.readonly"\n [selectOnFocus]="numericOptions.selectOnFocus"\n [spinners]="numericOptions.spinners"\n [step]="numericOptions.step"\n [title]="numericOptions.title"\n [(value)]="intervalValue"\n (blur)="onIntervalBlur()"\n (valueChange)="onIntervalChange($event)">\n </kendo-numerictextbox>\n\n <span>{{ textForFrequency() }}</span>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}]}});Er.prototype.setSelectedDays=function(){for(var t=this,e=0;e<7;e++)this.selected[e]=!1;y(this.rrule.byWeekDay)&&this.rrule.byWeekDay.forEach(function(e){t.selected[e.day]=!0})},Er.prototype.onSelectedChange=function(e,t){this.selected[t]=e,this.recurrence.setWeekDays(this.serializeToWeekDayRuleArray(this.selected))},Er.prototype.isSelected=function(e){return this.selected[e.value]},Er.prototype.serializeToWeekDayRuleArray=function(e){var n=[];return e.forEach(function(e,t){e&&n.push({day:t,offset:0})}),0<n.length?n:null},Object.defineProperty(Er.prototype,"rrule",{get:function(){return this.recurrence.rrule},enumerable:!1,configurable:!0}),Er.prototype.capitalize=Ft,Er.prototype.textFor=function(e){return this.localization.get(e)},Er.prototype.onWeeklyRepeatOnClick=function(){var e=this.weekDayButtons.toArray().find(function(e){return e.selected});e&&e.focus()};var Cr=Er;function Er(e,t){this.recurrence=e,this.localization=t,this.selected=[],this.weekDays=this.recurrence.weekDays,this.setSelectedDays()}Cr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Cr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Cr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Cr,selector:"kendo-recurrence-weekday-rule-editor",viewQueries:[{propertyName:"weekDayButtons",predicate:q.Button,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onWeeklyRepeatOnClick()\">{{ textFor('weeklyRepeatOn') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-buttongroup [selection]=\"'multiple'\">\n <button *ngFor='let day of weekDays' kendoButton\n [style.width.px]=\"75\"\n [toggleable]=\"true\"\n [selected]=\"isSelected(day)\"\n (selectedChange)=\"onSelectedChange($event, day.value)\"\n >{{ capitalize(day.text) }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n ",isInline:!0,components:[{type:a.ButtonGroupComponent,selector:"kendo-buttongroup",inputs:["disabled","selection","width","tabIndex","navigable"],outputs:["navigate"],exportAs:["kendoButtonGroup"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Cr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-weekday-rule-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onWeeklyRepeatOnClick()\">{{ textFor('weeklyRepeatOn') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-buttongroup [selection]=\"'multiple'\">\n <button *ngFor='let day of weekDays' kendoButton\n [style.width.px]=\"75\"\n [toggleable]=\"true\"\n [selected]=\"isSelected(day)\"\n (selectedChange)=\"onSelectedChange($event, day.value)\"\n >{{ capitalize(day.text) }}</button>\n </kendo-buttongroup>\n </div>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{weekDayButtons:[{type:h.ViewChildren,args:[q.Button]}]}});Object.defineProperty(Or.prototype,"repeatOnRule",{set:function(e){e=e.split("-");this._repeatOnRule=e[0],this._uniqueId=e[1]},enumerable:!1,configurable:!0}),Or.prototype.ngOnInit=function(){this.renderer.setAttribute(this.elem,"id","k-repeaton-"+this._repeatOnRule+"-"+this._uniqueId),this.renderer.setAttribute(this.elem,"name","day-"+this._uniqueId)},Or.prototype.ngAfterContentChecked=function(){this.setCheckedState()},Or.prototype.ngOnDestroy=function(){this.destroyChange&&this.destroyChange()},Or.prototype.onChange=function(){this.elem.checked&&(this.recurrence.repeatOnRule=this._repeatOnRule,this.changeDetector.markForCheck())},Or.prototype.setCheckedState=function(){var e=this._repeatOnRule===this.recurrence.repeatOnRule;this.renderer.setProperty(this.elem,"checked",e)},Object.defineProperty(Or.prototype,"elem",{get:function(){return this.el.nativeElement},enumerable:!1,configurable:!0});var Rr=Or;function Or(e,t,n,r){this.el=e,this.renderer=t,this.recurrence=n,this.changeDetector=r,this.type="radio",this.radioClass=!0,this.radioSizeClass=!0,this.destroyChange=this.renderer.listen(this.elem,"change",this.onChange.bind(this))}Rr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Rr,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:Dr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),Rr.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Rr,selector:"[kendoRecurrenceRepeatOnRadioButton]",inputs:{repeatOnRule:["kendoRecurrenceRepeatOnRadioButton","repeatOnRule"]},host:{properties:{"attr.type":"this.type","class.k-radio":"this.radioClass","class.k-radio-md":"this.radioSizeClass"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Rr,decorators:[{type:h.Directive,args:[{selector:"[kendoRecurrenceRepeatOnRadioButton]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:Dr},{type:n.ChangeDetectorRef}]},propDecorators:{type:[{type:h.HostBinding,args:["attr.type"]}],radioClass:[{type:h.HostBinding,args:["class.k-radio"]}],radioSizeClass:[{type:h.HostBinding,args:["class.k-radio-md"]}],repeatOnRule:[{type:h.Input,args:["kendoRecurrenceRepeatOnRadioButton"]}]}});Object.defineProperty(Hr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Hr.prototype.setInitialValues=function(){this.extendedWeekDays=this.recurrence.extendedWeekDays,this.offsetPositions=this.recurrence.offsetPositions,this.currentOffset=this.defaultOffset,this.currentWeekDay=this.defaultWeekDay,"yearly"===this.currentFreq&&(this.months=this.recurrence.months,this.currentMonthMonthDay=this.currentMonthWeekDay=this.recurrence.rrule.byMonth[0])},Hr.prototype.subscribeEventHandlers=function(){this.subs=this.recurrence.repeatOnRuleChange.subscribe(this.onRepeatOnRuleChange.bind(this)),this.subs.add(this.recurrence.frequencyChange.subscribe(this.onFrequencyChange.bind(this)))},Hr.prototype.onRepeatOnRuleChange=function(e){"monthday"===e?(this.recurrence.rrule.byMonthDay=[this.monthDay],"yearly"===this.currentFreq&&(this.recurrence.rrule.byMonth=[this.currentMonthMonthDay])):"weekday"===e&&("string"==typeof this.weekDay?(this.recurrence.rrule.bySetPosition=[this.offset],this.recurrence.rrule.byWeekDay=this.weekDayRuleFromString(this.weekDay)):this.recurrence.rrule.byWeekDay=[{day:this.weekDay,offset:this.offset}],"yearly"===this.currentFreq)&&(this.recurrence.rrule.byMonth=[this.currentMonthWeekDay])},Hr.prototype.onFrequencyChange=function(){this.setInitialValues()},Hr.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe()},Object.defineProperty(Hr.prototype,"monthDay",{get:function(){var e=this.recurrence.rrule;return y(e.byMonthDay)&&0<e.byMonthDay.length?e.byMonthDay[0]:y(this.currentMonthDay)?this.currentMonthDay:this.recurrence.start.getDate()},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"weekDay",{get:function(){var e=this.recurrence.rrule;if(y(e.byWeekDay))switch(e.byWeekDay.length){case 7:return"day";case 5:return"weekday";case 2:return"weekend";case 1:return e.byWeekDay[0].day}else if(y(this.currentWeekDay))return this.currentWeekDay;return this.defaultWeekDay},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"offset",{get:function(){var e=this.recurrence.rrule;if(y(e.byWeekDay))switch(e.byWeekDay.length){case 7:case 5:case 2:return e.bySetPosition[0];case 1:return e.byWeekDay[0].offset}else if(y(this.currentOffset))return this.currentOffset;return this.defaultOffset},enumerable:!1,configurable:!0}),Hr.prototype.onMonthChange=function(e,t){"monthday"===t?this.currentMonthMonthDay=e:this.currentMonthWeekDay=e,this.recurrence.setMonths([e])},Hr.prototype.onMonthDayChange=function(e){this.currentMonthDay=e,this.recurrence.monthDays=[e]},Hr.prototype.onOffsetPositionChange=function(e){var t=this.recurrence.rrule;if(y(t.byWeekDay))switch(t.byWeekDay.length){case 7:case 5:case 2:this.recurrence.positions=[e];break;case 1:t.byWeekDay[0].offset=e,this.recurrence.onChange()}this.currentOffset=e},Hr.prototype.onWeekDayChange=function(e){var t;"string"==typeof e?(t=this.weekDayRuleFromString(e),this.recurrence.positions=[this.offset]):t=[{day:e,offset:this.offset}],this.currentWeekDay=e,this.recurrence.setWeekDays(t)},Hr.prototype.isDisabled=function(e){return this.recurrence.repeatOnRule!==e},Object.defineProperty(Hr.prototype,"currentFreq",{get:function(){return this.recurrence.frequency},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"defaultOffset",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(Hr.prototype,"defaultWeekDay",{get:function(){return this.recurrence.start.getDay()},enumerable:!1,configurable:!0}),Hr.prototype.weekDayRuleFromString=function(e){switch(e){case"day":return fr;case"weekday":return vr;case"weekend":return kr}return null},Hr.prototype.textForRepeatOn=function(){switch(this.currentFreq){case"monthly":return this.textFor("monthlyRepeatOn");case"yearly":return this.textFor("yearlyRepeatOn")}},Hr.prototype.textFor=function(e){return this.localization.get(e)},Hr.prototype.onRepeatOnLabelClick=function(){var e=this.repeatOnRadioButtons.toArray().find(function(e){return e.elem.checked});e&&e.elem.focus()};var Fr=Hr;function Hr(e,t){this.recurrence=e,this.localization=t,this.uniqueId=this.recurrence.getUniqueId(),this.numericOptions={min:1,max:31,format:"#",autoCorrect:!0,step:1,spinners:!0},this.setInitialValues(),this.subscribeEventHandlers()}Fr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Fr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Fr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Fr,selector:"kendo-recurrence-monthly-yearly-editor",inputs:{userNumericOptions:"userNumericOptions"},viewQueries:[{propertyName:"repeatOnRadioButtons",predicate:Rr,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onRepeatOnLabelClick()\">{{ textForRepeatOn() }}</label>\n\n <ul class='k-form-field-wrap k-reset' [style.width.px]='650'>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='monthday-{{uniqueId}}' />\n\n <label class='k-radio-label' for='k-repeaton-monthday-{{uniqueId}}'>\n <ng-template [ngIf]=\"currentFreq === 'monthly'\">\n {{ textFor('monthlyDay') }}\n </ng-template>\n </label>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthMonthDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'monthday')\"\n [disabled]=\"isDisabled('monthday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [min]=\"numericOptions.min\"\n [max]=\"numericOptions.max\"\n [decimals]=\"0\"\n [format]=\"numericOptions.format\"\n [autoCorrect]=\"numericOptions.autoCorrect\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [value]='monthDay'\n (valueChange)='onMonthDayChange($event)'\n [disabled]=\"isDisabled('monthday')\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-numerictextbox>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='weekday-{{uniqueId}}' />\n <label class='k-radio-label' for='k-repeaton-weekday-{{uniqueId}}'></label>\n\n <kendo-dropdownlist\n [data]='offsetPositions'\n textField='text'\n valueField='value'\n [value]='offset'\n [valuePrimitive]='true'\n (valueChange)='onOffsetPositionChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <kendo-dropdownlist\n [data]=\"extendedWeekDays\"\n textField='text'\n valueField='value'\n [value]='weekDay'\n [valuePrimitive]='true'\n (valueChange)='onWeekDayChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <span>{{ textFor('yearlyOf') }}</span>\n\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthWeekDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'weekday')\"\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n </li>\n </ul>\n </div>\n ",isInline:!0,components:[{type:re.DropDownListComponent,selector:"kendo-dropdownlist",inputs:["iconClass","loading","data","value","textField","valueField","popupSettings","listHeight","defaultItem","disabled","itemDisabled","readonly","filterable","virtual","ignoreCase","delay","valuePrimitive","tabindex","tabIndex","size","rounded","fillMode","id"],outputs:["valueChange","filterChange","selectionChange","open","opened","close","closed","focus","blur"],exportAs:["kendoDropDownList"]},{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]}],directives:[{type:Rr,selector:"[kendoRecurrenceRepeatOnRadioButton]",inputs:["kendoRecurrenceRepeatOnRadioButton"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Fr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-monthly-yearly-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onRepeatOnLabelClick()\">{{ textForRepeatOn() }}</label>\n\n <ul class='k-form-field-wrap k-reset' [style.width.px]='650'>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='monthday-{{uniqueId}}' />\n\n <label class='k-radio-label' for='k-repeaton-monthday-{{uniqueId}}'>\n <ng-template [ngIf]=\"currentFreq === 'monthly'\">\n {{ textFor('monthlyDay') }}\n </ng-template>\n </label>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthMonthDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'monthday')\"\n [disabled]=\"isDisabled('monthday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [min]=\"numericOptions.min\"\n [max]=\"numericOptions.max\"\n [decimals]=\"0\"\n [format]=\"numericOptions.format\"\n [autoCorrect]=\"numericOptions.autoCorrect\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [value]='monthDay'\n (valueChange)='onMonthDayChange($event)'\n [disabled]=\"isDisabled('monthday')\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-numerictextbox>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceRepeatOnRadioButton='weekday-{{uniqueId}}' />\n <label class='k-radio-label' for='k-repeaton-weekday-{{uniqueId}}'></label>\n\n <kendo-dropdownlist\n [data]='offsetPositions'\n textField='text'\n valueField='value'\n [value]='offset'\n [valuePrimitive]='true'\n (valueChange)='onOffsetPositionChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <kendo-dropdownlist\n [data]=\"extendedWeekDays\"\n textField='text'\n valueField='value'\n [value]='weekDay'\n [valuePrimitive]='true'\n (valueChange)='onWeekDayChange($event)'\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n\n <ng-template [ngIf]=\"currentFreq === 'yearly'\">\n <span>{{ textFor('yearlyOf') }}</span>\n\n <kendo-dropdownlist\n [data]='months'\n textField='text'\n valueField='value'\n [value]='currentMonthWeekDay'\n [valuePrimitive]='true'\n (valueChange)=\"onMonthChange($event, 'weekday')\"\n [disabled]=\"isDisabled('weekday')\"\n [style.width.px]=\"170\"\n [style.margin]=\"'0 .4ex 0 1ex'\">\n </kendo-dropdownlist>\n </ng-template>\n </li>\n </ul>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}],repeatOnRadioButtons:[{type:h.ViewChildren,args:[Rr]}]}});Vr.prototype.ngOnInit=function(){this.endRule=this.endRuleId.split("-")[2],this.renderer.setAttribute(this.elem,"id",this.endRuleId),this.renderer.setAttribute(this.elem,"name","end-"+this.endRuleId.split("-").pop())},Vr.prototype.ngAfterContentChecked=function(){this.setCheckedState()},Vr.prototype.ngOnDestroy=function(){this.destroyChange&&this.destroyChange()},Vr.prototype.onChange=function(){this.elem.checked&&(this.recurrence.endRule=this.endRule,this.changeDetector.markForCheck())},Vr.prototype.setCheckedState=function(){var e=this.endRule===this.recurrence.endRule;this.renderer.setProperty(this.elem,"checked",e)},Object.defineProperty(Vr.prototype,"elem",{get:function(){return this.el.nativeElement},enumerable:!1,configurable:!0});re=Vr;function Vr(e,t,n,r){this.el=e,this.renderer=t,this.recurrence=n,this.changeDetector=r,this.type="radio",this.radioClass=!0,this.radioSizeClass=!0,this.destroyChange=this.renderer.listen(this.elem,"change",this.onChange.bind(this))}re.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:re,deps:[{token:n.ElementRef},{token:n.Renderer2},{token:Dr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),re.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:re,selector:"[kendoRecurrenceEndRuleRadioButton]",inputs:{endRuleId:["kendoRecurrenceEndRuleRadioButton","endRuleId"]},host:{properties:{"attr.type":"this.type","class.k-radio":"this.radioClass","class.k-radio-md":"this.radioSizeClass"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:re,decorators:[{type:h.Directive,args:[{selector:"[kendoRecurrenceEndRuleRadioButton]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:n.Renderer2},{type:Dr},{type:n.ChangeDetectorRef}]},propDecorators:{type:[{type:h.HostBinding,args:["attr.type"]}],radioClass:[{type:h.HostBinding,args:["class.k-radio"]}],radioSizeClass:[{type:h.HostBinding,args:["class.k-radio-md"]}],endRuleId:[{type:h.Input,args:["kendoRecurrenceEndRuleRadioButton"]}]}});Object.defineProperty(Mr.prototype,"userNumericOptions",{set:function(e){this.numericOptions=Object.assign(Object.assign({},this.numericOptions),e)},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"userDatePickerOptions",{set:function(e){this.datePickerOptions=Object.assign(Object.assign({},this.datePickerOptions),e)},enumerable:!1,configurable:!0}),Mr.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()},Mr.prototype.setEndRule=function(e){"count"===e?this.recurrence.rrule.count=this.countValue:"until"===e&&(this.recurrence.until=this.untilValue)},Object.defineProperty(Mr.prototype,"rrule",{get:function(){return this.recurrence.rrule},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"isCountDisabled",{get:function(){return"count"!==this.recurrence.endRule},enumerable:!1,configurable:!0}),Object.defineProperty(Mr.prototype,"isUntilDisabled",{get:function(){return"until"!==this.recurrence.endRule},enumerable:!1,configurable:!0}),Mr.prototype.onCountChange=function(e){y(e)&&(this.recurrence.count=e)},Mr.prototype.onCountBlur=function(){y(this.countValue)||(this.recurrence.count=this.countValue=1)},Mr.prototype.onUntilChange=function(e){y(e)&&(this.recurrence.until=this.createUntil(e))},Mr.prototype.onUntilBlur=function(){y(this.untilValue)||(this.recurrence.until=this.untilValue=this.createUntil(this.recurrence.start))},Mr.prototype.textFor=function(e){return this.localization.get(e)},Mr.prototype.onEndLabelClick=function(){var e=this.endRuleRadioButtons.toArray().find(function(e){return e.elem.checked});e&&e.elem.focus()},Mr.prototype.setInitialValues=function(){this.countValue=this.rrule.count||1;var e=this.recurrence.until,t=this.recurrence.start;this.untilValue=y(e)?e:this.createUntil(t)},Mr.prototype.subscribeChanges=function(){var t=this;this.subscriptions=this.recurrence.endRuleChange.subscribe(function(e){t.setEndRule(e)}),this.subscriptions.add(this.recurrence.frequencyChange.subscribe(function(){t.setInitialValues()}))},Mr.prototype.createUntil=function(e){e=wn(e);return e.setUTCDate(e.getUTCDate()+1),b.ZonedDate.fromUTCDate(e,this.recurrence.timezone).toLocalDate()};var Wr=Mr;function Mr(e,t){this.recurrence=e,this.localization=t,this.numericOptions={min:1,format:"#",autoCorrect:!0,step:1,spinners:!0},this.datePickerOptions={activeView:"month",bottomView:"month",topView:"century",disabledDatesValidation:!0,navigation:!0,format:"d"},this.uniqueId=this.recurrence.getUniqueId(),this.setInitialValues(),this.subscribeChanges()}Wr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Wr,deps:[{token:Dr},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Wr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Wr,selector:"kendo-recurrence-end-rule-editor",inputs:{userNumericOptions:"userNumericOptions",userDatePickerOptions:"userDatePickerOptions"},viewQueries:[{propertyName:"endRuleRadioButtons",predicate:re,descendants:!0}],ngImport:n,template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onEndLabelClick()\">{{ textFor('endLabel') }}</label>\n\n <ul class='k-form-field-wrap k-reset'>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-never-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-never-{{uniqueId}}'>{{ textFor('endNever') }}</label>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-count-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-count-{{uniqueId}}'>{{ textFor('endAfter') }}</label>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [autoCorrect]='numericOptions.autoCorrect'\n [decimals]='0'\n [disabled]='isCountDisabled'\n [format]=\"numericOptions.format\"\n [min]='numericOptions.min'\n [max]=\"numericOptions.max\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [(value)]='countValue'\n (blur)=\"onCountBlur()\"\n (valueChange)='onCountChange($event)'>\n </kendo-numerictextbox>\n <span>{{ textFor('endOccurrence') }}</span>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-until-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-until-{{uniqueId}}'>{{ textFor('endOn') }}</label>\n\n <kendo-datepicker\n [style.width.px]='150'\n [disabled]='isUntilDisabled'\n [activeView]=\"datePickerOptions.activeView\"\n [bottomView]=\"datePickerOptions.bottomView\"\n [disabledDatesValidation]=\"datePickerOptions.disabledDatesValidation\"\n [focusedDate]=\"datePickerOptions.focusedDate\"\n [format]=\"datePickerOptions.format\"\n [formatPlaceholder]=\"datePickerOptions.formatPlaceHolder\"\n [max]=\"datePickerOptions.max\"\n [min]=\"datePickerOptions.min\"\n [navigation]=\"datePickerOptions.navigation\"\n [placeholder]=\"datePickerOptions.placeholder\"\n [readOnlyInput]=\"datePickerOptions.readOnlyInput\"\n [readonly]=\"datePickerOptions.readonly\"\n [title]=\"datePickerOptions.title\"\n [topView]=\"datePickerOptions.topView\"\n [weekNumber]=\"datePickerOptions.weekNumber\"\n [disabledDates]=\"datePickerOptions.disabledDates\"\n [popupSettings]=\"datePickerOptions.popupSettings\"\n [(value)]='untilValue'\n (blur)=\"onUntilBlur()\"\n (valueChange)='onUntilChange($event)'>\n </kendo-datepicker>\n </li>\n </ul>\n </div>\n ",isInline:!0,components:[{type:ie.NumericTextBoxComponent,selector:"kendo-numerictextbox",inputs:["focusableId","disabled","readonly","title","autoCorrect","format","max","min","decimals","placeholder","step","spinners","rangeValidation","tabindex","tabIndex","changeValueOnScroll","selectOnFocus","value","maxlength","size","rounded","fillMode"],outputs:["valueChange","focus","blur"],exportAs:["kendoNumericTextBox"]},{type:i.DatePickerComponent,selector:"kendo-datepicker",inputs:["cellTemplate","monthCellTemplate","yearCellTemplate","decadeCellTemplate","centuryCellTemplate","weekNumberTemplate","headerTitleTemplate","navigationItemTemplate","activeView","bottomView","topView","calendarType","animateCalendarNavigation","disabled","readonly","readOnlyInput","popupSettings","navigation","min","max","incompleteDateValidation","focusedDate","value","format","twoDigitYearMax","formatPlaceholder","placeholder","tabindex","tabIndex","disabledDates","title","rangeValidation","disabledDatesValidation","weekNumber","size","rounded","fillMode"],outputs:["valueChange","focus","blur","open","close"],exportAs:["kendo-datepicker"]}],directives:[{type:re,selector:"[kendoRecurrenceEndRuleRadioButton]",inputs:["kendoRecurrenceEndRuleRadioButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Wr,decorators:[{type:h.Component,args:[{selector:"kendo-recurrence-end-rule-editor",template:"\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"onEndLabelClick()\">{{ textFor('endLabel') }}</label>\n\n <ul class='k-form-field-wrap k-reset'>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-never-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-never-{{uniqueId}}'>{{ textFor('endNever') }}</label>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-count-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-count-{{uniqueId}}'>{{ textFor('endAfter') }}</label>\n\n <kendo-numerictextbox\n [style.width.px]='70'\n [autoCorrect]='numericOptions.autoCorrect'\n [decimals]='0'\n [disabled]='isCountDisabled'\n [format]=\"numericOptions.format\"\n [min]='numericOptions.min'\n [max]=\"numericOptions.max\"\n [readonly]=\"numericOptions.readonly\"\n [selectOnFocus]=\"numericOptions.selectOnFocus\"\n [spinners]=\"numericOptions.spinners\"\n [step]=\"numericOptions.step\"\n [title]=\"numericOptions.title\"\n [(value)]='countValue'\n (blur)=\"onCountBlur()\"\n (valueChange)='onCountChange($event)'>\n </kendo-numerictextbox>\n <span>{{ textFor('endOccurrence') }}</span>\n </li>\n <li class='k-radio-item'>\n <input kendoRecurrenceEndRuleRadioButton='k-endrule-until-{{uniqueId}}' />\n <label class='k-radio-label' for='k-endrule-until-{{uniqueId}}'>{{ textFor('endOn') }}</label>\n\n <kendo-datepicker\n [style.width.px]='150'\n [disabled]='isUntilDisabled'\n [activeView]=\"datePickerOptions.activeView\"\n [bottomView]=\"datePickerOptions.bottomView\"\n [disabledDatesValidation]=\"datePickerOptions.disabledDatesValidation\"\n [focusedDate]=\"datePickerOptions.focusedDate\"\n [format]=\"datePickerOptions.format\"\n [formatPlaceholder]=\"datePickerOptions.formatPlaceHolder\"\n [max]=\"datePickerOptions.max\"\n [min]=\"datePickerOptions.min\"\n [navigation]=\"datePickerOptions.navigation\"\n [placeholder]=\"datePickerOptions.placeholder\"\n [readOnlyInput]=\"datePickerOptions.readOnlyInput\"\n [readonly]=\"datePickerOptions.readonly\"\n [title]=\"datePickerOptions.title\"\n [topView]=\"datePickerOptions.topView\"\n [weekNumber]=\"datePickerOptions.weekNumber\"\n [disabledDates]=\"datePickerOptions.disabledDates\"\n [popupSettings]=\"datePickerOptions.popupSettings\"\n [(value)]='untilValue'\n (blur)=\"onUntilBlur()\"\n (valueChange)='onUntilChange($event)'>\n </kendo-datepicker>\n </li>\n </ul>\n </div>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:r.LocalizationService}]},propDecorators:{userNumericOptions:[{type:h.Input}],userDatePickerOptions:[{type:h.Input}],endRuleRadioButtons:[{type:h.ViewChildren,args:[re]}]}});c(zr,Pr=P.ComponentMessages);var Pr,i=zr;function zr(){return null!==Pr&&Pr.apply(this,arguments)||this}i.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,deps:null,target:n.ɵɵFactoryTarget.Directive}),i.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:i,inputs:{repeat:"repeat",dailyInterval:"dailyInterval",dailyRepeatEvery:"dailyRepeatEvery",weeklyInterval:"weeklyInterval",weeklyRepeatEvery:"weeklyRepeatEvery",weeklyRepeatOn:"weeklyRepeatOn",monthlyDay:"monthlyDay",monthlyInterval:"monthlyInterval",monthlyRepeatEvery:"monthlyRepeatEvery",monthlyRepeatOn:"monthlyRepeatOn",yearlyOf:"yearlyOf",yearlyRepeatEvery:"yearlyRepeatEvery",yearlyRepeatOn:"yearlyRepeatOn",yearlyInterval:"yearlyInterval",frequenciesDaily:"frequenciesDaily",frequenciesMonthly:"frequenciesMonthly",frequenciesNever:"frequenciesNever",frequenciesWeekly:"frequenciesWeekly",frequenciesYearly:"frequenciesYearly",offsetPositionsFirst:"offsetPositionsFirst",offsetPositionsSecond:"offsetPositionsSecond",offsetPositionsThird:"offsetPositionsThird",offsetPositionsFourth:"offsetPositionsFourth",offsetPositionsLast:"offsetPositionsLast",weekdaysDay:"weekdaysDay",weekdaysWeekday:"weekdaysWeekday",weekdaysWeekendday:"weekdaysWeekendday",endAfter:"endAfter",endOccurrence:"endOccurrence",endLabel:"endLabel",endNever:"endNever",endOn:"endOn"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,decorators:[{type:h.Directive}],propDecorators:{repeat:[{type:h.Input}],dailyInterval:[{type:h.Input}],dailyRepeatEvery:[{type:h.Input}],weeklyInterval:[{type:h.Input}],weeklyRepeatEvery:[{type:h.Input}],weeklyRepeatOn:[{type:h.Input}],monthlyDay:[{type:h.Input}],monthlyInterval:[{type:h.Input}],monthlyRepeatEvery:[{type:h.Input}],monthlyRepeatOn:[{type:h.Input}],yearlyOf:[{type:h.Input}],yearlyRepeatEvery:[{type:h.Input}],yearlyRepeatOn:[{type:h.Input}],yearlyInterval:[{type:h.Input}],frequenciesDaily:[{type:h.Input}],frequenciesMonthly:[{type:h.Input}],frequenciesNever:[{type:h.Input}],frequenciesWeekly:[{type:h.Input}],frequenciesYearly:[{type:h.Input}],offsetPositionsFirst:[{type:h.Input}],offsetPositionsSecond:[{type:h.Input}],offsetPositionsThird:[{type:h.Input}],offsetPositionsFourth:[{type:h.Input}],offsetPositionsLast:[{type:h.Input}],weekdaysDay:[{type:h.Input}],weekdaysWeekday:[{type:h.Input}],weekdaysWeekendday:[{type:h.Input}],endAfter:[{type:h.Input}],endOccurrence:[{type:h.Input}],endLabel:[{type:h.Input}],endNever:[{type:h.Input}],endOn:[{type:h.Input}]}});c(Br,Ar=i);var Ar,Nr=Br;function Br(e){var t=Ar.call(this)||this;return t.service=e,t}Nr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Nr,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),Nr.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Nr,selector:"[kendoRecurrenceEditorLocalizedMessages]",providers:[{provide:i,useExisting:h.forwardRef(function(){return Nr})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Nr,decorators:[{type:h.Directive,args:[{providers:[{provide:i,useExisting:h.forwardRef(function(){return Nr})}],selector:"[kendoRecurrenceEditorLocalizedMessages]"}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});var I={multi:!0,provide:B.NG_VALUE_ACCESSOR,useExisting:h.forwardRef(function(){return jr})},jr=(Object.defineProperty(Lr.prototype,"start",{get:function(){return y(this._start)?this._start:b.getDate(new Date)},set:function(e){this._start=e},enumerable:!1,configurable:!0}),Object.defineProperty(Lr.prototype,"currentFreq",{get:function(){return this.recurrenceService.frequency},enumerable:!1,configurable:!0}),Lr.prototype.ngOnInit=function(){this.recurrenceService.init("",this.start,this.timezone,this.weekStart)},Lr.prototype.ngOnChanges=function(e){l.isChanged("start",e)&&(this.recurrenceService.start=this.start)},Lr.prototype.ngOnDestroy=function(){this.subscriptions&&this.subscriptions.unsubscribe()},Lr.prototype.writeValue=function(e){this.recurrenceService.init("string"==typeof e?e:"",this.start,this.timezone,this.weekStart)},Lr.prototype.registerOnChange=function(e){this.onChangeCallback=e},Lr.prototype.registerOnTouched=function(e){this.onTouchedCallback=e},Lr.prototype.emitChange=function(e){this.onChangeCallback(e),this.valueChange.emit(e)},Lr);function Lr(e,t){var n=this;this.recurrenceService=e,this.intl=t,this.cssClass=!0,this.timezone="Etc/UTC",this.valueChange=new h.EventEmitter,this.onTouchedCallback=function(e){},this.onChangeCallback=function(e){},this.weekStart=this.intl.firstDay(),this.subscriptions=this.recurrenceService.change.subscribe(function(e){n.emitChange(e)})}jr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:jr,deps:[{token:Dr},{token:o.IntlService}],target:n.ɵɵFactoryTarget.Component}),jr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:jr,selector:"kendo-recurrence-editor",inputs:{start:"start",timezone:"timezone",weekStart:"weekStart",repeatEveryOptions:"repeatEveryOptions",endAfterOptions:"endAfterOptions",repeatOnOptions:"repeatOnOptions",endOnOptions:"endOnOptions"},outputs:{valueChange:"valueChange"},host:{properties:{"class.k-recurrence-editor":"this.cssClass"}},providers:[T,{provide:P.LocalizationService,useExisting:T},{provide:P.L10N_PREFIX,useValue:"kendo.recurrenceeditor"},I,Dr],exportAs:["kendoRecurrenceEditor"],usesOnChanges:!0,ngImport:n,template:"\n <ng-container kendoRecurrenceEditorLocalizedMessages\n i18n-repeat=\"kendo.recurrenceeditor.repeat|The text similar to 'Repeat' displayed in the recurrence editor.\"\n repeat='Repeat'\n\n i18n-dailyInterval=\"kendo.recurrenceeditor.dailyInterval|The text similar to 'day(s)' displayed in the recurrence editor.\"\n dailyInterval='day(s)'\n\n i18n-dailyRepeatEvery=\"kendo.recurrenceeditor.dailyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n dailyRepeatEvery='Repeat every'\n\n i18n-weeklyInterval=\"kendo.recurrenceeditor.weeklyInterval|The text similar to 'week(s)' displayed in the recurrence editor.\"\n weeklyInterval='week(s)'\n\n i18n-weeklyRepeatEvery=\"kendo.recurrenceeditor.weeklyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n weeklyRepeatEvery='Repeat every'\n\n i18n-weeklyRepeatOn=\"kendo.recurrenceeditor.weeklyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n weeklyRepeatOn='Repeat on'\n\n i18n-monthlyDay=\"kendo.recurrenceeditor.monthlyDay|The text similar to 'Day' displayed in the recurrence editor.\"\n monthlyDay='Day'\n\n i18n-monthlyInterval=\"kendo.recurrenceeditor.monthlyInterval|The text similar to 'month(s)' displayed in the recurrence editor.\"\n monthlyInterval='month(s)'\n\n i18n-monthlyRepeatEvery=\"kendo.recurrenceeditor.monthlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n monthlyRepeatEvery='Repeat every'\n\n i18n-monthlyRepeatOn=\"kendo.recurrenceeditor.monthlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n monthlyRepeatOn='Repeat on'\n\n i18n-yearlyOf=\"kendo.recurrenceeditor.yearlyOf|The text similar to 'of' displayed in the recurrence editor.\"\n yearlyOf='of'\n\n i18n-yearlyRepeatEvery=\"kendo.recurrenceeditor.yearlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n yearlyRepeatEvery='Repeat every'\n\n i18n-yearlyRepeatOn=\"kendo.recurrenceeditor.yearlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n yearlyRepeatOn='Repeat on'\n\n i18n-yearlyInterval=\"kendo.recurrenceeditor.yearlyInterval|The text similar to 'year(s)' displayed in the recurrence editor.\"\n yearlyInterval='year(s)'\n\n i18n-frequenciesDaily=\"kendo.recurrenceeditor.frequenciesDaily|The text similar to 'Daily' displayed in the recurrence editor.\"\n frequenciesDaily='Daily'\n\n i18n-frequenciesMonthly=\"kendo.recurrenceeditor.frequenciesMonthly|The text similar to 'Monthly' displayed in the recurrence editor.\"\n frequenciesMonthly='Monthly'\n\n i18n-frequenciesNever=\"kendo.recurrenceeditor.frequenciesNever|The text similar to 'Never' displayed in the recurrence editor.\"\n frequenciesNever='Never'\n\n i18n-frequenciesWeekly=\"kendo.recurrenceeditor.frequenciesWeekly|The text similar to 'Weekly' displayed in the recurrence editor.\"\n frequenciesWeekly='Weekly'\n\n i18n-frequenciesYearly=\"kendo.recurrenceeditor.frequenciesYearly|The text similar to 'Yearly' displayed in the recurrence editor.\"\n frequenciesYearly='Yearly'\n\n i18n-fffsetPositionsFirst=\"kendo.recurrenceeditor.fffsetPositionsFirst|The text similar to 'First' displayed in the recurrence editor.\"\n offsetPositionsFirst='First'\n\n i18n-offsetPositionsSecond=\"kendo.recurrenceeditor.offsetPositionsSecond|The text similar to 'Second' displayed in the recurrence editor.\"\n offsetPositionsSecond='Second'\n\n i18n-offsetPositionsThird=\"kendo.recurrenceeditor.offsetPositionsThird|The text similar to 'Third' displayed in the recurrence editor.\"\n offsetPositionsThird='Third'\n\n i18n-offsetPositionsFourth=\"kendo.recurrenceeditor.offsetPositionsFourth|The text similar to 'Fourth' displayed in the recurrence editor.\"\n offsetPositionsFourth='Fourth'\n\n i18n-offsetPositionsLast=\"kendo.recurrenceeditor.offsetPositionsLast|The text similar to 'Last' displayed in the recurrence editor.\"\n offsetPositionsLast='Last'\n\n i18n-weekdaysDay=\"kendo.recurrenceeditor.weekdaysDay|The text similar to 'Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysDay='Day'\n\n i18n-weekdaysWeekday=\"kendo.recurrenceeditor.weekdaysWeekday|The text similar to 'Weekday' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekday='Weekday'\n\n i18n-weekdaysWeekendday=\"kendo.recurrenceeditor.weekdaysWeekendday|The text similar to 'Weekend Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekendday='Weekend Day'\n\n i18n-endAfter=\"kendo.recurrenceeditor.endAfter|The text similar to 'After' displayed in the recurrence editor.\"\n endAfter='After'\n\n i18n-endOccurrence=\"kendo.recurrenceeditor.endOccurrence|The text similar to 'occurrence(s)' displayed in the recurrence editor.\"\n endOccurrence='occurrence(s)'\n\n i18n-endLabel=\"kendo.recurrenceeditor.endLabel|The text similar to 'End' displayed in the recurrence editor.\"\n endLabel='End'\n\n i18n-endNever=\"kendo.recurrenceeditor.endNever|The text similar to 'Never' displayed in the recurrence editor.\"\n endNever='Never'\n\n i18n-endOn=\"kendo.recurrenceeditor.endOn|The text similar to 'On' displayed in the recurrence editor.\"\n endOn='On'\n >\n </ng-container>\n\n <kendo-recurrence-frequency-editor>\n </kendo-recurrence-frequency-editor>\n\n <kendo-recurrence-interval-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"repeatEveryOptions\">\n </kendo-recurrence-interval-editor>\n\n <kendo-recurrence-weekday-rule-editor *ngIf=\"currentFreq === 'weekly'\">\n </kendo-recurrence-weekday-rule-editor>\n\n <kendo-recurrence-monthly-yearly-editor\n *ngIf=\"currentFreq === 'monthly' || currentFreq === 'yearly'\"\n [userNumericOptions]=\"repeatOnOptions\">\n </kendo-recurrence-monthly-yearly-editor>\n\n <kendo-recurrence-end-rule-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"endAfterOptions\"\n [userDatePickerOptions]=\"endOnOptions\">\n </kendo-recurrence-end-rule-editor>\n ",isInline:!0,components:[{type:D,selector:"kendo-recurrence-frequency-editor"},{type:Sr,selector:"kendo-recurrence-interval-editor",inputs:["userNumericOptions"]},{type:Cr,selector:"kendo-recurrence-weekday-rule-editor"},{type:Fr,selector:"kendo-recurrence-monthly-yearly-editor",inputs:["userNumericOptions"]},{type:Wr,selector:"kendo-recurrence-end-rule-editor",inputs:["userNumericOptions","userDatePickerOptions"]}],directives:[{type:Nr,selector:"[kendoRecurrenceEditorLocalizedMessages]"},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:jr,decorators:[{type:h.Component,args:[{exportAs:"kendoRecurrenceEditor",providers:[T,{provide:P.LocalizationService,useExisting:T},{provide:P.L10N_PREFIX,useValue:"kendo.recurrenceeditor"},I,Dr],selector:"kendo-recurrence-editor",template:"\n <ng-container kendoRecurrenceEditorLocalizedMessages\n i18n-repeat=\"kendo.recurrenceeditor.repeat|The text similar to 'Repeat' displayed in the recurrence editor.\"\n repeat='Repeat'\n\n i18n-dailyInterval=\"kendo.recurrenceeditor.dailyInterval|The text similar to 'day(s)' displayed in the recurrence editor.\"\n dailyInterval='day(s)'\n\n i18n-dailyRepeatEvery=\"kendo.recurrenceeditor.dailyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n dailyRepeatEvery='Repeat every'\n\n i18n-weeklyInterval=\"kendo.recurrenceeditor.weeklyInterval|The text similar to 'week(s)' displayed in the recurrence editor.\"\n weeklyInterval='week(s)'\n\n i18n-weeklyRepeatEvery=\"kendo.recurrenceeditor.weeklyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n weeklyRepeatEvery='Repeat every'\n\n i18n-weeklyRepeatOn=\"kendo.recurrenceeditor.weeklyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n weeklyRepeatOn='Repeat on'\n\n i18n-monthlyDay=\"kendo.recurrenceeditor.monthlyDay|The text similar to 'Day' displayed in the recurrence editor.\"\n monthlyDay='Day'\n\n i18n-monthlyInterval=\"kendo.recurrenceeditor.monthlyInterval|The text similar to 'month(s)' displayed in the recurrence editor.\"\n monthlyInterval='month(s)'\n\n i18n-monthlyRepeatEvery=\"kendo.recurrenceeditor.monthlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n monthlyRepeatEvery='Repeat every'\n\n i18n-monthlyRepeatOn=\"kendo.recurrenceeditor.monthlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n monthlyRepeatOn='Repeat on'\n\n i18n-yearlyOf=\"kendo.recurrenceeditor.yearlyOf|The text similar to 'of' displayed in the recurrence editor.\"\n yearlyOf='of'\n\n i18n-yearlyRepeatEvery=\"kendo.recurrenceeditor.yearlyRepeatEvery|The text similar to 'Repeat every' displayed in the recurrence editor.\"\n yearlyRepeatEvery='Repeat every'\n\n i18n-yearlyRepeatOn=\"kendo.recurrenceeditor.yearlyRepeatOn|The text similar to 'Repeat on' displayed in the recurrence editor.\"\n yearlyRepeatOn='Repeat on'\n\n i18n-yearlyInterval=\"kendo.recurrenceeditor.yearlyInterval|The text similar to 'year(s)' displayed in the recurrence editor.\"\n yearlyInterval='year(s)'\n\n i18n-frequenciesDaily=\"kendo.recurrenceeditor.frequenciesDaily|The text similar to 'Daily' displayed in the recurrence editor.\"\n frequenciesDaily='Daily'\n\n i18n-frequenciesMonthly=\"kendo.recurrenceeditor.frequenciesMonthly|The text similar to 'Monthly' displayed in the recurrence editor.\"\n frequenciesMonthly='Monthly'\n\n i18n-frequenciesNever=\"kendo.recurrenceeditor.frequenciesNever|The text similar to 'Never' displayed in the recurrence editor.\"\n frequenciesNever='Never'\n\n i18n-frequenciesWeekly=\"kendo.recurrenceeditor.frequenciesWeekly|The text similar to 'Weekly' displayed in the recurrence editor.\"\n frequenciesWeekly='Weekly'\n\n i18n-frequenciesYearly=\"kendo.recurrenceeditor.frequenciesYearly|The text similar to 'Yearly' displayed in the recurrence editor.\"\n frequenciesYearly='Yearly'\n\n i18n-fffsetPositionsFirst=\"kendo.recurrenceeditor.fffsetPositionsFirst|The text similar to 'First' displayed in the recurrence editor.\"\n offsetPositionsFirst='First'\n\n i18n-offsetPositionsSecond=\"kendo.recurrenceeditor.offsetPositionsSecond|The text similar to 'Second' displayed in the recurrence editor.\"\n offsetPositionsSecond='Second'\n\n i18n-offsetPositionsThird=\"kendo.recurrenceeditor.offsetPositionsThird|The text similar to 'Third' displayed in the recurrence editor.\"\n offsetPositionsThird='Third'\n\n i18n-offsetPositionsFourth=\"kendo.recurrenceeditor.offsetPositionsFourth|The text similar to 'Fourth' displayed in the recurrence editor.\"\n offsetPositionsFourth='Fourth'\n\n i18n-offsetPositionsLast=\"kendo.recurrenceeditor.offsetPositionsLast|The text similar to 'Last' displayed in the recurrence editor.\"\n offsetPositionsLast='Last'\n\n i18n-weekdaysDay=\"kendo.recurrenceeditor.weekdaysDay|The text similar to 'Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysDay='Day'\n\n i18n-weekdaysWeekday=\"kendo.recurrenceeditor.weekdaysWeekday|The text similar to 'Weekday' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekday='Weekday'\n\n i18n-weekdaysWeekendday=\"kendo.recurrenceeditor.weekdaysWeekendday|The text similar to 'Weekend Day' displayed in the repeat by section of the monthly recurrence pattern.\"\n weekdaysWeekendday='Weekend Day'\n\n i18n-endAfter=\"kendo.recurrenceeditor.endAfter|The text similar to 'After' displayed in the recurrence editor.\"\n endAfter='After'\n\n i18n-endOccurrence=\"kendo.recurrenceeditor.endOccurrence|The text similar to 'occurrence(s)' displayed in the recurrence editor.\"\n endOccurrence='occurrence(s)'\n\n i18n-endLabel=\"kendo.recurrenceeditor.endLabel|The text similar to 'End' displayed in the recurrence editor.\"\n endLabel='End'\n\n i18n-endNever=\"kendo.recurrenceeditor.endNever|The text similar to 'Never' displayed in the recurrence editor.\"\n endNever='Never'\n\n i18n-endOn=\"kendo.recurrenceeditor.endOn|The text similar to 'On' displayed in the recurrence editor.\"\n endOn='On'\n >\n </ng-container>\n\n <kendo-recurrence-frequency-editor>\n </kendo-recurrence-frequency-editor>\n\n <kendo-recurrence-interval-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"repeatEveryOptions\">\n </kendo-recurrence-interval-editor>\n\n <kendo-recurrence-weekday-rule-editor *ngIf=\"currentFreq === 'weekly'\">\n </kendo-recurrence-weekday-rule-editor>\n\n <kendo-recurrence-monthly-yearly-editor\n *ngIf=\"currentFreq === 'monthly' || currentFreq === 'yearly'\"\n [userNumericOptions]=\"repeatOnOptions\">\n </kendo-recurrence-monthly-yearly-editor>\n\n <kendo-recurrence-end-rule-editor\n *ngIf=\"currentFreq !== 'never'\"\n [userNumericOptions]=\"endAfterOptions\"\n [userDatePickerOptions]=\"endOnOptions\">\n </kendo-recurrence-end-rule-editor>\n "}]}],ctorParameters:function(){return[{type:Dr},{type:o.IntlService}]},propDecorators:{cssClass:[{type:h.HostBinding,args:["class.k-recurrence-editor"]}],start:[{type:h.Input}],timezone:[{type:h.Input}],weekStart:[{type:h.Input}],repeatEveryOptions:[{type:h.Input}],endAfterOptions:[{type:h.Input}],repeatOnOptions:[{type:h.Input}],endOnOptions:[{type:h.Input}],valueChange:[{type:h.Output}]}});Object.defineProperty(w.prototype,"autoFocusedElement",{get:function(){return this.editTemplate?this.editTemplate.autoFocusedElement:".k-form-field-wrap input"},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isEditingSeries",{get:function(){return 2===this.editMode&&Boolean(this.formGroup.get(this.fields.recurrenceRule))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"eventTimezone",{get:function(){return Un(this.formGroup,this.fields.startTimezone,this.timezone)},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"endTimezone",{get:function(){return Un(this.formGroup,this.fields.endTimezone,this.eventTimezone)},enumerable:!1,configurable:!0}),w.prototype.onChange=function(){if(this.changeDetector.markForCheck(),this.editService.hasNewEvent)this.editMode=2,this.formGroup=this.editService.context.formGroup,this.isNew=!0;else{if(!this.editService.isEditing())return void this.reset();var e=this.editService.context,t=e.dataItem,e=e.mode;this.formGroup=this.editService.context.formGroup,this.isNew=!1,this.editedEvent=t,this.editMode=y(e)?e:2}this.applyLocalTimezone(),this.editTemplate||(this.addTimeZoneCheckboxesToFormGroup(),this.subscribeToFormGroupChanges()),y(this.formGroup)&&(this.recurrenceStart=this.formGroup.get(this.fields.start).value),this.isActive=!0},w.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe()},w.prototype.onCancel=function(e){e.preventDefault(),this.onClose(),this.changeDetector.markForCheck()},w.prototype.onSave=function(e){e.preventDefault(),this.applyTimezone(),this.editService.save(),this.changeDetector.markForCheck()},w.prototype.onClose=function(){this.editService.endEdit(),this.changeDetector.markForCheck(),this.focusService.focus()},Object.defineProperty(w.prototype,"hasAllDay",{get:function(){return Boolean(this.formGroup.get(this.fields.isAllDay))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"hasStartTimeZone",{get:function(){return Boolean(this.formGroup.get(this.fields.startTimezone))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isStartTimeZoneVisible",{get:function(){return this.formGroup&&this.formGroup.get("startTimezoneCheckbox").value},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"hasEndTimeZone",{get:function(){return Boolean(this.formGroup.get(this.fields.endTimezone))},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"isEndTimeZoneVisible",{get:function(){return this.formGroup&&this.formGroup.get("endTimezoneCheckbox").value},enumerable:!1,configurable:!0}),w.prototype.getFormValue=function(e){if(e)return this.formGroup.get(e)},w.prototype.textFor=function(e){return this.localization.get(e)},w.prototype.onResourceClick=function(t){var e=(t.multiple?this.multipleResourceEditors:this.singleResourceEditors).filter(function(e){return e.resource.field===t.field}).pop();e&&e.focus()},w.prototype.getControl=function(e){return this.formGroup.get(e)},w.prototype.reset=function(){this.isActive=!1,this.setTimeZone=!1,this.setSeparateStartEndTimeZones=!1,this.removeTimeZoneCheckboxesFromFormGroup(),this.focusService.focus()},w.prototype.addTimeZoneCheckboxesToFormGroup=function(){var e;y(this.formGroup)&&(e=this.fields.startTimezone,this.formGroup.addControl("startTimezoneCheckbox",new B.FormControl(this.formGroup.contains(e)&&this.formGroup.get(e).value)),e=this.fields.endTimezone,this.formGroup.addControl("endTimezoneCheckbox",new B.FormControl(this.formGroup.contains(e)&&this.formGroup.get(e).value)))},w.prototype.removeTimeZoneCheckboxesFromFormGroup=function(){y(this.formGroup)&&(this.formGroup.removeControl("startTimezoneCheckbox"),this.formGroup.removeControl("endTimezoneCheckbox"))},w.prototype.subscribeToFormGroupChanges=function(){var t,n=this;y(this.formGroup)&&(t=this.fields,this.formGroup.get("startTimezoneCheckbox").valueChanges.subscribe(function(e){e||(n.formGroup.get(t.startTimezone).setValue(null,{emitEvent:!1}),n.formGroup.get(t.endTimezone).setValue(null,{emitEvent:!1}),n.formGroup.get("endTimezoneCheckbox").setValue(!1,{emitEvent:!1}))}),this.formGroup.get("endTimezoneCheckbox").valueChanges.subscribe(function(e){e||n.formGroup.get(t.endTimezone).setValue(null,{emitEvent:!1})}),this.formGroup.get(t.start).valueChanges.subscribe(function(e){n.recurrenceStart=e}))},w.prototype.applyLocalTimezone=function(){var e=this.fields,t=this.readDateAsLocal(e.start,this.eventTimezone),n=this.readDateAsLocal(e.end,this.endTimezone);this.formGroup.get(e.start).reset(t),this.formGroup.get(e.end).reset(n)},w.prototype.applyTimezone=function(){var e=this.fields,t=this.readDateWithTimezone(e.start,this.eventTimezone),n=this.readDateWithTimezone(e.end,this.endTimezone);this.formGroup.get(e.start).reset(t),this.formGroup.get(e.end).reset(n)},w.prototype.readDateWithTimezone=function(e,t){e=this.formGroup.get(e).value;return b.ZonedDate.fromUTCDate(xn(e),t).toLocalDate()},w.prototype.readDateAsLocal=function(e,t){e=this.formGroup.get(e).value;return b.toLocalDate(b.ZonedDate.fromLocalDate(e,t).toUTCDate())};T=w;function w(e,t,n,r,i,o){var a=this;this.ngZone=e,this.editService=t,this.localization=n,this.changeDetector=r,this.element=i,this.focusService=o,this.resources=[],this.timezone="Etc/UTC",this.setTimeZone=!1,this.setSeparateStartEndTimeZones=!1,this.subs=this.editService.changed.subscribe(function(){a.ngZone.run(function(){a.onChange()})}),this.subs.add(p.fromEvent(this.element.nativeElement,"keydown").pipe(N.filter(function(){return a.isActive})).subscribe(function(e){e.keyCode===l.Keys.Escape&&a.reset(),e.keyCode===l.Keys.Enter&&(lr(e,or.CtrlKey)||lr(e,or.MetaKey))&&a.onSave(e),e.stopPropagation()}))}T.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,deps:[{token:n.NgZone},{token:Ut},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:n.ElementRef},{token:f}],target:n.ɵɵFactoryTarget.Component}),T.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:T,selector:"kendo-scheduler-edit-dialog",inputs:{resources:"resources",timezone:"timezone",weekStart:"weekStart",fields:"fields",editTemplate:"editTemplate"},viewQueries:[{propertyName:"multipleResourceEditors",predicate:nr,descendants:!0},{propertyName:"singleResourceEditors",predicate:ar,descendants:!0}],ngImport:n,template:"\n <kendo-dialog (close)='onClose()' [minWidth]='750' *ngIf='isActive' title='{{ textFor(\"editorTitle\") }}' class='k-scheduler-edit-dialog' [autoFocusedElement]=\"autoFocusedElement\">\n <ng-container *ngIf='!editTemplate'>\n <div class='k-form k-form-horizontal'>\n <form novalidate [formGroup]='formGroup'>\n \x3c!-- Title --\x3e\n <div class='k-form-field'>\n <label for='k-event-title' class='k-form-label'>{{ textFor('editorEventTitle') }}</label>\n <div class='k-form-field-wrap'>\n <input #title id='k-event-title' kendoTextBox placeholder='Title' [formControl]='getControl(fields.title)' />\n </div>\n </div>\n\n \x3c!-- Start --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startDateTimePicker.focus()\">{{ textFor('editorEventStart') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #startDateTimePicker [formControl]='getControl(fields.start)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"hasStartTimeZone\">\n <label class='k-form-label' for='k-set-timezone'>{{ textFor('editorEventTimeZone') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-set-timezone' kendoCheckBox formControlName='startTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isStartTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startTzPicker.focus()\">{{ textFor('editorEventStartTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #startTzPicker [formControl]='getControl(fields.startTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- End --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endDateTimePicker.focus()\">{{ textFor('editorEventEnd') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #endDateTimePicker [formControl]='getControl(fields.end)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"isStartTimeZoneVisible && hasEndTimeZone\">\n <label class='k-form-label' for='k-use-separate'>{{ textFor('editorEventSeparateTimeZones') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-use-separate' kendoCheckBox formControlName='endTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isEndTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endTzPicker.focus()\">{{ textFor('editorEventEndTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #endTzPicker [formControl]='getControl(fields.endTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- All day --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' for='k-is-allday-chkbox'>{{ textFor('editorEventAllDay') }}</label>\n\n <div class='k-form-field-wrap' *ngIf=\"hasAllDay\">\n <input type='checkbox' id='k-is-allday-chkbox' kendoCheckBox [formControl]='getControl(fields.isAllDay)' />\n </div>\n </div>\n\n \x3c!-- Series --\x3e\n <kendo-recurrence-editor\n *ngIf=\"isEditingSeries\"\n [formControl]='getControl(fields.recurrenceRule)'\n [start]='recurrenceStart'\n [timezone]='eventTimezone'\n [weekStart]='weekStart'\n ></kendo-recurrence-editor>\n\n \x3c!-- Description --\x3e\n <div class='k-form-field' *ngIf='getFormValue(fields.description)'>\n <label class='k-form-label' for='k-event-description'>{{ textFor('editorEventDescription') }}</label>\n\n <div class='k-form-field-wrap'>\n <textarea id='k-event-description' kendoTextArea [formControl]='getControl(fields.description)'></textarea>\n </div>\n </div>\n\n \x3c!-- Resources --\x3e\n <ng-container *ngFor='let resource of resources'>\n <div class='k-form-field' *ngIf='getFormValue(resource.field)'>\n <label class='k-form-label' (click)=\"onResourceClick(resource)\">\n {{ resource.name ? resource.name : resource.field }}\n </label>\n <div class='k-form-field-wrap'>\n <kendo-multiple-resource-editor\n *ngIf='resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-multiple-resource-editor>\n <kendo-single-resource-editor\n *ngIf='!resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-single-resource-editor>\n </div>\n </div>\n </ng-container>\n </form>\n </div>\n </ng-container>\n\n <ng-container *ngIf='editTemplate'>\n <form novalidate [formGroup]='formGroup'>\n <ng-container [ngTemplateOutlet]='editTemplate.templateRef'\n [ngTemplateOutletContext]=\"{\n $implicit: formGroup,\n formGroup: formGroup,\n dataItem: editedEvent,\n editMode: editMode,\n isNew: isNew\n }\">\n </ng-container>\n </form>\n </ng-container>\n\n <kendo-dialog-actions>\n <button kendoButton (click)=\"onCancel($event)\">{{ textFor('cancel') }}</button>\n <button kendoButton themeColor=\"primary\" (click)=\"onSave($event)\" [disabled]=\"!formGroup.valid\">{{ textFor('save') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n ",isInline:!0,components:[{type:te.DialogComponent,selector:"kendo-dialog",inputs:["actions","actionsLayout","autoFocusedElement","title","width","minWidth","maxWidth","height","minHeight","maxHeight","animation"],outputs:["action","close"],exportAs:["kendoDialog"]},{type:dr,selector:"kendo-scheduler-datetime-picker",inputs:["isAllDay"],outputs:["valueChange"]},{type:pr,selector:"kendo-timezone-editor",inputs:["width"],outputs:["valueChange"]},{type:jr,selector:"kendo-recurrence-editor",inputs:["start","timezone","weekStart","repeatEveryOptions","endAfterOptions","repeatOnOptions","endOnOptions"],outputs:["valueChange"],exportAs:["kendoRecurrenceEditor"]},{type:nr,selector:"kendo-multiple-resource-editor"},{type:ar,selector:"kendo-single-resource-editor"},{type:te.DialogActionsComponent,selector:"kendo-dialog-actions",inputs:["actions","layout"],outputs:["action"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:ee.ɵNgNoValidate,selector:"form:not([ngNoForm]):not([ngNativeValidate])"},{type:ee.NgControlStatusGroup,selector:"[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]"},{type:ee.FormGroupDirective,selector:"[formGroup]",inputs:["formGroup"],outputs:["ngSubmit"],exportAs:["ngForm"]},{type:ie.TextBoxDirective,selector:"input[kendoTextBox]",inputs:["value"]},{type:ee.DefaultValueAccessor,selector:"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]"},{type:ee.NgControlStatus,selector:"[formControlName],[ngModel],[formControl]"},{type:ee.FormControlDirective,selector:"[formControl]",inputs:["disabled","formControl","ngModel"],outputs:["ngModelChange"],exportAs:["ngForm"]},{type:ee.CheckboxControlValueAccessor,selector:"input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]"},{type:ie.CheckBoxDirective,selector:"input[kendoCheckBox]",inputs:["size","rounded"]},{type:ee.FormControlName,selector:"[formControlName]",inputs:["disabled","formControlName","ngModel"],outputs:["ngModelChange"]},{type:ie.TextAreaDirective,selector:"textarea[kendoTextArea]",inputs:["autoSize","value"],outputs:["valueChange"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:T,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-edit-dialog",template:"\n <kendo-dialog (close)='onClose()' [minWidth]='750' *ngIf='isActive' title='{{ textFor(\"editorTitle\") }}' class='k-scheduler-edit-dialog' [autoFocusedElement]=\"autoFocusedElement\">\n <ng-container *ngIf='!editTemplate'>\n <div class='k-form k-form-horizontal'>\n <form novalidate [formGroup]='formGroup'>\n \x3c!-- Title --\x3e\n <div class='k-form-field'>\n <label for='k-event-title' class='k-form-label'>{{ textFor('editorEventTitle') }}</label>\n <div class='k-form-field-wrap'>\n <input #title id='k-event-title' kendoTextBox placeholder='Title' [formControl]='getControl(fields.title)' />\n </div>\n </div>\n\n \x3c!-- Start --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startDateTimePicker.focus()\">{{ textFor('editorEventStart') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #startDateTimePicker [formControl]='getControl(fields.start)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"hasStartTimeZone\">\n <label class='k-form-label' for='k-set-timezone'>{{ textFor('editorEventTimeZone') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-set-timezone' kendoCheckBox formControlName='startTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isStartTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"startTzPicker.focus()\">{{ textFor('editorEventStartTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #startTzPicker [formControl]='getControl(fields.startTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- End --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endDateTimePicker.focus()\">{{ textFor('editorEventEnd') }}</label>\n <div class='k-form-field-wrap'>\n <kendo-scheduler-datetime-picker #endDateTimePicker [formControl]='getControl(fields.end)'\n [isAllDay]='getFormValue(fields.isAllDay)?.value'>\n </kendo-scheduler-datetime-picker>\n </div>\n </div>\n\n <div class='k-form-field' *ngIf=\"isStartTimeZoneVisible && hasEndTimeZone\">\n <label class='k-form-label' for='k-use-separate'>{{ textFor('editorEventSeparateTimeZones') }}</label>\n <div class='k-form-field-wrap'>\n <input type='checkbox' id='k-use-separate' kendoCheckBox formControlName='endTimezoneCheckbox' />\n </div>\n </div>\n\n <ng-container *ngIf=\"isEndTimeZoneVisible\">\n <div class='k-form-field'>\n <label class='k-form-label' (click)=\"endTzPicker.focus()\">{{ textFor('editorEventEndTimeZone') }}</label>\n\n <div class='k-form-field-wrap'>\n <kendo-timezone-editor [width]=\"undefined\" #endTzPicker [formControl]='getControl(fields.endTimezone)'></kendo-timezone-editor>\n </div>\n </div>\n </ng-container>\n\n \x3c!-- All day --\x3e\n <div class='k-form-field'>\n <label class='k-form-label' for='k-is-allday-chkbox'>{{ textFor('editorEventAllDay') }}</label>\n\n <div class='k-form-field-wrap' *ngIf=\"hasAllDay\">\n <input type='checkbox' id='k-is-allday-chkbox' kendoCheckBox [formControl]='getControl(fields.isAllDay)' />\n </div>\n </div>\n\n \x3c!-- Series --\x3e\n <kendo-recurrence-editor\n *ngIf=\"isEditingSeries\"\n [formControl]='getControl(fields.recurrenceRule)'\n [start]='recurrenceStart'\n [timezone]='eventTimezone'\n [weekStart]='weekStart'\n ></kendo-recurrence-editor>\n\n \x3c!-- Description --\x3e\n <div class='k-form-field' *ngIf='getFormValue(fields.description)'>\n <label class='k-form-label' for='k-event-description'>{{ textFor('editorEventDescription') }}</label>\n\n <div class='k-form-field-wrap'>\n <textarea id='k-event-description' kendoTextArea [formControl]='getControl(fields.description)'></textarea>\n </div>\n </div>\n\n \x3c!-- Resources --\x3e\n <ng-container *ngFor='let resource of resources'>\n <div class='k-form-field' *ngIf='getFormValue(resource.field)'>\n <label class='k-form-label' (click)=\"onResourceClick(resource)\">\n {{ resource.name ? resource.name : resource.field }}\n </label>\n <div class='k-form-field-wrap'>\n <kendo-multiple-resource-editor\n *ngIf='resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-multiple-resource-editor>\n <kendo-single-resource-editor\n *ngIf='!resource.multiple'\n [formControl]='getControl(resource.field)'\n [resource]='resource'>\n </kendo-single-resource-editor>\n </div>\n </div>\n </ng-container>\n </form>\n </div>\n </ng-container>\n\n <ng-container *ngIf='editTemplate'>\n <form novalidate [formGroup]='formGroup'>\n <ng-container [ngTemplateOutlet]='editTemplate.templateRef'\n [ngTemplateOutletContext]=\"{\n $implicit: formGroup,\n formGroup: formGroup,\n dataItem: editedEvent,\n editMode: editMode,\n isNew: isNew\n }\">\n </ng-container>\n </form>\n </ng-container>\n\n <kendo-dialog-actions>\n <button kendoButton (click)=\"onCancel($event)\">{{ textFor('cancel') }}</button>\n <button kendoButton themeColor=\"primary\" (click)=\"onSave($event)\" [disabled]=\"!formGroup.valid\">{{ textFor('save') }}</button>\n </kendo-dialog-actions>\n </kendo-dialog>\n "}]}],ctorParameters:function(){return[{type:n.NgZone},{type:Ut},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:n.ElementRef},{type:f}]},propDecorators:{multipleResourceEditors:[{type:h.ViewChildren,args:[nr]}],singleResourceEditors:[{type:h.ViewChildren,args:[ar]}],resources:[{type:h.Input}],timezone:[{type:h.Input}],weekStart:[{type:h.Input}],fields:[{type:h.Input}],editTemplate:[{type:h.Input}]}});c(Zr,qr=P.ComponentMessages);var qr,I=Zr;function Zr(){return null!==qr&&qr.apply(this,arguments)||this}I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:null,target:n.ɵɵFactoryTarget.Directive}),I.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:I,inputs:{allEvents:"allEvents",allDay:"allDay",dateHeader:"dateHeader",timeHeader:"timeHeader",eventHeader:"eventHeader",deleteTitle:"deleteTitle",nextTitle:"nextTitle",previousTitle:"previousTitle",today:"today",calendarToday:"calendarToday",showFullDay:"showFullDay",showWorkDay:"showWorkDay",dayViewTitle:"dayViewTitle",multiDayViewTitle:"multiDayViewTitle",weekViewTitle:"weekViewTitle",workWeekViewTitle:"workWeekViewTitle",monthViewTitle:"monthViewTitle",timelineViewTitle:"timelineViewTitle",timelineWeekViewTitle:"timelineWeekViewTitle",timelineMonthViewTitle:"timelineMonthViewTitle",agendaViewTitle:"agendaViewTitle",cancel:"cancel",save:"save",editorEventTitle:"editorEventTitle",editorEventStart:"editorEventStart",editorEventStartTimeZone:"editorEventStartTimeZone",editorEventEnd:"editorEventEnd",editorEventEndTimeZone:"editorEventEndTimeZone",editorEventAllDay:"editorEventAllDay",editorEventDescription:"editorEventDescription",editorEventSeparateTimeZones:"editorEventSeparateTimeZones",editorEventTimeZone:"editorEventTimeZone",recurrenceEditorRepeat:"recurrenceEditorRepeat",recurrenceEditorDailyInterval:"recurrenceEditorDailyInterval",recurrenceEditorDailyRepeatEvery:"recurrenceEditorDailyRepeatEvery",recurrenceEditorWeeklyInterval:"recurrenceEditorWeeklyInterval",recurrenceEditorWeeklyRepeatEvery:"recurrenceEditorWeeklyRepeatEvery",recurrenceEditorWeeklyRepeatOn:"recurrenceEditorWeeklyRepeatOn",recurrenceEditorMonthlyDay:"recurrenceEditorMonthlyDay",recurrenceEditorMonthlyInterval:"recurrenceEditorMonthlyInterval",recurrenceEditorMonthlyRepeatEvery:"recurrenceEditorMonthlyRepeatEvery",recurrenceEditorMonthlyRepeatOn:"recurrenceEditorMonthlyRepeatOn",recurrenceEditorYearlyOf:"recurrenceEditorYearlyOf",recurrenceEditorYearlyRepeatEvery:"recurrenceEditorYearlyRepeatEvery",recurrenceEditorYearlyRepeatOn:"recurrenceEditorYearlyRepeatOn",recurrenceEditorYearlyInterval:"recurrenceEditorYearlyInterval",recurrenceEditorFrequenciesDaily:"recurrenceEditorFrequenciesDaily",recurrenceEditorFrequenciesMonthly:"recurrenceEditorFrequenciesMonthly",recurrenceEditorFrequenciesNever:"recurrenceEditorFrequenciesNever",recurrenceEditorFrequenciesWeekly:"recurrenceEditorFrequenciesWeekly",recurrenceEditorFrequenciesYearly:"recurrenceEditorFrequenciesYearly",recurrenceEditorOffsetPositionsFirst:"recurrenceEditorOffsetPositionsFirst",recurrenceEditorOffsetPositionsSecond:"recurrenceEditorOffsetPositionsSecond",recurrenceEditorOffsetPositionsThird:"recurrenceEditorOffsetPositionsThird",recurrenceEditorOffsetPositionsFourth:"recurrenceEditorOffsetPositionsFourth",recurrenceEditorOffsetPositionsLast:"recurrenceEditorOffsetPositionsLast",recurrenceEditorWeekdaysDay:"recurrenceEditorWeekdaysDay",recurrenceEditorWeekdaysWeekday:"recurrenceEditorWeekdaysWeekday",recurrenceEditorWeekdaysWeekendday:"recurrenceEditorWeekdaysWeekendday",recurrenceEditorEndAfter:"recurrenceEditorEndAfter",recurrenceEditorEndOccurrence:"recurrenceEditorEndOccurrence",recurrenceEditorEndLabel:"recurrenceEditorEndLabel",recurrenceEditorEndNever:"recurrenceEditorEndNever",recurrenceEditorEndOn:"recurrenceEditorEndOn",editorTitle:"editorTitle",destroy:"destroy",deleteConfirmation:"deleteConfirmation",editRecurringConfirmation:"editRecurringConfirmation",editOccurrence:"editOccurrence",editSeries:"editSeries",deleteRecurringConfirmation:"deleteRecurringConfirmation",deleteOccurrence:"deleteOccurrence",deleteSeries:"deleteSeries",deleteDialogTitle:"deleteDialogTitle",deleteRecurringDialogTitle:"deleteRecurringDialogTitle",editRecurringDialogTitle:"editRecurringDialogTitle",selectView:"selectView"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.Directive}],propDecorators:{allEvents:[{type:h.Input}],allDay:[{type:h.Input}],dateHeader:[{type:h.Input}],timeHeader:[{type:h.Input}],eventHeader:[{type:h.Input}],deleteTitle:[{type:h.Input}],nextTitle:[{type:h.Input}],previousTitle:[{type:h.Input}],today:[{type:h.Input}],calendarToday:[{type:h.Input}],showFullDay:[{type:h.Input}],showWorkDay:[{type:h.Input}],dayViewTitle:[{type:h.Input}],multiDayViewTitle:[{type:h.Input}],weekViewTitle:[{type:h.Input}],workWeekViewTitle:[{type:h.Input}],monthViewTitle:[{type:h.Input}],timelineViewTitle:[{type:h.Input}],timelineWeekViewTitle:[{type:h.Input}],timelineMonthViewTitle:[{type:h.Input}],agendaViewTitle:[{type:h.Input}],cancel:[{type:h.Input}],save:[{type:h.Input}],editorEventTitle:[{type:h.Input}],editorEventStart:[{type:h.Input}],editorEventStartTimeZone:[{type:h.Input}],editorEventEnd:[{type:h.Input}],editorEventEndTimeZone:[{type:h.Input}],editorEventAllDay:[{type:h.Input}],editorEventDescription:[{type:h.Input}],editorEventSeparateTimeZones:[{type:h.Input}],editorEventTimeZone:[{type:h.Input}],recurrenceEditorRepeat:[{type:h.Input}],recurrenceEditorDailyInterval:[{type:h.Input}],recurrenceEditorDailyRepeatEvery:[{type:h.Input}],recurrenceEditorWeeklyInterval:[{type:h.Input}],recurrenceEditorWeeklyRepeatEvery:[{type:h.Input}],recurrenceEditorWeeklyRepeatOn:[{type:h.Input}],recurrenceEditorMonthlyDay:[{type:h.Input}],recurrenceEditorMonthlyInterval:[{type:h.Input}],recurrenceEditorMonthlyRepeatEvery:[{type:h.Input}],recurrenceEditorMonthlyRepeatOn:[{type:h.Input}],recurrenceEditorYearlyOf:[{type:h.Input}],recurrenceEditorYearlyRepeatEvery:[{type:h.Input}],recurrenceEditorYearlyRepeatOn:[{type:h.Input}],recurrenceEditorYearlyInterval:[{type:h.Input}],recurrenceEditorFrequenciesDaily:[{type:h.Input}],recurrenceEditorFrequenciesMonthly:[{type:h.Input}],recurrenceEditorFrequenciesNever:[{type:h.Input}],recurrenceEditorFrequenciesWeekly:[{type:h.Input}],recurrenceEditorFrequenciesYearly:[{type:h.Input}],recurrenceEditorOffsetPositionsFirst:[{type:h.Input}],recurrenceEditorOffsetPositionsSecond:[{type:h.Input}],recurrenceEditorOffsetPositionsThird:[{type:h.Input}],recurrenceEditorOffsetPositionsFourth:[{type:h.Input}],recurrenceEditorOffsetPositionsLast:[{type:h.Input}],recurrenceEditorWeekdaysDay:[{type:h.Input}],recurrenceEditorWeekdaysWeekday:[{type:h.Input}],recurrenceEditorWeekdaysWeekendday:[{type:h.Input}],recurrenceEditorEndAfter:[{type:h.Input}],recurrenceEditorEndOccurrence:[{type:h.Input}],recurrenceEditorEndLabel:[{type:h.Input}],recurrenceEditorEndNever:[{type:h.Input}],recurrenceEditorEndOn:[{type:h.Input}],editorTitle:[{type:h.Input}],destroy:[{type:h.Input}],deleteConfirmation:[{type:h.Input}],editRecurringConfirmation:[{type:h.Input}],editOccurrence:[{type:h.Input}],editSeries:[{type:h.Input}],deleteRecurringConfirmation:[{type:h.Input}],deleteOccurrence:[{type:h.Input}],deleteSeries:[{type:h.Input}],deleteDialogTitle:[{type:h.Input}],deleteRecurringDialogTitle:[{type:h.Input}],editRecurringDialogTitle:[{type:h.Input}],selectView:[{type:h.Input}]}});c(Ur,Gr=I);var Gr,_r=Ur;function Ur(e){var t=Gr.call(this)||this;return t.service=e,t}_r.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:_r,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),_r.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:_r,selector:"[kendoSchedulerLocalizedMessages]",providers:[{provide:I,useExisting:h.forwardRef(function(){return _r})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:_r,decorators:[{type:h.Directive,args:[{providers:[{provide:I,useExisting:h.forwardRef(function(){return _r})}],selector:"[kendoSchedulerLocalizedMessages]"}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});Object.defineProperty(S.prototype,"dir",{get:function(){return this.direction},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"selectedViewIndex",{get:function(){return this.viewIndex},set:function(e){this.viewIndex=e,this.onViewIndexChange()},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"weekStart",{get:function(){return y(this._weekStart)?this._weekStart:this.intlService.firstDay()},set:function(e){this._weekStart=e},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"timezone",{get:function(){return this._timezone},set:function(e){this._timezone=e,this.events=this.events||[]},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"events",{get:function(){return this._events},set:function(e){this._events=e,this.processEvents(e)},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"selectedDate",{get:function(){return this._selectedDate},set:function(e){e&&(this._selectedDate=e,this.viewContext.notifySelectedDate(e))},enumerable:!1,configurable:!0}),Object.defineProperty(S.prototype,"modelFields",{get:function(){return this._modelFields},set:function(e){this._modelFields=Object.assign(Object.assign({},on),e)},enumerable:!1,configurable:!0}),S.prototype.ngOnInit=function(){this.selectedDate||(this.selectedDate=b.getDate(new Date))},S.prototype.ngAfterContentInit=function(){var o=this;if(h.isDevMode()&&0===this.views.length)throw new Error("No views declared for <kendo-scheduler>. Please, declare at least one view.");this.subs=this.views.changes.subscribe(function(){return o.resetViewIndex()}),this.subs.add(this.intlService.changes.subscribe(this.intlChange.bind(this))),this.subs.add(this.viewState.nextDate.subscribe(function(e){o.selectedDate=e})),this.subs.add(this.viewState.dateRange.subscribe(function(e){0!==e.start.getTime()&&(e=new ae(o,o.selectedDate,e),o.dateChange.emit(e))})),this.subs.add(this.viewState.navigate.subscribe(function(e){var t=e.viewName,e=e.date,n=o.views.toArray(),r=n.find(function(e){return e.name===t}),i=new pe(o,{type:"show-date",view:r||{name:t,title:t},date:e});o.navigate.next(i),r&&!i.isDefaultPrevented()&&(i=n.indexOf(r),o.selectedView=r,o.setViewIndex(i),o.selectedDate=e)})),this.subs.add(this.viewState.viewEvent.subscribe(function(e){var t=e.name,n=e.args,r=o[t],i=o[t+"Confirmed"];(l.hasObservers(r)||i&&l.hasObservers(i))&&o.zone.run(function(){var e=new qe[t](o,n);r.emit(e),n.prevented=e.prevented,i&&!n.prevented&&i.emit(e)})})),this.subs.add(this.viewState.layoutEnd.subscribe(function(){o.resizeSensor&&o.resizeSensor.acceptSize()})),this.subs.add(this.viewState.slotSelectionStart.subscribe(function(e){l.hasObservers(o.slotDragStart)&&o.zone.run(function(){o.slotDragStart.emit(Object.assign(e,{sender:o}))})})),this.subs.add(this.viewState.slotSelectionDrag.subscribe(function(e){l.hasObservers(o.slotDrag)&&o.zone.run(function(){o.slotDrag.emit(new ot(o,e))})})),this.subs.add(this.viewState.slotSelectionEnd.subscribe(function(e){l.hasObservers(o.slotDragEnd)&&o.zone.run(function(){o.slotDragEnd.emit(new at(o,e))})})),this.subs.add(this.focusService.ariaActiveDescendant.subscribe(function(e){o.renderer[e?"setAttribute":"removeAttribute"](o.wrapper.nativeElement,"aria-activedescendant",e)})),this.onViewIndexChange(),this.notifyOptionsChange=this.notifyOptionsChange.bind(this),this.subs.add(this.allDayEventTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.eventTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.timeSlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.timeSlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.minorTimeHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.majorTimeHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.monthDaySlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.dateHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.allDaySlotTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.groupHeaderTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.agendaDateTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.agendaTimeTemplate.changes.subscribe(this.notifyOptionsChange)),this.subs.add(this.views.changes.subscribe(function(){o.changeDetector.markForCheck()})),this.attachEditHandlers(),this.dialogsService.container=this.confirmationDialogContainerRef,this.notifyOptionsChange(),this.subs.add(this.pdfService.exportClick.subscribe(function(){var e=new ln;o.pdfExport.emit(e),e.isDefaultPrevented()||o.saveAsPDF()})),this.subs.add(this.pdfService.done.subscribe(function(){o.loadingComponent.toggle(!1)})),this.subs.add(this.localization.changes.subscribe(function(e){e=e.rtl;o.rtl=e,o.direction=o.rtl?"rtl":"ltr"})),this.subs.add(this.viewState.optionsChange.subscribe(function(){o.changeDetector.markForCheck()})),this.attachElementEventHandlers()},S.prototype.ngOnChanges=function(e){var t=this;l.isChanged("resources",e)&&!l.isChanged("events",e)&&this.viewItems&&this.viewItems.forEach(function(e){Wt(e.event,t.resources)}),l.anyChanged(["group","resources","min","max","showWorkHours","startTime","scrollTime","endTime","eventHeight","workDayStart","workDayEnd","workWeekStart","workWeekEnd","weekStart","slotDuration","slotDivisions","editable","timezone","slotClass","slotFill","columnWidth","eventClass","eventStyles","isSlotSelected","selectable"],e)&&this.notifyOptionsChange(e)},S.prototype.ngOnDestroy=function(){this.subs&&this.subs.unsubscribe(),this.detachElementEventHandlers&&this.detachElementEventHandlers()},S.prototype.onResize=function(e){this.viewContext.notifyResize()},S.prototype.onNavigationAction=function(e){var t=new pe(this,e);if(this.navigate.next(t),t.isDefaultPrevented())return!0;this.focusService.clearActiveDescendant(),"view-change"===e.type?(t=this.views.toArray().indexOf(e.view),this.selectedView=e.view,this.setViewIndex(t)):"select-date"===e.type?this.isInRange(e.date)&&(this.selectedDate=e.date):"today"===e.type?(t=new Date,this.isInRange(t)&&(this.selectedDate=t)):this.viewContext.notifyAction(e)},S.prototype.addEvent=function(e){var t,n;e instanceof B.FormGroup||(t=Object.keys(e).reduce((n=e,function(e,t){return e[t]=new B.FormControl(n[t]),e}),{}),e=new B.FormGroup(t)),this.editService.addEvent(e)},S.prototype.editEvent=function(e,t){var n=(t=void 0===t?{}:t).group,t=t.mode;this.editService.editEvent(e,n,t)},S.prototype.closeEvent=function(){this.editService.close()},S.prototype.isEditing=function(){return this.editService.isEditing()},S.prototype.openRecurringConfirmationDialog=function(e){return this.dialogsService.openRecurringConfirmationDialog(e)},S.prototype.openRemoveConfirmationDialog=function(){return this.dialogsService.openRemoveConfirmationDialog()},S.prototype.saveAsPDF=function(){var e=this;this.loadingComponent.toggle(!0),this.zone.runOutsideAngular(function(){setTimeout(function(){e.pdfService.save()},0)})},S.prototype.scrollToTime=function(e){this.viewContext.notifyAction({type:"scroll-time",time:e})},S.prototype.slotByPosition=function(e,t){return this.viewContext.executeMethod("slotByPosition",{x:e,y:t})},S.prototype.eventFromElement=function(e){return this.viewContext.executeMethod("eventFromElement",{element:e})},Object.defineProperty(S.prototype,"activeEvent",{get:function(){var e=this.focusService.activeElement;if(e)return this.eventFromElement(e.nativeElement)},enumerable:!1,configurable:!0}),S.prototype.focusNext=function(e){return this.focusService.focusNext(e)},S.prototype.focusPrev=function(e){e=Object.assign({offset:-1},e);return this.focusService.focusNext(e)},S.prototype.focus=function(){return this.focusService.focus()},S.prototype.isInRange=function(e){return(!this.min||this.min<=e)&&(!this.max||e<=this.max)},S.prototype.notifyOptionsChange=function(e){var t=this.workWeek;this.viewContext.notifyOptionsChange({group:this.group,resources:this.resources,allDayEventTemplate:this.allDayEventTemplate?this.allDayEventTemplate.first:null,eventTemplate:this.eventTemplate?this.eventTemplate.first:null,timeSlotTemplate:this.timeSlotTemplate?this.timeSlotTemplate.first:null,minorTimeHeaderTemplate:this.minorTimeHeaderTemplate?this.minorTimeHeaderTemplate.first:null,majorTimeHeaderTemplate:this.majorTimeHeaderTemplate?this.majorTimeHeaderTemplate.first:null,monthDaySlotTemplate:this.monthDaySlotTemplate?this.monthDaySlotTemplate.first:null,dateHeaderTemplate:this.dateHeaderTemplate?this.dateHeaderTemplate.first:null,allDaySlotTemplate:this.allDaySlotTemplate?this.allDaySlotTemplate.first:null,groupHeaderTemplate:this.groupHeaderTemplate?this.groupHeaderTemplate.first:null,agendaDateTemplate:this.agendaDateTemplate?this.agendaDateTemplate.first:null,agendaTimeTemplate:this.agendaTimeTemplate?this.agendaTimeTemplate.first:null,min:this.min,max:this.max,showWorkHours:this.showWorkHours,startTime:this.startTime,scrollTime:this.scrollTime,endTime:this.endTime,workDayStart:this.workDayStart,workDayEnd:this.workDayEnd,workWeekStart:t.start,workWeekEnd:t.end,weekStart:this.weekStart,slotDuration:this.slotDuration,slotDivisions:this.slotDivisions,eventHeight:this.eventHeight,editable:this.editable,selectable:this.selectable,timezone:this.timezone,currentTimeMarker:this.currentTimeMarker,highlightOngoingEvents:this.highlightOngoingEvents,slotClass:this.slotClass,slotFill:this.slotFill,columnWidth:this.columnWidth,eventClass:this.eventClass,eventStyles:this.eventStyles,isSlotSelected:this.isSlotSelected,changes:e})},Object.defineProperty(S.prototype,"workWeek",{get:function(){var e=this.intlService.weekendRange(),t=e.start,e=e.end,e=y(this.workWeekStart)?this.workWeekStart:(e+1)%7,t=0<t?t-1:b.Day.Saturday;return{start:e,end:y(this.workWeekEnd)?this.workWeekEnd:t}},enumerable:!1,configurable:!0}),S.prototype.resetViewIndex=function(){var e=this.selectedViewIndex,e=Math.max(0,Math.min(e,this.views.length-1));this.setViewIndex(e),this.onViewIndexChange()},S.prototype.onViewIndexChange=function(){var e;this.views&&(e=this.views.toArray()[this.viewIndex])&&(this.selectedView=e)},S.prototype.setViewIndex=function(e){var t=this.selectedViewIndex!==e;return t&&(this.selectedViewIndex=e,this.selectedViewIndexChange.emit(e)),t},S.prototype.processEvents=function(e){var t=this,n=this.timezone,r=this.modelFields,e=e.map(function(e){return Mt(e,r,t.resources)}).filter(function(e){return!((e=e).recurrenceRule&&!y(e.recurrenceId))}).map(function(e){return{start:b.ZonedDate.fromLocalDate(e.start,n),end:b.ZonedDate.fromLocalDate(e.end,n),event:e}});this.viewItems=e,this.viewContext.notifyItems(e)},S.prototype.attachEditHandlers=function(){this.editService&&this.subs.add(this.editService.changes.subscribe(this.emitCRUDEvent.bind(this)))},S.prototype.emitCRUDEvent=function(e){switch(Object.assign(e,{sender:this}),e.action){case"cancel":this.cancel.emit(e);break;case"save":this.save.emit(e)}},S.prototype.intlChange=function(){var e=this.selectedView;this.selectedView=null,y(this.workWeekStart)&&y(this.workWeekEnd)||this.notifyOptionsChange(),this.changeDetector.detectChanges(),this.selectedView=e,h.NgZone.isInAngularZone()?this.changeDetector.markForCheck():this.changeDetector.detectChanges()},S.prototype.attachElementEventHandlers=function(){var a,s=this;l.isDocumentAvailable()&&(a=this.wrapper.nativeElement,this.zone.runOutsideAngular(function(){var e=s.renderer.listen("window","blur",function(e){s.domEvents.windowBlur.emit(e)}),t=s.renderer.listen(a,"click",function(e){s.domEvents.click.emit(e)}),n=s.renderer.listen(a,"keydown",function(e){s.domEvents.keydown.emit(e)}),r=!1,i=s.renderer.listen(a,"focusin",function(e){s.domEvents.focus.emit(e),r||(s.domEvents.focusIn.emit(e),s.renderer.addClass(s.wrapper.nativeElement,"k-focus"),r=!0)}),o=s.renderer.listen(a,"focusout",function(e){!function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}(e.relatedTarget||document.activeElement,function(e){return e===a})&&(s.domEvents.focusOut.emit(e),s.renderer.removeClass(s.wrapper.nativeElement,"k-focus"),r=!1)});s.detachElementEventHandlers=function(){e(),t(),n(),i(),o()}}))};var Yr=S;function S(e,t,n,r,i,o,a,s,l,c,d,u,p){this.wrapper=e,this.viewContext=t,this.viewState=n,this.editService=r,this.dialogsService=i,this.intlService=o,this.changeDetector=a,this.zone=s,this.pdfService=l,this.localization=c,this.domEvents=d,this.renderer=u,this.focusService=p,this.hostClasses=!0,this.ariaRole="application",this.rtl=!1,this.editable=!1,this.selectable=!1,this.eventHeight=25,this.columnWidth=100,this.startTime="00:00",this.endTime="00:00",this.workDayStart="08:00",this.workDayEnd="17:00",this.slotDuration=60,this.slotDivisions=2,this.slotFill=.9,this.scrollTime=this.workDayStart,this.currentTimeMarker=!0,this.highlightOngoingEvents=!0,this.isSlotSelected=Yn,this.selectedViewIndexChange=new h.EventEmitter,this.navigate=new h.EventEmitter,this.dateChange=new h.EventEmitter,this.slotClick=new h.EventEmitter,this.slotDblClick=new h.EventEmitter,this.create=new h.EventEmitter,this.eventClick=new h.EventEmitter,this.eventDblClick=new h.EventEmitter,this.eventKeydown=new h.EventEmitter,this.cancel=new h.EventEmitter,this.save=new h.EventEmitter,this.remove=new h.EventEmitter,this.resizeStart=new h.EventEmitter,this.resize=new h.EventEmitter,this.resizeEnd=new h.EventEmitter,this.dragStart=new h.EventEmitter,this.drag=new h.EventEmitter,this.dragEnd=new h.EventEmitter,this.slotDragStart=new h.EventEmitter,this.slotDrag=new h.EventEmitter,this.slotDragEnd=new h.EventEmitter,this.pdfExport=new h.EventEmitter,this.dragEndConfirmed=new h.EventEmitter,this.resizeEndConfirmed=new h.EventEmitter,this.removeConfirmed=new h.EventEmitter,this.viewIndex=0,this._timezone="",this._modelFields=on,z.validatePackage(oe),this.dateRangeStream=n.dateRange,this.selectedDateStream=t.selectedDate}Yr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Yr,deps:[{token:n.ElementRef},{token:m},{token:g},{token:Ut},{token:Jt},{token:o.IntlService},{token:n.ChangeDetectorRef},{token:n.NgZone},{token:v},{token:r.LocalizationService},{token:Xt},{token:n.Renderer2},{token:f}],target:n.ɵɵFactoryTarget.Component}),Yr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Yr,selector:"kendo-scheduler",inputs:{selectedViewIndex:"selectedViewIndex",editable:"editable",selectable:"selectable",min:"min",max:"max",eventHeight:"eventHeight",columnWidth:"columnWidth",showWorkHours:"showWorkHours",startTime:"startTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",weekStart:"weekStart",slotDuration:"slotDuration",slotDivisions:"slotDivisions",slotFill:"slotFill",scrollTime:"scrollTime",group:"group",resources:"resources",loading:"loading",timezone:"timezone",events:"events",selectedDate:"selectedDate",modelFields:"modelFields",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",isSlotSelected:"isSlotSelected"},outputs:{selectedViewIndexChange:"selectedViewIndexChange",navigate:"navigate",dateChange:"dateChange",slotClick:"slotClick",slotDblClick:"slotDblClick",create:"create",eventClick:"eventClick",eventDblClick:"eventDblClick",eventKeydown:"eventKeydown",cancel:"cancel",save:"save",remove:"remove",resizeStart:"resizeStart",resize:"resize",resizeEnd:"resizeEnd",dragStart:"dragStart",drag:"drag",dragEnd:"dragEnd",slotDragStart:"slotDragStart",slotDrag:"slotDrag",slotDragEnd:"slotDragEnd",pdfExport:"pdfExport"},host:{properties:{"class.k-widget":"this.hostClasses","class.k-scheduler":"this.hostClasses","class.k-floatwrap":"this.hostClasses","attr.role":"this.ariaRole","class.k-rtl":"this.rtl","attr.dir":"this.dir"}},providers:[Ut,Jt,Xt,$t,f,nn,{provide:P.LocalizationService,useExisting:nn},{provide:P.L10N_PREFIX,useValue:"kendo.scheduler"},ct,m,g,v],queries:[{propertyName:"editDialogTemplate",first:!0,predicate:Kt,descendants:!0},{propertyName:"toolbarTemplate",first:!0,predicate:lt,descendants:!0},{propertyName:"views",predicate:d},{propertyName:"allDayEventTemplate",predicate:mt},{propertyName:"eventTemplate",predicate:ft},{propertyName:"timeSlotTemplate",predicate:It},{propertyName:"minorTimeHeaderTemplate",predicate:Dt},{propertyName:"majorTimeHeaderTemplate",predicate:kt},{propertyName:"monthDaySlotTemplate",predicate:Tt},{propertyName:"dateHeaderTemplate",predicate:yt},{propertyName:"allDaySlotTemplate",predicate:gt},{propertyName:"groupHeaderTemplate",predicate:vt},{propertyName:"agendaDateTemplate",predicate:u},{propertyName:"agendaTimeTemplate",predicate:ht}],viewQueries:[{propertyName:"resizeSensor",first:!0,predicate:l.ResizeSensorComponent,descendants:!0,static:!0},{propertyName:"confirmationDialogContainerRef",first:!0,predicate:["confirmationDialogContainer"],descendants:!0,read:h.ViewContainerRef,static:!0},{propertyName:"loadingComponent",first:!0,predicate:ve,descendants:!0,static:!0}],usesOnChanges:!0,ngImport:n,template:'\n <ng-container kendoSchedulerLocalizedMessages\n i18n-allEvents="kendo.scheduler.allEvents|The All events text displayed in the timeline views when there is no vertical grouping."\n allEvents="All events"\n\n i18n-allDay="kendo.scheduler.allDay|The all day text displayed in the day and week views."\n allDay="all day"\n\n i18n-dateHeader="kendo.scheduler.dateHeader|The date header text displayed in the agenda view."\n dateHeader="Date"\n\n i18n-timeHeader="kendo.scheduler.timeHeader|The time header text displayed in the agenda view."\n timeHeader="Time"\n\n i18n-deleteTitle="kendo.scheduler.deleteTitle|The delete icon title."\n deleteTitle="Delete"\n\n i18n-eventHeader="kendo.scheduler.eventHeader|The event header text displayed in the agenda view."\n eventHeader="Event"\n\n i18n-nextTitle="kendo.scheduler.nextTitle|The title of the navigation next button."\n nextTitle="Next"\n\n i18n-previousTitle="kendo.scheduler.previousTitle|The title of the navigation previous button."\n previousTitle="Previous"\n\n i18n-showFullDay="kendo.scheduler.showFullDay|The text of the show full day button displayed in the footer of the day, week and timeline views."\n showFullDay="Show full day"\n\n i18n-showWorkDay="kendo.scheduler.showWorkDay|The text of the show work day button displayed in the footer of the day, week and timeline views."\n showWorkDay="Show business hours"\n\n i18n-today="kendo.scheduler.today|The today button text displayed in the navigation."\n today="Today"\n\n i18n-calendarToday="kendo.scheduler.calendarToday|The text of today\'s date in the header of the Calendar."\n calendarToday="TODAY"\n\n i18n-dayViewTitle="kendo.scheduler.dayViewTitle|The day view title."\n dayViewTitle="Day"\n\n i18n-multiDayViewTitle="kendo.scheduler.multiDayViewTitle|The multi day view title."\n multiDayViewTitle="Multi-Day"\n\n i18n-weekViewTitle="kendo.scheduler.weekViewTitle|The week view title."\n weekViewTitle="Week"\n\n i18n-workWeekViewTitle="kendo.scheduler.workWeekViewTitle|The work week view title."\n workWeekViewTitle="Work Week"\n\n i18n-monthViewTitle="kendo.scheduler.monthViewTitle|The month view title."\n monthViewTitle="Month"\n\n i18n-timelineViewTitle="kendo.scheduler.timelineViewTitle|The timeline view title."\n timelineViewTitle="Timeline"\n\n i18n-timelineWeekViewTitle="kendo.scheduler.timelineWeekViewTitle|The timeline week view title."\n timelineWeekViewTitle="Timeline Week"\n\n i18n-timelineMonthViewTitle="kendo.scheduler.timelineMonthViewTitle|The timeline month view title."\n timelineMonthViewTitle="Timeline Month"\n\n i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."\n agendaViewTitle="Agenda"\n\n i18n-cancel="kendo.scheduler.cancel|The text similar to \'Cancel\' displayed in scheduler."\n cancel="Cancel"\n\n i18n-save="kendo.scheduler.save|The text similar to \'Save\' displayed in scheduler."\n save="Save"\n\n i18n-editorEventTitle="kendo.scheduler.editorEventTitle|The text similar to \'Title\' displayed in the scheduler event editor."\n editorEventTitle=\'Title\'\n\n i18n-editorEventStart="kendo.scheduler.editorEventStart|The text similar to \'Start\' displayed in the scheduler event editor."\n editorEventStart="Start"\n\n i18n-editorEventStartTimeZone="kendo.scheduler.editorEventStartTimeZone|The text similar to \'Start Time Zone\' displayed in the scheduler event editor."\n editorEventStartTimeZone="Start Time Zone"\n\n i18n-editorEventEnd="kendo.scheduler.editorEventEnd|The text similar to \'End\' displayed in the scheduler event editor."\n editorEventEnd="End"\n\n i18n-editorEventEndTimeZone="kendo.scheduler.editorEventEndTimeZone|The text similar to \'End Time Zone\' displayed in the scheduler event editor."\n editorEventEndTimeZone="End Time Zone"\n\n i18n-editorEventAllDay="kendo.scheduler.editorEventAllDay|The text similar to \'All Day event\' displayed in the scheduler event editor."\n editorEventAllDay="All Day Event"\n\n i18n-editorEventDescription="kendo.scheduler.editorEventDescription|The text similar to \'Description\' displayed in the scheduler event editor."\n editorEventDescription="Description"\n\n i18n-editorEventSeparateTimeZones="kendo.scheduler.editorEventSeparateTimeZones|The text similar to \'Use separate Start and End Time Zones\' displayed in the scheduler event editor."\n editorEventSeparateTimeZones="End in different Time Zone"\n\n i18n-editorEventTimeZone="kendo.scheduler.editorEventTimeZone|The text similar to \'Time Zone\' displayed in the scheduler event editor."\n editorEventTimeZone=\'Specify Time Zone\'\n\n i18n-editorTitle="kendo.scheduler.editorTitle|The text similar to \'Event\' displayed as title of the scheduler event editor."\n editorTitle=\'Event\'\n\n i18n-recurrenceEditorRepeat="kendo.scheduler.recurrenceEditorRepeat|The text similar to \'Repeat\' displayed in the scheduler recurrence editor."\n recurrenceEditorRepeat=\'Repeat\'\n\n i18n-recurrenceEditorDailyInterval="kendo.scheduler.recurrenceEditorDailyInterval|The text similar to \'day(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyInterval=\'day(s)\'\n\n i18n-recurrenceEditorDailyRepeatEvery="kendo.scheduler.recurrenceEditorDailyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyInterval="kendo.scheduler.recurrenceEditorWeeklyInterval|The text similar to \'week(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyInterval=\'week(s)\'\n\n i18n-recurrenceEditorWeeklyRepeatEvery="kendo.scheduler.recurrenceEditorWeeklyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyRepeatOn="kendo.scheduler.recurrenceEditorWeeklyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorMonthlyDay="kendo.scheduler.recurrenceEditorMonthlyDay|The text similar to \'Day\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyDay=\'Day\'\n\n i18n-recurrenceEditorMonthlyInterval="kendo.scheduler.recurrenceEditorMonthlyInterval|The text similar to \'month(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyInterval=\'month(s)\'\n\n i18n-recurrenceEditorMonthlyRepeatEvery="kendo.scheduler.recurrenceEditorMonthlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorMonthlyRepeatOn="kendo.scheduler.recurrenceEditorMonthlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyOf="kendo.scheduler.recurrenceEditorYearlyOf|The text similar to \'of\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyOf=\'of\'\n\n i18n-recurrenceEditorYearlyRepeatEvery="kendo.scheduler.recurrenceEditorYearlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorYearlyRepeatOn="kendo.scheduler.recurrenceEditorYearlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyInterval="kendo.scheduler.recurrenceEditorYearlyInterval|The text similar to \'year(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyInterval=\'year(s)\'\n\n i18n-recurrenceEditorFrequenciesDaily="kendo.scheduler.recurrenceEditorFrequenciesDaily|The text similar to \'Daily\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesDaily=\'Daily\'\n\n i18n-recurrenceEditorFrequenciesMonthly="kendo.scheduler.recurrenceEditorFrequenciesMonthly|The text similar to \'Monthly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesMonthly=\'Monthly\'\n\n i18n-recurrenceEditorFrequenciesNever="kendo.scheduler.recurrenceEditorFrequenciesNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesNever=\'Never\'\n\n i18n-recurrenceEditorFrequenciesWeekly="kendo.scheduler.recurrenceEditorFrequenciesWeekly|The text similar to \'Weekly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesWeekly=\'Weekly\'\n\n i18n-recurrenceEditorFrequenciesYearly="kendo.scheduler.recurrenceEditorFrequenciesYearly|The text similar to \'Yearly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesYearly=\'Yearly\'\n\n i18n-recurrenceEditorOffsetPositionsFirst="kendo.scheduler.recurrenceEditorOffsetPositionsFirst|The text similar to \'First\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFirst=\'First\'\n\n i18n-recurrenceEditorOffsetPositionsSecond="kendo.scheduler.recurrenceEditorOffsetPositionsSecond|The text similar to \'Second\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsSecond=\'Second\'\n\n i18n-recurrenceEditorOffsetPositionsThird="kendo.scheduler.recurrenceEditorOffsetPositionsThird|The text similar to \'Third\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsThird=\'Third\'\n\n i18n-recurrenceEditorOffsetPositionsFourth="kendo.scheduler.recurrenceEditorOffsetPositionsFourth|The text similar to \'Fourth\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFourth=\'Fourth\'\n\n i18n-recurrenceEditorOffsetPositionsLast="kendo.scheduler.recurrenceEditorOffsetPositionsLast|The text similar to \'Last\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsLast=\'Last\'\n\n i18n-recurrenceEditorWeekdaysDay="kendo.scheduler.recurrenceEditorWeekdaysDay|The text similar to \'Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysDay=\'Day\'\n\n i18n-recurrenceEditorWeekdaysWeekday="kendo.scheduler.recurrenceEditorWeekdaysWeekday|The text similar to \'Weekday\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekday=\'Weekday\'\n\n i18n-recurrenceEditorWeekdaysWeekendday="kendo.scheduler.recurrenceEditorWeekdaysWeekendday|The text similar to \'Weekend Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekendday=\'Weekend Day\'\n\n i18n-recurrenceEditorEndAfter="kendo.scheduler.recurrenceEditorEndAfter|The text similar to \'After\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndAfter=\'After\'\n\n i18n-recurrenceEditorEndOccurrence="kendo.scheduler.recurrenceEditorEndOccurrence|The text similar to \'occurrence(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOccurrence=\'occurrence(s)\'\n\n i18n-recurrenceEditorEndLabel="kendo.scheduler.recurrenceEditorEndLabel|The text similar to \'End\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndLabel=\'End\'\n\n i18n-recurrenceEditorEndNever="kendo.scheduler.recurrenceEditorEndNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndNever=\'Never\'\n\n i18n-recurrenceEditorEndOn="kendo.scheduler.recurrenceEditorEndOn|The text similar to \'On\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOn=\'On\'\n\n i18n-destroy="kendo.scheduler.destroy|The text of the \'Delete\' button displayed in the scheduler remove confirmation dialog."\n destroy=\'Delete\'\n\n i18n-deleteConfirmation="kendo.scheduler.deleteConfirmation|The text similar to \'Are you sure you want to delete this event?\' displayed in scheduler remove confirmation dialog."\n deleteConfirmation=\'Are you sure you want to delete this event?\'\n\n i18n-editRecurringConfirmation="kendo.scheduler.editRecurringConfirmation|The text similar to \'Do you want to edit only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n editRecurringConfirmation=\'Do you want to edit only this event occurrence or the whole series?\'\n\n i18n-editOccurrence="kendo.scheduler.editOccurrence|The text of the \'Edit current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n editOccurrence=\'Edit current occurrence\'\n\n i18n-editSeries="kendo.scheduler.editSeries|The text of the \'Edit the series\' button displayed in the scheduler recurring confirmation dialog."\n editSeries=\'Edit the series\'\n\n i18n-deleteRecurringConfirmation="kendo.scheduler.deleteRecurringConfirmation|The text similar to \'Do you want to delete only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n deleteRecurringConfirmation=\'Do you want to delete only this event occurrence or the whole series?\'\n\n i18n-deleteOccurrence="kendo.scheduler.deleteOccurrence|The text of the \'Delete current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n deleteOccurrence=\'Delete current occurrence\'\n\n i18n-deleteSeries="kendo.scheduler.deleteSeries|The text similar of the \'Delete the series\' button displayed in the scheduler recurring confirmation dialog."\n deleteSeries=\'Delete the series\'\n\n i18n-deleteDialogTitle="kendo.scheduler.deleteDialogTitle|The title of the remove confirmation dialog, similar to \'Delete Event\'."\n deleteDialogTitle=\'Delete Event\'\n\n i18n-deleteRecurringDialogTitle="kendo.scheduler.deleteRecurringDialogTitle|The title of the recurring remove confirmation dialog, similar to \'Delete Recurring Item\'"\n deleteRecurringDialogTitle=\'Delete Recurring Item\'\n\n i18n-editRecurringDialogTitle="kendo.scheduler.editRecurringDialogTitle|The title of the recurring edit confirmation dialog, similar to \'Edit Recurring Item\'"\n editRecurringDialogTitle=\'Edit Recurring Item\'\n\n i18n-selectView="kendo.scheduler.selectView|The value of the aria-label attribute of the <select> element used for switching the Scheduler views."\n selectView=\'Select View\'\n >\n </ng-container>\n\n <kendo-scheduler-toolbar\n [dateRange]="dateRangeStream"\n [selectedDate]="selectedDateStream"\n [views]="$any(views)"\n [selectedView]="selectedView"\n [template]="toolbarTemplate"\n (navigate)="onNavigationAction($event)"\n [min]="min"\n [max]="max"\n ></kendo-scheduler-toolbar>\n\n <ng-container *ngTemplateOutlet="selectedView?.template">\n </ng-container>\n\n <ng-container #confirmationDialogContainer>\n </ng-container>\n\n <kendo-scheduler-edit-dialog\n [resources]="resources"\n [editTemplate]="editDialogTemplate"\n [timezone]="timezone"\n [weekStart]="weekStart"\n [fields]="modelFields"\n ></kendo-scheduler-edit-dialog>\n\n <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>\n\n <div [loading]="loading" kendoSchedulerLoading>\n </div>\n ',isInline:!0,styles:[".k-scheduler.k-focus { box-shadow: 0 0.5px 0.5px 0.5px rgba(0, 0, 0, .12); }"],components:[{type:k,selector:"kendo-scheduler-toolbar",inputs:["selectedView","views","dateRange","selectedDate","template","min","max"],outputs:["navigate"]},{type:T,selector:"kendo-scheduler-edit-dialog",inputs:["resources","timezone","weekStart","fields","editTemplate"]},{type:J.ResizeSensorComponent,selector:"kendo-resize-sensor",inputs:["rateLimit"],outputs:["resize"]},{type:ve,selector:"[kendoSchedulerLoading]",inputs:["loading"]}],directives:[{type:_r,selector:"[kendoSchedulerLocalizedMessages]"},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],changeDetection:n.ChangeDetectionStrategy.OnPush,encapsulation:n.ViewEncapsulation.None}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Yr,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler",providers:[Ut,Jt,Xt,$t,f,nn,{provide:P.LocalizationService,useExisting:nn},{provide:P.L10N_PREFIX,useValue:"kendo.scheduler"},ct,m,g,v],styles:[".k-scheduler.k-focus { box-shadow: 0 0.5px 0.5px 0.5px rgba(0, 0, 0, .12); }"],encapsulation:h.ViewEncapsulation.None,template:'\n <ng-container kendoSchedulerLocalizedMessages\n i18n-allEvents="kendo.scheduler.allEvents|The All events text displayed in the timeline views when there is no vertical grouping."\n allEvents="All events"\n\n i18n-allDay="kendo.scheduler.allDay|The all day text displayed in the day and week views."\n allDay="all day"\n\n i18n-dateHeader="kendo.scheduler.dateHeader|The date header text displayed in the agenda view."\n dateHeader="Date"\n\n i18n-timeHeader="kendo.scheduler.timeHeader|The time header text displayed in the agenda view."\n timeHeader="Time"\n\n i18n-deleteTitle="kendo.scheduler.deleteTitle|The delete icon title."\n deleteTitle="Delete"\n\n i18n-eventHeader="kendo.scheduler.eventHeader|The event header text displayed in the agenda view."\n eventHeader="Event"\n\n i18n-nextTitle="kendo.scheduler.nextTitle|The title of the navigation next button."\n nextTitle="Next"\n\n i18n-previousTitle="kendo.scheduler.previousTitle|The title of the navigation previous button."\n previousTitle="Previous"\n\n i18n-showFullDay="kendo.scheduler.showFullDay|The text of the show full day button displayed in the footer of the day, week and timeline views."\n showFullDay="Show full day"\n\n i18n-showWorkDay="kendo.scheduler.showWorkDay|The text of the show work day button displayed in the footer of the day, week and timeline views."\n showWorkDay="Show business hours"\n\n i18n-today="kendo.scheduler.today|The today button text displayed in the navigation."\n today="Today"\n\n i18n-calendarToday="kendo.scheduler.calendarToday|The text of today\'s date in the header of the Calendar."\n calendarToday="TODAY"\n\n i18n-dayViewTitle="kendo.scheduler.dayViewTitle|The day view title."\n dayViewTitle="Day"\n\n i18n-multiDayViewTitle="kendo.scheduler.multiDayViewTitle|The multi day view title."\n multiDayViewTitle="Multi-Day"\n\n i18n-weekViewTitle="kendo.scheduler.weekViewTitle|The week view title."\n weekViewTitle="Week"\n\n i18n-workWeekViewTitle="kendo.scheduler.workWeekViewTitle|The work week view title."\n workWeekViewTitle="Work Week"\n\n i18n-monthViewTitle="kendo.scheduler.monthViewTitle|The month view title."\n monthViewTitle="Month"\n\n i18n-timelineViewTitle="kendo.scheduler.timelineViewTitle|The timeline view title."\n timelineViewTitle="Timeline"\n\n i18n-timelineWeekViewTitle="kendo.scheduler.timelineWeekViewTitle|The timeline week view title."\n timelineWeekViewTitle="Timeline Week"\n\n i18n-timelineMonthViewTitle="kendo.scheduler.timelineMonthViewTitle|The timeline month view title."\n timelineMonthViewTitle="Timeline Month"\n\n i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."\n agendaViewTitle="Agenda"\n\n i18n-cancel="kendo.scheduler.cancel|The text similar to \'Cancel\' displayed in scheduler."\n cancel="Cancel"\n\n i18n-save="kendo.scheduler.save|The text similar to \'Save\' displayed in scheduler."\n save="Save"\n\n i18n-editorEventTitle="kendo.scheduler.editorEventTitle|The text similar to \'Title\' displayed in the scheduler event editor."\n editorEventTitle=\'Title\'\n\n i18n-editorEventStart="kendo.scheduler.editorEventStart|The text similar to \'Start\' displayed in the scheduler event editor."\n editorEventStart="Start"\n\n i18n-editorEventStartTimeZone="kendo.scheduler.editorEventStartTimeZone|The text similar to \'Start Time Zone\' displayed in the scheduler event editor."\n editorEventStartTimeZone="Start Time Zone"\n\n i18n-editorEventEnd="kendo.scheduler.editorEventEnd|The text similar to \'End\' displayed in the scheduler event editor."\n editorEventEnd="End"\n\n i18n-editorEventEndTimeZone="kendo.scheduler.editorEventEndTimeZone|The text similar to \'End Time Zone\' displayed in the scheduler event editor."\n editorEventEndTimeZone="End Time Zone"\n\n i18n-editorEventAllDay="kendo.scheduler.editorEventAllDay|The text similar to \'All Day event\' displayed in the scheduler event editor."\n editorEventAllDay="All Day Event"\n\n i18n-editorEventDescription="kendo.scheduler.editorEventDescription|The text similar to \'Description\' displayed in the scheduler event editor."\n editorEventDescription="Description"\n\n i18n-editorEventSeparateTimeZones="kendo.scheduler.editorEventSeparateTimeZones|The text similar to \'Use separate Start and End Time Zones\' displayed in the scheduler event editor."\n editorEventSeparateTimeZones="End in different Time Zone"\n\n i18n-editorEventTimeZone="kendo.scheduler.editorEventTimeZone|The text similar to \'Time Zone\' displayed in the scheduler event editor."\n editorEventTimeZone=\'Specify Time Zone\'\n\n i18n-editorTitle="kendo.scheduler.editorTitle|The text similar to \'Event\' displayed as title of the scheduler event editor."\n editorTitle=\'Event\'\n\n i18n-recurrenceEditorRepeat="kendo.scheduler.recurrenceEditorRepeat|The text similar to \'Repeat\' displayed in the scheduler recurrence editor."\n recurrenceEditorRepeat=\'Repeat\'\n\n i18n-recurrenceEditorDailyInterval="kendo.scheduler.recurrenceEditorDailyInterval|The text similar to \'day(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyInterval=\'day(s)\'\n\n i18n-recurrenceEditorDailyRepeatEvery="kendo.scheduler.recurrenceEditorDailyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorDailyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyInterval="kendo.scheduler.recurrenceEditorWeeklyInterval|The text similar to \'week(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyInterval=\'week(s)\'\n\n i18n-recurrenceEditorWeeklyRepeatEvery="kendo.scheduler.recurrenceEditorWeeklyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorWeeklyRepeatOn="kendo.scheduler.recurrenceEditorWeeklyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorWeeklyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorMonthlyDay="kendo.scheduler.recurrenceEditorMonthlyDay|The text similar to \'Day\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyDay=\'Day\'\n\n i18n-recurrenceEditorMonthlyInterval="kendo.scheduler.recurrenceEditorMonthlyInterval|The text similar to \'month(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyInterval=\'month(s)\'\n\n i18n-recurrenceEditorMonthlyRepeatEvery="kendo.scheduler.recurrenceEditorMonthlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorMonthlyRepeatOn="kendo.scheduler.recurrenceEditorMonthlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorMonthlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyOf="kendo.scheduler.recurrenceEditorYearlyOf|The text similar to \'of\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyOf=\'of\'\n\n i18n-recurrenceEditorYearlyRepeatEvery="kendo.scheduler.recurrenceEditorYearlyRepeatEvery|The text similar to \'Repeat every\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatEvery=\'Repeat every\'\n\n i18n-recurrenceEditorYearlyRepeatOn="kendo.scheduler.recurrenceEditorYearlyRepeatOn|The text similar to \'Repeat on\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyRepeatOn=\'Repeat on\'\n\n i18n-recurrenceEditorYearlyInterval="kendo.scheduler.recurrenceEditorYearlyInterval|The text similar to \'year(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorYearlyInterval=\'year(s)\'\n\n i18n-recurrenceEditorFrequenciesDaily="kendo.scheduler.recurrenceEditorFrequenciesDaily|The text similar to \'Daily\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesDaily=\'Daily\'\n\n i18n-recurrenceEditorFrequenciesMonthly="kendo.scheduler.recurrenceEditorFrequenciesMonthly|The text similar to \'Monthly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesMonthly=\'Monthly\'\n\n i18n-recurrenceEditorFrequenciesNever="kendo.scheduler.recurrenceEditorFrequenciesNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesNever=\'Never\'\n\n i18n-recurrenceEditorFrequenciesWeekly="kendo.scheduler.recurrenceEditorFrequenciesWeekly|The text similar to \'Weekly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesWeekly=\'Weekly\'\n\n i18n-recurrenceEditorFrequenciesYearly="kendo.scheduler.recurrenceEditorFrequenciesYearly|The text similar to \'Yearly\' displayed in the scheduler recurrence editor."\n recurrenceEditorFrequenciesYearly=\'Yearly\'\n\n i18n-recurrenceEditorOffsetPositionsFirst="kendo.scheduler.recurrenceEditorOffsetPositionsFirst|The text similar to \'First\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFirst=\'First\'\n\n i18n-recurrenceEditorOffsetPositionsSecond="kendo.scheduler.recurrenceEditorOffsetPositionsSecond|The text similar to \'Second\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsSecond=\'Second\'\n\n i18n-recurrenceEditorOffsetPositionsThird="kendo.scheduler.recurrenceEditorOffsetPositionsThird|The text similar to \'Third\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsThird=\'Third\'\n\n i18n-recurrenceEditorOffsetPositionsFourth="kendo.scheduler.recurrenceEditorOffsetPositionsFourth|The text similar to \'Fourth\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsFourth=\'Fourth\'\n\n i18n-recurrenceEditorOffsetPositionsLast="kendo.scheduler.recurrenceEditorOffsetPositionsLast|The text similar to \'Last\' displayed in the scheduler recurrence editor."\n recurrenceEditorOffsetPositionsLast=\'Last\'\n\n i18n-recurrenceEditorWeekdaysDay="kendo.scheduler.recurrenceEditorWeekdaysDay|The text similar to \'Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysDay=\'Day\'\n\n i18n-recurrenceEditorWeekdaysWeekday="kendo.scheduler.recurrenceEditorWeekdaysWeekday|The text similar to \'Weekday\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekday=\'Weekday\'\n\n i18n-recurrenceEditorWeekdaysWeekendday="kendo.scheduler.recurrenceEditorWeekdaysWeekendday|The text similar to \'Weekend Day\' displayed in the repeat by section of the monthly recurrence pattern."\n recurrenceEditorWeekdaysWeekendday=\'Weekend Day\'\n\n i18n-recurrenceEditorEndAfter="kendo.scheduler.recurrenceEditorEndAfter|The text similar to \'After\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndAfter=\'After\'\n\n i18n-recurrenceEditorEndOccurrence="kendo.scheduler.recurrenceEditorEndOccurrence|The text similar to \'occurrence(s)\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOccurrence=\'occurrence(s)\'\n\n i18n-recurrenceEditorEndLabel="kendo.scheduler.recurrenceEditorEndLabel|The text similar to \'End\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndLabel=\'End\'\n\n i18n-recurrenceEditorEndNever="kendo.scheduler.recurrenceEditorEndNever|The text similar to \'Never\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndNever=\'Never\'\n\n i18n-recurrenceEditorEndOn="kendo.scheduler.recurrenceEditorEndOn|The text similar to \'On\' displayed in the scheduler recurrence editor."\n recurrenceEditorEndOn=\'On\'\n\n i18n-destroy="kendo.scheduler.destroy|The text of the \'Delete\' button displayed in the scheduler remove confirmation dialog."\n destroy=\'Delete\'\n\n i18n-deleteConfirmation="kendo.scheduler.deleteConfirmation|The text similar to \'Are you sure you want to delete this event?\' displayed in scheduler remove confirmation dialog."\n deleteConfirmation=\'Are you sure you want to delete this event?\'\n\n i18n-editRecurringConfirmation="kendo.scheduler.editRecurringConfirmation|The text similar to \'Do you want to edit only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n editRecurringConfirmation=\'Do you want to edit only this event occurrence or the whole series?\'\n\n i18n-editOccurrence="kendo.scheduler.editOccurrence|The text of the \'Edit current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n editOccurrence=\'Edit current occurrence\'\n\n i18n-editSeries="kendo.scheduler.editSeries|The text of the \'Edit the series\' button displayed in the scheduler recurring confirmation dialog."\n editSeries=\'Edit the series\'\n\n i18n-deleteRecurringConfirmation="kendo.scheduler.deleteRecurringConfirmation|The text similar to \'Do you want to delete only this event occurrence or the whole series?\' displayed in the scheduler recurring confirmation dialog."\n deleteRecurringConfirmation=\'Do you want to delete only this event occurrence or the whole series?\'\n\n i18n-deleteOccurrence="kendo.scheduler.deleteOccurrence|The text of the \'Delete current occurrence\' button displayed in the scheduler recurring confirmation dialog."\n deleteOccurrence=\'Delete current occurrence\'\n\n i18n-deleteSeries="kendo.scheduler.deleteSeries|The text similar of the \'Delete the series\' button displayed in the scheduler recurring confirmation dialog."\n deleteSeries=\'Delete the series\'\n\n i18n-deleteDialogTitle="kendo.scheduler.deleteDialogTitle|The title of the remove confirmation dialog, similar to \'Delete Event\'."\n deleteDialogTitle=\'Delete Event\'\n\n i18n-deleteRecurringDialogTitle="kendo.scheduler.deleteRecurringDialogTitle|The title of the recurring remove confirmation dialog, similar to \'Delete Recurring Item\'"\n deleteRecurringDialogTitle=\'Delete Recurring Item\'\n\n i18n-editRecurringDialogTitle="kendo.scheduler.editRecurringDialogTitle|The title of the recurring edit confirmation dialog, similar to \'Edit Recurring Item\'"\n editRecurringDialogTitle=\'Edit Recurring Item\'\n\n i18n-selectView="kendo.scheduler.selectView|The value of the aria-label attribute of the <select> element used for switching the Scheduler views."\n selectView=\'Select View\'\n >\n </ng-container>\n\n <kendo-scheduler-toolbar\n [dateRange]="dateRangeStream"\n [selectedDate]="selectedDateStream"\n [views]="$any(views)"\n [selectedView]="selectedView"\n [template]="toolbarTemplate"\n (navigate)="onNavigationAction($event)"\n [min]="min"\n [max]="max"\n ></kendo-scheduler-toolbar>\n\n <ng-container *ngTemplateOutlet="selectedView?.template">\n </ng-container>\n\n <ng-container #confirmationDialogContainer>\n </ng-container>\n\n <kendo-scheduler-edit-dialog\n [resources]="resources"\n [editTemplate]="editDialogTemplate"\n [timezone]="timezone"\n [weekStart]="weekStart"\n [fields]="modelFields"\n ></kendo-scheduler-edit-dialog>\n\n <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>\n\n <div [loading]="loading" kendoSchedulerLoading>\n </div>\n '}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:m},{type:g},{type:Ut},{type:Jt},{type:o.IntlService},{type:n.ChangeDetectorRef},{type:n.NgZone},{type:v},{type:r.LocalizationService},{type:Xt},{type:n.Renderer2},{type:f}]},propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-widget"]},{type:h.HostBinding,args:["class.k-scheduler"]},{type:h.HostBinding,args:["class.k-floatwrap"]}],ariaRole:[{type:h.HostBinding,args:["attr.role"]}],rtl:[{type:h.HostBinding,args:["class.k-rtl"]}],dir:[{type:h.HostBinding,args:["attr.dir"]}],selectedViewIndex:[{type:h.Input}],editable:[{type:h.Input}],selectable:[{type:h.Input}],min:[{type:h.Input}],max:[{type:h.Input}],eventHeight:[{type:h.Input}],columnWidth:[{type:h.Input}],showWorkHours:[{type:h.Input}],startTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],weekStart:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],slotFill:[{type:h.Input}],scrollTime:[{type:h.Input}],group:[{type:h.Input}],resources:[{type:h.Input}],loading:[{type:h.Input}],timezone:[{type:h.Input}],events:[{type:h.Input}],selectedDate:[{type:h.Input}],modelFields:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],isSlotSelected:[{type:h.Input}],selectedViewIndexChange:[{type:h.Output}],navigate:[{type:h.Output}],dateChange:[{type:h.Output}],slotClick:[{type:h.Output}],slotDblClick:[{type:h.Output}],create:[{type:h.Output}],eventClick:[{type:h.Output}],eventDblClick:[{type:h.Output}],eventKeydown:[{type:h.Output}],cancel:[{type:h.Output}],save:[{type:h.Output}],remove:[{type:h.Output}],resizeStart:[{type:h.Output}],resize:[{type:h.Output}],resizeEnd:[{type:h.Output}],dragStart:[{type:h.Output}],drag:[{type:h.Output}],dragEnd:[{type:h.Output}],slotDragStart:[{type:h.Output}],slotDrag:[{type:h.Output}],slotDragEnd:[{type:h.Output}],pdfExport:[{type:h.Output}],editDialogTemplate:[{type:h.ContentChild,args:[Kt,{static:!1}]}],toolbarTemplate:[{type:h.ContentChild,args:[lt,{static:!1}]}],views:[{type:h.ContentChildren,args:[d]}],resizeSensor:[{type:h.ViewChild,args:[l.ResizeSensorComponent,{static:!0}]}],confirmationDialogContainerRef:[{type:h.ViewChild,args:["confirmationDialogContainer",{read:h.ViewContainerRef,static:!0}]}],loadingComponent:[{type:h.ViewChild,args:[ve,{static:!0}]}],allDayEventTemplate:[{type:h.ContentChildren,args:[mt]}],eventTemplate:[{type:h.ContentChildren,args:[ft]}],timeSlotTemplate:[{type:h.ContentChildren,args:[It]}],minorTimeHeaderTemplate:[{type:h.ContentChildren,args:[Dt]}],majorTimeHeaderTemplate:[{type:h.ContentChildren,args:[kt]}],monthDaySlotTemplate:[{type:h.ContentChildren,args:[Tt]}],dateHeaderTemplate:[{type:h.ContentChildren,args:[yt]}],allDaySlotTemplate:[{type:h.ContentChildren,args:[gt]}],groupHeaderTemplate:[{type:h.ContentChildren,args:[vt]}],agendaDateTemplate:[{type:h.ContentChildren,args:[u]}],agendaTimeTemplate:[{type:h.ContentChildren,args:[ht]}]}});Object.defineProperty(Kr.prototype,"data",{set:function(e){this.originalData=e||[],this.localDataChangesService&&(this.localDataChangesService.data=e),this.scheduler.events=this.process()},enumerable:!1,configurable:!0}),Kr.prototype.ngOnInit=function(){var t=this;this.subscription=this.scheduler.dateChange.subscribe(function(e){return t.onDateChange(e)})},Kr.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe(),this.dataChangedSubscription&&this.dataChangedSubscription.unsubscribe()},Kr.prototype.rebind=function(){this.data=this.originalData,this.changeDetector.markForCheck()},Kr.prototype.process=function(){var s,l,c=this;return this.dateRange?(s=[],l=this.scheduler.modelFields,this.originalData.forEach(function(e){var n,r,t,i,o,a;x(e,l.recurrenceRule)?(n=e,r=l,t=c.dateRange,i=c.scheduler.timezone,o=c.scheduler.weekStart,(o=_.parseRule({recurrenceRule:x(n,r.recurrenceRule),weekStart:o})).start||(a=x(n,r.start),o.start=b.ZonedDate.fromLocalDate(a,i)),o.end||(a=x(n,r.end),o.end=b.ZonedDate.fromLocalDate(a,i)),(a=x(n,r.recurrenceExceptions))&&(o.exceptionDates=a.map(function(e){return b.ZonedDate.fromLocalDate(e,i)})),a=xn(t.start),t=xn(t.end),t=(o=_.expand(o,{rangeStart:b.ZonedDate.fromUTCDate(a,i),rangeEnd:b.ZonedDate.fromUTCDate(t,i)})).events.length?(a=o.events.map(function(e){var t=Lt(n);return At(t,r.id,0),At(t,r.recurrenceId,x(n,r.id)),At(t,r.start,e.start.toLocalDate()),At(t,r.end,e.end.toLocalDate()),t}),de([n],ce(a))):[],s.push.apply(s,de([],ce(t)))):s.push(e)}),s):[]},Kr.prototype.onDateChange=function(e){this.dateRange=e.dateRange,this.rebind()};ee=Kr;function Kr(e,t,n,r){this.scheduler=e,this.changeDetector=t,this.intl=n,this.localDataChangesService=r,this.originalData=[],r&&(this.dataChangedSubscription=this.localDataChangesService.changes.subscribe(this.rebind.bind(this)))}ee.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ee,deps:[{token:Yr},{token:n.ChangeDetectorRef},{token:o.IntlService},{token:$t}],target:n.ɵɵFactoryTarget.Directive}),ee.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ee,selector:"[kendoSchedulerBinding]",inputs:{data:["kendoSchedulerBinding","data"]},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ee,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerBinding]"}]}],ctorParameters:function(){return[{type:Yr},{type:n.ChangeDetectorRef},{type:o.IntlService},{type:$t}]},propDecorators:{data:[{type:h.Input,args:["kendoSchedulerBinding"]}]}});c(Qr,$r=I),Object.defineProperty(Qr.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var $r,Xr=Qr;function Qr(e){var t=$r.call(this)||this;return t.service=e,t}Xr.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xr,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Xr.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Xr,selector:"kendo-scheduler-messages",providers:[{provide:I,useExisting:h.forwardRef(function(){return Xr})}],usesInheritance:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Xr,decorators:[{type:h.Component,args:[{providers:[{provide:I,useExisting:h.forwardRef(function(){return Xr})}],selector:"kendo-scheduler-messages",template:""}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});function Jr(e){return null}var ei,ie=[Kn,lt,Xn],I=function(){},t=(I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:[],target:n.ɵɵFactoryTarget.NgModule}),I.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,declarations:[k,Kn,lt,Xn],imports:[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule],exports:[k,Kn,lt,Xn]}),I.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,imports:[[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,q.ButtonsModule,A.CalendarModule,t.PopupModule,l.EventsModule],exports:de([k],ce(ie)),declarations:de([k],ce(ie))}]}]}),c(ti,ei=d),Object.defineProperty(ti.prototype,"viewSlotClass",{get:function(){return y(this.slotClass)?this.slotClass:this.schedulerOptions.slotClass||Jr},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewEventClass",{get:function(){return(y(this.eventClass)?this:this.schedulerOptions).eventClass},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewEventStyles",{get:function(){return(y(this.eventStyles)?this:this.schedulerOptions).eventStyles},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewHighlightOngoingEvents",{get:function(){return(y(this.highlightOngoingEvents)?this:this.schedulerOptions).highlightOngoingEvents},enumerable:!1,configurable:!0}),Object.defineProperty(ti.prototype,"viewWeekStart",{get:function(){return this.schedulerOptions.weekStart},enumerable:!1,configurable:!0}),ti.prototype.ngOnChanges=function(e){this.viewState.notifyOptionsChange()},ti.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},ti.prototype.optionsChange=function(e){this.schedulerOptions=e},ti);function ti(e,t,n,r){var i=ei.call(this)||this;return i.localization=e,i.changeDetector=t,i.viewContext=n,i.viewState=r,i.schedulerOptions={},i.subs=i.localization.changes.subscribe(function(){t.markForCheck()}),i.subs.add(i.viewContext.optionsChange.subscribe(i.optionsChange.bind(i))),i}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),t.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:t,inputs:{slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",highlightOngoingEvents:"highlightOngoingEvents"},queries:[{propertyName:"eventTemplate",first:!0,predicate:ft,descendants:!0},{propertyName:"groupHeaderTemplate",first:!0,predicate:vt,descendants:!0}],viewQueries:[{propertyName:"template",first:!0,predicate:["content"],descendants:!0,static:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],template:[{type:h.ViewChild,args:["content",{static:!0}]}],eventTemplate:[{type:h.ContentChild,args:[ft,{static:!1}]}],groupHeaderTemplate:[{type:h.ContentChild,args:[vt,{static:!1}]}]}});function ni(n){return function(t){return function(e){return n(e,t)}}}var ri=ni(Y.orderBy),ii=ni(Y.groupBy),oi=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return function(e){return t.reduceRight(function(e,t){return t(e)},e)}};si.prototype[qt]=function(){return{next:function(){return{done:!0,value:null}}}},si.prototype.toString=function(){return"Empty Iterator"};var ai=si;function si(){}var li=0,ci=(di.empty=function(){return new ai},di.prototype[qt]=function(){return this.createIterator(this.events)},di.prototype.itemAt=function(e){var t,n,r=this.createIterator(this.events),i=0;do{if((n=r.next())&&i===e)return"group"===(t=n.value).type?t.dataItem.items[0]:t.dataItem}while(i++,n)},di.prototype.toString=function(){return this.events.toString()},di);function di(e,t,n){var o;this.start=e,this.end=t,this.events=n,this.createIterator=oi(function(t){var n,r,i;return le(this,function(e){switch(e.label){case 0:n=0,e.label=1;case 1:return n<t.length?[4,{type:"group",dataItem:r=t[n],rowSpan:r.items.length,elementId:"k-scheduler-"+o.counter+"-"+n}]:[3,7];case 2:e.sent(),i=1,e.label=3;case 3:return i<r.items.length?[4,{type:"event",dataItem:r.items[i],elementId:"k-scheduler-"+o.counter+"-"+n+"-item-"+i}]:[3,6];case 4:e.sent(),e.label=5;case 5:return i++,[3,3];case 6:return n++,[3,1];case 7:return[2]}})},((o=this).start,this.end,oi(ii([{field:"startDate"}]),ri([{field:"start",dir:"asc"},{field:"end",dir:"asc"}])))),this.counter=li,li++}function ui(e){var t=e.start,n=e.end,n=(e=void 0!==(e=e.isAllDay)&&e)?Sn(n):n,n=Math.ceil((n-+Sn(t))/b.MS_PER_DAY);return e?n+1:n}function pi(n){var r=n.length;return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r===e.length?n.apply(null,e):pi(n.bind.apply(n,de([null],ce(e))))}}function hi(e,t){return n=ui(e)-1,Array.from(new Array(n).keys()).reduce((i=e,o=t,function(e,t,n,r){return e.concat(oi(fi,mi(gi(o,e),i.end),yi(n===r.length-1))(i))}),[]);var i,o,n}var mi=function(t,n){return function(e){return Object.assign(Object.assign({},e),{start:Sn(t),end:e.tail&&!e.isAllDay?n:In(t,1),startDate:Sn(t)})}},gi=function(e,t){return t.length?t[t.length-1].end:e},yi=function(t){return function(e){return t&&(e.tail=!0),e}},fi=function(e){return e.tail||(e.mid=!0),e},vi=pi(function(t,n,e){for(var r=[],i=0;i<e.length;i++){var o=Object.assign({},e[i]);o.startDate=Sn(o.start),o.start>=t&&o.start<=n&&r.push(o),1<ui(o)&&(o.end=In(o.startDate,1),o.head=!0,r.push.apply(r,de([],ce(hi(Object.assign({},e[i]),o.end).filter(function(e){return Sn(e.end)<=n&&e.start>=t})))))}return r});function ki(e,t){for(var n,r,i,o,a=t.taskResources,s=t.resourceGroups,l=t.spans,c=t.allResources,t=t.dateRange,d=s||[{}],u=wn(t.start),p=wn(t.end),h=0;h<e.length;h++){var m=e[h],g=m.event;if(vn(m.start.toUTCDate(),m.end.toUTCDate(),u,p)){var y=Hn(g,{taskResources:a,hasGroups:s&&0<s.length,spans:l,allResources:c});if(y.length&&0<=y[0].leafIdx)for(var f=0;f<y.length;f++){var v=y[f],k=(k=m,n=v.leafIdx,r=v.resources,i=v.color,o=void 0,{event:o=k.event,start:k.start.toUTCDate(),end:k.end.toUTCDate(),title:o.title,isAllDay:o.isAllDay,color:i,resourceIdx:n,resources:r});(d[v.leafIdx].tasks=d[v.leafIdx].tasks||[]).push(k)}}}if(s){var D=a,T=d.filter(function(e){return e.tasks&&e.tasks.length});if(!T.length)return[];for(var I=T[0].resources.map(function(e){return{value:e,span:0,groupIdx:0}}),b=wn(t.start),w=wn(t.end),S=0;S<T.length;S++)for(var x=T[S],C=(x.tasks=vi(b,w,x.tasks),x.tasks.length),E=(x.tasks=new ci(b,w,x.tasks),!1),R=0;R<D.length;R++){var O,F=I[R];F.value!==x.resources[R]||E?(F.value=x.resources[R],(O=T[F.groupIdx]).spans=O.spans||[],O.spans[R]=F.span,F.span=C,F.groupIdx=S,E=!0):F.span+=C}return I.forEach(function(e,t){var n=T[e.groupIdx];n.spans=n.spans||[],n.spans[t]=e.span}),T}return d[0].tasks=new ci(u,p,vi(u,p,d[0].tasks||[])),d}Object.defineProperty(Di.prototype,"dateMessage",{get:function(){return this.localization.get("dateHeader")},enumerable:!1,configurable:!0}),Object.defineProperty(Di.prototype,"timeMessage",{get:function(){return this.localization.get("timeHeader")},enumerable:!1,configurable:!0}),Object.defineProperty(Di.prototype,"eventMessage",{get:function(){return this.localization.get("eventHeader")},enumerable:!1,configurable:!0});k=Di;function Di(e){this.localization=e,this.classes=!0}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),k.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"[kendoSchedulerAgendaHeader]",inputs:{resources:"resources"},host:{properties:{"class.k-scheduler-header":"this.classes","class.k-state-default":"this.classes"}},ngImport:n,template:'\n <div class="k-scheduler-header-wrap">\n <table class="k-scheduler-table" role="rowgroup">\n <tbody role="none">\n <tr role="row">\n <th *ngFor="let resource of resources" class="k-scheduler-groupcolumn" role="columnheader"></th>\n <th class="k-scheduler-datecolumn" role="columnheader">{{ dateMessage }}</th>\n <th class="k-scheduler-timecolumn" role="columnheader">{{ timeMessage }}</th>\n <th role="columnheader">{{ eventMessage }}</th>\n </tr>\n </tbody>\n </table>\n </div>\n ',isInline:!0,directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaHeader]",template:'\n <div class="k-scheduler-header-wrap">\n <table class="k-scheduler-table" role="rowgroup">\n <tbody role="none">\n <tr role="row">\n <th *ngFor="let resource of resources" class="k-scheduler-groupcolumn" role="columnheader"></th>\n <th class="k-scheduler-datecolumn" role="columnheader">{{ dateMessage }}</th>\n <th class="k-scheduler-timecolumn" role="columnheader">{{ timeMessage }}</th>\n <th role="columnheader">{{ eventMessage }}</th>\n </tr>\n </tbody>\n </table>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService}]},propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-header"]},{type:h.HostBinding,args:["class.k-state-default"]}],resources:[{type:h.Input}]}});Object.defineProperty(Ti.prototype,"rowSpan",{get:function(){return this.item.rowSpan},enumerable:!1,configurable:!0}),Object.defineProperty(Ti.prototype,"itemDate",{get:function(){return b.toLocalDate(this.item.dataItem.value)},enumerable:!1,configurable:!0});var C=Ti;function Ti(){this.classes=!0,this.roleAttribute="rowheader"}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[kendoSchedulerAgendaHeaderItem]",inputs:{item:["kendoSchedulerAgendaHeaderItem","item"],agendaDateTemplate:"agendaDateTemplate"},host:{properties:{"class.k-scheduler-datecolumn":"this.classes","attr.role":"this.roleAttribute","attr.rowspan":"this.rowSpan"}},ngImport:n,template:'\n <ng-container *ngIf="!agendaDateTemplate">\n <strong class="k-scheduler-agendaday">{{itemDate | kendoDate: \'dd\'}}</strong>\n <em class="k-scheduler-agendaweek">{{itemDate | kendoDate: \'EEEE\'}}</em>\n <span class="k-scheduler-agendadate">{{itemDate | kendoDate: \'y\'}}</span>\n </ng-container>\n <ng-container *ngIf="agendaDateTemplate" [ngTemplateOutlet]="agendaDateTemplate"\n [ngTemplateOutletContext]="{ date: itemDate }">\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],pipes:{kendoDate:o.DatePipe},changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaHeaderItem]",template:'\n <ng-container *ngIf="!agendaDateTemplate">\n <strong class="k-scheduler-agendaday">{{itemDate | kendoDate: \'dd\'}}</strong>\n <em class="k-scheduler-agendaweek">{{itemDate | kendoDate: \'EEEE\'}}</em>\n <span class="k-scheduler-agendadate">{{itemDate | kendoDate: \'y\'}}</span>\n </ng-container>\n <ng-container *ngIf="agendaDateTemplate" [ngTemplateOutlet]="agendaDateTemplate"\n [ngTemplateOutletContext]="{ date: itemDate }">\n </ng-container>\n '}]}],propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-datecolumn"]}],roleAttribute:[{type:h.HostBinding,args:["attr.role"]}],rowSpan:[{type:h.HostBinding,args:["attr.rowspan"]}],item:[{type:h.Input,args:["kendoSchedulerAgendaHeaderItem"]}],agendaDateTemplate:[{type:h.Input}]}});Object.defineProperty(bi.prototype,"eventTitle",{get:function(){return _n(b.toLocalDate(this.item.start),b.toLocalDate(this.item.end),this.item.isAllDay,this.localeId)+", "+this.item.event.title},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"eventColor",{get:function(){return this.item.color},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"deleteMessage",{get:function(){return this.localization.get("deleteTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"isRecurrence",{get:function(){return zn(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"isRecurrenceException",{get:function(){return An(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(bi.prototype,"removable",{get:function(){return this.editable&&!1!==this.editable.remove},enumerable:!1,configurable:!0});var Ii=bi;function bi(e,t){this.localization=e,this.localeId=t}Ii.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,deps:[{token:r.LocalizationService},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),Ii.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ii,selector:"[kendoSchedulerAgendaTaskItem]",inputs:{item:["kendoSchedulerAgendaTaskItem","item"],color:"color",eventTemplate:"eventTemplate",editable:"editable"},host:{properties:{"attr.aria-label":"this.eventTitle"}},ngImport:n,template:'\n <div class="k-task" [title]="item.title">\n <span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n <ng-container *ngIf="!eventTemplate">\n {{item?.title }}\n </ng-container>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: item.resources }">\n </ng-container>\n\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n </div>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"[kendoSchedulerAgendaTaskItem]",template:'\n <div class="k-task" [title]="item.title">\n <span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n <ng-container *ngIf="!eventTemplate">\n {{item?.title }}\n </ng-container>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: item.resources }">\n </ng-container>\n\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]},propDecorators:{item:[{type:h.Input,args:["kendoSchedulerAgendaTaskItem"]}],color:[{type:h.Input}],eventTemplate:[{type:h.Input}],editable:[{type:h.Input}],eventTitle:[{type:h.HostBinding,args:["attr.aria-label"]}]}});wi.prototype.extractDataItem=function(e){return"group"===e.type?e.dataItem.items[0]:e.dataItem},wi.prototype.formatTime=function(e){var t;return e.isAllDay?this.localization.get("allDay"):(t="{0:t}-{1:t}",e.head?t="{0:t}":e.tail&&(t="{1:t}"),this.intlService.format(t,b.toLocalDate(e.start),b.toLocalDate(e.end)))},wi.prototype.trackByFn=function(e,t){return e},wi.prototype.cellClasses=function(e){var e=this.extractDataItem(e),t=[];return this.slotClass&&(t=t.concat(Gn(this.slotClass({start:e.start,end:e.end,resources:e.resources,event:e.event})))),t=this.eventClass?t.concat(Gn(this.eventClass({event:e.event,resources:e.resources}))):t},wi.prototype.getEventStyles=function(e){if(this.eventStyles)return e=this.extractDataItem(e),this.eventStyles({event:e.event,resources:e.resources})};var E=wi;function wi(e,t){this.intlService=e,this.localization=t,this.classes=!0}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:o.IntlService},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),E.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"[kendoSchedulerAgendaList]",inputs:{tasks:"tasks",eventTemplate:"eventTemplate",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",agendaTimeTemplate:"agendaTimeTemplate",agendaDateTemplate:"agendaDateTemplate",editable:"editable"},host:{properties:{"class.k-scheduler-content":"this.classes"}},ngImport:n,template:'\n <table class="k-scheduler-table" role="none">\n <tbody role="rowgroup">\n <ng-container *ngFor="let group of tasks; let groupIndex = index;">\n <tr *ngFor="let item of group.tasks; let index = index; trackBy: trackByFn" role="row">\n <ng-container *ngFor="let resource of group.resources; let resourceIndex = index">\n <td *ngIf="group.spans[resourceIndex] && index === 0" class="k-scheduler-groupcolumn" [attr.rowspan]="group.spans[resourceIndex]" role="rowheader">\n {{ resource }}\n </td>\n </ng-container>\n <td *ngIf="item.type === \'group\'"\n [kendoSchedulerAgendaHeaderItem]="item"\n [agendaDateTemplate]="agendaDateTemplate">\n </td>\n <td class="k-scheduler-timecolumn" role="gridcell">\n <div *ngIf="!agendaTimeTemplate">\n <span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>\n {{ formatTime(extractDataItem(item)) }}\n <span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>\n </div>\n <ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"\n [ngTemplateOutletContext]="extractDataItem(item)">\n </ng-container>\n </td>\n <td [attr.data-group-index]="groupIndex" [attr.data-task-index]="index" role="gridcell"\n [ngClass]="cellClasses(item)" [ngStyle]="getEventStyles(item)"\n [kendoSchedulerFocusIndex]="groupIndex"\n [id]="item.elementId"\n [kendoSchedulerAgendaTaskItem]="extractDataItem(item)"\n [editable]="editable"\n [eventTemplate]="eventTemplate"\n ></td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n ',isInline:!0,components:[{type:C,selector:"[kendoSchedulerAgendaHeaderItem]",inputs:["kendoSchedulerAgendaHeaderItem","agendaDateTemplate"]},{type:Ii,selector:"[kendoSchedulerAgendaTaskItem]",inputs:["kendoSchedulerAgendaTaskItem","color","eventTemplate","editable"]}],directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Component,args:[{selector:"[kendoSchedulerAgendaList]",template:'\n <table class="k-scheduler-table" role="none">\n <tbody role="rowgroup">\n <ng-container *ngFor="let group of tasks; let groupIndex = index;">\n <tr *ngFor="let item of group.tasks; let index = index; trackBy: trackByFn" role="row">\n <ng-container *ngFor="let resource of group.resources; let resourceIndex = index">\n <td *ngIf="group.spans[resourceIndex] && index === 0" class="k-scheduler-groupcolumn" [attr.rowspan]="group.spans[resourceIndex]" role="rowheader">\n {{ resource }}\n </td>\n </ng-container>\n <td *ngIf="item.type === \'group\'"\n [kendoSchedulerAgendaHeaderItem]="item"\n [agendaDateTemplate]="agendaDateTemplate">\n </td>\n <td class="k-scheduler-timecolumn" role="gridcell">\n <div *ngIf="!agendaTimeTemplate">\n <span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>\n {{ formatTime(extractDataItem(item)) }}\n <span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>\n </div>\n <ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"\n [ngTemplateOutletContext]="extractDataItem(item)">\n </ng-container>\n </td>\n <td [attr.data-group-index]="groupIndex" [attr.data-task-index]="index" role="gridcell"\n [ngClass]="cellClasses(item)" [ngStyle]="getEventStyles(item)"\n [kendoSchedulerFocusIndex]="groupIndex"\n [id]="item.elementId"\n [kendoSchedulerAgendaTaskItem]="extractDataItem(item)"\n [editable]="editable"\n [eventTemplate]="eventTemplate"\n ></td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService}]},propDecorators:{classes:[{type:h.HostBinding,args:["class.k-scheduler-content"]}],tasks:[{type:h.Input}],eventTemplate:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],agendaTimeTemplate:[{type:h.Input}],agendaDateTemplate:[{type:h.Input}],editable:[{type:h.Input}]}});Object.defineProperty(xi.prototype,"eventTemplateRef",{get:function(){return this.eventTemplate||(this.schedulerEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(xi.prototype,"agendaTimeTemplateRef",{get:function(){return this.agendaTimeTemplate||(this.schedulerAgendaTimeTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(xi.prototype,"agendaDateTemplateRef",{get:function(){return this.agendaDateTemplate||(this.schedulerAgendaDateTemplate||{}).templateRef},enumerable:!1,configurable:!0}),xi.prototype.ngOnInit=function(){var n=this;this.updateContentHeight=this.updateContentHeight.bind(this),this.subs.add(this.viewContext.selectedDate.subscribe(this.onSelectDate.bind(this))),this.subs.add(this.viewContext.action.subscribe(this.onAction.bind(this))),this.subs.add(this.viewContext.execute.subscribe(this.execute.bind(this))),this.subs.add(this.viewContext.resize.subscribe(this.updateContentHeight)),this.subs.add(p.combineLatest([this.viewContext.items,this.viewState.dateRange]).pipe(N.map(function(e){var e=ce(e,2),t=e[0],e=e[1];return n.items=t,n.range=e,n.createEventGroups()})).subscribe(function(e){n.tasks.next(e)})),this.subs.add(this.viewContext.optionsChange.subscribe(this.optionsChange.bind(this)));this.subs.add(p.combineLatest(this.tasks,this.localization.changes).pipe(N.switchMap(function(){return n.zone.onStable.pipe(N.take(1))})).subscribe(this.updateContentHeight)),this.subs.add(this.pdfService.createElement.subscribe(this.createPDFElement.bind(this)))},xi.prototype.ngOnChanges=function(e){l.anyChanged(["selectedDateFormat","selectedShortDateFormat","numberOfDays"],e)&&this.viewState.notifyDateRange(this.dateRange(this.selectedDate))},xi.prototype.ngAfterViewInit=function(){var e,t=this;this.element&&(e=this.content.nativeElement,this.zone.runOutsideAngular(function(){t.subs.add(p.merge(p.fromEvent(e,"click"),p.fromEvent(e,"contextmenu"),p.fromEvent(e,"dblclick")).subscribe(function(e){return t.onClick(e)})),t.subs.add(p.fromEvent(e,"keydown").subscribe(function(e){return t.onKeydown(e)}))}))},xi.prototype.onClick=function(e){var t,n,r,i=this.targetTask(e.target);i&&(t=i.task,i=i.eventTarget,r="dblclick"===(n=e.type),"click"===n&&mn(e.target,function(e){return yn(e,"k-event-delete")},i)?this.viewState.emitEvent("remove",{event:t.event,dataItem:t.event.dataItem}):this.viewState.emitEvent(r?"eventDblClick":"eventClick",{type:n,event:t.event,originalEvent:e}))},xi.prototype.onKeydown=function(e){var t=this.targetTask(e.target);t&&(t=t.task,this.viewState.emitEvent("eventKeydown",{event:t.event,dataItem:t.event.dataItem,originalEvent:e}))},xi.prototype.targetTask=function(e){e=mn(e,function(e){return e.hasAttribute("data-task-index")},this.element.nativeElement);if(e)return{eventTarget:e,task:this.elementTask(e)}},xi.prototype.updateContentHeight=function(){for(var e=this.element.nativeElement,t=e.parentNode,n=this.content.nativeElement,r=(this.renderer.setStyle(n,"height",""),t.clientHeight),i=0;i<t.children.length;i++){var o=t.children[i];o===e||qn(o)||(r-=o.offsetHeight)}var a=this.headerWrap.nativeElement,s=(r-=this.headerWrap?a.offsetHeight:0,this.renderer.setStyle(n,"height",r+"px"),this.localization.rtl);fn(n,"vertical")||this.renderer.setStyle(a,s?"padding-inline-start":"padding-inline-end","0px"),this.renderer.removeStyle(a,s?"padding-inline-end":"padding-inline-start"),this.viewState.notifyLayoutEnd()},xi.prototype.ngOnDestroy=function(){this.subs.unsubscribe()},xi.prototype.optionsChange=function(e){this.group=e.group,this.resources=e.resources,this.groupResources(),this.min=e.min,this.max=e.max,this.editable=e.editable,this.items&&this.items.length&&this.tasks.next(this.createEventGroups()),this.schedulerEventTemplate=e.eventTemplate,this.schedulerAgendaTimeTemplate=e.agendaTimeTemplate,this.schedulerAgendaDateTemplate=e.agendaDateTemplate},xi.prototype.onSelectDate=function(e){this.selectedDate=e,this.viewState.notifyDateRange(this.dateRange())},xi.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=b.getDate(b.addDays(n,this.numberOfDays)),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=b.getDate(b.addDays(n,-this.numberOfDays)),this.isInRange(t))&&this.viewState.notifyNextDate(t)},xi.prototype.createEventGroups=function(){var e=this.groupedResources.length?function(e){for(var t=[],n=e[0],r=n.data,i=0;i<r.length;i++){var o=r[i];t.push({resources:[x(o,n.textField)]})}for(var a=1;a<e.length;a++){for(var s=e[a],l=s.data,c=[],d=0;d<t.length;d++)for(var u=t[d],i=0;i<l.length;i++){o=l[i];c.push({resources:u.resources.concat(x(o,s.textField))})}t=c}return t}(this.groupedResources):null;return this.groups=ki(this.items,{taskResources:this.taskResources,resourceGroups:e,allResources:this.resources,spans:this.spans,dateRange:this.range})},xi.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=b.getDate(e),t=b.getDate(b.addDays(e,this.numberOfDays)),n=b.getDate(b.addDays(e,this.numberOfDays-1));return{start:e,end:t,text:this.intl.format(this.selectedDateFormat,e,n),shortText:this.intl.format(this.selectedShortDateFormat,e,n)}},xi.prototype.groupResources=function(){var n=this.resources||[],r=(this.group||{}).resources,i=this.groupedResources=[];if(r&&r.length)for(var e=0;e<r.length;e++)!function(e){var t=r[e],e=n.find(function(e){return e.name===t});e&&i.push(e)}(e);this.spans=this.resourceSpans()},xi.prototype.resourceSpans=function(){for(var e=[1],t=this.groupedResources,n=1,r=t.length-1;0<r;r--)n*=(t[r].data||[]).length||1,e.unshift(n);return e},Object.defineProperty(xi.prototype,"taskResources",{get:function(){return this.groupedResources.length?this.groupedResources:this.resources&&this.resources.length?[this.resources[0]]:[{}]},enumerable:!1,configurable:!0}),xi.prototype.isInRange=function(e){e=this.dateRange(e);return(!this.min||this.min<e.end)&&(!this.max||e.start<=this.max)},xi.prototype.createPDFElement=function(){var e=this.element.nativeElement.cloneNode(!0),t=(e.style.width=this.element.nativeElement.offsetWidth+"px",e.querySelector(".k-scheduler-content").style.height="auto",e.querySelector(".k-scheduler-header"));t.style.paddingRight=0,t.style.paddingLeft=0,this.pdfService.elementReady.emit({element:e})},xi.prototype.elementTask=function(e){var t=parseInt(e.getAttribute("data-task-index"),10),e=parseInt(e.getAttribute("data-group-index"),10);return this.groups[e].tasks.itemAt(t)},xi.prototype.execute=function(e){var t;"slotByPosition"===e.name?(t=this.slotByPosition(e.args),e.result(t)):"eventFromElement"===e.name&&(t=this.elementTask(e.args.element))&&e.result(t.event)},xi.prototype.slotByPosition=function(e){var t=e.x,n=e.y,e=this.content.nativeElement.querySelector("table"),r=Ln(e);if(r.top<=n&&n<=r.top+r.height){var i=e.rows;if(i.length){r=Ln(i[0].cells[i[0].cells.length-1]);if(r.left<=t&&t<=r.left+r.width)for(var o=0;o<i.length;o++){var a,s=i[o],l=Ln(s);if(l.top<=n&&n<=l.top+l.height)return l=s.querySelector("[data-task-index]"),a=(s=this.elementTask(l)).event,{element:new h.ElementRef(l),start:a.start,end:a.end,event:a,resources:s.resources,isAllDay:s.isAllDay}}}}};var Si=xi;function xi(e,t,n,r,i,o,a,s){this.viewContext=e,this.viewState=t,this.intl=n,this.renderer=r,this.element=i,this.zone=o,this.pdfService=a,this.localization=s,this.tasks=new p.BehaviorSubject(null),this.groupedResources=[],this.spans=[],this.subs=new p.Subscription}Si.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,deps:[{token:m},{token:g},{token:o.IntlService},{token:n.Renderer2},{token:n.ElementRef},{token:n.NgZone},{token:v},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Si.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Si,selector:"agenda-view-internal",inputs:{eventTemplate:"eventTemplate",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",agendaTimeTemplate:"agendaTimeTemplate",agendaDateTemplate:"agendaDateTemplate",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},viewQueries:[{propertyName:"headerWrap",first:!0,predicate:["headerWrap"],descendants:!0,read:h.ElementRef,static:!0},{propertyName:"content",first:!0,predicate:["content"],descendants:!0,read:h.ElementRef,static:!0}],usesOnChanges:!0,ngImport:n,template:'\n <table class="k-scheduler-layout k-scheduler-agendaview k-scheduler-agenda" role="grid">\n <tbody role="none">\n <tr>\n <td>\n <div kendoSchedulerAgendaHeader [resources]="groupedResources" #headerWrap></div>\n </td>\n </tr>\n <tr>\n <td>\n <div kendoSchedulerAgendaList #content\n [editable]="editable"\n [eventTemplate]="eventTemplateRef"\n [slotClass]="slotClass"\n [eventClass]="eventClass"\n [eventStyles]="eventStyles"\n [agendaTimeTemplate]="agendaTimeTemplateRef"\n [agendaDateTemplate]="agendaDateTemplateRef"\n [tasks]="tasks | async">\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n ',isInline:!0,components:[{type:k,selector:"[kendoSchedulerAgendaHeader]",inputs:["resources"]},{type:E,selector:"[kendoSchedulerAgendaList]",inputs:["tasks","eventTemplate","slotClass","eventClass","eventStyles","agendaTimeTemplate","agendaDateTemplate","editable"]}],pipes:{async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,decorators:[{type:h.Component,args:[{selector:"agenda-view-internal",template:'\n <table class="k-scheduler-layout k-scheduler-agendaview k-scheduler-agenda" role="grid">\n <tbody role="none">\n <tr>\n <td>\n <div kendoSchedulerAgendaHeader [resources]="groupedResources" #headerWrap></div>\n </td>\n </tr>\n <tr>\n <td>\n <div kendoSchedulerAgendaList #content\n [editable]="editable"\n [eventTemplate]="eventTemplateRef"\n [slotClass]="slotClass"\n [eventClass]="eventClass"\n [eventStyles]="eventStyles"\n [agendaTimeTemplate]="agendaTimeTemplateRef"\n [agendaDateTemplate]="agendaDateTemplateRef"\n [tasks]="tasks | async">\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n '}]}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:n.Renderer2},{type:n.ElementRef},{type:n.NgZone},{type:v},{type:r.LocalizationService}]},propDecorators:{eventTemplate:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],agendaTimeTemplate:[{type:h.Input}],agendaDateTemplate:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}],headerWrap:[{type:h.ViewChild,args:["headerWrap",{read:h.ElementRef,static:!0}]}],content:[{type:h.ViewChild,args:["content",{read:h.ElementRef,static:!0}]}]}});c(Ri,Ci=t),Object.defineProperty(Ri.prototype,"title",{get:function(){return this.localization.get("agendaViewTitle")},enumerable:!1,configurable:!0});var Ci,Ei=Ri;function Ri(e,t,n,r){e=Ci.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:D} - {1:D}",e.selectedShortDateFormat="{0:d} - {1:d}",e.numberOfDays=7,e.name="agenda",e}Ei.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ei,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Ei.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ei,selector:"kendo-scheduler-agenda-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Ei})}],queries:[{propertyName:"eventTemplate",first:!0,predicate:ft,descendants:!0},{propertyName:"agendaTimeTemplate",first:!0,predicate:ht,descendants:!0},{propertyName:"agendaDateTemplate",first:!0,predicate:u,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <agenda-view-internal\n [numberOfDays]="numberOfDays"\n [eventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [agendaTimeTemplate]="agendaTimeTemplate?.templateRef"\n [agendaDateTemplate]="agendaDateTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </agenda-view-internal>\n </ng-template>\n ',isInline:!0,components:[{type:Si,selector:"agenda-view-internal",inputs:["eventTemplate","slotClass","eventClass","eventStyles","agendaTimeTemplate","agendaDateTemplate","selectedDateFormat","selectedShortDateFormat","numberOfDays"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ei,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-agenda-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Ei})}],template:'\n <ng-template #content>\n <agenda-view-internal\n [numberOfDays]="numberOfDays"\n [eventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [agendaTimeTemplate]="agendaTimeTemplate?.templateRef"\n [agendaDateTemplate]="agendaDateTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </agenda-view-internal>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}],eventTemplate:[{type:h.ContentChild,args:[ft,{static:!1}]}],agendaTimeTemplate:[{type:h.ContentChild,args:[ht,{static:!1}]}],agendaDateTemplate:[{type:h.ContentChild,args:[u,{static:!1}]}]}});Fi.exports=function(){return[un]};var Oi=Fi;function Fi(){}Oi.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,deps:[],target:n.ɵɵFactoryTarget.NgModule}),Oi.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,declarations:[un],exports:[un]}),Oi.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Oi,decorators:[{type:h.NgModule,args:[{declarations:[un],exports:[un]}]}]});var R=[k,C,E,Ii,Ei,Si],Hi=function(){},Vi=(Hi.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,deps:[],target:n.ɵɵFactoryTarget.NgModule}),Hi.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,declarations:[k,C,E,Ii,Ei,Si],imports:[Z.CommonModule,L.IntlModule,Oi],exports:[Ei]}),Hi.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,imports:[[Z.CommonModule,L.IntlModule,Oi]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Hi,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,L.IntlModule,Oi],exports:[Ei],declarations:[R]}]}]}),Wi.prototype.registerItem=function(e){this.itemGroup(e).registerItem(e)},Wi.prototype.unregisterItem=function(e,t){t=t||{index:e.index,resourceIndex:e.resourceIndex,rangeIndex:e.rangeIndex};var n=this.groups[t.resourceIndex];n&&n.unregisterItem(e,t)},Wi.prototype.registerSlot=function(e){this.slotGroup(e).registerSlot(e)},Wi.prototype.unregisterSlot=function(e){var t=this.groups[e.id.resourceIndex];t&&t.unregisterSlot(e)},Wi.prototype.invalidate=function(){this.clearEmptyGroups(),this.cleanRanges(),this.slotsChange.emit(),this.forEachSlot(function(e){e.invalidate()})},Wi.prototype.cleanRanges=function(){this.groups.forEach(function(e){e.cleanRanges()})},Wi.prototype.clearEmptyGroups=function(){for(var e=this.groups,t=this.groups.length-1;0<t&&!e[t].hasSlots;)e.splice(t,1),t--},Wi.prototype.itemGroup=function(e){e=e.resourceIndex;return this.groups[e]||(this.groups[e]=this.createGroup(e)),this.groups[e]},Wi.prototype.slotGroup=function(e){e=e.id.resourceIndex;return this.groups[e]||(this.groups[e]=this.createGroup(e)),this.groups[e]},Wi);function Wi(){this.containerSize=0,this.slotsChange=new h.EventEmitter,this.groups=[]}Object.defineProperty(Mi.prototype,"taskIndex",{get:function(){return this.item.index},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"touchAction",{get:function(){return this.editable&&!1!==this.editable.drag?"none":null},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"eventTitle",{get:function(){return _n(b.toLocalDate(this.item.startTime),b.toLocalDate(this.item.endTime),this.item.isAllDay,this.localeId)+", "+this.item.event.title},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"deleteMessage",{get:function(){return this.localization.get("deleteTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"resizable",{get:function(){return this.editable&&!1!==this.editable.resize},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"removable",{get:function(){return this.editable&&!1!==this.editable.remove},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"isRecurrence",{get:function(){return zn(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"isRecurrenceException",{get:function(){return An(this.item)},enumerable:!1,configurable:!0}),Object.defineProperty(Mi.prototype,"nativeElement",{get:function(){if(this.element)return this.element.nativeElement},enumerable:!1,configurable:!0}),Mi.prototype.setStyles=function(e){var t=this.nativeElement;if(t)for(var n in e)e.hasOwnProperty(n)&&this.renderer.setStyle(t,n,e[n])},Mi.prototype.toggle=function(e){this.setStyles({display:e?null:"none"})},Mi.prototype.reflow=function(){var e=this.rect;e&&this.setStyles({left:this.localization.rtl?"":e.left+"px",right:this.localization.rtl?e.left+"px":"",top:e.top+"px",width:e.width+"px",height:e.height+"px"})},Mi.prototype.ngOnInit=function(){var t=this;this.dragHint||this.subs.add(this.slotService.slotsChange.subscribe(function(){t.rect=null,t.setStyles({width:0,left:0});var e={index:t.index,resourceIndex:t.resourceIndex,rangeIndex:t.rangeIndex};t.slotService.unregisterItem(t,e),0<=t.resourceIndex&&t.slotService.registerItem(t)}))},Mi.prototype.ngOnChanges=function(e){var t,n;this.dragHint||l.anyChanged(["index","resourceIndex","rangeIndex"],e)&&(t=e.resourceIndex,n=e.index,e=e.rangeIndex,t=t?t.previousValue:this.resourceIndex,n=n?n.previousValue:this.index,e=e?e.previousValue:this.rangeIndex,this.slotService.unregisterItem(this,{index:n,resourceIndex:t,rangeIndex:e}),0<=this.resourceIndex?(this.slotService.registerItem(this),this.toggle(!0)):this.toggle(!1))},Mi.prototype.ngOnDestroy=function(){this.dragHint||(this.slotService.unregisterItem(this),this.subs.unsubscribe())};k=Mi;function Mi(e,t,n,r,i,o){this.slotService=e,this.localization=t,this.focusService=n,this.element=r,this.renderer=i,this.localeId=o,this.className=!0,this.subs=new p.Subscription}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:"invalid",target:n.ɵɵFactoryTarget.Directive}),k.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:k,inputs:{item:"item",resourceIndex:"resourceIndex",rangeIndex:"rangeIndex",index:"index",eventTemplate:"eventTemplate",editable:"editable",dragHint:"dragHint",resources:"resources"},host:{properties:{"class.k-event":"this.className","attr.data-task-index":"this.taskIndex","style.touch-action":"this.touchAction","attr.aria-label":"this.eventTitle"}},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:Vi},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0}]},propDecorators:{item:[{type:h.Input}],resourceIndex:[{type:h.Input}],rangeIndex:[{type:h.Input}],index:[{type:h.Input}],eventTemplate:[{type:h.Input}],editable:[{type:h.Input}],dragHint:[{type:h.Input}],resources:[{type:h.Input}],className:[{type:h.HostBinding,args:["class.k-event"]}],taskIndex:[{type:h.HostBinding,args:["attr.data-task-index"]}],touchAction:[{type:h.HostBinding,args:["style.touch-action"]}],eventTitle:[{type:h.HostBinding,args:["attr.aria-label"]}]}});Object.defineProperty(zi.prototype,"first",{get:function(){if(0<this.count)return this.items[Object.keys(this.items)[0]]},enumerable:!1,configurable:!0}),Object.defineProperty(zi.prototype,"last",{get:function(){var e;if(0<this.count)return e=Object.keys(this.items),this.items[e[e.length-1]]},enumerable:!1,configurable:!0}),zi.prototype.addItem=function(e,t){this.items[e]||this.count++,this.items[e]=t},zi.prototype.removeItem=function(e,t){this.items[e]===t&&(delete this.items[e],this.count--)},zi.prototype.toArray=function(){var t=this;return Object.keys(this.items).map(function(e){return t.items[e]})};var Pi=zi;function zi(){this.count=0,this.items={}}var Ai=new Date(1980,0,1),Ni=new Date(1980,0,2),Bi="k-event-ongoing",ji=(Object.defineProperty(Li.prototype,"slots",{get:function(){return this.slotMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"items",{get:function(){return this.itemMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"start",{get:function(){var e=this.slotMap.first;return e?e.start:null},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"end",{get:function(){var e=this.slotMap.last;return e?In(e.end,1):null},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"hasSlots",{get:function(){return 0<this.slotMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"hasItems",{get:function(){return 0<this.itemMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"firstSlot",{get:function(){return this.slotMap.first},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"lastSlot",{get:function(){return this.slotMap.last},enumerable:!1,configurable:!0}),Object.defineProperty(Li.prototype,"rect",{get:function(){var e=this.firstSlot.rect,t=this.lastSlot.rect;return{left:e.left,top:e.top,width:t.left-e.left+t.width,height:t.top-e.top+t.height}},enumerable:!1,configurable:!0}),Li.prototype.registerItem=function(e){this.itemMap.addItem(e.item.index,e)},Li.prototype.unregisterItem=function(e,t){this.itemMap.removeItem(t,e)},Li.prototype.registerSlot=function(e){this.slotMap.addItem(e.id.index,e)},Li.prototype.unregisterSlot=function(e){this.slotMap.removeItem(e.id.index,e)},Li.prototype.layout=function(o){var e,a,t;this.hasItems&&(e=this.items,e=Y.orderBy(e,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),a={},t=this.slots,e.forEach(function(i){return t.filter(function(e){return vn(i.item.startTime,i.item.endTime,e.start,e.end)}).forEach(function(e){var t=a[e.key]=a[e.key]||{events:[],height:e.linkHeight},n=(t.slot=e).rect,r=i.item.data[i.resourceIndex];r.rowIndex=Pn(t.events,r),t.height+o+2+13>n.height||r.hidden?(r.hidden=!0,e.showMore({width:n.width,left:n.left,top:n.top+e.linkHeight+r.rowIndex*(o+2)})):((t.events[r.rowIndex]=i).rect||(i.rect={top:n.top+e.linkHeight+r.rowIndex*(o+2),left:n.left,height:o,width:0}),i.rect.width+=n.width+1,t.height+=o+2)})}),e.forEach(function(e){e.rect&&--e.rect.width,e.reflow()}))},Li);function Li(e){this.index=e,this.slotMap=new Pi,this.itemMap=new Pi}Object.defineProperty(Zi.prototype,"hasSlots",{get:function(){return Boolean(this.dayRanges.find(function(e){return e&&e.hasSlots}))},enumerable:!1,configurable:!0}),Zi.prototype.registerSlot=function(e){this.slotRange(e).registerSlot(e)},Zi.prototype.unregisterSlot=function(e){var t=this.dayRanges[e.id.rangeIndex];t.unregisterSlot(e),t.hasSlots||delete this.dayRanges[e.id.rangeIndex]},Zi.prototype.registerItem=function(e){this.dayRanges[e.rangeIndex].registerItem(e)},Zi.prototype.unregisterItem=function(e,t){var n=this.dayRanges[t.rangeIndex];n&&n.unregisterItem(e,t.index)},Zi.prototype.slotRange=function(e){var t=this.dayRanges,e=e.id.rangeIndex;return t[e]||(t[e]=new ji(e)),t[e]},Zi.prototype.forEachRange=function(e){for(var t=0;t<this.dayRanges.length;t++)e(this.dayRanges[t])},Zi.prototype.cleanRanges=function(){this.dayRanges=this.dayRanges.filter(function(e){return Boolean(e)})};var qi=Zi;function Zi(e){this.index=e,this.dayRanges=[]}c(Ui,Gi=Vi),Ui.prototype.layout=function(t){this.groups.forEach(function(e){return e.forEachRange(function(e){return e.layout(t)})})},Ui.prototype.slotByIndex=function(e){var e=ce(e.split(":").map(function(e){return parseInt(e,10)}),3),t=e[0],n=e[1],e=e[2];return this.groups[t].dayRanges[n].slots[e]},Ui.prototype.forEachSlot=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})})})},Ui.prototype.forEachItem=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.items.forEach(function(e){return t(e)})})})},Ui.prototype.createGroup=function(e){return new qi(e)},Ui.prototype.invalidate=function(){Gi.prototype.invalidate.call(this),this.forEachItem(function(e){var t=e.item.data;Object.keys(t).forEach(function(e){t[e].hidden=!1})})},Ui.prototype.slotByPosition=function(t,n){var r;if(this.groups.find(function(e){return r=e.dayRanges.find(function(e){return Nn(e.rect,t,n)})}),r)return r.slots.find(function(e){return Nn(e.rect,t,n)})},Ui.prototype.dragRanges=function(e,t){var n=new Date(e.start.getTime()-t.start),r=new Date(e.start.getTime()+t.end),t=this.groups[e.id.resourceIndex],i=[];return t.dayRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(n,r,e.start,e.end)});e.length&&i.push(e)}),{start:n,end:r,ranges:i}},Ui.prototype.groupSlotByPosition=function(e,t,n){e=this.groups[e.id.resourceIndex].dayRanges.find(function(e){return Nn(e.rect,t,n)});if(e)return e.slots.find(function(e){return Nn(e.rect,t,n)})},Ui.prototype.resizeRanges=function(e,t,n,r){var i,o,a=this.groups[t.resources[0].leafIdx],s=[],l=t.start.toUTCDate(),t=t.end.toUTCDate();return n?((i=e.start.getTime()+r.start)>t.getTime()&&(i=new Date(Math.min(Cn(t,l).getTime(),t.getTime()))),o=t):(i=l,(o=e.start.getTime()+r.end)<i.getTime()&&(o=new Date(Math.max(Cn(l,t).getTime(),i.getTime())))),a.dayRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(i,o,e.start,e.end)});e.length&&s.push(e)}),{start:new Date(i),end:new Date(o),ranges:s}};var Gi,_i=Ui;function Ui(){return null!==Gi&&Gi.apply(this,arguments)||this}c(Ki,Yi=k),Ki.prototype.reflow=function(){this.item.data[this.resourceIndex].hidden?this.toggle(!1):(this.toggle(!0),Yi.prototype.reflow.call(this))};var Yi,C=Ki;function Ki(e,t,n,r,i,o){e=Yi.call(this,e,t,n,r,i,o)||this;return e.localeId=o,e}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:_i},{token:r.LocalizationService},{token:f},{token:n.ElementRef},{token:n.Renderer2},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[monthViewItem]",usesInheritance:!0,ngImport:n,template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>\n </span>\n\n <ng-container *ngIf="resizable">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{selector:"[monthViewItem]",template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>\n </span>\n\n <ng-container *ngIf="resizable">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:_i},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]}});Object.defineProperty(O.prototype,"eventTemplateRef",{get:function(){return this.еventTemplate||(this.schedulerEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(O.prototype,"groupHeaderTemplateRef",{get:function(){return this.groupHeaderTemplate||(this.schedulerGroupHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),O.prototype.ngOnInit=function(){var n=this,e=this.updateView.bind(this);this.resourcesByIndex=this.resourcesByIndex.bind(this),this.subs.add(this.viewContext.selectedDate.subscribe(this.onSelectDate.bind(this))),this.subs.add(this.viewContext.action.subscribe(this.onAction.bind(this))),this.subs.add(this.viewContext.execute.subscribe(this.execute.bind(this))),this.subs.add(this.viewContext.resize.subscribe(function(){n.toggleElement(!1),n.updateView()})),this.subs.add(this.viewContext.optionsChange.subscribe(this.optionsChange.bind(this))),this.subs.add(this.changes.subscribe(function(){n.toggleElement(!1)})),this.subs.add(p.combineLatest(this.viewContext.items,this.viewState.dateRange,this.viewRangeChange).pipe(N.map(function(e){var e=ce(e,2),t=e[0],e=e[1];return n.createTasks(t,e)})).subscribe(function(e){n.tasks=e.map(function(e){return Object.assign(Object.assign({},e),{elementId:l.guid()})}),n.assignResources(),n.onTasksChange()})),this.subs.add(p.combineLatest(this.items,this.changes,this.localization.changes).pipe(N.switchMap(function(){return n.onStable()})).subscribe(e)),this.subs.add(this.pdfService.createElement.subscribe(this.createPDFElement.bind(this)))},O.prototype.ngOnChanges=function(e){l.anyChanged(["selectedDateFormat","selectedShortDateFormat"],e)&&this.viewState.notifyDateRange(this.dateRange(this.selectedDate)),e.eventHeight&&this.changes.next(null)},O.prototype.ngAfterViewInit=function(){var t=this;this.bindEvents(),this.subs.add(this.localization.changes.subscribe(function(e){e=e.rtl;t.rtl=e}))},O.prototype.ngOnDestroy=function(){this.subs.unsubscribe(),this.domEvents.forEach(function(e){return e()}),this.domEvents=[],this.draggable&&(this.draggable.destroy(),this.draggable=null)},O.prototype.itemIndex=function(e,t){return e},O.prototype.resourcesByIndex=function(e){if(!this.resources)return[];if(!this.group)return this.resources.reduce(function(e,t){return e.concat(t.data||[])},[]);if(!this.resourcesCache[e]){for(var t=this.taskResources,n=[],r=e,i=0;i<t.length;i++){var o=t[i].data||[],a=Math.floor(r/this.spans[i]);n.push(o[a]),r-=a*this.spans[i]}this.resourcesCache[e]=n}return this.resourcesCache[e]},O.prototype.dragResourcesByIndex=function(e){var t=this.resources||[],n=[];if(this.groupedResources.length)for(var r=this.resourcesByIndex(e).slice(0),i=this.taskResources,o=0;o<i.length;o++){var a=this.resources.indexOf(i[o]);0<=a&&(n[a]=r[o])}for(o=0;o<t.length;o++)n[o]||(n[o]=Fn(this.dragging.task.event,t[o]));return n},O.prototype.getEventClasses=function(e,t,n){if(this.eventClass)return this.eventClass({event:e.event,resources:t,isAllDay:n})},O.prototype.getEventStyles=function(e,t,n){var r={backgroundColor:t.color,borderColor:t.color};return this.eventStyles&&Object.assign(r,this.eventStyles({event:e.event,resources:t.resources,isAllDay:n})),r},O.prototype.toPlainDate=function(e){return xn(this.convertDate(e))},O.prototype.toPlainDateTime=function(e,t){return e&&t?this.toPlainDate(Cn(e,t)):null},O.prototype.optionsChange=function(e){this.schedulerEventTemplate=e.eventTemplate,this.schedulerGroupHeaderTemplate=e.groupHeaderTemplate,this.min=e.min,this.max=e.max,this.editable=e.editable,this.timezone=e.timezone,this.selectable=e.selectable,this.isSlotSelected=e.isSlotSelected,e.changes&&!l.anyChanged(["group","resources"],e.changes,!1)&&e.group===this.group&&e.resources===this.resources||(this.group=e.group,this.resources=e.resources,this.groupResources(),this.resourcesCache={},this.tasks&&this.tasks.length&&(this.assignResources(),this.onTasksChange()),this.changes.next(null))},O.prototype.toggleElement=function(e){this.element&&this.renderer.setStyle(this.element.nativeElement,"display",e?"block":"none")},O.prototype.onStable=function(){return this.zone.onStable.asObservable().pipe(N.take(1))},O.prototype.updateView=function(){this.slotService.invalidate(),this.toggleElement(!0),this.reflow(),this.viewState.notifyLayoutEnd(),this.viewState.emitEvent(pt.refreshSlotSelection)},O.prototype.assignResources=function(){for(var e=this.tasks,t={taskResources:this.taskResources,hasGroups:0<this.groupedResources.length,allResources:this.resources,spans:this.spans},n=0;n<e.length;n++){var r=e[n];r.resources=Hn(r.event,t)}},O.prototype.bindEvents=function(){var t=this,n=this.content.nativeElement,e=this.element.nativeElement;this.zone.runOutsideAngular(function(){var r;t.times&&t.subs.add(p.merge(p.fromEvent(t.times.nativeElement,"mousewheel"),p.fromEvent(t.times.nativeElement,"DOMMouseScroll")).pipe(N.filter(function(e){return!e.ctrlKey}),N.tap((r=n,function(e){var t=gn(e),n=r.scrollTop;0===n&&0<t||r.scrollHeight<=r.offsetHeight+n&&t<0||e.preventDefault()})),N.map(gn)).subscribe(function(e){return n.scrollTop-=e})),t.subs.add(p.merge(Zt(n),p.fromEvent(n,"contextmenu")).subscribe(function(e){return t.onClick(e)})),t.subs.add(Gt(n).subscribe(function(e){return t.onClick(e,"dblclick")})),t.subs.add(p.fromEvent(e,"keydown").subscribe(function(e){return t.onKeydown(e)})),t.domEvents.push(t.renderer.listen(n,"scroll",function(){t.headerWrap&&(t.headerWrap.nativeElement.scrollLeft=n.scrollLeft),t.times&&(t.times.nativeElement.scrollTop=n.scrollTop)})),t.draggable=new K.Draggable({press:t.onPress.bind(t),drag:t.onDrag.bind(t),release:t.onRelease.bind(t)}),t.draggable.bindTo(e)})},O.prototype.onPress=function(e){var t=this.editable&&!1!==this.editable.resize,n=this.editable&&!1!==this.editable.drag,r=e.originalEvent.target;if(yn(r,"k-resize-handle")){if(!t)return;this.initResize(e)}else n&&(t=this.targetTask(r))&&(e.isTouch||e.originalEvent.preventDefault(),this.pressLocation={x:e.pageX,y:e.pageY},this.pressTarget=t);!this.pressTarget&&this.selectable&&this.initDragSelect(e),this.dragArgs=e},O.prototype.onDrag=function(e){this.resizing?(this.resize(e),this.scrollContainer(this.resize,e)):(this.initDrag(e),this.dragging&&(this.drag(e),e.originalEvent.preventDefault(),this.scrollContainer(this.drag,e)),this.dragSelecting&&this.dragSelect(e)),this.dragArgs=e},O.prototype.onRelease=function(e){clearInterval(this.scrollInterval);var t=this.resizing,n=this.dragging,r=this.dragSelecting;t&&(this.emitEvent("resizeEnd",{event:t.task.event,dataItem:t.task.event.dataItem,start:this.convertDate(t.start),end:this.convertDate(t.end)}),this.resizeHints=[]),n&&(this.emitEvent("dragEnd",{event:n.task.event,dataItem:n.task.event.dataItem,start:n.start?this.convertDate(n.start):n.task.start.toLocalDate(),end:n.end?this.convertDate(n.end):n.task.end.toLocalDate(),resources:n.resources,isAllDay:this.draggedIsAllDay(n.task,n.slot)}),this.dragHints=[]),(t||n)&&(this.removeSlotClass(),this.updateHintContainer(),this.resizing=null,this.dragging=null),r&&(n=(t=En(this.dragSelectOrigin,this.dragSelecting)).start,r=t.end,t={start:this.convertDate(n),end:this.convertDate(r),isAllDay:this.dragSelecting.isDaySlot,resources:this.resourcesByIndex(this.dragSelecting.id.resourceIndex),originalEvent:e.originalEvent},this.viewState.notifySlotSelectionEnd(t),this.dragSelectOrigin=null,this.dragSelecting=null,this.cdr.markForCheck()),this.container=null,this.dragArgs=null,this.pressLocation=null,this.pressTarget=null},O.prototype.setHintClass=function(e){(this.dragging||this.resizing).hintClass=e},O.prototype.updateHintClass=function(){var t=this.dragging||this.resizing,n=!1;this.hints.forEach(function(e){e.class!==t.hintClass&&(e.class=t.hintClass,n=!0)}),n&&this.updateHintContainer()},O.prototype.removeHintClass=function(){(this.dragging||this.resizing).hintClass=null},O.prototype.setSlotClass=function(e){var t=this.dragging||this.resizing;t.slotClass=e,this.renderer.addClass(t.slot.nativeElement,t.slotClass)},O.prototype.removeSlotClass=function(){var e=this.dragging||this.resizing;e.slotClass&&(this.renderer.removeClass(e.slot.nativeElement,e.slotClass),e.slotClass=null)},Object.defineProperty(O.prototype,"hints",{get:function(){return this.dragging?this.dragHints:this.resizeHints},enumerable:!1,configurable:!0}),O.prototype.initDrag=function(e){var t,n,r,i;!this.dragging&&this.pressLocation&&(t=this.pressLocation.x,n=this.pressLocation.y,r=e.pageX,i=e.pageY,10<=Math.sqrt(Math.pow(t-r,2)+Math.pow(n-i,2)))&&(r=(t=this.pressTarget).task,this.emitEvent("dragStart",{event:r.event,dataItem:r.event.dataItem})?(this.pressLocation=null,this.pressTarget=null):(this.updateDragContainer(e),void 0!==this.containerOffset&&(i=(n=this.coordinatesOffset(this.pressLocation.x,this.pressLocation.y)).x,e=n.y,n=this.slotByPosition(Math.ceil(i),Math.ceil(e),this.container))&&(this.dragging=t,this.dragging.offset={start:n.start.getTime()-r.start.toUTCDate().getTime(),end:r.end.toUTCDate().getTime()-n.start.getTime()},this.dragging.slot=n,this.dragging.startResources=this.dragging.resourceItems=this.dragResourcesByIndex(n.id.resourceIndex),this.dragging.resources=this.resourceValues(r,this.dragging.startResources))))},O.prototype.updateDragContainer=function(e){this.container||(this.container=this.content.nativeElement,this.containerOffset=Ln(this.container))},O.prototype.drag=function(e){if(this.updateDragContainer(e),this.container){var e=this.coordinatesOffset(e.pageX,e.pageY),t=e.x,e=e.y,t=this.slotByPosition(t,e,this.container);if(t&&(t!==this.dragging.slot||!this.dragHints.length)){var e=this.dragging,n=e.slot,r=e.task,i=this.dragRanges(t),o=i.ranges,a=i.start,s=i.end,i=i.isAllDay,l=void 0,c=void 0,c=n.id.resourceIndex!==t.id.resourceIndex?(l=this.dragResourcesByIndex(t.id.resourceIndex),this.resourceValues(r,l)):(l=e.resourceItems,e.resources);if(this.removeSlotClass(),e.start=a,e.end=s,e.slot=t,e.resources=c,e.resourceItems=l,e.hintClass=null,this.emitEvent("drag",{event:r.event,dataItem:r.event.dataItem,start:this.convertDate(a),end:this.convertDate(s),resources:c,isAllDay:i,setHintClass:this.setHintClass,setSlotClass:this.setSlotClass}))this.updateHintClass();else{var d=this.dragResourceColor(r,l),u=this.dragHintClasses();this.dragHints=[];for(var p=0;p<o.length;p++){var h=o[p],m=h[0],h=h[h.length-1],h=this.dragHintSize(m,h),g=m.rect.left,m={top:jn(m.rect.top),left:this.localization.rtl?"":jn(g),right:this.localization.rtl?jn(g):"",width:h.width,height:h.height,backgroundColor:d,borderColor:d};this.eventStyles&&Object.assign(m,this.eventStyles(this.dragHintEventStyleArgs())),this.dragHints.push({item:Object.assign({},this.dragging.task,{startTime:a,endTime:s}),resources:l,class:u,style:m})}this.updateHintContainer()}}}},O.prototype.initDragSelect=function(e){var t,n;this.updateDragContainer(e),this.containerOffset&&(t=(n=this.coordinatesOffset(e.pageX,e.pageY)).x,n=n.y,t=this.slotByPosition(t,n,this.container))&&(n={start:this.convertDate(t.start),end:this.convertDate(t.end),isAllDay:t.isDaySlot,resources:this.resourcesByIndex(t.id.resourceIndex),originalEvent:e.originalEvent},e=new nt(null,n),this.viewState.notifySlotSelectionStart(e),e.isDefaultPrevented()||(this.dragSelecting=t,this.dragSelectOrigin=t,this.cdr.markForCheck()))},O.prototype.dragSelect=function(e){var t,n=this.coordinatesOffset(e.pageX,e.pageY),r=n.x,n=n.y,r=this.slotByPosition(r,n,this.container);r&&this.dragSelecting!==r&&(this.dragSelecting=r,t=(n=En(this.dragSelectOrigin,this.dragSelecting)).start,n=n.end,t={start:this.convertDate(t),end:this.convertDate(n),isAllDay:r.isDaySlot,resources:this.resourcesByIndex(r.id.resourceIndex),originalEvent:e.originalEvent},this.viewState.notifySlotSelectionDrag(t),this.cdr.markForCheck())},O.prototype.dragHintClasses=function(){var e=this.dragging.hintClass,t=[];return e&&t.push(e),this.eventClass&&(e=this.eventClass(this.dragHintEventStyleArgs()),t=t.concat(Gn(e))),t},O.prototype.dragHintEventStyleArgs=function(){return{event:this.dragging.task.event,resources:this.dragging.resourceItems}},O.prototype.draggedIsAllDay=function(e,t){return Boolean(e.event.isAllDay)},O.prototype.dragResourceColor=function(e,t){var n;return this.groupedResources.length?(n=this.resources.indexOf(this.groupedResources[0]),x(t[n],this.groupedResources[0].colorField)):this.resources&&this.resources.length?e.resources[0].color:""},O.prototype.resourceValues=function(e,t){for(var n={},r=0;r<t.length;r++){var i=this.resources[r],o=t[r],a=void 0;Array.isArray(o)?a=x(e.event,i.field):(a=x(t[r],i.valueField),i.multiple&&(a=x(this.dragging.startResources[r],i.valueField)!==a?[a]:x(e.event.dataItem,i.field))),At(n,i.field,a)}return n},O.prototype.initResize=function(e){e.originalEvent.preventDefault();var t=e.originalEvent.target,n=this.targetTask(t);this.emitEvent("resizeStart",{event:n.task.event,dataItem:n.task.event.dataItem})||((this.resizing=n).start=n.task.start.toUTCDate(),n.end=n.task.end.toUTCDate(),yn(t,"k-resize-n")?n.direction="n":yn(t,"k-resize-s")?n.direction="s":yn(t,"k-resize-w")?n.direction="w":n.direction="e",this.updateDragContainer(e),e=(t=this.coordinatesOffset(e.pageX,e.pageY)).x,t=t.y,n.slot=this.slotByPosition(Math.ceil(e),Math.ceil(t),this.container),n.offset={start:n.task.start.toUTCDate().getTime()-n.slot.start.getTime(),end:n.task.end.toUTCDate().getTime()-n.slot.start.getTime()})},O.prototype.resize=function(e){var e=this.coordinatesOffset(e.pageX,e.pageY),t=e.x,e=e.y,n=this.resizing,r=n.direction,i=n.task,o=n.offset,t=this.slotService.groupSlotByPosition(n.slot,t,e);t&&t!==n.slot&&(this.removeSlotClass(),r=(e=this.slotService.resizeRanges(t,i,"w"===r||"n"===r,o)).start,o=e.end,e=e.ranges,n.hintClass=null,n.start=r,n.end=o,n.slot=t,this.emitEvent("resize",{event:i.event,dataItem:i.event.dataItem,start:this.convertDate(r),end:this.convertDate(o),setHintClass:this.setHintClass,setSlotClass:this.setSlotClass})?this.updateHintClass():(this.updateResizeHints(e,r,o),this.updateHintContainer()))},O.prototype.updateResizeHints=function(e,t,n){var r=this.resizing,i=r.direction,o="w"===i||"e"===i,a="w"===i||"n"===i;this.resizeHints=[];for(var s=0;s<e.length;s++){var l=e[s],c=l[0],l=l[l.length-1],d=0===s,u=s===e.length-1;this.resizeHints.push({first:d,last:u,rect:{left:c.rect.left,top:c.top,height:o?c.height:Math.abs(l.rect.top-c.rect.top)+l.rect.height,width:o?Math.abs(l.rect.left-c.rect.left)+l.rect.width:c.width},start:(d&&!a?r:c).start,end:(u&&a?r:l).end,class:r.hintClass})}},O.prototype.coordinatesOffset=function(e,t,n,r){void 0===n&&(n=this.container);e=e-(r=void 0===r?this.containerOffset:r).left+n.scrollLeft;return{x:this.localization.rtl?this.slotService.containerSize-e:e,y:t-r.top+n.scrollTop}},O.prototype.scrollContainer=function(e,t){var n,r,i,o,a,s,l,c,d,u=this,p=(clearInterval(this.scrollInterval),this.container);p&&(n=t.pageY-this.containerOffset.top,r=Math.abs(p.offsetHeight-n),i=t.pageY-this.dragArgs.pageY,o=t.pageX-this.containerOffset.left,a=Math.abs(p.offsetWidth-o),s=t.pageX-this.dragArgs.pageX,l=!1,d=c=0,r<60&&p.scrollTop+p.offsetHeight<p.scrollHeight&&0<i?(l=!0,d=15,this.container.scrollTop+=60-r):n<60&&0<p.scrollTop&&i<0&&(l=!0,d=-15,this.container.scrollTop-=60-n),a<60&&p.scrollLeft+p.offsetWidth<p.scrollWidth&&0<s?(l=!0,c=15,this.container.scrollLeft+=60-a):o<60&&0<p.scrollLeft&&i<0&&(l=!0,c=-15,this.container.scrollLeft-=60-o),l)&&(this.scrollInterval=setInterval(function(){u.container?(u.container.scrollLeft+=c,u.container.scrollTop+=d,e.call(u,t)):clearInterval(u.scrollInterval)},50))},O.prototype.emitEvent=function(e,t){return this.viewState.emitEvent(e,t),t.prevented},O.prototype.targetTask=function(e){var t,e=mn(e,function(e){return e.hasAttribute("data-task-index")},this.element.nativeElement);if(e)return t=parseInt(e.getAttribute("data-task-index"),10),{target:e,task:this.tasks.find(function(e){return e.index===t})}},O.prototype.updateHintContainer=function(){this.hintContainer&&this.hintContainer.detectChanges()},O.prototype.convertDate=function(e){return b.ZonedDate.fromUTCDate(e,this.timezone).toLocalDate()},O.prototype.onClick=function(e,t){void 0===t&&(t=e.type),this.emitSlotEvent(e,t),this.emitTaskEvent(e,t)},O.prototype.emitSlotEvent=function(e,t){var n,r=mn(e.target,function(e){return e.hasAttribute("data-slot-index")},this.element.nativeElement);r&&(r=r.getAttribute("data-slot-index"),n="dblclick"===t?"slotDblClick":"slotClick",r=this.slotByIndex(r,e),this.viewState.emitEvent(n,{type:t,slot:r,start:this.convertDate(r.start),end:this.convertDate(r.end),isAllDay:r.isDaySlot,originalEvent:e,resources:this.resources&&this.resources.length?this.resourcesByIndex(r.id.resourceIndex):[]}))},O.prototype.emitTaskEvent=function(e,t){var n,r,i=this.targetTask(e.target);i&&(n=i.task,r="dblclick"===t,"click"===t&&mn(e.target,function(e){return yn(e,"k-event-delete")},i.target)?this.viewState.emitEvent("remove",{event:n.event,dataItem:n.event.dataItem}):(this.viewState.emitEvent(r?"eventDblClick":"eventClick",{type:t,event:n.event,originalEvent:e}),i.target.focus()))},O.prototype.onKeydown=function(e){var t=this.targetTask(e.target);t&&(t=t.task,this.viewState.emitEvent("eventKeydown",{event:t.event,dataItem:t.event.dataItem,originalEvent:e}))},O.prototype.syncTables=function(){var e,t;this.timesTable&&this.renderer.setStyle(this.timesTable.nativeElement,"height",this.contentTable.nativeElement.offsetHeight+"px"),fn(this.content.nativeElement,"vertical")||this.renderer.setStyle(this.header.nativeElement,this.localization.rtl?"padding-inline-start":"padding-inline-end","0px"),this.renderer.removeStyle(this.header.nativeElement,this.localization.rtl?"padding-inline-end":"padding-inline-start"),this.times&&(e=this.times.nativeElement,this.timesHeader.nativeElement.style.width=e.offsetWidth+"px",t="auto"===this.contentHeight?this.content.nativeElement.offsetHeight:this.contentHeight,this.renderer.setStyle(e,"height",t-(fn(this.content.nativeElement,"horizontal")?l.getScrollbarWidth():0)+"px"),e.scrollTop=this.content.nativeElement.scrollTop)},O.prototype.updateContentHeight=function(){var e=this.element.nativeElement,t=e.parentNode,n=this.content.nativeElement,r=this.autoHeight||!t.style.height,i=n.scrollLeft,o=n.scrollTop;if(this.renderer.setStyle(n,"height",""),this.times&&this.renderer.setStyle(this.times.nativeElement,"height",""),r)this.contentHeight="auto";else{for(var a=t.clientHeight,s=0;s<t.children.length;s++){var l=t.children[s];l===e||qn(l)||(a-=l.offsetHeight)}a-=this.headerWrap?this.headerWrap.nativeElement.offsetHeight:0,this.renderer.setStyle(n,"height",a+"px"),this.contentHeight=a,n.scrollLeft=i,n.scrollTop=o}},O.prototype.groupResources=function(){var e=this.resources||[],t=this.group||{};this.groupedResources=zt(t,e),"vertical"!==t.orientation?(this.horizontalResources=this.groupedResources,this.verticalResources=[]):(this.verticalResources=this.groupedResources,this.horizontalResources=[]),this.spans=this.resourceSpans()},Object.defineProperty(O.prototype,"taskResources",{get:function(){return this.groupedResources.length?this.groupedResources:this.resources&&this.resources.length?[this.resources[0]]:[{}]},enumerable:!1,configurable:!0}),O.prototype.resourceSpans=function(){for(var e=[1],t=this.groupedResources,n=1,r=t.length-1;0<r;r--)n*=(t[r].data||[]).length||1,e.unshift(n);return e},O.prototype.isInRange=function(e){e=this.dateRange(e);return(!this.min||this.min<e.end)&&(!this.max||e.start<=this.max)},O.prototype.createPDFElement=function(){var e=this.contentHeight,t=this.content.nativeElement.scrollTop,n=("auto"!==e&&(this.autoHeight=!0,this.updateView()),this.element.nativeElement.cloneNode(!0));n.style.width=this.pdfWidth()+"px","auto"!==e&&(this.autoHeight=!1,this.updateView()),this.pdfService.elementReady.emit({element:n}),this.content.nativeElement.scrollTop=t},O.prototype.pdfWidth=function(){return this.element.nativeElement.offsetWidth},O.prototype.containerByPosition=function(e){var t=e.x,e=e.y,n=this.content.nativeElement,r=Ln(n);if(r.top<=e&&e<=r.top+r.height&&r.left<=t&&t<=r.left+r.width)return{element:n,offset:r}},O.prototype.execute=function(e){var t,n;"slotByPosition"===e.name?(n=this.containerByPosition(e.args))&&(t=this.coordinatesOffset(e.args.x,e.args.y,n.element,n.offset),t=this.slotByPosition(t.x,t.y,n.element),e.result(this.slotFields(t))):"eventFromElement"===e.name&&(n=this.targetTask(e.args.element))&&e.result(n.task.event)},O.prototype.slotFields=function(e){return{element:e.element,resources:this.groupedResources.length?this.resourcesByIndex(e.id.resourceIndex):[],start:this.convertDate(e.start),end:this.convertDate(e.end)}};E=O;function O(e,t,n,r,i,o,a,s,l,c,d){this.viewContext=e,this.viewState=t,this.intl=n,this.slotService=r,this.zone=i,this.renderer=o,this.element=a,this.pdfService=s,this.localization=l,this.cdr=c,this.scrollBarWidthService=d,this.items=new p.BehaviorSubject(null),this.horizontalResources=[],this.verticalResources=[],this.dragHints=[],this.resizeHints=[],this.getField=x,this.changes=new p.BehaviorSubject(null),this.viewRangeChange=new p.BehaviorSubject(null),this.subs=new p.Subscription,this.groupedResources=[],this.spans=[],this.domEvents=[],this.resourcesCache={},this.dragSelecting=null,this.dragSelectOrigin=null,this.autoHeight=!1,this.rtl=!1,this.isSlotSelected=function(){return!1},this.setSlotClass=this.setSlotClass.bind(this),this.setHintClass=this.setHintClass.bind(this),this.weekStart=n.firstDay()}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:m},{token:g},{token:o.IntlService},{token:Vi},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Directive}),E.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:E,inputs:{"еventTemplate":"еventTemplate",groupHeaderTemplate:"groupHeaderTemplate",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",eventHeight:"eventHeight",slotClass:"slotClass",eventClass:"eventClass",eventStyles:"eventStyles",weekStart:"weekStart"},viewQueries:[{propertyName:"content",first:!0,predicate:["content"],descendants:!0},{propertyName:"header",first:!0,predicate:["header"],descendants:!0},{propertyName:"contentTable",first:!0,predicate:["contentTable"],descendants:!0},{propertyName:"times",first:!0,predicate:["times"],descendants:!0},{propertyName:"timesHeader",first:!0,predicate:["timesHeader"],descendants:!0},{propertyName:"timesTable",first:!0,predicate:["timesTable"],descendants:!0},{propertyName:"headerWrap",first:!0,predicate:["headerWrap"],descendants:!0},{propertyName:"hintContainer",first:!0,predicate:["hintContainer"],descendants:!0}],usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:Vi},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:J.ScrollbarWidthService}]},propDecorators:{"еventTemplate":[{type:h.Input}],groupHeaderTemplate:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],eventHeight:[{type:h.Input}],slotClass:[{type:h.Input}],eventClass:[{type:h.Input}],eventStyles:[{type:h.Input}],weekStart:[{type:h.Input}],content:[{type:h.ViewChild,args:["content",{static:!1}]}],header:[{type:h.ViewChild,args:["header",{static:!1}]}],contentTable:[{type:h.ViewChild,args:["contentTable",{static:!1}]}],times:[{type:h.ViewChild,args:["times",{static:!1}]}],timesHeader:[{type:h.ViewChild,args:["timesHeader",{static:!1}]}],timesTable:[{type:h.ViewChild,args:["timesTable",{static:!1}]}],headerWrap:[{type:h.ViewChild,args:["headerWrap",{static:!1}]}],hintContainer:[{type:h.ViewChild,args:["hintContainer",{static:!1}]}]}});$i.prototype.detectChanges=function(){this.changeDetector.detectChanges()};Ii=$i;function $i(e){this.changeDetector=e,this.changeDetector.detach()}Ii.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,deps:[{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Component}),Ii.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Ii,selector:"kendo-hint-container",queries:[{propertyName:"hintTemplate",first:!0,predicate:h.TemplateRef,descendants:!0}],ngImport:n,template:'\n <ng-container [ngTemplateOutlet]="hintTemplate">\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Ii,decorators:[{type:h.Component,args:[{selector:"kendo-hint-container",template:'\n <ng-container [ngTemplateOutlet]="hintTemplate">\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:n.ChangeDetectorRef}]},propDecorators:{hintTemplate:[{type:h.ContentChild,args:[h.TemplateRef,{static:!1}]}]}});Object.defineProperty(Xi.prototype,"left",{get:function(){return this.hint.rect.left},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"top",{get:function(){return this.hint.rect.top},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"width",{get:function(){return this.hint.rect.width},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"height",{get:function(){return this.hint.rect.height},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"start",{get:function(){return b.toLocalDate(this.hint.start)},enumerable:!1,configurable:!0}),Object.defineProperty(Xi.prototype,"end",{get:function(){return b.toLocalDate(this.hint.end)},enumerable:!1,configurable:!0});Si=Xi;function Xi(){this.marqueeClasses=!0}Si.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,deps:[],target:n.ɵɵFactoryTarget.Component}),Si.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Si,selector:"[kendoResizeHint]",inputs:{hint:"hint",format:"format"},host:{properties:{"class.k-marquee":"this.marqueeClasses","class.k-scheduler-marquee":"this.marqueeClasses","class.k-first":"this.marqueeClasses","class.k-last":"this.marqueeClasses","style.left.px":"this.left","style.right.px":"this.left","style.top.px":"this.top","style.width.px":"this.width","style.height.px":"this.height"}},ngImport:n,template:'\n <div class="k-marquee-color"></div>\n <div class="k-marquee-text">\n <div class="k-label-top" *ngIf="hint.first">{{ start | kendoDate : format }}</div>\n <div class="k-label-bottom" *ngIf="hint.last">{{ end | kendoDate : format }}</div>\n </div>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]}],pipes:{kendoDate:o.DatePipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Si,decorators:[{type:h.Component,args:[{selector:"[kendoResizeHint]",template:'\n <div class="k-marquee-color"></div>\n <div class="k-marquee-text">\n <div class="k-label-top" *ngIf="hint.first">{{ start | kendoDate : format }}</div>\n <div class="k-label-bottom" *ngIf="hint.last">{{ end | kendoDate : format }}</div>\n </div>\n '}]}],propDecorators:{hint:[{type:h.Input}],format:[{type:h.Input}],marqueeClasses:[{type:h.HostBinding,args:["class.k-marquee"]},{type:h.HostBinding,args:["class.k-scheduler-marquee"]},{type:h.HostBinding,args:["class.k-first"]},{type:h.HostBinding,args:["class.k-last"]}],left:[{type:h.HostBinding,args:["style.left.px"]},{type:h.HostBinding,args:["style.right.px"]}],top:[{type:h.HostBinding,args:["style.top.px"]}],width:[{type:h.HostBinding,args:["style.width.px"]}],height:[{type:h.HostBinding,args:["style.height.px"]}]}});Object.defineProperty(Qi.prototype,"slotIndex",{get:function(){return this.key},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"start",{get:function(){return this._start},set:function(e){this._start=e},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"end",{get:function(){return this._end},set:function(e){this._end=e},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"rect",{get:function(){var e;return this._rect||(e=this.nativeElement,this._rect={left:this.localization.rtl?this.slotService.containerSize-(e.offsetLeft+e.clientWidth):e.offsetLeft,top:e.offsetTop,width:e.clientWidth,height:e.clientHeight}),this._rect},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"top",{get:function(){return this.element?this.nativeElement.offsetTop:0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"padding",{get:function(){return this.element&&l.isDocumentAvailable()?2*parseInt(window.getComputedStyle(this.nativeElement).paddingTop,10):0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"height",{get:function(){return this.element?this.nativeElement.offsetHeight:0},set:function(e){this.element&&(this.nativeElement.style.height=e+"px"),this._rect&&(this._rect.height=e)},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"width",{get:function(){return this.element?this.nativeElement.offsetWidth:0},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"key",{get:function(){return this.id.resourceIndex+":"+this.id.rangeIndex+":"+this.id.index},enumerable:!1,configurable:!0}),Object.defineProperty(Qi.prototype,"nativeElement",{get:function(){return this.element.nativeElement},enumerable:!1,configurable:!0}),Qi.prototype.ngOnInit=function(){this.slotService.registerSlot(this)},Qi.prototype.ngOnDestroy=function(){this.slotService.unregisterSlot(this)},Qi.prototype.invalidate=function(){this._rect=null};R=Qi;function Qi(e,t,n){this.element=e,this.slotService=t,this.localization=n,this._rect=null}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:n.ElementRef},{token:Vi},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),R.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:R,inputs:{id:"id"},host:{properties:{"attr.data-slot-index":"this.slotIndex"}},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:n.ElementRef},{type:Vi},{type:r.LocalizationService}]},propDecorators:{id:[{type:h.Input}],slotIndex:[{type:h.HostBinding,args:["attr.data-slot-index"]}]}});c(to,Ji=R),Object.defineProperty(to.prototype,"start",{get:function(){return this.startDate},set:function(e){this.startDate=wn(e)},enumerable:!1,configurable:!0}),Object.defineProperty(to.prototype,"end",{get:function(){return In(this.start,1)},enumerable:!1,configurable:!0}),Object.defineProperty(to.prototype,"linkHeight",{get:function(){var e;return null===this._linkHeight&&(e=function(e){for(var t=e.children,n=t.length,r=0;r<n;r++)if(1===t[r].nodeType)return t[r]}(this.nativeElement),this._linkHeight=e?e.offsetHeight+e.offsetTop:0),this._linkHeight},enumerable:!1,configurable:!0}),to.prototype.ngOnDestroy=function(){Ji.prototype.ngOnDestroy.call(this),this.removeShowMore()},to.prototype.showMore=function(e){var t;this.showMoreElement||((t=this.showMoreElement=document.createElement("div")).innerHTML='<span class="k-icon k-i-more-horizontal"></span>',t.className="k-more-events k-button",t.style.width=e.width+"px",t.style.left=e.left+"px",t.style.top=e.top+"px",this.nativeElement.appendChild(t))},to.prototype.hideMore=function(){this.removeShowMore()},to.prototype.invalidate=function(){Ji.prototype.invalidate.call(this),this._linkHeight=null,this.removeShowMore()},to.prototype.removeShowMore=function(){this.showMoreElement&&(this.showMoreElement.parentNode.removeChild(this.showMoreElement),this.showMoreElement=null)};var Ji,eo=to;function to(e,t,n){e=Ji.call(this,e,t,n)||this;return e.isDaySlot=!0,e._linkHeight=null,e}eo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,deps:[{token:n.ElementRef},{token:_i},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),eo.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:eo,selector:"[monthSlot]",inputs:{start:"start"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,decorators:[{type:h.Directive,args:[{selector:"[monthSlot]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:_i},{type:r.LocalizationService}]},propDecorators:{start:[{type:h.Input}]}});ro.prototype[qt]=function(){var t,n,r,i,o,a;return le(this,function(e){switch(e.label){case 0:for(t=this.resources,n=Math.max(0,this.lastIndex),t&&t.length||(t=[{}]),r=t[n].data||[],i=r.length,o=1,a=0;a<=n;a++)o*=(t[a].data||[]).length||1;a=0,e.label=1;case 1:return a<o?[4,r[a%i]]:[3,4];case 2:e.sent(),e.label=3;case 3:return a++,[3,1];case 4:return[2]}})};var no=ro;function ro(e,t){void 0===t&&(t=e.length-1),this.resources=e,this.lastIndex=t}oo.prototype.transform=function(e,t){return new no(e=void 0===e?[]:e,t)};var io=oo;function oo(){}io.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,deps:[],target:n.ɵɵFactoryTarget.Pipe}),io.ɵpipe=n.ɵɵngDeclarePipe({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,name:"resourceIterator"}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:io,decorators:[{type:h.Pipe,args:[{name:"resourceIterator"}]}]});so.prototype[qt]=function(){var t;return le(this,function(e){switch(e.label){case 0:t=0,e.label=1;case 1:return t<this.count?[4,t]:[3,4];case 2:e.sent(),e.label=3;case 3:return t++,[3,1];case 4:return[2]}})};var ao=so;function so(e){this.count=e}lo.prototype.transform=function(e){return new ao(e)};qt=lo;function lo(){}qt.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,deps:[],target:n.ɵɵFactoryTarget.Pipe}),qt.ɵpipe=n.ɵɵngDeclarePipe({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,name:"repeat"}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qt,decorators:[{type:h.Pipe,args:[{name:"repeat"}]}]});c(H,co=E),Object.defineProperty(H.prototype,"monthDaySlotTemplateRef",{get:function(){return this.monthDaySlotTemplate||(this.schedulerMonthDaySlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),H.prototype.ngOnChanges=function(e){l.isChanged("weekStart",e)&&this.onSelectDate(this.selectedDate),co.prototype.ngOnChanges.call(this,e)},H.prototype.ngAfterViewInit=function(){this.updateOngoingEvents(),co.prototype.ngAfterViewInit.call(this)},H.prototype.ngOnDestroy=function(){clearTimeout(this.ongoingEventsTimeout),co.prototype.ngOnDestroy.call(this)},H.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=7,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},H.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=6,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},H.prototype.verticalItem=function(e,t){for(var n=this.verticalResources[t].data||[],r=this.verticalResources,i=1,o=t+1;o<r.length;o++)i*=(r[o].data||[]).length||1;return n[e/i%n.length]},H.prototype.daySlotClass=function(e,t){if(this.slotClass)return this.slotClass({start:e,end:b.addDays(e,1),resources:this.resourcesByIndex(t),isAllDay:!1})},H.prototype.cellTitle=function(e){return this.intl.formatDate(e,"D")},H.prototype.addDay=function(e){return b.addDays(e,1)},H.prototype.optionsChange=function(e){this.schedulerMonthDaySlotTemplate=e.monthDaySlotTemplate,co.prototype.optionsChange.call(this,e)},H.prototype.createTasks=function(e,t){this.weeks=this.createDaySlots(t);for(var n=t.start,t=t.end,r=e,i=this.weeks,o=[],a=wn(n),s=wn(t),l=0;l<r.length;l++){var c=r[l],d={},u=c.start.toUTCDate(),p=c.end,h=(c.end.getTime()!==p.getTime()?p.addDays(1):p).toUTCDate();if(vn(u,h,a,s))for(var m=0;m<i.length;m++){var g,y=i[m],f=wn(y[0]),y=In(wn(y[y.length-1]),1);vn(u,h,f,y)&&(g={index:l,startTime:u,endTime:h,start:c.start,end:c.end,event:c.event,isAllDay:c.event.isAllDay,rangeIndex:m,data:d},o.push(g),g.head=g.endTime>y,g.tail=g.startTime<f)}}return _t(o)},H.prototype.onTasksChange=function(){for(var e=this.tasks,t=0;t<e.length;t++){var n,r=e[t],i=r.resources,o=(n=o=void 0,r.data);for(n in o)o.hasOwnProperty(n)&&delete o[n];for(var a=0;a<i.length;a++)r.data[i[a].leafIdx]={}}this.items.next(this.tasks)},H.prototype.reflow=function(){this.updateContentHeight();var e=this.content.nativeElement;this.slotService.containerSize=e.scrollWidth,"auto"===this.contentHeight&&(e.style.overflow="visible"),this.slotService.layout(this.eventHeight),"auto"===this.contentHeight&&(e.style.overflow=""),this.syncTables()},H.prototype.onClick=function(e,t){var n=this;if("click"===(t=void 0===t?e.type:t)){var r,i=mn(e.target,function(e){return e.hasAttribute("data-slot-index")},this.element.nativeElement),o=mn(e.target,function(e){return yn(e,"k-more-events k-nav-day")},i);if(i&&o)return o=i.getAttribute("data-slot-index"),r=this.slotService.slotByIndex(o),void this.zone.run(function(){n.viewState.navigateTo({viewName:"day",date:b.toLocalDate(r.start)}),n.focusService.clearActiveDescendant()})}co.prototype.onClick.call(this,e,t)},H.prototype.slotByIndex=function(e,t){return this.slotService.slotByIndex(e)},H.prototype.onSelectDate=function(e){var t=this.dateRange(e);this.selectedDate=e,this.viewState.notifyDateRange(t),this.weeks=this.createDaySlots(t)},H.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=b.firstDayOfMonth(b.addMonths(n,1)),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=b.firstDayOfMonth(b.addMonths(n,-1)),this.isInRange(t))&&this.viewState.notifyNextDate(t)},H.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=b.firstDayOfMonth(b.getDate(e)),t=b.firstDayInWeek(e,this.weekStart);return{start:t,end:b.addDays(t,42),text:this.intl.format(this.selectedDateFormat,e),shortText:this.intl.format(this.selectedShortDateFormat,e)}},H.prototype.dragRanges=function(e){return this.slotService.dragRanges(e,this.dragging.offset)},H.prototype.dragHintSize=function(e,t){return{width:jn(t.rect.left-e.rect.left+t.rect.width),height:jn(e.height)}},H.prototype.slotByPosition=function(e,t){return this.slotService.slotByPosition(e,t)},H.prototype.updateOngoingEvents=function(){var e=this,t=!this.highlightOngoingEvents||!1===this.highlightOngoingEvents.enabled;l.isDocumentAvailable()&&!t&&(clearTimeout(this.ongoingEventsTimeout),this.zone.runOutsideAngular(function(){e.ongoingEventsTimeout=setTimeout(e.updateOngoingEvents,e.highlightOngoingEvents.updateInterval||6e4)}),this.toggleOngoingClass())},H.prototype.currentTime=function(){return new Date},H.prototype.toggleOngoingClass=function(){var n=this,r=this.currentTime(),i=y(this.highlightOngoingEvents.cssClass)?this.highlightOngoingEvents.cssClass:Bi;this.eventElements.forEach(function(e){var t=kn(r,e.item.start,e.item.end);n.renderer[t?"addClass":"removeClass"](e.nativeElement,i)})},H.prototype.createDaySlots=function(e){for(var t=[],n=e.start,r=0;r<6;r++){var i=[];t.push(i);for(var o=0;o<7;o++)i.push(n),n=b.addDays(n,1)}return t};var co,F=H;function H(e,t,n,r,i,o,a,s,l,c,d,u){e=co.call(this,e,t,n,r,i,a,o,s,l,c,u)||this;return e.focusService=d,e.resizeHintFormat={skeleton:"Md"},e.weeks=[],e.updateOngoingEvents=e.updateOngoingEvents.bind(e),e}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:m},{token:g},{token:o.IntlService},{token:_i},{token:n.NgZone},{token:n.ElementRef},{token:n.Renderer2},{token:v},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),F.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"month-view",inputs:{monthDaySlotTemplate:"monthDaySlotTemplate",highlightOngoingEvents:"highlightOngoingEvents"},providers:[_i],viewQueries:[{propertyName:"eventElements",predicate:C,descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-monthview k-scheduler-flex-layout">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader *ngIf="verticalResources.length">\n <table class="k-scheduler-table" aria-hidden="true">\n <tr>\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex">\n <th *ngFor="let day of weeks[0]; trackBy: itemIndex">\n {{ day | kendoDate: \'EEEE\' }}\n </th>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times k-scheduler-resources" #times *ngIf="verticalResources.length">\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex">\n <tr>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell" [ngClass]="{ \'k-last-resource\': resourceIndex === verticalResources.length - 1 }">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-slot-cell k-empty-slot">\n </th>\n </tr>\n <tr *ngFor="let index of 5 | repeat; trackBy: itemIndex">\n <th class="k-slot-cell k-empty-slot"></th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" tabindex="0" #content>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">\n <tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex">\n <td *ngFor="let day of week; let index = index; trackBy: itemIndex"\n monthSlot\n [ngClass]="daySlotClass(day, verticalResources.length ? verticalIndex : horizontalIndex)"\n [start]="day"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [title]="cellTitle(day)"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(day),\n end: addDay(toPlainDate(day)),\n isAllDay: true,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <span aria-hidden="true" class="k-link k-nav-day" *ngIf="!monthDaySlotTemplateRef">{{ day | kendoDate: \'dd\' }}</span>\n <ng-container *ngIf="monthDaySlotTemplateRef" [ngTemplateOutlet]="monthDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: day, resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n monthViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n monthViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:C,selector:"[monthViewItem]"},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:eo,selector:"[monthSlot]",inputs:["start"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}],pipes:{resourceIterator:io,kendoDate:o.DatePipe,repeat:qt,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Component,args:[{selector:"month-view",providers:[_i],template:'\n <div class="k-scheduler-layout k-scheduler-monthview k-scheduler-flex-layout">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader *ngIf="verticalResources.length">\n <table class="k-scheduler-table" aria-hidden="true">\n <tr>\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex">\n <th *ngFor="let day of weeks[0]; trackBy: itemIndex">\n {{ day | kendoDate: \'EEEE\' }}\n </th>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times k-scheduler-resources" #times *ngIf="verticalResources.length">\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex">\n <tr>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell" [ngClass]="{ \'k-last-resource\': resourceIndex === verticalResources.length - 1 }">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-slot-cell k-empty-slot">\n </th>\n </tr>\n <tr *ngFor="let index of 5 | repeat; trackBy: itemIndex">\n <th class="k-slot-cell k-empty-slot"></th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" tabindex="0" #content>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">\n <tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex">\n <td *ngFor="let day of week; let index = index; trackBy: itemIndex"\n monthSlot\n [ngClass]="daySlotClass(day, verticalResources.length ? verticalIndex : horizontalIndex)"\n [start]="day"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [title]="cellTitle(day)"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(day),\n end: addDay(toPlainDate(day)),\n isAllDay: true,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <span aria-hidden="true" class="k-link k-nav-day" *ngIf="!monthDaySlotTemplateRef">{{ day | kendoDate: \'dd\' }}</span>\n <ng-container *ngIf="monthDaySlotTemplateRef" [ngTemplateOutlet]="monthDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: day, resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n monthViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n monthViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:m},{type:g},{type:o.IntlService},{type:_i},{type:n.NgZone},{type:n.ElementRef},{type:n.Renderer2},{type:v},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{monthDaySlotTemplate:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],eventElements:[{type:h.ViewChildren,args:[C]}]}});c(ho,uo=t),Object.defineProperty(ho.prototype,"title",{get:function(){return this.localization.get("monthViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(ho.prototype,"viewEventHeight",{get:function(){return y(this.eventHeight)?this.eventHeight:this.schedulerOptions.eventHeight||25},enumerable:!1,configurable:!0});var uo,po=ho;function ho(e,t,n,r){e=uo.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:Y}",e.selectedShortDateFormat="{0:y}",e.name="month",e}po.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:po,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),po.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:po,selector:"kendo-scheduler-month-view",inputs:{eventHeight:"eventHeight",selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return po})}],queries:[{propertyName:"monthDaySlotTemplate",first:!0,predicate:Tt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <month-view\n [eventHeight]="viewEventHeight"\n [еventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [monthDaySlotTemplate]="monthDaySlotTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [weekStart]="viewWeekStart">\n </month-view>\n </ng-template>\n ',isInline:!0,components:[{type:F,selector:"month-view",inputs:["monthDaySlotTemplate","highlightOngoingEvents"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:po,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-month-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return po})}],template:'\n <ng-template #content>\n <month-view\n [eventHeight]="viewEventHeight"\n [еventTemplate]="eventTemplate?.templateRef"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [monthDaySlotTemplate]="monthDaySlotTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [weekStart]="viewWeekStart">\n </month-view>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{eventHeight:[{type:h.Input}],selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],monthDaySlotTemplate:[{type:h.ContentChild,args:[Tt,{static:!1}]}]}});go.prototype.onItemClick=function(e,t){e.preventDefault(),this.itemClick.emit(t)};var mo=go;function go(){this.hostClasses=!0,this.inlineJustifyContentStyle="start",this.itemClick=new h.EventEmitter}mo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mo,deps:[],target:n.ɵɵFactoryTarget.Component}),mo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:mo,selector:"[viewFooter]",inputs:{items:"items"},outputs:{itemClick:"itemClick"},host:{properties:{"class.k-scheduler-footer":"this.hostClasses","class.k-toolbar":"this.hostClasses","style.justify-content":"this.inlineJustifyContentStyle"}},ngImport:n,template:'\n <span class="k-scheduler-navigation">\n <button type="button" kendoButton *ngFor="let item of items" [ngClass]="item.cssClass" (click)="onItemClick($event, item)">\n <span class="k-button-icon k-icon" [ngClass]="item.iconClass"></span>\n <span class="k-button-text">{{ item.text }}</span>\n </button>\n </span>\n ',isInline:!0,directives:[{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:a.ButtonDirective,selector:"button[kendoButton], span[kendoButton]",inputs:["toggleable","togglable","selected","tabIndex","icon","iconClass","imageUrl","disabled","size","rounded","fillMode","themeColor","role","primary","look"],outputs:["selectedChange","click"],exportAs:["kendoButton"]},{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:mo,decorators:[{type:h.Component,args:[{selector:"[viewFooter]",template:'\n <span class="k-scheduler-navigation">\n <button type="button" kendoButton *ngFor="let item of items" [ngClass]="item.cssClass" (click)="onItemClick($event, item)">\n <span class="k-button-icon k-icon" [ngClass]="item.iconClass"></span>\n <span class="k-button-text">{{ item.text }}</span>\n </button>\n </span>\n '}]}],propDecorators:{hostClasses:[{type:h.HostBinding,args:["class.k-scheduler-footer"]},{type:h.HostBinding,args:["class.k-toolbar"]}],inlineJustifyContentStyle:[{type:h.HostBinding,args:["style.justify-content"]}],itemClick:[{type:h.Output}],items:[{type:h.Input}]}});yo.prototype.ngOnInit=function(){this.toggleWorkHours(),this.footer.items=this.footerItems},yo.prototype.ngOnChanges=function(){this.toggleWorkHours()},yo.prototype.toggleWorkHours=function(){this.footerItems[0].text=this.showWorkHours?this.localization.get("showFullDay"):this.localization.get("showWorkDay")};a=yo;function yo(e,t){this.footer=e,this.localization=t,this.showWorkHours=!1,this.footerItems=[{cssClass:"k-scheduler-fullday",iconClass:"k-i-clock",text:""}]}a.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:a,deps:[{token:mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),a.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:a,selector:"[kendoWorkHoursFooter]",inputs:{showWorkHours:"showWorkHours"},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:a,decorators:[{type:h.Directive,args:[{selector:"[kendoWorkHoursFooter]"}]}],ctorParameters:function(){return[{type:mo},{type:r.LocalizationService}]},propDecorators:{showWorkHours:[{type:h.Input}]}});var fo,vo=[mo,a,qt,io,Ii,Si],ko=function(){},vo=(ko.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,deps:[],target:n.ɵɵFactoryTarget.NgModule}),ko.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,declarations:[mo,a,qt,io,Ii,Si],imports:[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],exports:[mo,a,qt,io,Ii,Si,L.IntlModule,Z.CommonModule,Oi]}),ko.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,imports:[[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],L.IntlModule,Z.CommonModule,Oi]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ko,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,L.IntlModule,Oi,q.ButtonsModule],exports:[vo,L.IntlModule,Z.CommonModule,Oi],declarations:[vo]}]}]}),function(){}),F=(vo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,deps:[],target:n.ɵɵFactoryTarget.NgModule}),vo.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,declarations:[po,F,C,eo],imports:[ko],exports:[po]}),vo.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,imports:[[ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:vo,decorators:[{type:h.NgModule,args:[{imports:[ko],exports:[po],declarations:[po,F,C,eo]}]}]}),c(Do,fo=t),Object.defineProperty(Do.prototype,"viewEventHeight",{get:function(){return this.optionValue("eventHeight")||25},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"shouldShowWorkHours",{get:function(){return this.optionValue("showWorkHours")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewStartTime",{get:function(){return this.optionValue("startTime")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewEndTime",{get:function(){return this.optionValue("endTime")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkDayStart",{get:function(){return this.optionValue("workDayStart")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkDayEnd",{get:function(){return this.optionValue("workDayEnd")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkWeekStart",{get:function(){return this.optionValue("workWeekStart")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewWorkWeekEnd",{get:function(){return this.optionValue("workWeekEnd")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewSlotDuration",{get:function(){return this.optionValue("slotDuration")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewSlotDivisions",{get:function(){return this.optionValue("slotDivisions")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewCurrentTimeMarker",{get:function(){return this.optionValue("currentTimeMarker")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewHighlightOngoingEvents",{get:function(){return this.optionValue("highlightOngoingEvents")},enumerable:!1,configurable:!0}),Object.defineProperty(Do.prototype,"viewScrollTime",{get:function(){return this.optionValue("scrollTime")},enumerable:!1,configurable:!0}),Do.prototype.optionValue=function(e){return(y(this[e])?this:this.schedulerOptions)[e]},Do);function Do(e,t,n,r){return fo.call(this,e,t,n,r)||this}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,inputs:{showWorkHours:"showWorkHours",eventHeight:"eventHeight",startTime:"startTime",scrollTime:"scrollTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",slotDuration:"slotDuration",slotDivisions:"slotDivisions",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents"},queries:[{propertyName:"timeSlotTemplate",first:!0,predicate:It,descendants:!0},{propertyName:"dateHeaderTemplate",first:!0,predicate:yt,descendants:!0}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{timeSlotTemplate:[{type:h.ContentChild,args:[It,{static:!1}]}],dateHeaderTemplate:[{type:h.ContentChild,args:[yt,{static:!1}]}],showWorkHours:[{type:h.Input}],eventHeight:[{type:h.Input}],startTime:[{type:h.Input}],scrollTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}]}});c(Io,To=F),Object.defineProperty(Io.prototype,"viewSlotFill",{get:function(){return this.optionValue("slotFill")},enumerable:!1,configurable:!0});var To,C=Io;function Io(e,t,n,r){return To.call(this,e,t,n,r)||this}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),C.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:C,inputs:{slotFill:"slotFill"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{slotFill:[{type:h.Input}]}});function bo(e,t,n){return void 0===n&&(n=!0),e.start.getTime()<=t.getTime()?(n?e.height:e.width)*((t.getTime()-e.start.getTime())/(e.end.getTime()-e.start.getTime())):0}function wo(e,t){var n=Pt(e.columnIndex)?e.columnIndex:Number.MAX_VALUE,r=Pt(t.columnIndex)?t.columnIndex:Number.MAX_VALUE;return n===r?e.item.startTime.getTime()-t.item.startTime.getTime():n-r}var So=25;function xo(e,o){var a=0,s=[];e.forEach(function(e){for(var e=o[e],i=e.slot,l=e.events,t=l.length,c=!0,n=(l.sort(wo),a=Math.max(t,a),s.push(i),function(o){var a=l[o];if(c=c&&a.item.endTime.getTime()<=i.end.getTime(),Pt(a.columnIndex))return"continue";a.rect={top:i.rect.top+bo(i,a.item.startTime)},a.columnIndex=o,a.lastColumn=!0;for(var s,e=function(t,e){var n,r,i=l[t];return i.columnIndex>e+1?(a.columnIndex=e+1,a.lastColumn=!1,l.splice(o,1),l.splice(a.columnIndex,0,a),s=e,"break"):vn(a.item.startTime,a.item.endTime,i.item.startTime,i.item.endTime)||(n=i.rect.top,r=a.rect.top,n<=r&&r<=n+So)?(e=i.columnIndex,i.lastColumn=!1,void(s=e)):(a.columnIndex=t,a.lastColumn=!l.some(function(e){return e.columnIndex&&t<e.columnIndex&&vn(a.item.startTime,a.item.endTime,e.item.startTime,e.item.endTime)}),l.splice(o,1),l.splice(t,0,a),s=e,"break")},t=0,n=-1;t<o;t++){var r=e(t,n),n=s;if("break"===r)break}}),r=0;r<t;r++)n(r);c&&(s.forEach(function(e){return e.columns=a}),s=[],a=0)}),s.forEach(function(e){return e.columns=a})}function Co(e,t){if(void 0!==t.rowIndex)return t.rowIndex;for(var n=0;n<e.length;n++){var r=e[n];if(!r||!vn(t.item.startTime,t.item.endTime,r.item.startTime,r.item.endTime))return n}return e.length}function Eo(e,t,n,r,i){var o=e[0].padding;if(!t.length)return{height:n-o};t.forEach(function(e){e.rowIndex=void 0,e.rect={height:r,width:0}});var t=Y.orderBy(t,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),a={},s=(t.forEach(function(t){return e.filter(function(e){return vn(t.item.startTime,t.item.endTime,e.start,e.end)}).forEach(function(e){e=a[e.key]=a[e.key]||{rows:[],slot:e,events:[]};t.rowIndex=i(e.rows,t),e.rows[t.rowIndex]=t,e.events.push(t)})}),e[0].top),l=0;return Object.keys(a).forEach(function(e){for(var t=a[e].events,n=0,r=0;r<t.length;r++){var i=t[r];i&&(i.rect.top=s+i.rowIndex*(10+i.rect.height),n=Math.max(n,i.rect.top-s+i.rect.height))}l=Math.max(n,l)}),{height:l+=n-o,slotItems:a}}function Ro(s,e,l){Object.keys(s).forEach(function(e){for(var e=s[e],t=e.slot,n=e.events,r=t.rect,i=0;i<n.length;i++){var o,a=n[i];a&&(Pt(a.rect.left)||(a.rect.left=t.rect.left+(l?bo(t,a.item.startTime,!1):0)),o=l&&a.item.endTime.getTime()<t.end.getTime()?bo(t,a.item.endTime,!1):r.width,a.rect.width=t.rect.left+o-a.rect.left)}}),e.forEach(function(e){e.reflow()})}Object.defineProperty(Fo.prototype,"slots",{get:function(){return this.slotMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"firstSlot",{get:function(){return this.slotMap.first},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"lastSlot",{get:function(){return this.slotMap.last},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"items",{get:function(){return this.itemMap.toArray()},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"rect",{get:function(){var e=this.firstSlot.rect,t=this.lastSlot.rect;return{left:e.left,top:e.top,width:t.left-e.left+t.width,height:t.top-e.top+t.height}},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"start",{get:function(){var e=this.slotMap.first;return e?e.start:null},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"end",{get:function(){var e=this.slotMap.last;return e?e.end:null},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"hasSlots",{get:function(){return 0<this.slotMap.count},enumerable:!1,configurable:!0}),Object.defineProperty(Fo.prototype,"hasItems",{get:function(){return 0<this.itemMap.count},enumerable:!1,configurable:!0}),Fo.prototype.registerItem=function(e){this.itemMap.addItem(e.item.index,e)},Fo.prototype.unregisterItem=function(e,t){this.itemMap.removeItem(t.index,e)},Fo.prototype.registerSlot=function(e){this.slotMap.addItem(e.id.index,e)},Fo.prototype.unregisterSlot=function(e){this.slotMap.removeItem(e.id.index,e)},Fo.prototype.layout=function(e){var c,d,t,n=this.items;n.length&&(c=Math.max(Math.min(e.fill||.9,1),.1),e=Y.orderBy(n,[{field:"item.startTime",dir:"asc"},{field:"item.endTime",dir:"desc"}]),n.forEach(function(e,t){e.rect=null,e.columnIndex=void 0}),d={},t=this.slots,e.forEach(function(n){return t.filter(function(e){return vn(n.item.startTime,n.item.endTime,e.start,e.end)}).forEach(function(e){var t=d[e.key]=d[e.key]||{events:[]};t.slot=e,t.events.push(n)})}),xo(n=Object.keys(d),d),n.forEach(function(e){var e=d[e],n=e.slot,e=e.events,r=n.rect,i=r.left,t=n.columns,o=r.width*c-2*(t-1)-2,a=i+2,s=o/t,l=a+o+2*(t-1);e.forEach(function(e){Pt(e.rect.left)||(e.rect.left=a+e.columnIndex*(2+s),e.rect.width=e.lastColumn?l-e.rect.left:s,e.origin={left:i,right:i+r.width});var t=n.end.getTime()<=e.item.endTime.getTime()?r.height:bo(n,e.item.endTime);e.rect.height=r.top+t-e.rect.top})}),e.forEach(function(e){return e.reflow()}))},Fo.prototype.initDaySlots=function(e,t){var n=this.slots;n.length&&(e=(n=Eo(n,this.items,e,t,Pn)).height,t=n.slotItems,this.setSlotsHeight(e),this.slotItems=t)},Fo.prototype.setDayOffsets=function(){this.itemMap.count&&this.slotItems&&(Ro(this.slotItems,this.items),this.slotItems=null)},Fo.prototype.setSlotsHeight=function(e){this.firstSlot.height=e};var Oo=Fo;function Fo(e){this.index=e,this.slotMap=new Pi,this.itemMap=new Pi}Vo.prototype.registerSlot=function(e){this.slotRange(e).registerSlot(e)},Vo.prototype.unregisterSlot=function(e){var t=this.slotRange(e);t.unregisterSlot(e),t.hasSlots||delete this.slotRanges(e)[e.id.rangeIndex]},Vo.prototype.registerItem=function(e){var t=this.itemRange(e);t?(t.registerItem(e),e.rangeIndex=t.index):(e.rangeIndex=void 0,e.toggle(!1))},Vo.prototype.unregisterItem=function(e,t){var n;void 0!==e.rangeIndex&&((n=e.item.isAllDay?this.dayRanges:this.timeRanges)[t.rangeIndex]&&n[t.rangeIndex].unregisterItem(e,t),e.rangeIndex=void 0)},Vo.prototype.forEachDateRange=function(e){for(var t=0;t<this.dayRanges.length;t++)e(this.dayRanges[t])},Vo.prototype.forEachTimeRange=function(e){for(var t=0;t<this.timeRanges.length;t++)e(this.timeRanges[t])},Vo.prototype.slotRange=function(e){var t=this.slotRanges(e),e=e.id.rangeIndex;return t[e]||(t[e]=new Oo(e)),t[e]},Vo.prototype.slotRanges=function(e){return e.isDaySlot?this.dayRanges:this.timeRanges},Vo.prototype.initTimeSlots=function(e,t,n){var r=this.slots;r.length&&(e=(r=Eo(r,this.items,e,t,Co)).height,t=r.slotItems,this.setSlotsHeight(Math.max(e,n)),this.slotItems=t)},Vo.prototype.setTimelineOffsets=function(){var e=this.items;this.slotItems&&e.length&&(Ro(this.slotItems,e,!0),this.slotItems=null)},Vo.prototype.setSlotsHeight=function(e){this.timeRanges[0].setSlotsHeight(e)},Object.defineProperty(Vo.prototype,"items",{get:function(){return this.timeRanges.reduce(function(e,t){return e.concat(t.items)},[])},enumerable:!1,configurable:!0}),Object.defineProperty(Vo.prototype,"slots",{get:function(){return this.timeRanges.reduce(function(e,t){return e.concat(t.slots)},[])},enumerable:!1,configurable:!0}),Object.defineProperty(Vo.prototype,"hasSlots",{get:function(){return Boolean(this.dayRanges.find(function(e){return e&&e.hasSlots})||this.timeRanges.find(function(e){return e&&e.hasSlots}))},enumerable:!1,configurable:!0}),Vo.prototype.cleanRanges=function(){this.dayRanges=this.dayRanges.filter(function(e){return Boolean(e)}),this.timeRanges=this.timeRanges.filter(function(e){return Boolean(e)})},Vo.prototype.itemRange=function(e){var t=e.item,e=t.isAllDay?this.dayRanges:this.timeRanges;return Pt(t.rangeIndex)?e[t.rangeIndex]:e.find(function(e){return vn(t.startTime,t.endTime,e.start,e.end)})};var Ho=Vo;function Vo(e){this.index=e,this.dayRanges=[],this.timeRanges=[]}c(Po,Wo=Vi),Po.prototype.layoutDays=function(t){void 0===t&&(t=25),this.groups.forEach(function(e){return e.forEachDateRange(function(e){return e.slots.forEach(function(e){e.element.nativeElement.style.height=""})})});var n=this.groups[0].dayRanges[0].slots[0].height;this.groups.forEach(function(e){e.forEachDateRange(function(e){return e.initDaySlots(n,t)})}),this.groups.forEach(function(e){e.forEachDateRange(function(e){return e.setDayOffsets()})})},Po.prototype.layoutTimeline=function(n,r){this.groups.forEach(function(e){return e.forEachTimeRange(function(e){return e.slots.forEach(function(e){e.element.nativeElement.style.height=""})})});var i=this.groups[0].timeRanges[0].slots[0].height;this.groups.forEach(function(e,t){e.initTimeSlots(i,n,r&&r[t]?r[t].nativeElement.children[0].children[0].offsetHeight:0)}),this.groups.forEach(function(e){return e.setTimelineOffsets()})},Po.prototype.layoutTimes=function(t){this.groups.forEach(function(e){return e.forEachTimeRange(function(e){return e.layout(t)})})},Po.prototype.forEachDateRange=function(n){this.groups.forEach(function(e,t){n(e.dayRanges[0],t)})},Po.prototype.syncDateRanges=function(){var t=0;return this.groups.forEach(function(e){e=e.dayRanges[0].firstSlot;e&&(t=Math.max(e.rect.height-e.padding,t))}),this.groups.forEach(function(e){e.dayRanges[0].setSlotsHeight(t)}),t},Po.prototype.forEachGroup=function(e){this.groups.forEach(e)},Po.prototype.forEachSlot=function(t){this.groups.forEach(function(e){e.dayRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})}),e.timeRanges.forEach(function(e){e.slots.forEach(function(e){return t(e)})})})},Po.prototype.createGroup=function(e){return new Ho(e)},Po.prototype.slotByIndex=function(e,t){void 0===t&&(t=!1);var e=ce(e.split(":").map(function(e){return parseInt(e,10)}),3),n=e[0],r=e[1],e=e[2];return this.groups[n][t?"dayRanges":"timeRanges"][r].slots[e]},Po.prototype.slotByPosition=function(t,n,e,r){var i;if(e){if(this.groups.find(function(e){return i=e.dayRanges.find(function(e){return Bn(e.rect,t)})}),i)return i.slots.find(function(e){return Bn(e.rect,t)})}else if(this.groups.find(function(e){return i=(i=r?e.dayRanges.find(function(e){return Nn(e.rect,t,n)}):i)||e.timeRanges.find(function(e){return Nn(e.rect,t,n)})}),i)return i.slots.find(function(e){return Nn(e.rect,t,n)})},Po.prototype.groupSlotByPosition=function(e,t,n){var r=this.groups[e.id.resourceIndex],e=e.isDaySlot?r.dayRanges.find(function(e){return Nn(e.rect,t,n)}):r.timeRanges.find(function(e){return Nn(e.rect,t,n)});if(e)return e.slots.find(function(e){return Nn(e.rect,t,n)})},Po.prototype.dragRanges=function(e,t,n){var r,i=new Date(e.start.getTime()-t.start),o=new Date(e.start.getTime()+t.end),t=this.groups[e.id.resourceIndex];return n=n?(r=[],t.timeRanges.forEach(function(e){e=e.slots.filter(function(e){return vn(i,o,e.start,e.end)});e.length&&r.push(e)}),n=r[r.length-1],[r[0][0],n[n.length-1]]):t.slotRange(e).slots.filter(function(e){return vn(i,o,e.start,e.end)}),{start:i,end:o,ranges:[n]}},Po.prototype.resizeRanges=function(e,t,n,r){var i,o,a=this.groups[e.id.resourceIndex],a=t.isAllDay?a.dayRanges:a.timeRanges,s=[],l=t.start.toUTCDate(),c=t.end.toUTCDate();return n?(n=e.start.getTime()+r.start,i=l.getTime()===c.getTime()?this.findDateSlot(c,a,!0).end:c,o=n>=c.getTime()?t.isAllDay?new Date(Math.min(Cn(c,l).getTime(),c.getTime())):this.findDateSlot(i,a).start:r.start&&t.isAllDay?new Date(n):new Date(e.start.getTime())):(o=l,i=e.start.getTime()<=o.getTime()?t.isAllDay?new Date(Math.max(Cn(l,c).getTime(),l.getTime())):this.findDateSlot(o,a,!0).end:r.end&&t.isAllDay?new Date(e.start.getTime()+r.end):e.end),a.forEach(function(e){e=e.slots.filter(function(e){return vn(o,i,e.start,e.end)});e.length&&s.push(e)}),{start:o,end:i,ranges:s}},Po.prototype.timePosition=function(t,e,n){var r,e=this.groups[e].timeRanges.find(function(e){return kn(t,e.start,e.end)});return(e=e&&e.slots.find(function(e){return kn(t,e.start,e.end)}))?(r=(n?e.height:e.width)*((t.getTime()-e.start.getTime())/(e.end.getTime()-e.start.getTime())),n?e.rect.top+r:e.rect.left+r):void 0},Po.prototype.findDateSlot=function(t,e,n){var r;return e.forEach(function(e){e=n?e.slots.filter(function(e){return vn(t,t,e.start,e.end)}):e.slots.filter(function(e){return kn(t,e.start,e.end)});e.length&&(r=e[0])}),r};var Wo,Mo=Po;function Po(){return null!==Wo&&Wo.apply(this,arguments)||this}function zo(e){var t=e.start,e=e.end,t=t.stripTime(),n=e.stripTime();return t.getTime()!==n.getTime()&&(n.getTime()!==e.getTime()||t.addDays(1).getTime()!==n.getTime())}c(No,Ao=k),Object.defineProperty(No.prototype,"eventTime",{get:function(){return this.intlService.format("{0:t}–{1:t}",b.toLocalDate(this.item.startTime),b.toLocalDate(this.item.endTime))},enumerable:!1,configurable:!0});var Ao,eo=No;function No(e,t,n,r,i,o,a){t=Ao.call(this,t,n,r,i,o,a)||this;return t.intlService=e,t.localeId=a,t}eo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,deps:[{token:o.IntlService},{token:Mo},{token:r.LocalizationService},{token:f},{token:n.ElementRef},{token:n.Renderer2},{token:h.LOCALE_ID}],target:n.ɵɵFactoryTarget.Component}),eo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:eo,selector:"[dayTimeViewItem]",inputs:{vertical:"vertical",isAllDay:"isAllDay"},usesInheritance:!0,ngImport:n,template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template k-event-time" *ngIf="!isAllDay">{{ eventTime }}</div>\n <div class="k-event-template" aria-hidden="true">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>\n </span>\n\n <span class="k-event-top-actions" *ngIf="item.tail && vertical">\n <span class="k-icon k-i-caret-alt-up"></span>\n </span>\n\n <span class="k-event-bottom-actions" *ngIf="item.head && vertical">\n <span class="k-icon k-i-caret-alt-down"></span>\n </span>\n\n <ng-container *ngIf="resizable && vertical">\n <span class="k-resize-handle k-resize-n" *ngIf="!item.tail"></span>\n <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>\n </ng-container>\n\n <ng-container *ngIf="resizable && !vertical">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n ',isInline:!0,directives:[{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]}]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:eo,decorators:[{type:h.Component,args:[{selector:"[dayTimeViewItem]",template:'\n <span class="k-event-actions">\n <span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>\n <span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>\n <span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>\n </span>\n <ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"\n [ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">\n </ng-container>\n <div *ngIf="!eventTemplate" [attr.title]="eventTitle">\n <div class="k-event-template k-event-time" *ngIf="!isAllDay">{{ eventTime }}</div>\n <div class="k-event-template" aria-hidden="true">{{ item.event.title }}</div>\n </div>\n\n <span class="k-event-actions">\n <span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">\n <span class="k-icon k-i-x"></span>\n </span>\n <span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>\n </span>\n\n <span class="k-event-top-actions" *ngIf="item.tail && vertical">\n <span class="k-icon k-i-caret-alt-up"></span>\n </span>\n\n <span class="k-event-bottom-actions" *ngIf="item.head && vertical">\n <span class="k-icon k-i-caret-alt-down"></span>\n </span>\n\n <ng-container *ngIf="resizable && vertical">\n <span class="k-resize-handle k-resize-n" *ngIf="!item.tail"></span>\n <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>\n </ng-container>\n\n <ng-container *ngIf="resizable && !vertical">\n <span class="k-resize-handle k-resize-w"></span>\n <span class="k-resize-handle k-resize-e"></span>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:Mo},{type:r.LocalizationService},{type:f},{type:n.ElementRef},{type:n.Renderer2},{type:void 0,decorators:[{type:h.Inject,args:[h.LOCALE_ID]}]}]},propDecorators:{vertical:[{type:h.Input}],isAllDay:[{type:h.Input}]}});function Bo(e){return b.getDate(e)}function jo(e,t){return b.getDate(b.addDays(e,t||1))}function Lo(e,t,n){return b.getDate(b.addDays(e,n*t))}c(V,qo=E),Object.defineProperty(V.prototype,"classNames",{get:function(){return"k-scheduler-"+this.name+"view"},enumerable:!1,configurable:!0}),Object.defineProperty(V.prototype,"timeSlotTemplateRef",{get:function(){return this.timeSlotTemplate||(this.schedulerTimeSlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(V.prototype,"dateHeaderTemplateRef",{get:function(){return this.dateHeaderTemplate||(this.schedulerDateHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),V.prototype.ngOnChanges=function(e){(e.startTime||e.endTime||e.showWorkHours||e.workDayStart||e.workDayEnd||e.workWeekStart||e.workWeekEnd||e.slotDivisions||e.slotDuration)&&(this.timeSlots=this.createTimeSlots(),this.initWorkDay(),this.changes.next(null)),l.isChanged("currentTimeMarker",e)&&(this.showCurrentTime=this.enableCurrentTime()),l.isChanged("weekStart",e)&&this.onSelectDate(this.selectedDate),qo.prototype.ngOnChanges.call(this,e)},V.prototype.ngOnDestroy=function(){qo.prototype.ngOnDestroy.call(this),clearTimeout(this.currentTimeTimeout),clearTimeout(this.ongoingEventsTimeout)},V.prototype.verticalItem=function(e,t){for(var n=this.verticalResources[t].data||[],r=this.verticalResources,i=1,o=t+1;o<r.length;o++)i*=(r[o].data||[]).length||1;return n[e/i%n.length]},V.prototype.timeSlotClass=function(e,t,n){if(this.slotClass)return this.slotClass({start:Cn(t,e.start),end:Cn(t,e.end),resources:this.resourcesByIndex(n),isAllDay:!1})},V.prototype.toggleOngoingClass=function(){var n=this,r=this.currentTime(),i=y(this.highlightOngoingEvents.cssClass)?this.highlightOngoingEvents.cssClass:Bi;this.eventElements.forEach(function(e){var t=kn(r,e.item.start,e.item.end);n.renderer[t?"addClass":"removeClass"](e.nativeElement,i)})},V.prototype.scrollToTime=function(e){if("string"==typeof(e=void 0===e?this.scrollTime:e)){var t=this.intl.parseDate(e);if(!t)return;t=bn(this.daySlots[0].start,t)}else t=xn(e);var n,r,i,o,e=this.slotService.timePosition(t,0,this.verticalTime);Pt(e)&&((t=this.content.nativeElement)[this.verticalTime?"scrollTop":"scrollLeft"]=this.localization.rtl&&!this.verticalTime?(r=e,i=(n=t).scrollLeft,o=r,n.scrollLeft=-1,n.scrollLeft<0?o=-r:0<i&&(o=n.scrollWidth-n.offsetWidth-r),o):e)},V.prototype.optionsChange=function(e){this.schedulerTimeSlotTemplate=e.timeSlotTemplate,this.schedulerDateHeaderTemplate=e.dateHeaderTemplate,qo.prototype.optionsChange.call(this,e)},V.prototype.updateView=function(){qo.prototype.updateView.call(this),this.updateCurrentTime(),this.updateOngoingEvents(),this.initialUpdate&&(this.scrollToTime(),this.initialUpdate=!1)},V.prototype.enableCurrentTime=function(){var e,t,n,r;return!(!this.currentTimeMarker||!1===this.currentTimeMarker.enabled||!this.selectedDate)&&(r=this.dateRange(),this.currentDate=b.ZonedDate.fromLocalDate(this.currentTime(),!1!==this.currentTimeMarker.localTimezone?"":this.timezone),e=Tn(n=this.currentDate.toLocalDate()),t=this.timeSlots,n=kn(n,r.start,r.end),r=t.length&&kn(e,t[0].start,t[t.length-1].end),n)&&r},V.prototype.currentTime=function(){return new Date},V.prototype.updateCurrentTime=function(){var e,t=this;l.isDocumentAvailable()&&((e=this.enableCurrentTime())!==this.showCurrentTime&&(this.showCurrentTime=e,this.changeDetector.detectChanges()),clearTimeout(this.currentTimeTimeout),e)&&(this.zone.runOutsideAngular(function(){t.currentTimeTimeout=setTimeout(t.updateCurrentTime,t.currentTimeMarker.updateInterval||6e4)}),this.positionCurrentTime())},V.prototype.updateOngoingEvents=function(){var e=this,t=!this.highlightOngoingEvents||!1===this.highlightOngoingEvents.enabled;l.isDocumentAvailable()&&!t&&(clearTimeout(this.ongoingEventsTimeout),this.zone.runOutsideAngular(function(){e.ongoingEventsTimeout=setTimeout(e.updateOngoingEvents,e.highlightOngoingEvents.updateInterval||6e4)}),this.toggleOngoingClass())},V.prototype.positionCurrentTime=function(){var r,i,o,a,s,l,c,d=this;this.currentTimeElements&&this.currentTimeElements.length&&(r=this.currentDate.toUTCDate(),i=this.currentTimeArrows?this.currentTimeArrows.toArray():[],o=i.length?this.currentTimeArrowOffset():0,a=i.length?i[0].nativeElement.offsetHeight/2:4,s=this.contentTable.nativeElement.clientWidth,l=this.contentTable.nativeElement.clientHeight,c=this.verticalTime,this.currentTimeElements.forEach(function(e,t){var n=d.slotService.timePosition(r,t,c);void 0!==n&&(e=e.nativeElement,i[t]&&(t=i[t].nativeElement,Zn(t,{top:c?n-a:o,left:t=c?o:n-a,right:t})),Zn(e,{top:c?n:0,left:t=c?0:n,right:t,width:c?s:1,height:c?1:l}))}))},V.prototype.bindEvents=function(){var t=this;qo.prototype.bindEvents.call(this),this.zone.runOutsideAngular(function(){t.subs.add(Zt(t.headerWrap.nativeElement).subscribe(function(e){return t.onHeaderClick(e)})),t.subs.add(p.fromEvent(t.headerWrap.nativeElement,"contextmenu").subscribe(function(e){return t.onClick(e)})),t.subs.add(Gt(t.headerWrap.nativeElement).subscribe(function(e){return t.onClick(e,"dblclick")}))})},V.prototype.onHeaderClick=function(e){var t,n=this;this.onClick(e),this.daySlots.length<=1||(e=e.target.getAttribute("data-dayslot-index"))&&(t=this.daySlots[parseInt(e,10)],this.zone.run(function(){n.viewState.navigateTo({viewName:"day",date:t.start}),n.focusService.clearActiveDescendant()}))},V.prototype.slotByIndex=function(e,t){return this.slotService.slotByIndex(e,t.target.hasAttribute("data-day-slot"))},V.prototype.onSelectDate=function(e){this.selectedDate=e,this.daySlots=this.createDaySlots(),this.showCurrentTime=this.enableCurrentTime(),this.viewState.notifyDateRange(this.dateRange())},V.prototype.onAction=function(e){var t,n=b.getDate(this.selectedDate);"next"===e.type&&(t=this.getNextDate(n,1,this.numberOfDays),this.isInRange(t))&&this.viewState.notifyNextDate(t),"prev"===e.type&&(t=this.getNextDate(n,-1,this.numberOfDays),this.isInRange(t))&&this.viewState.notifyNextDate(t),"scroll-time"===e.type&&this.scrollToTime(e.time)},V.prototype.dateRange=function(e){void 0===e&&(e=this.selectedDate);var e=this.getStartDate(e),t=this.getEndDate(e,this.numberOfDays),n=this.getEndDate(e,this.numberOfDays-1);return{start:e,end:t,text:this.intl.format(this.selectedDateFormat,e,n),shortText:this.intl.format(this.selectedShortDateFormat,e,n)}},V.prototype.createDaySlots=function(){for(var e=this.getStartDate(this.selectedDate),t=this.getEndDate(e,this.numberOfDays),n=[];e<t;){var r=b.addDays(e,1);n.push({start:e,end:r}),e=r}return n},V.prototype.createTimeSlots=function(){for(var e=this.intl,t=(s={showWorkHours:this.showWorkHours,startTime:this.startTime,endTime:this.endTime,workDayStart:this.workDayStart,workDayEnd:this.workDayEnd,slotDivisions:this.slotDivisions,slotDuration:this.slotDuration}).showWorkHours,n=s.startTime,r=s.endTime,i=s.workDayStart,o=s.workDayEnd,a=s.slotDivisions,s=s.slotDuration,i=Tn(e.parseDate(t?i:n)).getTime(),l=Tn(e.parseDate(t?o:r)).getTime(),c=(l<=i&&(l=Tn(Ai).getTime()+b.MS_PER_DAY),[]),d=Math.round(s/a*6e4),u=i,p=0;u<l;)c.push({start:new Date(u),end:new Date(u+d),isMajor:p%a==0}),p++,u+=d;return c},V.prototype.initWorkDay=function(){var e=this.intl.parseDate(this.workDayStart),t=(this.workDayStartTime=Tn(e),this.intl.parseDate(this.workDayEnd));this.workDayEndTime=t<=e?b.addDays(Ai,1):Tn(t)},V.prototype.slotByPosition=function(e,t,n){n=n?yn(n.parentNode,"k-scheduler-header-wrap"):t<0;return this.slotService.slotByPosition(e,t,n,Boolean(this.verticalResources.length))},V.prototype.slotFields=function(e){var t=qo.prototype.slotFields.call(this,e);return e.isDaySlot?t.isAllDay=!0:(t.start=this.convertDate(e.start),t.end=this.convertDate(e.end)),t};var qo,t=V;function V(e,t,n,r,i,o,a,s,l,c,d,u){t=qo.call(this,t,n,r,i,o,a,s,l,c,e,u)||this;return t.changeDetector=e,t.focusService=d,t.numberOfDays=1,t.startTime="00:00",t.endTime="00:00",t.workDayStart="08:00",t.workDayEnd="17:00",t.workWeekStart=1,t.workWeekEnd=5,t.slotDuration=60,t.slotDivisions=2,t.showWorkHours=!1,t.getStartDate=Bo,t.getEndDate=jo,t.getNextDate=Lo,t.daySlots=[],t.timeSlots=[],t.resizeHintFormat="t",t.showCurrentTime=!1,t.verticalTime=!0,t.initialUpdate=!0,t.updateCurrentTime=t.updateCurrentTime.bind(t),t.toggleOngoingClass=t.toggleOngoingClass.bind(t),t.updateOngoingEvents=t.updateOngoingEvents.bind(t),t}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:n.ChangeDetectorRef},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:r.LocalizationService},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),t.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:t,selector:"kendo-day-time-view",inputs:{timeSlotTemplate:"timeSlotTemplate",dateHeaderTemplate:"dateHeaderTemplate",numberOfDays:"numberOfDays",scrollTime:"scrollTime",startTime:"startTime",endTime:"endTime",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",slotDuration:"slotDuration",slotDivisions:"slotDivisions",showWorkHours:"showWorkHours",getStartDate:"getStartDate",getEndDate:"getEndDate",getNextDate:"getNextDate",currentTimeMarker:"currentTimeMarker",highlightOngoingEvents:"highlightOngoingEvents"},viewQueries:[{propertyName:"currentTimeElements",predicate:["currentTimeMarker"],descendants:!0},{propertyName:"eventElements",predicate:eo,descendants:!0},{propertyName:"currentTimeArrows",predicate:["currentTimeArrow"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Component,args:[{selector:"kendo-day-time-view",template:""}]}],ctorParameters:function(){return[{type:n.ChangeDetectorRef},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:r.LocalizationService},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{timeSlotTemplate:[{type:h.Input}],dateHeaderTemplate:[{type:h.Input}],numberOfDays:[{type:h.Input}],scrollTime:[{type:h.Input}],startTime:[{type:h.Input}],endTime:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],slotDuration:[{type:h.Input}],slotDivisions:[{type:h.Input}],showWorkHours:[{type:h.Input}],getStartDate:[{type:h.Input}],getEndDate:[{type:h.Input}],getNextDate:[{type:h.Input}],currentTimeMarker:[{type:h.Input}],highlightOngoingEvents:[{type:h.Input}],currentTimeElements:[{type:h.ViewChildren,args:["currentTimeMarker"]}],eventElements:[{type:h.ViewChildren,args:[eo]}],currentTimeArrows:[{type:h.ViewChildren,args:["currentTimeArrow"]}]}});c(Go,Zo=R),Object.defineProperty(Go.prototype,"nonWorkHour",{get:function(){var e,t,n=this.date.getDay();return this.invariantStart<this.workDayStart||this.workDayEnd<this.invariantEnd||(n=n,e=this.workWeekStart,!((t=this.workWeekEnd)<e?n<=t||e<=n:e<=n&&n<=t))},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"startLocalTime",{get:function(){return this.date&&this.invariantStart?Cn(this.date,this.invariantStart):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"endLocalTime",{get:function(){return this.date&&this.invariantEnd?Cn(this.date,this.invariantEnd):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"start",{get:function(){return this.date&&this.invariantStart?bn(this.date,this.invariantStart):null},enumerable:!1,configurable:!0}),Object.defineProperty(Go.prototype,"end",{get:function(){var e;return this.date&&this.invariantEnd?(e=bn(this.date,this.invariantEnd),Ni.getTime()<=this.invariantEnd.getTime()?In(e,1):e):null},enumerable:!1,configurable:!0});var Zo,k=Go;function Go(e,t,n){e=Zo.call(this,e,t,n)||this;return e.isDaySlot=!1,e}k.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,deps:[{token:n.ElementRef},{token:Mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),k.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"[timeSlot]",inputs:{invariantStart:"invariantStart",invariantEnd:"invariantEnd",workDayStart:"workDayStart",workDayEnd:"workDayEnd",workWeekStart:"workWeekStart",workWeekEnd:"workWeekEnd",date:"date"},host:{properties:{"class.k-nonwork-hour":"this.nonWorkHour"}},exportAs:["timeSlot"],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:k,decorators:[{type:h.Directive,args:[{selector:"[timeSlot]",exportAs:"timeSlot"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:Mo},{type:r.LocalizationService}]},propDecorators:{invariantStart:[{type:h.Input}],invariantEnd:[{type:h.Input}],workDayStart:[{type:h.Input}],workDayEnd:[{type:h.Input}],workWeekStart:[{type:h.Input}],workWeekEnd:[{type:h.Input}],date:[{type:h.Input}],nonWorkHour:[{type:h.HostBinding,args:["class.k-nonwork-hour"]}]}});c(Uo,_o=R),Object.defineProperty(Uo.prototype,"start",{get:function(){return this.startDate?wn(this.startDate):null},set:function(e){this.startDate=e},enumerable:!1,configurable:!0}),Object.defineProperty(Uo.prototype,"end",{get:function(){return this.endDate?wn(this.endDate):null},set:function(e){this.endDate=e},enumerable:!1,configurable:!0}),Object.defineProperty(Uo.prototype,"daySlot",{get:function(){return!0},enumerable:!1,configurable:!0});var _o,E=Uo;function Uo(e,t,n){e=_o.call(this,e,t,n)||this;return e.isDaySlot=!0,e}E.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,deps:[{token:n.ElementRef},{token:Mo},{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Directive}),E.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"[daySlot]",inputs:{start:"start",end:"end"},host:{properties:{"attr.data-day-slot":"this.daySlot"}},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:E,decorators:[{type:h.Directive,args:[{selector:"[daySlot]"}]}],ctorParameters:function(){return[{type:n.ElementRef},{type:Mo},{type:r.LocalizationService}]},propDecorators:{start:[{type:h.Input}],end:[{type:h.Input}],daySlot:[{type:h.HostBinding,args:["attr.data-day-slot"]}]}});c(W,Yo=t),Object.defineProperty(W.prototype,"allDaySlotTemplateRef",{get:function(){return this.allDaySlotTemplate||(this.schedulerAllDaySlotTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayEventTemplateRef",{get:function(){return this.allDayEventTemplate||(this.schedulerAllDayEventTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"minorTimeHeaderTemplateRef",{get:function(){return this.minorTimeHeaderTemplate||(this.schedulerMinorTimeHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"majorTimeHeaderTemplateRef",{get:function(){return this.majorTimeHeaderTemplate||(this.schedulerMajorTimeHeaderTemplate||{}).templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayMessage",{get:function(){return this.localization.get("allDay")},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayResizeHint",{get:function(){return this.resizing&&this.resizing.task.isAllDay},enumerable:!1,configurable:!0}),Object.defineProperty(W.prototype,"allDayDragHint",{get:function(){return this.dragging&&this.dragging.slot.isDaySlot},enumerable:!1,configurable:!0}),W.prototype.optionsChange=function(e){this.schedulerAllDaySlotTemplate=e.allDaySlotTemplate,this.schedulerAllDayEventTemplate=e.allDayEventTemplate,this.schedulerMinorTimeHeaderTemplate=e.minorTimeHeaderTemplate,this.schedulerMajorTimeHeaderTemplate=e.majorTimeHeaderTemplate,Yo.prototype.optionsChange.call(this,e)},W.prototype.ngOnChanges=function(e){Yo.prototype.ngOnChanges.call(this,e),e.slotFill&&this.changes.next(null),l.anyChanged(["startTime","endTime","showWorkHours","workDayStart","workDayEnd","workWeekStart","workWeekEnd"],e)&&this.viewRangeChange.next(null),(l.isChanged("numberOfDays",e,!0)||l.isChanged("weekStart",e))&&(this.daySlots=this.createDaySlots(),this.viewState.notifyDateRange(this.dateRange()))},W.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=this.daySlots.length,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},W.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=this.timeSlots.length+1,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},W.prototype.allDaySlotClass=function(e,t){if(this.slotClass)return this.slotClass({start:e.start,end:e.end,resources:this.resourcesByIndex(t),isAllDay:!0})},W.prototype.createTasks=function(e,t){for(var n=this.timeSlots[0],r=this.timeSlots[this.timeSlots.length-1].end,i=!(r.getHours()||r.getMinutes()),o=this.daySlots.map(function(e){return{start:bn(e.start,n.start),end:i?wn(e.end):bn(e.start,r)}}),a=t.start,t=t.end,s=e,l=o,c=[],d=wn(a),u=wn(t),p=0;p<s.length;p++)for(var h=s[p],m=zo(h),g=m&&!h.event.isAllDay&&h.end.getTime()-h.start.getTime()<b.MS_PER_DAY,y=h.event.isAllDay||m&&!g,f=(y?Dn(h):h.end).toUTCDate(),v=(y?h.start.stripTime():h.start).toUTCDate(),k=0;k<l.length;k++){var D=l[k].start,T=l[k].end;if(vn(v,f,D,T)){D={index:p,isAllDay:y,startTime:v,endTime:f,rangeIndex:y?0:k,start:h.start,end:h.end,event:h.event};if(c.push(D),!g){D.head=u<f,D.tail=v<d;break}var T=l[k+1],I=l[k-1];D.head=(T?T.start:u)<f,D.tail=v<(I?I.end:d)}}return _t(c)},W.prototype.onTasksChange=function(){this.items.next(this.tasks.filter(function(e){return!e.isAllDay})),this.allDayItems.next(this.tasks.filter(function(e){return e.isAllDay}))},W.prototype.reflow=function(){var n,e,t=this.slotService;this.verticalResources.length||(this.updateContentHeight(),this.syncTables()),this.slotService.containerSize=this.content.nativeElement.clientWidth,t.layoutDays(this.eventHeight),this.updateContentHeight(),this.syncTables(),this.dayCells.length&&(n=this.dayCells.toArray(),this.verticalResources.length?t.forEachDateRange(function(e,t){e=e.firstSlot;n[t].nativeElement.style.height=e.rect.height-e.padding+"px"}):(e=t.syncDateRanges(),n[0].nativeElement.style.height=e+"px")),t.layoutTimes({fill:this.slotFill}),this.syncTables()},W.prototype.dragHorizontal=function(e){return e.isDaySlot},W.prototype.updateHintContainer=function(){this.headerHintContainer&&this.headerHintContainer.detectChanges(),Yo.prototype.updateHintContainer.call(this)},W.prototype.onRelease=function(e){Yo.prototype.onRelease.call(this,e),this.dragContainers=null},W.prototype.updateDragContainer=function(t){this.dragContainers||(this.dragContainers=this.containers);var e=this.dragContainers.find(function(e){e=e.offset;return e.top<=t.pageY&&t.pageY<=e.top+e.height})||{};this.container=e.element,this.containerOffset=e.offset},W.prototype.containerByPosition=function(e){var t=e.x,n=e.y;return this.containers.find(function(e){e=e.offset;return e.top<=n&&n<=e.top+e.height&&e.left<=t&&t<=e.left+e.width})},Object.defineProperty(W.prototype,"containers",{get:function(){var e=this.headerWrap.nativeElement.children[1],t=this.content.nativeElement;return[{element:t,offset:Ln(t)},{element:e,offset:Ln(e)}]},enumerable:!1,configurable:!0}),W.prototype.scrollContainer=function(e,t){clearInterval(this.scrollInterval),this.container&&this.container===this.content.nativeElement&&Yo.prototype.scrollContainer.call(this,e,t)},W.prototype.dragRanges=function(e){var t,n,r=this.dragging.task;return e.isDaySlot&&!r.isAllDay?{ranges:[[e]],start:Cn(e.start,r.start.toUTCDate()),end:Cn(e.start,r.end.toUTCDate()),isAllDay:!0}:(t=r.isAllDay&&!e.isDaySlot,n=this.slotService.dragRanges(e,t?{start:0,end:0}:this.dragging.offset),t&&(n.end=e.end),n.isAllDay=this.draggedIsAllDay(r,e),n)},W.prototype.dragHintEventStyleArgs=function(){return{event:this.dragging.task.event,resources:this.dragging.resourceItems,isAllDay:Boolean(this.allDayDragHint)}},W.prototype.draggedIsAllDay=function(e,t){return Boolean(t.isDaySlot&&(e.event.isAllDay||!zo(e)))},W.prototype.dragHintSize=function(e,t){var n,e=e.isDaySlot?(n=jn(t.rect.left-e.rect.left+t.rect.width),jn(e.height)):(n=jn(.9*e.rect.width),jn(this.dragging.task.isAllDay?e.rect.height:t.rect.top-e.rect.top+t.rect.height));return{width:n,height:e}},W.prototype.currentTimeArrowOffset=function(){var e,t;return this.verticalResources.length?(e=this.times.nativeElement.querySelector(".k-scheduler-times-all-day"),t=this.times.nativeElement,this.localization.rtl?t.offsetWidth-e.offsetWidth:e.offsetLeft):0};var Yo,R=W;function W(e,t,n,r,i,o,a,s,l,c,d,u){l=Yo.call(this,l,t,n,r,i,o,a,s,c,e,d,u)||this;return l.name="day",l.dateFormat={skeleton:"MEd"},l.allDayResizeHintFormat={skeleton:"Md"},l.allDayItems=new p.BehaviorSubject(null),l}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:r.LocalizationService},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:n.ChangeDetectorRef},{token:v},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),R.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:R,selector:"multi-day-view",inputs:{name:"name",slotFill:"slotFill",allDaySlotTemplate:"allDaySlotTemplate",allDayEventTemplate:"allDayEventTemplate",minorTimeHeaderTemplate:"minorTimeHeaderTemplate",majorTimeHeaderTemplate:"majorTimeHeaderTemplate"},providers:[Mo],viewQueries:[{propertyName:"headerHintContainer",first:!0,predicate:["headerHintContainer"],descendants:!0},{propertyName:"dayCells",predicate:["allDayCell"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n <tr>\n <th [style.height]="\'auto\'">​</th>\n </tr>\n <tr *ngIf="!verticalResources.length">\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <th *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link k-nav-day" [attr.data-dayslot-index]="index">{{ slot.start | kendoDate: dateFormat }}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n </ng-container>\n </tr>\n </table>\n <div style="position: relative;" *ngIf="!verticalResources.length">\n <table class="k-scheduler-table k-scheduler-header-all-day k-user-select-none" aria-hidden="true">\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [id]="{ resourceIndex: resourceIndex, rangeIndex: 0, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(resourceIndex)\n })"\n [ngClass]="allDaySlotClass(slot, resourceIndex)">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(resourceIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #headerHintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && allDayDragHint"\n class="k-event-drag-hint"\n dayTimeViewItem\n [isAllDay]="true"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="dragHints[0].item"\n [resources]="dragHints[0].resources">\n </div>\n\n <div *ngIf="resizeHints.length && allDayResizeHint"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="allDayResizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-right">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr *ngIf="verticalResources.length">\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n <tr *ngFor="let slot of timeSlots; let timeSlotIndex = index;trackBy: itemIndex">\n <th *ngIf="slot.isMajor" [ngClass]="{ \'k-slot-cell\': slotDivisions === 1 }">\n <ng-container *ngIf="!majorTimeHeaderTemplateRef">{{ slot.start | kendoDate: \'t\' }}</ng-container>\n <ng-container *ngIf="majorTimeHeaderTemplateRef" [ngTemplateOutlet]="majorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n <th *ngIf="!slot.isMajor" [ngClass]="{ \'k-slot-cell\': timeSlotIndex % slotDivisions === slotDivisions - 1 }">\n <ng-container *ngIf="minorTimeHeaderTemplateRef" [ngTemplateOutlet]="minorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }">\n </ng-container>\n </th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content k-user-select-none" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeMarker class="k-current-time">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <tr class="k-scheduler-header-all-day" *ngIf="verticalResources.length">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(verticalIndex)\n })"\n [id]="{ resourceIndex: verticalIndex, rangeIndex: 0, index: index }">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(verticalIndex) }"></ng-container>\n </td>\n </tr>\n <tr *ngFor="let slot of timeSlots; index as index; trackBy: itemIndex" [class.k-middle-row]="slot.isMajor">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <td *ngFor="let daySlot of daySlots; index as rangeIndex; trackBy: itemIndex"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.startLocalTime, resources: resourcesByIndex(timeSlot.id.resourceIndex) }">\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [vertical]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && (!allDayDragHint || verticalResources.length)"\n class="k-event-drag-hint"\n role="button"\n dayTimeViewItem\n [isAllDay]="allDayDragHint"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [resources]="dragHints[0].resources"\n [item]="dragHints[0].item">\n </div>\n\n <ng-container *ngIf="resizeHints.length && (!allDayResizeHint || verticalResources.length)">\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="allDayResizeHint ? allDayResizeHintFormat : resizeHintFormat">\n </div>\n </ng-container>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:eo,selector:"[dayTimeViewItem]",inputs:["vertical","isAllDay"]},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:E,selector:"[daySlot]",inputs:["start","end"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]},{type:k,selector:"[timeSlot]",inputs:["invariantStart","invariantEnd","workDayStart","workDayEnd","workWeekStart","workWeekEnd","date"],exportAs:["timeSlot"]}],pipes:{resourceIterator:io,kendoDate:o.DatePipe,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Component,args:[{selector:"multi-day-view",providers:[Mo],template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n <tr>\n <th [style.height]="\'auto\'">​</th>\n </tr>\n <tr *ngIf="!verticalResources.length">\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header>\n <div class="k-scheduler-header-wrap" #headerWrap>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef" [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <th *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link k-nav-day" [attr.data-dayslot-index]="index">{{ slot.start | kendoDate: dateFormat }}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n </ng-container>\n </tr>\n </table>\n <div style="position: relative;" *ngIf="!verticalResources.length">\n <table class="k-scheduler-table k-scheduler-header-all-day k-user-select-none" aria-hidden="true">\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [id]="{ resourceIndex: resourceIndex, rangeIndex: 0, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(resourceIndex)\n })"\n [ngClass]="allDaySlotClass(slot, resourceIndex)">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(resourceIndex) }"></ng-container>\n </td>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #headerHintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && allDayDragHint"\n class="k-event-drag-hint"\n dayTimeViewItem\n [isAllDay]="true"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="dragHints[0].item"\n [resources]="dragHints[0].resources">\n </div>\n\n <div *ngIf="resizeHints.length && allDayResizeHint"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="allDayResizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-right">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr *ngIf="verticalResources.length">\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </th>\n </ng-container>\n <th class="k-scheduler-times-all-day" #allDayCell>{{ allDayMessage }}</th>\n </tr>\n <tr *ngFor="let slot of timeSlots; let timeSlotIndex = index;trackBy: itemIndex">\n <th *ngIf="slot.isMajor" [ngClass]="{ \'k-slot-cell\': slotDivisions === 1 }">\n <ng-container *ngIf="!majorTimeHeaderTemplateRef">{{ slot.start | kendoDate: \'t\' }}</ng-container>\n <ng-container *ngIf="majorTimeHeaderTemplateRef" [ngTemplateOutlet]="majorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }"></ng-container>\n </th>\n <th *ngIf="!slot.isMajor" [ngClass]="{ \'k-slot-cell\': timeSlotIndex % slotDivisions === slotDivisions - 1 }">\n <ng-container *ngIf="minorTimeHeaderTemplateRef" [ngTemplateOutlet]="minorTimeHeaderTemplateRef" [ngTemplateOutletContext]="{ date: slot.start }">\n </ng-container>\n </th>\n </tr>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content k-user-select-none" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of verticalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeMarker class="k-current-time">\n </div>\n </ng-container>\n <table class="k-scheduler-table" #contentTable role="presentation">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <tr class="k-scheduler-header-all-day" *ngIf="verticalResources.length">\n <td *ngFor="let slot of daySlots; let index = index; trackBy: itemIndex"\n daySlot\n [start]="slot.start"\n [end]="slot.end"\n [class.k-selected]="isSlotSelected({\n start: toPlainDate(slot.start),\n end: toPlainDate(slot.end),\n isAllDay: true,\n resources: resourcesByIndex(verticalIndex)\n })"\n [id]="{ resourceIndex: verticalIndex, rangeIndex: 0, index: index }">\n <ng-container *ngIf="allDaySlotTemplateRef" [ngTemplateOutlet]="allDaySlotTemplateRef"\n [ngTemplateOutletContext]="{ date: slot.start, resources: resourcesByIndex(verticalIndex) }"></ng-container>\n </td>\n </tr>\n <tr *ngFor="let slot of timeSlots; index as index; trackBy: itemIndex" [class.k-middle-row]="slot.isMajor">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <td *ngFor="let daySlot of daySlots; index as rangeIndex; trackBy: itemIndex"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.startLocalTime, resources: resourcesByIndex(timeSlot.id.resourceIndex) }">\n </ng-container>\n </td>\n </ng-container>\n </tr>\n </ng-container>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [vertical]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let item of allDayItems | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources, true)"\n [ngStyle]="getEventStyles(item, itemResource, true)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [isAllDay]="true"\n [editable]="editable"\n [eventTemplate]="allDayEventTemplateRef"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngIf="dragHints.length && (!allDayDragHint || verticalResources.length)"\n class="k-event-drag-hint"\n role="button"\n dayTimeViewItem\n [isAllDay]="allDayDragHint"\n [ngStyle]="dragHints[0].style"\n [ngClass]="dragHints[0].class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [resources]="dragHints[0].resources"\n [item]="dragHints[0].item">\n </div>\n\n <ng-container *ngIf="resizeHints.length && (!allDayResizeHint || verticalResources.length)">\n <div *ngFor="let hint of resizeHints; trackBy: itemIndex;"\n kendoResizeHint\n [hint]="hint"\n [ngClass]="hint.class"\n [format]="allDayResizeHint ? allDayResizeHintFormat : resizeHintFormat">\n </div>\n </ng-container>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:n.ChangeDetectorRef},{type:v},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{name:[{type:h.Input}],slotFill:[{type:h.Input}],allDaySlotTemplate:[{type:h.Input}],allDayEventTemplate:[{type:h.Input}],minorTimeHeaderTemplate:[{type:h.Input}],majorTimeHeaderTemplate:[{type:h.Input}],dayCells:[{type:h.ViewChildren,args:["allDayCell"]}],headerHintContainer:[{type:h.ViewChild,args:["headerHintContainer",{static:!1}]}]}});c(Xo,Ko=C),Object.defineProperty(Xo.prototype,"title",{get:function(){return this.localization.get("dayViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(Xo.prototype,"selectedDateFormat",{get:function(){return this._selectedDateFormat},set:function(e){this._selectedDateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(Xo.prototype,"selectedShortDateFormat",{get:function(){return this._selectedShortDateFormat},set:function(e){this._selectedShortDateFormat=e},enumerable:!1,configurable:!0});var Ko,$o=Xo;function Xo(e,t,n,r){e=Ko.call(this,e,t,n,r)||this;return e.name="day",e._selectedDateFormat="{0:D}",e._selectedShortDateFormat="{0:d}",e}$o.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$o,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),$o.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:$o,selector:"kendo-scheduler-day-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return $o})}],queries:[{propertyName:"allDaySlotTemplate",first:!0,predicate:gt,descendants:!0},{propertyName:"allDayEventTemplate",first:!0,predicate:mt,descendants:!0},{propertyName:"minorTimeHeaderTemplate",first:!0,predicate:Dt,descendants:!0},{propertyName:"majorTimeHeaderTemplate",first:!0,predicate:kt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:$o,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-day-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return $o})}],template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],allDaySlotTemplate:[{type:h.ContentChild,args:[gt,{static:!1}]}],allDayEventTemplate:[{type:h.ContentChild,args:[mt,{static:!1}]}],minorTimeHeaderTemplate:[{type:h.ContentChild,args:[Dt,{static:!1}]}],majorTimeHeaderTemplate:[{type:h.ContentChild,args:[kt,{static:!1}]}]}});c(ea,Qo=$o),Object.defineProperty(ea.prototype,"selectedDateFormat",{get:function(){return this.dateFormat||this.defaultDateFormat},set:function(e){this.dateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"selectedShortDateFormat",{get:function(){return this.shortDateFormat||this.defaultShortDateFormat},set:function(e){this.shortDateFormat=e},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"title",{get:function(){return this.localization.get("multiDayViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"defaultDateFormat",{get:function(){return 1===this.numberOfDays?"{0:D}":"{0:D} - {1:D}"},enumerable:!1,configurable:!0}),Object.defineProperty(ea.prototype,"defaultShortDateFormat",{get:function(){return 1===this.numberOfDays?"{0:d}":"{0:d} - {1:d}"},enumerable:!1,configurable:!0});var Qo,Jo=ea;function ea(e,t,n,r){e=Qo.call(this,e,t,n,r)||this;return e.numberOfDays=1,e.name="multiDay",e}Jo.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jo,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Jo.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Jo,selector:"kendo-scheduler-multi-day-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat",numberOfDays:"numberOfDays"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Jo})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n viewName="day"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Jo,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-multi-day-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Jo})}],template:'\n <ng-template #content>\n <multi-day-view\n viewName="day"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],numberOfDays:[{type:h.Input}]}});c(ra,ta=C),Object.defineProperty(ra.prototype,"title",{get:function(){return this.localization.get("weekViewTitle")},enumerable:!1,configurable:!0}),ra.prototype.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),this.viewWeekStart)};var ta,na=ra;function ra(e,t,n,r,i){t=ta.call(this,t,n,r,i)||this;return t.intl=e,t.selectedDateFormat="{0:D} - {1:D}",t.selectedShortDateFormat="{0:d} - {1:d}",t.name="week",t.getStartDate=t.getStartDate.bind(t),t}na.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:na,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),na.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:na,selector:"kendo-scheduler-week-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return na})}],queries:[{propertyName:"allDaySlotTemplate",first:!0,predicate:gt,descendants:!0},{propertyName:"allDayEventTemplate",first:!0,predicate:mt,descendants:!0},{propertyName:"minorTimeHeaderTemplate",first:!0,predicate:Dt,descendants:!0},{propertyName:"majorTimeHeaderTemplate",first:!0,predicate:kt,descendants:!0}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:na,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return na})}],template:'\n <ng-template #content>\n <multi-day-view\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}],allDaySlotTemplate:[{type:h.ContentChild,args:[gt,{static:!1}]}],allDayEventTemplate:[{type:h.ContentChild,args:[mt,{static:!1}]}],minorTimeHeaderTemplate:[{type:h.ContentChild,args:[Dt,{static:!1}]}],majorTimeHeaderTemplate:[{type:h.ContentChild,args:[kt,{static:!1}]}]}});c(aa,ia=na),Object.defineProperty(aa.prototype,"title",{get:function(){return this.localization.get("workWeekViewTitle")},enumerable:!1,configurable:!0}),Object.defineProperty(aa.prototype,"numberOfDays",{get:function(){return this.viewWorkWeekStart>this.viewWorkWeekEnd?7-this.viewWorkWeekStart+this.viewWorkWeekEnd+1:this.viewWorkWeekEnd-this.viewWorkWeekStart+1},enumerable:!1,configurable:!0}),aa.prototype.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),this.viewWorkWeekStart)},aa.prototype.getNextDate=function(e,t,n){return b.getDate(b.addDays(e,7*t))};var ia,oa=aa;function aa(e,t,n,r,i){e=ia.call(this,e,t,n,r,i)||this;return e.name="workWeek",e.getNextDate=e.getNextDate.bind(e),e}oa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:oa,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),oa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:oa,selector:"kendo-scheduler-work-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return oa})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <multi-day-view\n viewName="workWeekview"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [getStartDate]="getStartDate"\n [getNextDate]="getNextDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:R,selector:"multi-day-view",inputs:["name","slotFill","allDaySlotTemplate","allDayEventTemplate","minorTimeHeaderTemplate","majorTimeHeaderTemplate"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:oa,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-work-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return oa})}],template:'\n <ng-template #content>\n <multi-day-view\n viewName="workWeekview"\n [name]="name"\n [numberOfDays]="numberOfDays"\n [getStartDate]="getStartDate"\n [getNextDate]="getNextDate"\n [eventHeight]="viewEventHeight"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotFill]="viewSlotFill"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [allDaySlotTemplate]="allDaySlotTemplate?.templateRef"\n [allDayEventTemplate]="allDayEventTemplate?.templateRef"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [minorTimeHeaderTemplate]="minorTimeHeaderTemplate?.templateRef"\n [majorTimeHeaderTemplate]="majorTimeHeaderTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]}});var sa,C=[k,E,eo],la=function(){},C=(la.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,deps:[],target:n.ɵɵFactoryTarget.NgModule}),la.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,declarations:[k,E,eo],imports:[Z.CommonModule,Oi,ko],exports:[k,E,eo]}),la.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,imports:[[Z.CommonModule,Oi,ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:la,decorators:[{type:h.NgModule,args:[{imports:[Z.CommonModule,Oi,ko],exports:[C],declarations:[C]}]}]}),[$o,Jo,na,oa]),ca=function(){},da=(ca.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,deps:[],target:n.ɵɵFactoryTarget.NgModule}),ca.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,declarations:[$o,Jo,na,oa,R],imports:[ko,la],exports:[$o,Jo,na,oa]}),ca.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,imports:[[ko,la]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ca,decorators:[{type:h.NgModule,args:[{imports:[ko,la],exports:[C],declarations:de(de([],ce(C)),[R])}]}]}),c(ua,sa=d),Object.defineProperty(ua.prototype,"name",{get:function(){return this._name||this.title},set:function(e){this._name=e},enumerable:!1,configurable:!0}),ua);function ua(e){var t=sa.call(this)||this;return t.template=e,t}da.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:da,deps:[{token:n.TemplateRef}],target:n.ɵɵFactoryTarget.Directive}),da.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:da,selector:"[kendoSchedulerView]",inputs:{title:["kendoSchedulerView","title"],name:["kendoSchedulerViewName","name"]},providers:[{provide:d,useExisting:h.forwardRef(function(){return da})}],usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:da,decorators:[{type:h.Directive,args:[{providers:[{provide:d,useExisting:h.forwardRef(function(){return da})}],selector:"[kendoSchedulerView]"}]}],ctorParameters:function(){return[{type:n.TemplateRef}]},propDecorators:{title:[{type:h.Input,args:["kendoSchedulerView"]}],name:[{type:h.Input,args:["kendoSchedulerViewName"]}]}});c(ha,pa=t),Object.defineProperty(ha.prototype,"classNames",{get:function(){return"k-scheduler-"+this.viewName+"-view"},enumerable:!1,configurable:!0}),ha.prototype.ngOnChanges=function(e){e.columnWidth&&this.changes.next(null),pa.prototype.ngOnChanges.call(this,e)},ha.prototype.reflow=function(){var e=this.slotService,n=(this.updateContentHeight(),e.containerSize=this.content.nativeElement.scrollWidth,this.verticalResources.length?this.verticalResourceRows.toArray():[]);e.layoutTimeline(this.eventHeight,n),n.length&&e.forEachGroup(function(e,t){n[t].nativeElement.style.height=e.timeRanges[0].slots[0].height+"px"}),this.syncTables()},Object.defineProperty(ha.prototype,"allEventsMessage",{get:function(){return this.localization.get("allEvents")},enumerable:!1,configurable:!0}),Object.defineProperty(ha.prototype,"slotsCount",{get:function(){for(var e=this.horizontalResources,t=this.daySlots.length*this.timeSlots.length,n=0;n<e.length;n++)t*=(e[n].data||[]).length||1;return t},enumerable:!1,configurable:!0}),ha.prototype.timeColspan=function(e){var t=this.timeSlots.length,n=t%this.slotDivisions;return 0==n||e<t-n?this.slotDivisions:1},ha.prototype.horizontalColspan=function(e){for(var t=this.horizontalResources,n=this.daySlots.length*this.timeSlots.length,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},ha.prototype.verticalRowspan=function(e){for(var t=this.verticalResources,n=1,r=e+1;r<t.length;r++)n*=(t[r].data||[]).length||1;return n},ha.prototype.createTasks=function(e,t){for(var n=t.start,r=t.end,i=e,o=[],a=wn(n),s=wn(r),l=0;l<i.length;l++){var c=i[l],d=c.event,u={index:l,start:c.start,end:c.end,event:d,isAllDay:!1},c=d.isAllDay?Dn(c):u.end,d=d.isAllDay?u.start.stripTime():u.start;u.startTime=d.toUTCDate(),u.endTime=c.toUTCDate(),vn(u.startTime,u.endTime,a,s)&&(o.push(u),u.head=u.endTime>r,u.tail=u.startTime<n)}return o},ha.prototype.onTasksChange=function(){this.items.next(this.tasks)},ha.prototype.dragRanges=function(e){return this.slotService.dragRanges(e,this.dragging.offset,!0)},ha.prototype.dragHintSize=function(e,t){return{width:jn(t.rect.left-e.rect.left+t.rect.width),height:jn(e.height)}},ha.prototype.updateResizeHints=function(e,t,n){var r=e[e.length-1];pa.prototype.updateResizeHints.call(this,[[e[0][0],r[r.length-1]]],t,n)},ha.prototype.pdfWidth=function(){return this.content.nativeElement.scrollWidth+this.times.nativeElement.offsetWidth},ha.prototype.currentTimeArrowOffset=function(){return this.headerWrap.nativeElement.querySelector("tr:last-child").offsetTop};var pa,C=ha;function ha(e,t,n,r,i,o,a,s,l,c,d,u){t=pa.call(this,t,n,r,i,o,a,s,l,c,e,d,u)||this;return t.name="timeline",t.columnWidth=100,t.viewName="timeline",t.verticalTime=!1,t}C.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g},{token:o.IntlService},{token:Mo},{token:n.NgZone},{token:n.Renderer2},{token:n.ElementRef},{token:v},{token:f},{token:J.ScrollbarWidthService}],target:n.ɵɵFactoryTarget.Component}),C.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"timeline-multi-day-view",inputs:{name:"name",columnWidth:"columnWidth",viewName:"viewName"},providers:[Mo],viewQueries:[{propertyName:"verticalResourceRows",predicate:["verticalResourceRows"],descendants:!0}],usesInheritance:!0,usesOnChanges:!0,ngImport:n,template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr><th [style.height]="\'auto\'"></th></tr>\n <tr><th class="k-slot-cell"></th></tr>\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header >\n <div class="k-scheduler-header-wrap" #headerWrap>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-down">\n </div>\n </ng-container>\n <table class="k-scheduler-table" aria-hidden="true">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let index = index; trackBy: itemIndex;">\n <th [attr.colspan]="timeSlots.length" class="k-slot-cell">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link" [ngClass]="{ \'k-nav-day\': numberOfDays > 1 }" [attr.data-dayslot-index]="index">{{ daySlot.start | kendoDate: \'m\'}}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: daySlot.start }"></ng-container>\n </th>\n </ng-container>\n </ng-container>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let timeSlot of timeSlots; let index = index; trackBy: itemIndex;">\n <th *ngIf="timeSlot.isMajor" [attr.colspan]="timeColspan(index)" >{{ timeSlot.start | kendoDate: \'t\' }}</th>\n </ng-container>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <tr *ngIf="!verticalResources.length">\n <th rowspan="1" #titleCell>\n {{ allEventsMessage }}\n </th>\n </tr>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr #verticalResourceRows>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <div>\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </div>\n </th>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n class="k-current-time" #currentTimeMarker>\n </div>\n </ng-container>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of timeSlots; let index = index; trackBy: itemIndex;"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n selectableSlot\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.start, resources: resourcesByIndex(timeSlot.id.resourceIndex ) }">\n </ng-container>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n dayTimeViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n <div *ngIf="resizeHints && resizeHints.length"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n ',isInline:!0,components:[{type:eo,selector:"[dayTimeViewItem]",inputs:["vertical","isAllDay"]},{type:Ii,selector:"kendo-hint-container"},{type:Si,selector:"[kendoResizeHint]",inputs:["hint","format"]}],directives:[{type:s.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]},{type:s.NgForOf,selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:s.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:s.NgStyle,selector:"[ngStyle]",inputs:["ngStyle"]},{type:s.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:k,selector:"[timeSlot]",inputs:["invariantStart","invariantEnd","workDayStart","workDayEnd","workWeekStart","workWeekEnd","date"],exportAs:["timeSlot"]},{type:un,selector:"[kendoSchedulerFocusIndex]",inputs:["kendoSchedulerFocusIndex"]}],pipes:{resourceIterator:io,repeat:qt,kendoDate:o.DatePipe,async:s.AsyncPipe}}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:C,decorators:[{type:h.Component,args:[{selector:"timeline-multi-day-view",providers:[Mo],template:'\n <div class="k-scheduler-layout k-scheduler-flex-layout" [ngClass]="classNames">\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #timesHeader>\n <table class="k-scheduler-table" aria-hidden="true">\n <tr><th [style.height]="\'auto\'"></th></tr>\n <tr><th class="k-slot-cell"></th></tr>\n <tr *ngFor="let resource of horizontalResources; trackBy: itemIndex;">\n <th></th>\n </tr>\n </table>\n </div>\n <div class="k-scheduler-header k-state-default" #header >\n <div class="k-scheduler-header-wrap" #headerWrap>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n #currentTimeArrow class="k-current-time k-current-time-arrow-down">\n </div>\n </ng-container>\n <table class="k-scheduler-table" aria-hidden="true">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resource of horizontalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngFor="let item of horizontalResources | resourceIterator : resourceIndex; trackBy: itemIndex;"\n class="k-slot-cell" [attr.colspan]="horizontalColspan(resourceIndex)">\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(item, resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: item }"></ng-container>\n </th>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let index = index; trackBy: itemIndex;">\n <th [attr.colspan]="timeSlots.length" class="k-slot-cell">\n <span *ngIf="!dateHeaderTemplateRef" class="k-link" [ngClass]="{ \'k-nav-day\': numberOfDays > 1 }" [attr.data-dayslot-index]="index">{{ daySlot.start | kendoDate: \'m\'}}</span>\n <ng-container *ngIf="dateHeaderTemplateRef" [ngTemplateOutlet]="dateHeaderTemplateRef" [ngTemplateOutletContext]="{ date: daySlot.start }"></ng-container>\n </th>\n </ng-container>\n </ng-container>\n </tr>\n <tr>\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let resourceIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let timeSlot of timeSlots; let index = index; trackBy: itemIndex;">\n <th *ngIf="timeSlot.isMajor" [attr.colspan]="timeColspan(index)" >{{ timeSlot.start | kendoDate: \'t\' }}</th>\n </ng-container>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n </div>\n </div>\n </div>\n <div class="k-scheduler-pane">\n <div class="k-scheduler-times" #times>\n <table class="k-scheduler-table" #timesTable aria-hidden="true">\n <tr *ngIf="!verticalResources.length">\n <th rowspan="1" #titleCell>\n {{ allEventsMessage }}\n </th>\n </tr>\n <ng-container *ngIf="verticalResources.length">\n <ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let leafIndex = index; trackBy: itemIndex;">\n <tr #verticalResourceRows>\n <ng-container *ngFor="let resource of verticalResources; let resourceIndex = index; trackBy: itemIndex;">\n <th *ngIf="verticalItem(leafIndex, resourceIndex)" [attr.rowspan]="verticalRowspan(resourceIndex)" class="k-slot-cell">\n <div>\n <ng-container *ngIf="!groupHeaderTemplateRef">{{ getField(verticalItem(leafIndex, resourceIndex), resource.textField) }}</ng-container>\n <ng-container *ngIf="groupHeaderTemplateRef" [ngTemplateOutlet]="groupHeaderTemplateRef"\n [ngTemplateOutletContext]="{ resource: verticalItem(leafIndex, resourceIndex) }"></ng-container>\n </div>\n </th>\n </ng-container>\n </tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n <div class="k-scheduler-content" #content>\n <ng-container *ngIf="showCurrentTime">\n <div *ngFor="let resource of horizontalResources | resourceIterator; trackBy: itemIndex;"\n class="k-current-time" #currentTimeMarker>\n </div>\n </ng-container>\n <table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">\n <colgroup>\n <col *ngFor="let slotIndex of slotsCount | repeat; trackBy: itemIndex;" [ngStyle]="{ \'width.px\': columnWidth }" />\n </colgroup>\n <tr *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let resource of horizontalResources | resourceIterator; let horizontalIndex = index; trackBy: itemIndex;">\n <ng-container *ngFor="let daySlot of daySlots; let rangeIndex = index; trackBy: itemIndex;">\n <td *ngFor="let slot of timeSlots; let index = index; trackBy: itemIndex;"\n [ngClass]="timeSlotClass(slot, daySlot.start, verticalResources.length ? verticalIndex : horizontalIndex)"\n timeSlot #timeSlot="timeSlot"\n [date]="daySlot.start"\n [invariantStart]="slot.start"\n [invariantEnd]="slot.end"\n [workDayStart]="workDayStartTime"\n [workDayEnd]="workDayEndTime"\n [workWeekStart]="workWeekStart"\n [workWeekEnd]="workWeekEnd"\n selectableSlot\n [id]="{ resourceIndex: verticalResources.length ? verticalIndex : horizontalIndex, rangeIndex: rangeIndex, index: index }"\n [class.k-selected]="isSlotSelected({\n start: toPlainDateTime(daySlot.start, slot.start),\n end: toPlainDateTime(daySlot.start, slot.end),\n isAllDay: false,\n resources: resourcesByIndex(verticalResources.length ? verticalIndex : horizontalIndex)\n })"\n >\n <ng-container *ngIf="timeSlotTemplateRef" [ngTemplateOutlet]="timeSlotTemplateRef"\n [ngTemplateOutletContext]="{ date: timeSlot.start, resources: resourcesByIndex(timeSlot.id.resourceIndex ) }">\n </ng-container>\n </td>\n </ng-container>\n </ng-container>\n </tr>\n </table>\n <ng-container *ngFor="let item of items | async; trackBy: itemIndex;">\n <div *ngFor="let itemResource of item.resources; trackBy: itemIndex;"\n [ngClass]="getEventClasses(item, itemResource.resources)"\n [ngStyle]="getEventStyles(item, itemResource)"\n role="button"\n [kendoSchedulerFocusIndex]="itemResource.leafIdx"\n [id]="item.elementId + \'_\' + itemResource.leafIdx"\n dayTimeViewItem\n [editable]="editable"\n [item]="item"\n [index]="item.index"\n [rangeIndex]="item.rangeIndex"\n [eventTemplate]="eventTemplateRef"\n [resources]="itemResource.resources"\n [resourceIndex]="itemResource.leafIdx">\n </div>\n </ng-container>\n <kendo-hint-container #hintContainer>\n <ng-template>\n <div *ngFor="let hint of dragHints; trackBy: itemIndex;"\n class="k-event-drag-hint"\n dayTimeViewItem\n [ngStyle]="hint.style"\n [ngClass]="hint.class"\n [dragHint]="true"\n [eventTemplate]="eventTemplateRef"\n [item]="hint.item"\n [resources]="hint.resources">\n </div>\n <div *ngIf="resizeHints && resizeHints.length"\n kendoResizeHint\n [hint]="resizeHints[0]"\n [ngClass]="resizeHints[0].class"\n [format]="resizeHintFormat">\n </div>\n </ng-template>\n </kendo-hint-container>\n </div>\n </div>\n </div>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g},{type:o.IntlService},{type:Mo},{type:n.NgZone},{type:n.Renderer2},{type:n.ElementRef},{type:v},{type:f},{type:J.ScrollbarWidthService}]},propDecorators:{name:[{type:h.Input}],columnWidth:[{type:h.Input}],viewName:[{type:h.Input}],verticalResourceRows:[{type:h.ViewChildren,args:["verticalResourceRows"]}]}});c(ga,ma=F),Object.defineProperty(ga.prototype,"viewColumnWidth",{get:function(){return this.optionValue("columnWidth")},enumerable:!1,configurable:!0});var ma,R=ga;function ga(e,t,n,r){return ma.call(this,e,t,n,r)||this}R.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Directive}),R.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:R,inputs:{columnWidth:"columnWidth"},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:R,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{columnWidth:[{type:h.Input}]}});c(va,ya=R),Object.defineProperty(va.prototype,"title",{get:function(){return this.localization.get("timelineViewTitle")},enumerable:!1,configurable:!0});var ya,fa=va;function va(e,t,n,r){e=ya.call(this,e,t,n,r)||this;return e.selectedDateFormat="{0:D}",e.selectedShortDateFormat="{0:d}",e.name="timeline",e}fa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:fa,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),fa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:fa,selector:"kendo-scheduler-timeline-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return fa})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:fa,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return fa})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n [name]="name"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});c(Ta,ka=R),Object.defineProperty(Ta.prototype,"title",{get:function(){return this.localization.get("timelineWeekViewTitle")},enumerable:!1,configurable:!0});var ka,Da=Ta;function Ta(e,t,n,r,i){var o=ka.call(this,t,n,r,i)||this;return o.selectedDateFormat="{0:D} - {1:D}",o.selectedShortDateFormat="{0:d} - {1:d}",o.name="timelineWeek",o.getStartDate=function(e){return b.firstDayInWeek(b.getDate(e),o.viewWeekStart)},o}Da.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Da,deps:[{token:o.IntlService},{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),Da.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Da,selector:"kendo-scheduler-timeline-week-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return Da})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-week"\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Da,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-week-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return Da})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-week"\n [name]="name"\n [numberOfDays]="7"\n [getStartDate]="getStartDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [weekStart]="viewWeekStart"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o.IntlService},{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});c(wa,Ia=R),Object.defineProperty(wa.prototype,"title",{get:function(){return this.localization.get("timelineMonthViewTitle")},enumerable:!1,configurable:!0});var Ia,ba=wa;function wa(e,t,n,r){var i=Ia.call(this,e,t,n,r)||this;return i.selectedDateFormat="{0:Y}",i.selectedShortDateFormat="{0:y}",i.name="timelineMonth",i.getStartDate=function(e){return b.firstDayOfMonth(b.getDate(e))},i.getEndDate=function(e){return b.addMonths(i.getStartDate(e),1)},i.getNextDate=function(e,t){return b.addMonths(e,t)},i}ba.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ba,deps:[{token:r.LocalizationService},{token:n.ChangeDetectorRef},{token:m},{token:g}],target:n.ɵɵFactoryTarget.Component}),ba.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:ba,selector:"kendo-scheduler-timeline-month-view",inputs:{selectedDateFormat:"selectedDateFormat",selectedShortDateFormat:"selectedShortDateFormat"},providers:[{provide:d,useExisting:h.forwardRef(function(){return ba})}],usesInheritance:!0,ngImport:n,template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-month"\n [name]="name"\n [getNextDate]="getNextDate"\n [getStartDate]="getStartDate"\n [getEndDate]="getEndDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"timeline-multi-day-view",inputs:["name","columnWidth","viewName"]},{type:mo,selector:"[viewFooter]",inputs:["items"],outputs:["itemClick"]}],directives:[{type:a,selector:"[kendoWorkHoursFooter]",inputs:["showWorkHours"]}],changeDetection:n.ChangeDetectionStrategy.OnPush}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:ba,decorators:[{type:h.Component,args:[{changeDetection:h.ChangeDetectionStrategy.OnPush,selector:"kendo-scheduler-timeline-month-view",providers:[{provide:d,useExisting:h.forwardRef(function(){return ba})}],template:'\n <ng-template #content>\n <timeline-multi-day-view\n viewName="timeline-month"\n [name]="name"\n [getNextDate]="getNextDate"\n [getStartDate]="getStartDate"\n [getEndDate]="getEndDate"\n [eventHeight]="viewEventHeight"\n [columnWidth]="viewColumnWidth"\n [currentTimeMarker]="viewCurrentTimeMarker"\n [highlightOngoingEvents]="viewHighlightOngoingEvents"\n [showWorkHours]="shouldShowWorkHours"\n [scrollTime]="viewScrollTime"\n [startTime]="viewStartTime"\n [endTime]="viewEndTime"\n [workDayStart]="viewWorkDayStart"\n [workDayEnd]="viewWorkDayEnd"\n [workWeekStart]="viewWorkWeekStart"\n [workWeekEnd]="viewWorkWeekEnd"\n [slotDuration]="viewSlotDuration"\n [slotDivisions]="viewSlotDivisions"\n [slotClass]="viewSlotClass"\n [eventClass]="viewEventClass"\n [eventStyles]="viewEventStyles"\n [еventTemplate]="eventTemplate?.templateRef"\n [groupHeaderTemplate]="groupHeaderTemplate?.templateRef"\n [timeSlotTemplate]="timeSlotTemplate?.templateRef"\n [dateHeaderTemplate]="dateHeaderTemplate?.templateRef"\n [selectedDateFormat]="selectedDateFormat"\n [selectedShortDateFormat]="selectedShortDateFormat">\n </timeline-multi-day-view>\n <div viewFooter kendoWorkHoursFooter [showWorkHours]="shouldShowWorkHours" (itemClick)="showWorkHours = !shouldShowWorkHours"></div>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:r.LocalizationService},{type:n.ChangeDetectorRef},{type:m},{type:g}]},propDecorators:{selectedDateFormat:[{type:h.Input}],selectedShortDateFormat:[{type:h.Input}]}});function Sa(e){return!(!e.id||!e.recurrenceRule)}var t=[fa,Da,ba],s=function(){},xa=(s.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,deps:[],target:n.ɵɵFactoryTarget.NgModule}),s.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,declarations:[fa,Da,ba,C],imports:[la,ko],exports:[fa,Da,ba]}),s.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,imports:[[la,ko]]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:s,decorators:[{type:h.NgModule,args:[{imports:[la,ko],exports:[t],declarations:de(de([],ce(t)),[C])}]}]}),Object.defineProperty(Ca.prototype,"fields",{get:function(){return this.scheduler.modelFields},enumerable:!1,configurable:!0}),Object.defineProperty(Ca.prototype,"hasLocalData",{get:function(){return y(this.localDataChangesService.data)},enumerable:!1,configurable:!0}),Object.defineProperty(Ca.prototype,"data",{get:function(){return this.hasLocalData?this.localDataChangesService.data:this.scheduler.events},enumerable:!1,configurable:!0}),Ca.prototype.create=function(e){var t=this.fields.id,n=x(e,t);y(n)||At(e,t,this.nextId()),this.data.push(e),this.dataChanged()},Ca.prototype.createException=function(e,t){t=this.buildException(t);this.removeOccurrenceInternal(e),this.create(t)},Ca.prototype.update=function(e,t){Bt(e,t),this.dataChanged()},Ca.prototype.remove=function(e){for(var t=this.fields.id,n=x(e,t),r=this.data,i=0;i<r.length;i++)if(n===x(r[i],t)){r.splice(i,1);break}this.dataChanged()},Ca.prototype.removeSeries=function(e){var e=Mt(e,this.fields),t=Sa(e);this.removeItemAndExceptions(t?e.id:e.recurrenceId),this.dataChanged()},Ca.prototype.removeOccurrence=function(e){this.removeOccurrenceInternal(e),this.dataChanged()},Ca.prototype.findRecurrenceMaster=function(e){var t=this.scheduler.modelFields,e=Mt(e,t),n=Sa(e)?e.id:e.recurrenceId;return this.data.find(function(e){return x(e,t.id)===n})},Ca.prototype.isRecurring=function(e){return Ht(e,this.scheduler.modelFields)},Ca.prototype.isException=function(e){return Vt(e,this.scheduler.modelFields)},Ca.prototype.nextId=function(){return l.guid()},Ca.prototype.buildException=function(e){var t=this.fields,n=this.findRecurrenceMaster(e);if(n)return e=Lt(e),At(e,t.id,this.nextId()),At(e,t.recurrenceId,x(n,t.id)),At(e,t.recurrenceRule,null),e;if(h.isDevMode())throw new Error("Unable to find recurrence head for event. Please check that recurrenceId is set and refers to an existing event.")},Ca.prototype.removeItemAndExceptions=function(e){for(var t=this.data,n=this.scheduler.modelFields,r=t.length-1;0<=r;r--)e!==x(t[r],n.recurrenceId)&&e!==x(t[r],n.id)||t.splice(r,1)},Ca.prototype.removeOccurrenceInternal=function(e){var t=this.fields,n=this.findRecurrenceMaster(e),e=x(e,t.start),r=x(n,t.recurrenceExceptions)||[];At(n,t.recurrenceExceptions,de(de([],ce(r)),[e]))},Ca.prototype.dataChanged=function(){this.hasLocalData&&this.localDataChangesService.changes.emit()},Ca);function Ca(e,t){this.scheduler=e,this.localDataChangesService=t}function Ea(e){if(e.markAsTouched(),e.hasOwnProperty("controls")){var t,n=e.controls;for(t in n)n.hasOwnProperty(t)&&Ea(n[t])}}function Ra(e,t){if(e&&e.getTime&&t&&t.getTime)return e.getTime()===t.getTime();if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return;return 1}return e==t}var Oa=["getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds"];function Fa(e,t,n,r){var i=[],o=x(e,r),a=x(t,r),s=x(n,r);return Oa.forEach(function(e){i.push((a[e]()===s[e]()?o:s)[e]())}),new(Date.bind.apply(Date,de([void 0],ce(i))))}Object.defineProperty(Ha.prototype,"editService",{get:function(){return this.userEditService||this.defaultEditService},set:function(e){this.userEditService=e},enumerable:!1,configurable:!0}),Ha.prototype.ngOnInit=function(){this.subscriptions=p.merge(this.scheduler.slotDblClick,this.scheduler.create).subscribe(this.addHandler.bind(this)),this.subscriptions.add(this.scheduler.removeConfirmed.subscribe(this.removeHandler.bind(this))),this.subscriptions.add(this.scheduler.cancel.subscribe(this.cancelHandler.bind(this))),this.subscriptions.add(this.scheduler.resizeEndConfirmed.subscribe(this.resizeEndHandler.bind(this))),this.subscriptions.add(this.scheduler.dragEndConfirmed.subscribe(this.dragEndHandler.bind(this)))},Ha.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Ha.prototype.createDefaultService=function(){return new xa(this.scheduler,this.localDataChangesService)},Ha.prototype.addHandler=function(e){if(this.closeEditor(),this.isEnabled("add")){for(var t=this.scheduler.modelFields,n={},r=(At(n,t.start,e.start),At(n,t.end,e.end),At(n,t.isAllDay,e.isAllDay),At(n,t.title,e.title),zt(this.scheduler.group,this.scheduler.resources)),i=e.resources,o=0;o<r.length;o++){var a=r[o],s=x(i[o],a.valueField);At(n,a.field,a.multiple?[s]:s)}t=new Je(this.scheduler,{dataItem:n});this.add.emit(t),t.isDefaultPrevented()||this.scheduler.addEvent(this.createModel({action:"add",isNew:!0,dataItem:n}))}},Ha.prototype.removeHandler=function(e){var t=this,n=e.dataItem;this.isEnabled("remove")&&(this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(1).subscribe(function(e){void 0!==e&&(t.handleRemove(n,e),t.focusService.focusFirst())}):this.dialogsService.openRemoveConfirmationDialog().subscribe(function(e){e&&(t.handleRemove(n,0),t.focusService.focusFirst())}))},Ha.prototype.cancelHandler=function(){this.closeEditor()},Ha.prototype.closeEditor=function(){this.scheduler.closeEvent()},Ha.prototype.handleUpdate=function(e,t,n){var r=this.editService;1!==n||r.isException(e)?r.update(e,t):r.createException(e,t)},Ha.prototype.handleRemove=function(e,t){var n=this.editService;2===t?n.removeSeries(e):1!==t||n.isException(e)?n.remove(e):n.removeOccurrence(e)},Ha.prototype.resizeEndHandler=function(e){var n,r,i,o=this,t=e.event,a=e.start,e=e.end;Ra(a,t.start)&&Ra(e,t.end)||(n=t.dataItem,r=this.scheduler.modelFields,At(i={},r.start,a),At(i,r.end,e),this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(0).subscribe(function(e){var t=n;2===e?(t=o.editService.findRecurrenceMaster(n),At(i,r.start,Fa(t,n,i,r.start)),At(i,r.end,Fa(t,n,i,r.end))):void 0!==e&&(i=Bt(Lt(n),i)),o.handleUpdate(t,i,e)}):this.editService.update(n,i))},Ha.prototype.dragEndHandler=function(e){var n=this,r=e.event.dataItem,t=e.start,i=e.end,o=e.resources,e=e.isAllDay,a=this.scheduler.modelFields,s=zt(this.scheduler.group,this.scheduler.resources).map(function(e){return e.field}),s=[a.start,a.end,a.isAllDay].concat(s),l=Lt(o);At(l,a.start,t),At(l,a.end,i),At(l,a.isAllDay,e),function(e,t,n){for(var r=0;r<n.length;r++){var i=n[r];if(!Ra(x(e,i),x(t,i)))return 1}}(r,l,s)&&(this.editService.isRecurring(r)?this.dialogsService.openRecurringConfirmationDialog(0).subscribe(function(e){var t=r;2===e?(t=n.editService.findRecurrenceMaster(r),At(l,a.start,Fa(t,r,l,a.start)),At(l,a.end,Fa(t,r,l,a.end))):void 0!==e&&(l=Bt(Lt(r),l)),n.handleUpdate(t,l,e)}):this.editService.update(r,l))},Ha.prototype.isEnabled=function(e){var t=this.scheduler.editable;return t&&!1!==t[e]};F=Ha;function Ha(e,t,n,r){this.scheduler=e,this.localDataChangesService=t,this.dialogsService=n,this.focusService=r,this.add=new h.EventEmitter,this.edit=new h.EventEmitter,this.defaultTitle="No title",this.defaultEditService=this.createDefaultService(),this.scheduler.editable=!0}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:Yr},{token:$t},{token:Jt},{token:f}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,inputs:{editService:"editService"},outputs:{add:"add",edit:"edit"},ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive}],ctorParameters:function(){return[{type:Yr},{type:$t},{type:Jt},{type:f}]},propDecorators:{add:[{type:h.Output}],edit:[{type:h.Output}],editService:[{type:h.Input}]}});c(Wa,Va=F),Wa.prototype.ngOnInit=function(){Va.prototype.ngOnInit.call(this),this.subscriptions.add(this.scheduler.eventDblClick.subscribe(this.editHandler.bind(this))),this.subscriptions.add(this.scheduler.save.subscribe(this.saveHandler.bind(this)))},Wa.prototype.editHandler=function(e){var n,t,r=this;this.isEnabled("edit")&&(t=new $e(this.scheduler,{dataItem:e.event.dataItem,event:e.event}),this.edit.emit(t),t.isDefaultPrevented()||(n=e.event.dataItem,this.editService.isRecurring(n)?this.dialogsService.openRecurringConfirmationDialog(0).pipe(N.filter(function(e){return void 0!==e})).subscribe(function(e){2===e&&(n=r.editService.findRecurrenceMaster(n));var t=r.createModel({action:"edit",isNew:!1,mode:e,dataItem:n});r.scheduler.editEvent(n,{group:t,mode:e})}):(t=this.createModel({action:"edit",isNew:!1,mode:0,dataItem:n}),this.scheduler.editEvent(n,{group:t}))))},Wa.prototype.saveHandler=function(e){var t;this.isFormValid(e)&&(t=e.formGroup.value,e.isNew?this.editService.create(t):this.handleUpdate(e.dataItem,t,e.mode)),this.closeEditor()},Wa.prototype.createModel=function(e){return e.event=e.dataItem,this.createFormGroup(e)},Wa.prototype.isFormValid=function(e){var t=e.formGroup,e=e.isNew;return!!t.valid||((t.dirty||e)&&Ea(t),!1)};var Va,t=Wa;function Wa(e,t,n,r){r=Va.call(this,e,t,n,r)||this;return r.scheduler=e,r.localDataChangesService=t,r.dialogsService=n,r}t.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,deps:[{token:Yr},{token:$t},{token:Jt},{token:f}],target:n.ɵɵFactoryTarget.Directive}),t.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:t,selector:"[kendoSchedulerReactiveEditing]",inputs:{createFormGroup:["kendoSchedulerReactiveEditing","createFormGroup"]},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:t,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerReactiveEditing]"}]}],ctorParameters:function(){return[{type:Yr},{type:$t},{type:Jt},{type:f}]},propDecorators:{createFormGroup:[{type:h.Input,args:["kendoSchedulerReactiveEditing"]}]}});c(za,Ma=i),Object.defineProperty(za.prototype,"override",{get:function(){return!0},enumerable:!1,configurable:!0});var Ma,Pa=za;function za(e){var t=Ma.call(this)||this;return t.service=e,t}Pa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Pa,deps:[{token:r.LocalizationService}],target:n.ɵɵFactoryTarget.Component}),Pa.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:Pa,selector:"kendo-recurrence-editor-messages",providers:[{provide:i,useExisting:h.forwardRef(function(){return Pa})}],usesInheritance:!0,ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:Pa,decorators:[{type:h.Component,args:[{providers:[{provide:i,useExisting:h.forwardRef(function(){return Pa})}],selector:"kendo-recurrence-editor-messages",template:""}]}],ctorParameters:function(){return[{type:r.LocalizationService}]}});function Aa(e){return yn(e,"k-scheduler-content")}Na.prototype.onKeydown=function(t){var e=this.shortcuts.find(function(e){return e.match(t)});e&&!this.dialogsService.isOpen&&e.action(t)},Na.prototype.onEventKeydown=function(t){var e=this.taskShortcuts.find(function(e){return e.match(t.originalEvent)});e&&!this.dialogsService.isOpen&&e.action(t.originalEvent,t.event)},Na.prototype.focusWait=function(){var e=this;this.viewState.layoutEnd.pipe(N.take(1)).subscribe(function(){return e.focusService.focus()})};F=Na;function Na(e,t,n,r,i,o,a){var s=this;this.scheduler=e,this.domEvents=t,this.focusService=n,this.zone=r,this.changeDetector=i,this.viewState=o,this.dialogsService=a,this.shortcuts=[{match:function(e){return e.keyCode===l.Keys.KeyC&&cr(e)},action:function(e){var t,n=s.scheduler,r=(new Date).getHours(),i=n.selectedDate,o=new Date(i.getFullYear(),i.getMonth(),i.getDate(),r+1),i=new Date(i.getFullYear(),i.getMonth(),i.getDate(),r+2);n.group&&(r=n.resources||[],0<(r=zt(n.group||{},r)).length)&&(t=r[0].data[0]),n.create.emit({start:b.ZonedDate.fromLocalDate(o,n.timezone).toLocalDate(),end:b.ZonedDate.fromLocalDate(i,n.timezone).toLocalDate(),isAllDay:!1,resources:[t],originalEvent:e,sender:n})}},{match:function(e){return e.keyCode>=l.Keys.Digit1&&e.keyCode<=l.Keys.Digit9&&lr(e,or.AltKey)},action:function(e){var t=s.scheduler,e=e.keyCode-l.Keys.Digit0-1,n=t.views.toArray()[e];n&&s.zone.run(function(){t.onNavigationAction({type:"view-change",view:n})||(s.changeDetector.markForCheck(),s.focusWait())})}},{match:function(e){return e.keyCode===l.Keys.KeyT&&cr(e)},action:function(){s.zone.run(function(){s.scheduler.onNavigationAction({type:"today"}),s.focusWait()})}},{match:function(e){return(e.keyCode===l.Keys.ArrowLeft||e.keyCode===l.Keys.ArrowRight)&&lr(e,or.ShiftKey)},action:function(e){var t=e.keyCode===l.Keys.ArrowLeft?"prev":"next";s.zone.run(function(){s.scheduler.onNavigationAction({type:t}),s.focusWait()})}},{match:function(e){return(e.keyCode===l.Keys.ArrowUp||e.keyCode===l.Keys.ArrowLeft)&&cr(e)&&!Aa(e.target)},action:function(e){s.scheduler.onNavigationAction({type:"focus-prev"})||(s.focusService.focusNext({offset:-1}),e.preventDefault())}},{match:function(e){return(e.keyCode===l.Keys.ArrowDown||e.keyCode===l.Keys.ArrowRight)&&cr(e)&&!Aa(e.target)},action:function(e){s.scheduler.onNavigationAction({type:"focus-next"})||(s.focusService.focusNext({offset:1}),e.preventDefault())}}],this.taskShortcuts=[{match:function(e){return(e.keyCode===l.Keys.Delete||e.keyCode===l.Keys.Backspace)&&cr(e)},action:function(e,t){s.viewState.emitEvent("remove",{event:t,dataItem:t.dataItem}),e.preventDefault()}},{match:function(e){return e.keyCode===l.Keys.Enter&&cr(e)},action:function(e,t){s.viewState.emitEvent("eventDblClick",{type:"dblclick",event:t,originalEvent:e}),e.preventDefault()}}],this.subs=new p.Subscription,this.subs.add(this.domEvents.keydown.subscribe(function(e){return s.onKeydown(e)})),this.subs.add(this.scheduler.eventKeydown.subscribe(function(e){return s.onEventKeydown(e)}))}F.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,deps:[{token:Yr},{token:Xt},{token:f},{token:n.NgZone},{token:n.ChangeDetectorRef},{token:g},{token:Jt}],target:n.ɵɵFactoryTarget.Directive}),F.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"kendo-scheduler",ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:F,decorators:[{type:h.Directive,args:[{selector:"kendo-scheduler"}]}],ctorParameters:function(){return[{type:Yr},{type:Xt},{type:f},{type:n.NgZone},{type:n.ChangeDetectorRef},{type:g},{type:Jt}]}});Ba.prototype.ngOnInit=function(){this.scheduler.isSlotSelected=this.isSlotSelected.bind(this)},Ba.prototype.ngOnChanges=function(e){var t;l.isChanged("slotSelection",e,!1)&&(t={isAllDay:!1,resources:this.scheduler.resources.reduce(function(e,t){return e.push.apply(e,de([],ce(t.data))),e},[])},this.selectedRange=Object.assign(t,e.slotSelection.currentValue),this.cdr.markForCheck())},Ba.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Ba.prototype.isSlotSelected=function(e){var t=e.start,n=e.end,r=e.isAllDay,e=e.resources;return!!(t&&n&&this.selectedRange)&&!!Wn(this.selectedRange.resources,e)&&this.selectedRange&&r===this.selectedRange.isAllDay&&this.isInRange(t,n)},Ba.prototype.initDragSelect=function(e){var t=e.start,n=e.end,r=e.isAllDay,e=e.resources;this.selectionOriginResources=e.slice(),this.selectedRange={start:t,end:n,isAllDay:r,resources:e.slice()},this.cdr.markForCheck()},Ba.prototype.onDrag=function(e){var t=e.start,n=e.end,e=e.resources;Wn(this.selectionOriginResources,e)&&(this.selectedRange.start=t,this.selectedRange.end=n,this.cdr.markForCheck())},Ba.prototype.onRelease=function(){this.selectionOriginResources=null,this.selectedRange&&this.slotSelectionChangeSource.emit(this.selectedRange)},Ba.prototype.isInRange=function(e,t){if(this.selectedRange)return vn(e,t,this.selectedRange.start,this.selectedRange.end)};i=Ba;function Ba(e,t){var n=this,e=(this.scheduler=e,this.cdr=t,this.slotSelectionChange=new h.EventEmitter,this.selectedRange=null,this.slotSelectionChangeSource=new h.EventEmitter,this.subscriptions=new p.Subscription,this.scheduler.selectable=!0,this.subscriptions.add(this.slotSelectionChangeSource.pipe(N.distinctUntilChanged(Mn)).subscribe(function(e){n.slotSelectionChange.emit(e)})),this.scheduler.slotDragStart),t=this.scheduler.slotDrag,r=this.scheduler.slotDragEnd,e=e.pipe(N.filter(function(e){return!e.isDefaultPrevented()}));this.subscriptions.add(e.subscribe(function(e){return n.initDragSelect(e)})),this.subscriptions.add(t.subscribe(function(e){return n.onDrag(e)})),this.subscriptions.add(r.subscribe(function(){return n.onRelease()}))}i.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,deps:[{token:Yr},{token:n.ChangeDetectorRef}],target:n.ɵɵFactoryTarget.Directive}),i.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:i,selector:"[kendoSchedulerSlotSelectable]",inputs:{slotSelection:"slotSelection"},outputs:{slotSelectionChange:"slotSelectionChange"},usesOnChanges:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:i,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerSlotSelectable]"}]}],ctorParameters:function(){return[{type:Yr},{type:n.ChangeDetectorRef}]},propDecorators:{slotSelection:[{type:h.Input}],slotSelectionChange:[{type:h.Output}]}});var ja=de([Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve],ce([u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It])),ie=de([Ei,vo,ca,t,s,ie],ce(ja)),La=[q.ButtonsModule,U.CheckBoxModule,U.TextAreaModule,A.DateInputsModule,j.DialogModule,U.NumericTextBoxModule,U.TextBoxModule,G.DropDownsModule,B.ReactiveFormsModule,Oi],qa=function(){},Za=(qa.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,deps:[],target:n.ɵɵFactoryTarget.NgModule}),qa.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,declarations:[Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve,u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It],imports:[Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s,q.ButtonsModule,U.CheckBoxModule,U.TextAreaModule,A.DateInputsModule,j.DialogModule,U.NumericTextBoxModule,U.TextBoxModule,G.DropDownsModule,B.ReactiveFormsModule,Oi],exports:[Ei,vo,ca,t,s,Kn,lt,Xn,Yr,da,ee,F,t,i,dr,jr,Wr,D,Sr,Fr,Cr,re,Rr,nr,ar,pr,T,Xr,_r,Pa,Nr,ve,u,ht,mt,gt,yt,ft,Kt,vt,kt,Dt,Tt,It]}),qa.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,providers:[{provide:L.IntlService,useClass:L.CldrIntlService}],imports:[de([Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s],ce(La)),vo,ca,s]}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:qa,decorators:[{type:h.NgModule,args:[{imports:de([Z.CommonModule,I,Hi,ca,l.ResizeSensorModule,vo,s],ce(La)),declarations:ja,exports:ie,providers:[{provide:L.IntlService,useClass:L.CldrIntlService}]}]}]}),["yyyyMMddTHHmmssSSSXXX","yyyyMMddTHHmmssXXX","yyyyMMddTHHmmss","yyyyMMddTHHmm","yyyyMMddTHH","yyyyMMdd"]),A=(M.prototype.create=function(e){this.logCreate(e),this.saveChanges()},M.prototype.createException=function(e,t){t=this.buildException(t);this.logRemoveOccurrence(e),this.logCreate(t),this.saveChanges()},M.prototype.update=function(e,t){this.assignValues(e,t),this.logUpdate(e),this.saveChanges()},M.prototype.remove=function(e){this.logRemove(e),this.saveChanges()},M.prototype.removeSeries=function(e){var t=this.getId(e),n=this.getRecurrenceId(e),e=this.isRecurrenceHead(e);this.removeItemAndExceptions(e?t:n),this.saveChanges()},M.prototype.removeOccurrence=function(e){this.logRemoveOccurrence(e),this.saveChanges()},M.prototype.findRecurrenceMaster=function(e){var t=this.getId(e),n=this.getRecurrenceId(e),e=this.isRecurrenceHead(e)?t:n,t=this.itemIndex(e,this.data);return this.data[t]},M.prototype.isRecurring=function(e){return Ht(e,this.fields)},M.prototype.isException=function(e){return Vt(e,this.fields)},M.prototype.isNew=function(e){e=this.getId(e);return!y(e)},M.prototype.nextId=function(){},M.prototype.assignValues=function(e,t){jt(t,e)},M.prototype.cloneEvent=function(e){var t={};return this.assignValues(t,e),t},M.prototype.parseExceptions=function(e){return y(e)&&""!==e?e.split(";").map(function(e){return L.parseDate(e,Za)||void 0}):[]},M.prototype.serializeExceptions=function(e){return e&&0!==e.length?e.map(function(e){return L.formatDate(b.toLocalDate(e),"yyyyMMddTHHmmss")+"Z"}).join(";"):""},M.prototype.reset=function(){this.data=[],this.deletedItems=[],this.updatedItems=[],this.createdItems=[]},M.prototype.itemIndex=function(e,t){for(var n=0;n<t.length;n++)if(this.getId(t[n])===e)return n;return-1},M.prototype.buildException=function(e){var t=this.fields,n=this.findRecurrenceMaster(e),e=this.cloneEvent(e);return Nt(e,n,t.id),this.setId(e,this.nextId()),this.setRecurrenceRule(e,void 0),this.setRecurrenceId(e,this.getId(n)),e},M.prototype.isRecurrenceHead=function(e){var t=this.getId(e),e=this.getRecurrenceRule(e);return!(!t||!e)},M.prototype.logCreate=function(e){this.data=de(de([],ce(this.data)),[e]),this.source.next(this.data),this.createdItems.push(e)},M.prototype.logUpdate=function(e){var t,n=this.getId(e);this.isNew(e)?(t=this.createdItems.indexOf(e),this.createdItems.splice(t,1,e)):-1!==(t=this.itemIndex(n,this.updatedItems))?this.updatedItems.splice(t,1,e):this.updatedItems.push(e)},M.prototype.logRemove=function(e){var t=this.getId(e),n=this.itemIndex(t,this.data);this.data=this.data.filter(function(e,t){return t!==n}),this.source.next(this.data),0<=(n=this.itemIndex(t,this.createdItems))?this.createdItems.splice(n,1):this.deletedItems.push(e),0<=(n=this.itemIndex(t,this.updatedItems))&&this.updatedItems.splice(n,1)},M.prototype.logRemoveOccurrence=function(e){var t=this.findRecurrenceMaster(e),e=this.getStart(e),n=this.getRecurrenceExceptions(t)||[];this.setRecurrenceExceptions(t,de(de([],ce(n)),[e])),this.logUpdate(t)},M.prototype.removeItemAndExceptions=function(t){var n=this;this.deletedItems=this.deletedItems.concat(this.data.filter(function(e){return n.getRecurrenceId(e)===t||n.getId(e)===t}))},M.prototype.hasChanges=function(){return 0<this.deletedItems.length+this.updatedItems.length+this.createdItems.length},M.prototype.saveChanges=function(){this.hasChanges()&&(this.save(this.createdItems,this.updatedItems,this.deletedItems),this.reset())},M);function M(e){this.data=[],this.source=new p.BehaviorSubject([]),this.createdItems=[],this.updatedItems=[],this.deletedItems=[],this.events=this.source.asObservable(),this.fields=Object.assign(Object.assign({},on),e),this.getId=Ct(this.fields.id),this.getRecurrenceId=Ct(this.fields.recurrenceId),this.getRecurrenceRule=Ct(this.fields.recurrenceRule),this.getRecurrenceExceptions=Ct(this.fields.recurrenceExceptions),this.getStart=Ct(this.fields.start),this.setId=Ot(this.fields.id),this.setRecurrenceRule=Ot(this.fields.recurrenceRule),this.setRecurrenceExceptions=Ot(this.fields.recurrenceExceptions),this.setRecurrenceId=Ot(this.fields.recurrenceId)}function Ga(e){var t="div";return t=document.createElement(t),e&&(t.className=e),t}_a.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},Object.defineProperty(_a.prototype,"drawOptions",{get:function(){return{_destructive:!0,avoidLinks:this.avoidLinks,margin:this.margin,scale:this.scale}},enumerable:!1,configurable:!0}),Object.defineProperty(_a.prototype,"pdfOptions",{get:function(){return{author:this.author,creator:this.creator,date:this.date,imgDPI:this.imageResolution,keywords:this.keywords,margin:this.margin,producer:this.producer,subject:this.subject,title:this.title}},enumerable:!1,configurable:!0}),Object.defineProperty(_a.prototype,"saveOptions",{get:function(){return{forceProxy:this.forceProxy,proxyData:this.proxyData,proxyTarget:this.proxyTarget,proxyURL:this.proxyURL}},enumerable:!1,configurable:!0}),_a.prototype.createElement=function(n){var r=this;this.ngZone.runOutsideAngular(function(){var e=r.container=Ga(),t=(e.style.top=e.style.left="-10000px",e.style.position="absolute",Ga("k-widget k-scheduler k-floatwrap"));t.style.position="relative",t.appendChild(n.element),e.appendChild(t),document.body.appendChild(e),r.save(t)})},_a.prototype.save=function(e){this.drawElement(e,this.drawOptions).then(this.exportGroup).then(this.saveDataUri).then(this.done,this.done)},_a.prototype.drawElement=function(e,t){return $.drawDOM(e,t)},_a.prototype.exportGroup=function(e){return $.exportPDF(e,this.pdfOptions)},_a.prototype.saveDataUri=function(e){X.saveAs(e,this.fileName,this.saveOptions)},_a.prototype.done=function(){this.container&&(document.body.removeChild(this.container),this.container=null),this.pdfService.done.emit()};U=_a;function _a(e,t){this.pdfService=e,this.ngZone=t,this.creator="Kendo UI PDF Generator",this.subscriptions=this.pdfService.elementReady.subscribe(this.createElement.bind(this)),this.saveDataUri=this.saveDataUri.bind(this),this.exportGroup=this.exportGroup.bind(this),this.done=this.done.bind(this)}U.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:U,deps:[{token:v},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Component}),U.ɵcmp=n.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:U,selector:"kendo-scheduler-pdf",inputs:{author:"author",avoidLinks:"avoidLinks",creator:"creator",date:"date",imageResolution:"imageResolution",fileName:"fileName",forceProxy:"forceProxy",keywords:"keywords",margin:"margin",scale:"scale",proxyData:"proxyData",proxyURL:"proxyURL",proxyTarget:"proxyTarget",producer:"producer",subject:"subject",title:"title"},ngImport:n,template:"",isInline:!0}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:U,decorators:[{type:h.Component,args:[{selector:"kendo-scheduler-pdf",template:""}]}],ctorParameters:function(){return[{type:v},{type:n.NgZone}]},propDecorators:{author:[{type:h.Input}],avoidLinks:[{type:h.Input}],creator:[{type:h.Input}],date:[{type:h.Input}],imageResolution:[{type:h.Input}],fileName:[{type:h.Input}],forceProxy:[{type:h.Input}],keywords:[{type:h.Input}],margin:[{type:h.Input}],scale:[{type:h.Input}],proxyData:[{type:h.Input}],proxyURL:[{type:h.Input}],proxyTarget:[{type:h.Input}],producer:[{type:h.Input}],subject:[{type:h.Input}],title:[{type:h.Input}]}});c(Ya,Ua=q.Button),Ya.prototype.onClick=function(e){e.preventDefault(),this.pdfService.exportClick.emit()},Ya.prototype.ngOnInit=function(){this.icon="pdf"};var Ua,G=Ya;function Ya(e,t,n,r,i){t=Ua.call(this,t,n,null,r,i)||this;return t.pdfService=e,t}G.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:G,deps:[{token:v},{token:n.ElementRef},{token:n.Renderer2},{token:r.LocalizationService},{token:n.NgZone}],target:n.ɵɵFactoryTarget.Directive}),G.ɵdir=n.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:G,selector:"[kendoSchedulerPDFCommand]",host:{listeners:{click:"onClick($event)"}},usesInheritance:!0,ngImport:n}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:G,decorators:[{type:h.Directive,args:[{selector:"[kendoSchedulerPDFCommand]"}]}],ctorParameters:function(){return[{type:v},{type:n.ElementRef},{type:n.Renderer2},{type:r.LocalizationService},{type:n.NgZone}]},propDecorators:{onClick:[{type:h.HostListener,args:["click",["$event"]]}]}});Z=[U,G],I=function(){};I.ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,deps:[],target:n.ɵɵFactoryTarget.NgModule}),I.ɵmod=n.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,declarations:[U,G],exports:[U,G]}),I.ɵinj=n.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I}),n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:n,type:I,decorators:[{type:h.NgModule,args:[{declarations:[Z],exports:[Z]}]}]}),e.AddEvent=Je,e.AgendaDateTemplateDirective=u,e.AgendaTimeTemplateDirective=ht,e.AgendaViewComponent=Ei,e.AllDayEventTemplateDirective=mt,e.AllDaySlotTemplateDirective=gt,e.BaseEditService=A,e.CancelEvent=Ze,e.DataBindingDirective=ee,e.DateChangeEvent=ae,e.DateHeaderTemplateDirective=yt,e.DaySlotDirective=E,e.DayTimeModule=la,e.DayTimeSlotService=Mo,e.DayTimeViewItemComponent=eo,e.DayViewComponent=$o,e.DragEndEvent=Te,e.DragEvent=we,e.DragStartEvent=Ce,e.EditDialogComponent=T,e.EditDialogTemplateDirective=Kt,e.EditEvent=$e,e.EditEventBase=je,e.EndRuleRadioButtonDirective=re,e.EventClickEvent=ge,e.EventKeydownEvent=ye,e.EventTemplateDirective=ft,e.FocusService=f,e.FocusableDirective=un,e.GroupHeaderTemplateDirective=vt,e.HintContainerComponent=Ii,e.IsSlotSelectedArgs=ut,e.LoadingComponent=ve,e.LocalizedMessagesDirective=_r,e.MajorTimeHeaderTemplateDirective=kt,e.MinorTimeHeaderTemplateDirective=Dt,e.MonthDaySlotTemplateDirective=Tt,e.MonthViewComponent=po,e.MonthViewModule=vo,e.MultiDayViewComponent=Jo,e.MultiDayViewModule=ca,e.MultipleResourceEditorComponent=nr,e.NavigateEvent=pe,e.PDFCommandDirective=G,e.PDFComponent=U,e.PDFExportEvent=ln,e.PDFModule=I,e.PDFService=v,e.ReactiveEditingDirective=t,e.RecurrenceEditorComponent=jr,e.RecurrenceEditorCustomMessagesComponent=Pa,e.RecurrenceEditorLocalizedMessagesDirective=Nr,e.RecurrenceEndRuleEditorComponent=Wr,e.RecurrenceFrequencyEditorComponent=D,e.RecurrenceIntervalEditorComponent=Sr,e.RecurrenceMonthlyYearlyEditorComponent=Fr,e.RecurrenceWeekdayRuleEditorComponent=Cr,e.RemoveEvent=Oe,e.RepeatOnRadioButtonDirective=Rr,e.RepeatPipe=qt,e.ResizeEndEvent=Ve,e.ResizeEvent=Pe,e.ResizeHintComponent=Si,e.ResizeStartEvent=Ne,e.ResourceIteratorPipe=io,e.SaveEvent=Ue,e.SchedulerComponent=Yr,e.SchedulerCustomMessagesComponent=Xr,e.SchedulerDateTimePickerComponent=dr,e.SchedulerModule=qa,e.SchedulerView=d,e.SchedulerViewDirective=da,e.SharedModule=Oi,e.ShortcutsDirective=F,e.SingleResourceEditorComponent=ar,e.SlotClickEvent=me,e.SlotDragEndEvent=at,e.SlotDragEvent=ot,e.SlotDragStartEvent=nt,e.SlotSelectableDirective=i,e.TimeSlotDirective=k,e.TimeSlotTemplateDirective=It,e.TimeZoneEditorComponent=pr,e.TimelineBase=R,e.TimelineMonthViewComponent=ba,e.TimelineMultiDayViewComponent=C,e.TimelineViewComponent=fa,e.TimelineViewModule=s,e.TimelineWeekViewComponent=Da,e.ToolbarNavigationComponent=Kn,e.ToolbarService=ct,e.ToolbarTemplateDirective=lt,e.ToolbarViewSelectorComponent=Xn,e.VIEW_EVENT_MAP=qe,e.ViewContextService=m,e.ViewFooterComponent=mo,e.ViewStateService=g,e.ViewsSharedModule=ko,e.WeekViewComponent=na,e.WorkHoursFooterDirective=a,e.WorkWeekViewComponent=oa,Object.defineProperty(e,"__esModule",{value:!0})});