UNPKG

@progress/kendo-ui

Version:

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

27 lines 36.2 kB
/* @license */ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`kendo.core.min.js`),require(`kendo.selectable.min.js`),require(`kendo.icons.min.js`)):typeof define==`function`&&define.amd?define([`exports`,`kendo.core.min`,`kendo.selectable.min`,`kendo.icons.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Calendar={}),e.kendo._globals.Core,e.kendo._globals.Selectable,e.kendo._globals.Icons))})(this,function(e,t,n,r){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let i={id:`calendar`,name:`Calendar`,category:`web`,description:`The Calendar widget renders a graphical calendar that supports navigation and selection.`,depends:[`core`,`selectable`]};(function(e,t){let n=window.kendo,r=n.support,i=n.ui,a=i.Widget,o=n.keys,s=n.parseDate,c=n.htmlEncode,l=n.date.adjustDST,u=n.date.weekInYear,d=n.ui.Selectable,f=n.ui.RangeSelectable,p=n._extractFormat,m=n.template,h=n.getCulture,g=m(e=>`<td class="${e.cssClass}" role="gridcell"><span tabindex="-1" class="k-link" data-href="#" data-${e.ns}value="${e.dateString}">${e.value}</span></td>`),_=m(()=>`<td role="gridcell" class="k-calendar-td k-empty"></td>`),v=m(()=>`<td role="gridcell" class="k-calendar-td k-empty">&nbsp;</td>`),y=m(e=>`<td class="k-calendar-td k-alt">${e.weekNumber}</td>`),b=n._outerWidth,x=`.kendoCalendar`,S=`click`+x;``+x;let C=`slideIn`,w=`month`,T=`century`,E=`change`,D=`navigate`,O=`value`,k=`k-disabled`,A=`k-focus`,j=`k-other-month`,M=`k-empty`,N=`td:has(.k-link)`,ee=`start`,P=`td:has(.k-link):not(.`+k+`):not(.k-empty)`,F=`k-selected`;``+x;let te=`focus`,ne=te+x,re=r.touch?`touchstart`:`mouseenter`,ie=r.touch?`touchstart`+x:`mouseenter`+x,ae=r.touch?`touchend`+x+` touchmove.kendoCalendar`:`mouseleave`+x,oe=864e5,I=`_prevArrow`,L=`_nextArrow`,R=`aria-disabled`,se=`aria-selected`,z=`aria-label`,ce=e.extend,B=Date,V={month:0,year:1,decade:2,century:3},H=`.k-header, .k-calendar-header`;var le=a.extend({init:function(t,r){var i=this,o;r||={},r.componentType=r.componentType||`classic`,a.fn.init.call(i,t,r),t=i.wrapper=i.element,r=i.options,r.url=n.unescape(r.url),i.options.disableDates=Q(i.options.disableDates),i._templates(),i._selectable(),i._header(),i._viewWrapper(),i.options.hasFooter?i._footer(i.footer):(i._today=i.element.find(`.k-calendar-nav-today`),i._toggle()),t.addClass(`k-calendar `+(r.weekNumber?` k-week-number`:``)).on(ie+` `+ae,N,he).on(`keydown.kendoCalendar`,`table.k-calendar-table`,i._move.bind(i)).on(S+` touchend`,P,function(t){var n=t.currentTarget.firstChild,r=$(n);e(n).data(`href`).indexOf(`#`)!=-1&&t.preventDefault(),!(i._view.name==`month`&&i.options.disableDates(r))&&(i._view.name!=`month`||i._isSingleSelection())&&i._click(e(n))}).on(`mouseup`+x,`table.k-calendar-table, .k-calendar-footer`,function(){i._focusView(i.options.focusOnNav!==!1)}).attr(`id`),i.options.weekNumber&&t.on(S,`td:not(:has(.k-link))`,function(t){var n=e(t.currentTarget).closest(`tr`).find(P).first(),r=e(t.currentTarget).closest(`tr`).find(P).last();i._isMultipleSelection()&&(i.selectable._lastActive=r,i.selectable.selectRange(n,r),i.selectable.trigger(E,{event:t})),i._isRangeSelection()&&(i.rangeSelectable._lastActive=r,i.rangeSelectable.range(n,r),i.rangeSelectable.change()),i._current=i._value=$(r.find(`span`)),i._setCurrent(i._current)}),Z(r),o=s(r.value,r.format,r.culture),i._selectDates=[],i._index=V[r.start],i._current=new B(+q(o,r.min,r.max)),i._addClassProxy=function(){if(i._active=!0,i._cell.hasClass(k)){var e=i._view.toDateString(K());i._cell=i._cellByDate(e)}i._cell.addClass(A)},i._removeClassProxy=function(){i._active=!1,i._cell&&i._cell.removeClass(A)},i.value(o),i._isMultipleSelection()&&r.selectDates.length>0&&i.selectDates(r.selectDates),i._range=r.range,i._isRangeSelection()&&i.selectRange(i._range),n.notify(i)},options:{name:`Calendar`,value:null,min:new B(1900,0,1),max:new B(2099,11,31),dates:[],disableDates:null,allowReverse:!1,centuryCellsFormat:`long`,url:``,culture:``,footer:``,format:``,month:{},weekNumber:!1,range:{start:null,end:null,target:ee},selectable:`single`,selectDates:[],start:w,depth:w,size:t,showOtherMonthDays:!0,animation:{horizontal:{effects:C,reverse:!0,duration:500,divisor:2},vertical:{effects:`zoomIn`,duration:400}},messages:{weekColumnHeader:``,today:`Today`,navigateTo:`Navigate to `,parentViews:{month:`year view`,year:`decade view`,decade:`century view`}},componentType:`classic`},events:[E,D],componentTypes:{classic:{header:{template:({actionAttr:e,size:t,isRtl:r})=>`<div class="k-header k-hstack"> <span tabindex="-1" data-href="#" ${e}="prev" role="button" class="k-calendar-nav-prev k-button ${t} k-button-flat k-icon-button" ${z}="Previous">${n.ui.icon({icon:`caret-alt-${r?`right`:`left`}`,iconClass:`k-button-icon`})}</span></span> <span tabindex="-1" data-href="#" ${e}="nav-up" id="`+n.guid()+`" role="button" class="k-calendar-nav-fast k-button ${t} k-button-flat k-flex"></span> <span tabindex="-1" data-href="#" ${e}="next" role="button" class="k-calendar-nav-next k-button ${t} k-button-flat k-icon-button" ${z}="Next">${n.ui.icon({icon:`caret-alt-${r?`left`:`right`}`,iconClass:`k-button-icon`})}</span> </div>`},hasFooter:!0,linksSelector:`.k-button`,contentClasses:`k-calendar-table`},modern:{header:{template:({actionAttr:e,size:t,messages:r,isRtl:i})=>`<div class="k-calendar-header"> <button ${e}="nav-up" id="`+n.guid()+`" class="k-calendar-title k-button ${t} k-button-flat k-button-primary"> <span class="k-button-text"></span> </button> <span class="k-spacer"></span> <span class="k-calendar-nav"> <button tabindex="-1" ${e}=${i?`next`:`prev`} class="k-calendar-nav-prev k-button ${t} k-button-flat k-icon-button"> ${n.ui.icon({icon:`chevron-${i?`right`:`left`}`,iconClass:`k-button-icon`})} </button> <button tabindex="-1" ${e}="today" class="k-calendar-nav-today k-button ${t} k-button-flat" role="link"> <span class="k-button-text">${n.htmlEncode(r.today)}</span> </button> <button tabindex="-1" ${e}=${i?`prev`:`next`} class="k-calendar-nav-next k-button ${t} k-button-flat k-icon-button"> ${n.ui.icon({icon:`chevron-${i?`left`:`right`}`,iconClass:`k-button-icon`})} </button> </span> </div>`},hasFooter:!1,linksSelector:`.k-button`,contentClasses:`k-calendar-table`}},setOptions:function(t){let n=this,r=!1;if(t.componentType&&(r=t.componentType!==n.options.componentType),Z(t),t.disableDates=Q(t.disableDates),n._destroySelectable(),t.messages&&=e.extend({},!0,n.options.messages,t.messages),a.fn.setOptions.call(n,t),n._templates(),n._selectable(),r){let e=le.prototype.componentTypes;n.options.header=e[t.componentType].header,n.options.hasFooter=e[t.componentType].hasFooter;let r=n.element.find(H)[0];r&&r.remove(),n._header()}n._viewWrapper(),n.options.hasFooter?n._footer(n.footer):(n.element.find(`.k-calendar-footer`).hide(),n._toggle()),n._index=V[n.options.start],n.navigate();let i=s(t.value||n.options.value||n._value,t.format,t.culture);r&&(n._current=new B(+q(i,t.min,t.max)),n._cell=null,n._table=null),n.value(i),t.weekNumber&&n.element.addClass(`k-week-number`)},destroy:function(){var e=this,t=e._today;e.element.off(x),e._title.off(x),e[I].off(x),e[L].off(x),e._destroySelectable(),n.destroy(e._table),t&&n.destroy(t.off(x)),a.fn.destroy.call(e)},current:function(){return this._current},view:function(){return this._view},focus:function(e){e||=this._table,this._bindTable(e),e.trigger(`focus`)},min:function(e){return this._option(`min`,e)},max:function(e){return this._option(`max`,e)},navigateToPast:function(){this._navigate(I,-1)},navigateToFuture:function(){this._navigate(L,1)},navigateUp:function(){var e=this,t=e._index;e._title.hasClass(k)||e.navigate(e._current,++t)},navigateDown:function(e){var t=this,n=t._index,r=t.options.depth;if(e){if(n===V[r]){(!Se(t._value,t._current)||!Se(t._value,e))&&(t.value(e),t.trigger(E));return}t.navigate(e,--n)}},navigate:function(n,r){r=isNaN(r)?V[r]:r;var i=this,a=i.options,o=a.culture,s=a.min,l=a.max,u=i._title,d=i._table,f=i._oldTable,p=i._current,m=n&&+n>+p,h=r!==t&&r!==i._index,g,_,v,y,b=i.element.children(`.k-calendar-view`);if(n||=p,i._current=n=new B(+q(n,s,l)),r===t?r=i._index:i._index=r,i._view=_=U.views[r],v=_.compare,y=r===V[T],u.toggleClass(k,y).attr(R,y),y=v(n,s)<1,i[I].toggleClass(k,y).attr(R,y),y=v(n,l)>-1,i[L].toggleClass(k,y).attr(R,y),d&&f&&f.data(`animating`)&&(f.kendoStop(!0,!0),d.kendoStop(!0,!0)),i._oldTable=d,!d||i._changeView){u.html(`<span class="k-button-text">`+_.title(n,s,l,o)+`</span>`),i.options.messages.parentViews&&i._view.name!==T?u.attr(`title`,c(i.options.messages.navigateTo+i.options.messages.parentViews[i._view.name])):u.removeAttr(`title`),i._table=g=e(_.content(ce({min:s,max:l,date:n,url:a.url,dates:a.dates,format:a.format,showOtherMonthDays:a.showOtherMonthDays,centuryCellsFormat:a.centuryCellsFormat,culture:o,disableDates:a.disableDates,isWeekColumnVisible:a.weekNumber,messages:a.messages,contentClasses:i.options.contentClasses},i[_.name]))),i._aria();var x=d&&d.data(`start`)===g.data(`start`);i._animate({from:d,to:g,vertical:h,future:m,replace:x}),b.removeClass(`k-calendar-monthview k-calendar-yearview k-calendar-decadeview k-calendar-centuryview`),b.addClass(`k-calendar-`+_.name+`view`),i.trigger(D),i._focus(n)}r===V[a.depth]&&i._selectDates.length>0&&i._visualizeSelectedDatesInView(),i._isSingleSelection()&&r===V[a.depth]&&i._value&&!i.options.disableDates(i._value)&&i._selectCell(i._value),i._setCurrent(n),!d&&i._cell&&i._cell.removeClass(A),i._changeView=!0},selectDates:function(n){var r=this,i,a;if(n===t)return r._selectDates;a=n.map(function(e){return e.getTime()}).filter(function(e,t,n){return n.indexOf(e)===t}).map(function(e){return new Date(e)}),i=e.grep(a,function(e){if(e)return+r._validateValue(new Date(e.setHours(0,0,0,0)))==+e}),r._selectDates=i.length>0?i:a.length===0?a:r._selectDates,r._visualizeSelectedDatesInView()},value:function(e){var n=this,r=n._view,i=n._view;if(e===t)return n._value;if(e=n._validateValue(e),e&&n._isMultipleSelection()){var a=new Date(+e);a.setHours(0,0,0,0),n._selectDates=[a],n.selectable._lastActive=null}r&&e===null&&n._cell?n._cell.removeClass(F):(n._changeView=!e||i&&i.compare(e,n._current)!==0,n.navigate(e))},isRtl:function(){return n.support.isRtl(this.wrapper)},_aria:function(){var e=this._table;e.attr(`aria-labelledby`,this._title.attr(`id`)),this._view.name===`month`&&this._isMultipleSelection()&&e.attr(`aria-multiselectable`,`true`)},_validateValue:function(e){var n=this,r=n.options,i=r.min,a=r.max;return e===null&&(n._current=Y(n._current.getFullYear(),n._current.getMonth(),n._current.getDate())),e=s(e,r.format,r.culture),e!==null&&(e=new B(+e),J(e,i,a)||(e=null)),e===null||!n.options.disableDates(new Date(+e))?n._value=e:n._value===t&&(n._value=null),n._value},_visualizeSelectedDatesInView:function(){var t=this,r={};e.each(t._selectDates,function(e,t){r[n.calendar.views[0].toDateString(t)]=t}),t.selectable.clear();var i=t._table.find(N).filter(function(t,i){return r[e(i.firstChild).attr(n.attr(O))]});i.length>0&&t.selectable._selectElement(i,!0)},_isSingleSelection:function(){let e=this.options.selectable;return d.parseOptions(e).single},_isMultipleSelection:function(){let e=this.options.selectable;return d.parseOptions(e).multiple},_isRangeSelection:function(){let e=this.options.selectable;return d.parseOptions(e).range},_selectable:function(){let e=this,t=e.options.selectable,n=d.parseOptions(t);!e._isMultipleSelection()&&!e._isRangeSelection()||(e.rangeSelectable&&=(e.rangeSelectable.destroy(),null),n.range?(e.rangeSelectable=new f(e.wrapper,{widget:e,filter:`.k-calendar-monthview table `+P,cellSelector:N,cellSelectorValid:P,change:e._onSelect.bind(e),reverse:e.options.allowReverse,resetOnStart:!0,ns:x}),e.element.addClass(`k-calendar-range`)):e.selectable=new d(e.wrapper,{aria:!0,inputSelectors:`input,textarea,.k-multiselect-wrap,select,button,.k-button>span,.k-button>img,span.k-icon.k-i-caret-alt-down,span.k-icon.k-i-caret-alt-up,span.k-svg-icon.k-svg-i-caret-alt-down,span.k-svg-icon.k-svg-i-caret-alt-up`,multiple:n.multiple,filter:`table.k-calendar-table:eq(0) `+P,change:e._onSelect.bind(e),relatedTarget:e._onRelatedTarget.bind(e)}))},_restoreSelection:function(){let e=this,t;if(e._preventChange=!0,e._isRangeSelection()){if(t=e.selectRange(),!t||!t.start){e._preventChange=!1;return}e.selectRange(t)}e._preventChange=!1},selectRange:function(e){let n=this,r=n._view,i,a,o;if(e===t)return n._range;n._range=e,e.start&&(o=n._visibleRange(),i=n._dateInViews(e.start),a=e.end&&n._dateInViews(e.end),!i&&a&&n.rangeSelectable.selectTo(n._cellByDate(r.toDateString(e.end))),i&&a&&n.rangeSelectable.range(n._cellByDate(r.toDateString(e.start)),n._cellByDate(r.toDateString(e.end)),!1,n.options.allowReverse),e.end&&i&&!a&&n.rangeSelectable.selectFrom(n._cellByDate(r.toDateString(e.start))),!e.end&&i&&n.rangeSelectable.start(n._cellByDate(r.toDateString(e.start))),+o.start>+e.start&&+o.end<+e.end&&n.rangeSelectable.mid(n.element.find(P)))},_onRelatedTarget:function(e){var t=this;t.selectable.options.multiple&&e.is(P)&&(t._current=$(e.find(`span`)),t._setCurrent(t._current))},_onSelect:function(t){let n=this,r=t,i,a=t.sender._useEnd,o=t.sender._useStart,s,c,l,u,f,p=d.parseOptions(n.options.selectable);if(n._isRangeSelection()){i=t.sender.range(),s=n.selectRange()||{},f=s.target,i.start&&i.start.length&&(c=$(i.start.find(`span`))),i.end&&i.end.length&&(l=$(i.end.find(`span`))),f=f===`end`?ee:`end`,n._range={start:o?s.start:c,end:a?s.end:l,target:f},n._preventChange||n.trigger(E),u=l||c,l&&!n._dateInViews(l)&&(u=c),n.selectRange(n._range),n.value(u);return}if(!p.multiple){e(r.event.currentTarget).is(`td`)&&!e(r.event.currentTarget).hasClass(`k-selected`)?e(r.event.currentTarget).addClass(`k-selected`):n._click(e(r.event.currentTarget).find(`span`));return}r.event.ctrlKey||r.event.metaKey?e(r.event.currentTarget).is(P)?n._toggleSelection(e(r.event.currentTarget)):(n._cellsBySelector(P).each(function(t,r){var i=$(e(r).find(`span`));n._deselect(i)}),n._addSelectedCellsToArray()):r.event.shiftKey?n._rangeSelection(n._cell):e(r.event.currentTarget).is(N)?n.value($(e(r.event.currentTarget).find(`span`))):(n._selectDates=[],n._addSelectedCellsToArray()),n.trigger(E)},_destroySelectable:function(){var e=this;e.selectable&&=(e.selectable.destroy(),null),e.rangeSelectable&&=(e.rangeSelectable.destroy(),null)},_toggleSelection:function(e){var t=this,n=$(e.find(`span`));e.hasClass(`k-selected`)?t._selectDates.push(n):t._deselect(n)},_rangeSelection:function(e,t){var n=this,r=t||$(n.selectable.value().first().find(`span`)),i=$(e.find(`span`)),a;n.selectable._lastActive||n._value?r=n.selectable._lastActive?$(n.selectable._lastActive.find(`span`)):new Date(+n._value):n.selectable._lastActive=t?n._cellByDate(n._view.toDateString(t),P):n.selectable.value().first(),n._selectDates=[],a=pe(r,i),me(n._selectDates,a,r,n.options.disableDates),n._visualizeSelectedDatesInView()},_visibleRange:function(){let e=this.element.find(`.k-calendar-view table`);return{start:$(e.first().find(N).first().find(`span`)),end:$(e.last().find(N).last().find(`span`))}},_cellsBySelector:function(e){return this._table.find(e)},_addSelectedCellsToArray:function(){var t=this;t.selectable.value().each(function(n,r){var i=$(e(r.firstChild));t.options.disableDates(i)||t._selectDates.push(i)})},_deselect:function(e){var t=this,n=t._selectDates.map(Number).indexOf(+e);n!=-1&&t._selectDates.splice(n,1)},_dateInView:function(e){var t=this,n=$(t._cellsBySelector(P).first().find(`span`)),r=$(t._cellsBySelector(P).last().find(`span`));return+e<=+r&&+e>=+n},_isNavigatable:function(e,t){var n=this,r=n.options.disableDates,i,a;return n._view.name==`month`?!r(e):(a=n.wrapper.find(`.`+A).index(),i=n.wrapper.find(`.k-calendar-table td`).eq(a+t),i.is(P)||!r(e))},_dateInViews:function(e){let t=this.element.find(`.k-calendar-view table`),n=$(t.first().find(N).first().find(`span`)),r=$(t.last().find(N).last().find(`span`));return e=new Date(e.toDateString()),+e<=+r&&+e>=+n},_move:function(n){var r=this,i=r.options,a=n.keyCode,s=r._view,c=r._index,l=r.options.min,u=r.options.max,d=new B(+r._current),f=r.isRtl(),p=r.options.disableDates,m,h,g,_,v,y,b;if(n.target===r._table[0]&&(r._active=!0),a==o.RIGHT&&!f||a==o.LEFT&&f?(m=1,h=!0):a==o.LEFT&&!f||a==o.RIGHT&&f?(m=-1,h=!0):a==o.UP?(m=c===0?-7:-4,h=!0):a==o.DOWN?(m=c===0?7:4,h=!0):a==o.SPACEBAR?(m=0,h=!0):a==o.HOME||a==o.END?(g=a==o.HOME?`first`:`last`,_=s[g](d),d=new B(_.getFullYear(),_.getMonth(),_.getDate(),d.getHours(),d.getMinutes(),d.getSeconds(),d.getMilliseconds()),d.setFullYear(_.getFullYear()),h=!0):a===84&&(r._todayClick(n),h=!0),n.ctrlKey||n.metaKey){if(a==o.RIGHT&&!f||a==o.LEFT&&f)r.navigateToFuture(),h=!0;else if(a==o.LEFT&&!f||a==o.RIGHT&&f)r.navigateToPast(),h=!0;else if(a==o.UP)r.navigateUp(),h=!0;else if(a==o.DOWN)r._click(e(r._cell[0].firstChild)),h=!0;else if((a==o.ENTER||a==o.SPACEBAR)&&r._isMultipleSelection()){r._keyboardToggleSelection(n);var x=$(e(r._cell[0]).find(`span`));r._setCurrent(x)}}else n.shiftKey?((m!==t||g)&&(g||s.setDate(d,m),J(d,l,u)||(d=q(d,i.min,i.max)),p(d)&&(d=r._nextNavigatable(d,m)),l=Y(l.getFullYear(),l.getMonth(),l.getDate()),r._isMultipleSelection()?r._keyboardRangeSelection(n,d):r._isRangeSelection()?r._dateInViews(d)||(m>0?r.navigateToFuture():r.navigateToPast()):r._focus(d)),r.rangeSelectable&&(v=r._cellByDate(s.toDateString(d)),b=$((r.rangeSelectable._lastActive||y).find(`span`)),r._dateInViews(b)?(r.rangeSelectable._end&&r.rangeSelectable._end.is(`.`+A)?r.rangeSelectable._lastActive=r.rangeSelectable._start:r.rangeSelectable._lastActive=r._cellByDate(s.toDateString(b)),r.rangeSelectable.range(r.rangeSelectable._lastActive,v)):+b>+d?(r.rangeSelectable._end=r.rangeSelectable._lastActive,r.rangeSelectable.selectFrom(v)):r.rangeSelectable.selectTo(v),r.rangeSelectable.change(),r._setCurrent(d))):(a==o.ENTER||a==o.SPACEBAR?(s.name==`month`&&r._isMultipleSelection()?(r.value($(e(r._cell.find(`span`)))),r.selectable._lastActive=e(r._cell[0]),r.trigger(E)):r.rangeSelectable?r.rangeSelectable.change():r._click(e(r._cell[0].firstChild)),h=!0):a==o.PAGEUP?(h=!0,r.navigateToPast()):a==o.PAGEDOWN&&(h=!0,r.navigateToFuture()),(m||g)&&(g||s.setDate(d,m),l=Y(l.getFullYear(),l.getMonth(),l.getDate()),J(d,l,u)||(d=q(d,i.min,i.max)),r._isNavigatable(d,m)||(d=r._nextNavigatable(d,m)),r._isMultipleSelection()?r._dateInView(d)?(r._current=d,r._setCurrent(d)):r.navigate(d):r._focus(d)));return h&&n.preventDefault(),r._current},_keyboardRangeSelection:function(e,t){var n=this,r,i;if(!n._dateInView(t)){n._selectDates=[],r=n.selectable._lastActive?$(n.selectable._lastActive.find(`span`)):t,i=pe(r,new Date(+t)),me(n._selectDates,i,r,n.options.disableDates),n.navigate(t),n._current=t,n.selectable._lastActive=n.selectable._lastActive||n._cellByDate(n._view.toDateString(t),P),n.trigger(E);return}n.selectable.options.filter=n.wrapper.find(`table`).length>1&&+t>+n._current?`table.k-calendar-table:eq(1) `+P:`table.k-calendar-table:eq(0) `+P,n._setCurrent(t),n._current=t,n._rangeSelection(n._cellByDate(n._view.toDateString(t),P),t),n.trigger(E),n.selectable.options.filter=`table.k-calendar-table:eq(0) `+P},_keyboardToggleSelection:function(t){var n=this;t.currentTarget=n._cell[0],n.selectable._lastActive=e(n._cell[0]),e(n._cell[0]).hasClass(F)?n.selectable._unselect(e(n._cell[0])):n.selectable.value(e(n._cell[0])),n.selectable.trigger(E,{event:t})},_nextNavigatable:function(e,t){var n=this,r=!0,i=n._view,a=n.options.min,o=n.options.max,s=n.options.disableDates,c=new Date(e.getTime());for(i.setDate(c,-t);r;){if(i.setDate(e,t),!J(e,a,o)){e=c;break}r=s(e)}return e},_animate:function(e){var t=this,n=e.from,r=e.to,i=t._active,a=t.element.children(`.k-calendar-view`);n?n.parent().data(`animating`)?(n.off(x),n.parent().kendoStop(!0,!0).remove(),n.remove(),a.append(r),t._focusView(i)):!n.is(`:visible`)||t.options.animation===!1||e.replace?(r.insertAfter(n),n.off(x).remove(),t._focusView(i)):t[e.vertical?`_vertical`:`_horizontal`](n,r,e.future):(a.append(r),t._bindTable(r))},_horizontal:function(e,t,n){var r=this,i=r._active,a=r.options.animation.horizontal,o=a.effects,s=b(e),c=b(e,!0)-s;o&&o.indexOf(C)!=-1&&(e.add(t).css({width:s}),e.wrap(`<div/>`),r._focusView(i,e),e.parent().css({position:`relative`,width:s*2+2*c,display:`flex`,[n?`margin-right`:`margin-left`]:-s-c}),t[n?`insertAfter`:`insertBefore`](e),ce(a,{effects:C+`:`+(n?`right`:`left`),complete:function(){e.off(x).remove(),r._oldTable=null,t.unwrap(),r._focusView(i)}}),e.parent().kendoStop(!0,!0).kendoAnimate(a))},_vertical:function(e,t){var n=this,r=n.options.animation.vertical,i=r.effects,a=n._active,o,s;i&&i.indexOf(`zoom`)!=-1&&(t.insertBefore(e),e.css({position:`absolute`,width:t.width()}),o=n._cellByDate(n._view.toDateString(n._current)),s=o.position(),s=s.left+parseInt(o.width()/2,10)+`px `+(s.top+parseInt(o.height()/2,10)+`px`),t.css(`transform-origin`,s),e.kendoStop(!0,!0).kendoAnimate({effects:`fadeOut`,duration:600,complete:function(){e.off(x).remove(),n._oldTable=null,n._focusView(a)}}),t.kendoStop(!0,!0).kendoAnimate(r))},_cellByDate:function(t,r){return this._table.find(r||`td:not(.`+j+`)`).filter(function(){return e(this.firstChild).attr(n.attr(O))===t})},_selectCell:function(e){var t=this,n=t._selectedCell,r=t._view.toDateString(e);n&&n[0]&&(n[0].removeAttribute(se),n.removeClass(F)),n=t._cellByDate(r,N),t._selectedCell=n,n.addClass(F).attr(se,!0)},_setCurrent:function(e){var t=this,r=n.guid(),i=t._cell,a=t._view.toDateString(e);i&&i[0]&&(i.removeClass(A),i[0].removeAttribute(z),i[0].removeAttribute(`id`)),i=t._cellByDate(a,t._isMultipleSelection()?N:`td:not(.`+j+`)`),t._cell=i,i.attr(`id`,r).addClass(A),t._table[0]&&(t._table[0].removeAttribute(`aria-activedescendant`),t._table.attr(`aria-activedescendant`,r))},_bindTable:function(e){e.on(ne,this._addClassProxy).on(`blur.kendoCalendar`,this._removeClassProxy)},_click:function(e){var t=this,n=t.options,r=new Date(+t._current),i=$(e);l(i,0),t._view.name==`month`&&t.options.disableDates(i)&&(i=t._value),t._view.setDate(r,i),t.navigateDown(q(r,n.min,n.max))},_focus:function(e){var t=this;t._view.compare(e,t._current)===0?(t._current=e,t._setCurrent(e)):t.navigate(e)},_focusView:function(e,t){e&&this.focus(t)},_viewWrapper:function(){var t=this.element,n=t.children(`.k-calendar-view`);n[0]||(n=e(`<div class='k-calendar-view k-align-items-start k-justify-content-center k-hstack' />`).insertAfter(t.find(H)))},_footer:function(t){var r=this,i=K(),a=r.element,o=a.find(`.k-calendar-footer`);if(!t){r._toggle(!1),o.hide();return}o[0]||(o=e(`<div class="k-calendar-footer"> <button tabindex="-1" class="k-calendar-nav-today k-flex k-button k-button-flat k-button-primary" role="link"> <span class="k-button-text"></span> </button> </div>`).appendTo(a)),r._today=o.show().find(`.k-button-flat.k-button-primary`).attr(`title`,n.toString(i,`D`,r.options.culture)),o.find(`.k-button-text`).html(t(i)),r._toggle()},_header:function(){var t=this,r=t.element,i=t.options.linksSelector;r.find(H)[0]||r.html(n.template(t.options.header.template)(e.extend(!0,{},t.options,{actionAttr:n.attr(`action`),size:n.getValidCssClass(`k-button-`,`size`,t.options.size),isRtl:t.isRtl()}))),r.find(i).on(S+` touchend.kendoCalendar`,function(){return!1}),t._title=r.find(`[`+n.attr(`action`)+`="nav-up"]`).on(S+` touchend.kendoCalendar`,function(){t._active=t.options.focusOnNav!==!1,t.navigateUp()}),t[I]=r.find(`[`+n.attr(`action`)+`="prev"]`).on(S+` touchend.kendoCalendar`,function(){t._active=t.options.focusOnNav!==!1,t.navigateToPast()}),t[L]=r.find(`[`+n.attr(`action`)+`="next"]`).on(S+` touchend.kendoCalendar`,function(){t._active=t.options.focusOnNav!==!1,t.navigateToFuture()}),r.find(`[`+n.attr(`action`)+`="today"]`).on(S+` touchend.kendoCalendar`,t._todayClick.bind(t))},_navigate:function(e,t){var n=this,r=n._index+1,i=new B(+n._current);n._isMultipleSelection()&&(i=$(n._table.find(`td:not(.`+j+`):not(.k-empty)`).has(`.k-link`).first().find(`span`)),n._current=new Date(+i)),e=n[e],e.hasClass(k)||(r>3?i.setFullYear(i.getFullYear()+100*t):U.views[r].setDate(i,t),n.navigate(i),n._restoreSelection())},_option:function(e,n){var r=this,i=r.options,a=r._value||r._current,o;if(n===t)return i[e];n=s(n,i.format,i.culture),n&&(i[e]=new B(+n),o=e===`min`?n>a:a>n,(o||ye(a,n))&&(o&&(r._value=null),r._changeView=!0),r._changeView||=!!(i.month.content||i.month.empty),r.navigate(r._value),r._toggle())},_toggle:function(e){var n=this,r=n.options,i=n.options.disableDates(K()),a=n._today,o=n._todayClass();e===t&&(e=J(K(),r.min,r.max)),a&&(a.off(S),e&&!i?a.addClass(o).removeClass(k).on(S,n._todayClick.bind(n)):a.removeClass(o).addClass(k).on(S,ge))},_todayClass:function(){return`k-calendar-nav-today`},_todayClick:function(e){var t=this,n=V[t.options.depth],r=t.options.disableDates,i=K();e.preventDefault(),!r(i)&&(t._view.compare(t._current,i)===0&&t._index==n&&(t._changeView=!1),t._isMultipleSelection()&&(t._selectDates=[i],t.selectable._lastActive=null),t._value=i,t.navigate(i,n),t.trigger(E))},_templates:function(){var e=this,t=e.options,r=t.footer,i=t.month,a=i.content,o=i.weekNumber,s=i.empty,c=e=>`${n.toString(e,`D`,t.culture)}`;e.month={content:e=>`<td class="${e.cssClass}" role="gridcell"><span tabindex="-1" class="k-link ${e.linkClass}" data-href="${e.url}" ${n.attr(O)}="${e.dateString}" title="${e.title}">${Ce(a,e)||e.value}</span></td>`,empty:e=>`<td role="gridcell">${Ce(s,e)||`&nbsp;`}</td>`,weekNumber:e=>`<td class="k-calendar-td k-alt">${Ce(o,e)||e.weekNumber}</td>`},e.year={content:m(e=>`<td class="${e.cssClass}" role="gridcell"><span tabindex="-1" class="k-link" data-href="#" data-${e.ns}value="${e.dateString}" aria-label="${e.label}">${e.value}</span></td>`)},r&&r!==!0&&(c=r),e.footer=r===!1?null:m(c,{useWithBlock:!1})},_updateAria:function(e,t){var r=this,i=r._cell,a=r.view().valueType(),o=t||r.current(),s=a===`month`?n.toString(o,`MMMM`):a===`date`?n.toString(o,`D`):i.text();return i.attr(`aria-label`,e({current:o,valueType:a,text:s})),i.attr(`id`)}});i.plugin(le);var U={firstDayOfMonth:function(e){return Y(e.getFullYear(),e.getMonth(),1)},firstVisibleDay:function(e,t){t||=n.culture().calendar;var r=t.firstDay,i=new B(e.getFullYear(),e.getMonth(),1,e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds());for(i.setFullYear(e.getFullYear());i.getDay()!=r;)U.setTime(i,-1*oe);return i},setTime:function(e,t){var n=e.getTimezoneOffset(),r=new B(e.getTime()+t),i=r.getTimezoneOffset()-n;e.setTime(r.getTime()+i*6e4)},views:[{name:w,title:function(e,t,n,r){return X(r).months.names[e.getMonth()]+` `+e.getFullYear()},content:function(e){var t=this,r=0,i=e.min,a=e.max,o=e.date,s=e.dates,d=e.format,f=e.culture,p=e.url,m=e.showHeader,h=e.showOtherMonthDays,g=e.isWeekColumnVisible,_=p&&s[0],v=X(f),y=v.firstDay,b=v.days,x=de(b.names,y),S=de(b.namesShort,y),C=U.firstVisibleDay(o,v),w=t.first(o),T=t.last(o),E=t.toDateString,D=K(),O=`<table tabindex="0" role="grid" class="`+e.contentClasses+`" cellspacing="0" data-start="`+E(C)+`">`;for(m&&(O+=`<caption class="k-calendar-caption k-month-header">`+this.title(o,i,a,f)+`</caption>`),O+=`<thead class="k-calendar-thead"><tr role="row" class="k-calendar-tr">`,g&&(O+=`<th scope="col" class="k-calendar-th k-alt">`+c(e.messages.weekColumnHeader)+`</th>`);r<7;r++)O+=`<th scope="col" class="k-calendar-th" aria-label="`+x[r]+`">`+S[r]+`</th>`;return l(D,0),D=+D,W({cells:42,perRow:7,html:O+=`</tr></thead><tbody class="k-calendar-tbody"><tr role="row" class="k-calendar-tr">`,start:Y(C.getFullYear(),C.getMonth(),C.getDate()),isWeekColumnVisible:g,weekNumber:e.weekNumber,min:Y(i.getFullYear(),i.getMonth(),i.getDate()),max:Y(a.getFullYear(),a.getMonth(),a.getDate()),showOtherMonthDays:h,content:e.content,lastDayOfMonth:T,empty:e.empty,setter:t.setDate,disableDates:e.disableDates,build:function(e,t,r){var i=[`k-calendar-td`],a=e.getDay(),o=``,c=`#`;return(e<w||e>T)&&i.push(j),r(e)&&i.push(k),+e===D&&i.push(`k-today`),(a===0||a===6)&&i.push(`k-weekend`),_&&_e(+e,s)&&(c=p.replace(`{0}`,n.toString(e,d,f)),o=` k-action-link`),{date:e,dates:s,ns:n.ns,title:n.toString(e,`D`,f),value:e.getDate(),dateString:E(e),cssClass:i.join(` `),linkClass:o,url:c}},weekNumberBuild:function(e){return{weekNumber:u(e,n.culture().calendar.firstDay),currentDate:e}}})},first:function(e){return U.firstDayOfMonth(e)},last:function(e){var t=Y(e.getFullYear(),e.getMonth()+1,0),n=U.firstDayOfMonth(e),r=Math.abs(t.getTimezoneOffset()-n.getTimezoneOffset());return r&&t.setHours(n.getHours()+r/60),t},compare:function(e,t){var n,r=e.getMonth(),i=e.getFullYear(),a=t.getMonth(),o=t.getFullYear();return n=i>o?1:i<o?-1:r==a?0:r>a?1:-1,n},setDate:function(e,t){var n=e.getHours();t instanceof B?e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()):U.setTime(e,t*oe),l(e,n)},toDateString:function(e){return e.getFullYear()+`/`+e.getMonth()+`/`+e.getDate()},valueType:function(){return`date`}},{name:`year`,title:function(e){return e.getFullYear()},content:function(e){var t=X(e.culture).months,r=t.namesAbbr,i=t.names,a=this.toDateString,o=e.min,s=e.max,c=``;return e.showHeader&&(c+=`<table tabindex="0" role="grid" class="k-calendar-table" cellspacing="0">`,c+=`<caption class="k-calendar-caption k-meta-header">`,c+=this.title(e.date),c+=`</caption>`,c+=`<tbody class="k-calendar-tbody">`,c+=`<tr role="row" class="k-calendar-tr">`),W({min:Y(o.getFullYear(),o.getMonth(),1),max:Y(s.getFullYear(),s.getMonth(),1),start:Y(e.date.getFullYear(),0,1),html:c,setter:this.setDate,content:e.content,build:function(e){return{value:r[e.getMonth()],label:i[e.getMonth()],ns:n.ns,dateString:a(e),cssClass:[`k-calendar-td`].join(` `)}}})},first:function(e){return Y(e.getFullYear(),0,e.getDate())},last:function(e){return Y(e.getFullYear(),11,e.getDate())},compare:function(e,t){return G(e,t)},setDate:function(e,t){var n,r=e.getHours();t instanceof B?(n=t.getMonth(),e.setFullYear(t.getFullYear(),n,e.getDate()),n!==e.getMonth()&&e.setDate(0)):(n=e.getMonth()+t,e.setMonth(n),n>11&&(n-=12),n>0&&e.getMonth()!=n&&e.setDate(0)),l(e,r)},toDateString:function(e){return e.getFullYear()+`/`+e.getMonth()+`/1`},valueType:function(){return`month`}},{name:`decade`,title:function(e,t,n){return ue(e,t,n,10)},content:function(e){var t=e.date.getFullYear(),r=this.toDateString,i=``;return e.showHeader&&(i+=`<table tabindex="0" role="grid" class="k-calendar-table" cellspacing="0">`,i+=`<caption class="k-meta-header">`,i+=this.title(e.date,e.min,e.max),i+=`</caption>`,i+=`<tbody class="k-calendar-thead">`,i+=`<tr role="row" class="k-calendar-tr">`),W({start:Y(t-t%10,0,1),min:Y(e.min.getFullYear(),0,1),max:Y(e.max.getFullYear(),0,1),showOtherMonthDays:e.showOtherMonthDays,html:i,setter:this.setDate,build:function(e,t){var i=[`k-calendar-td`];return(t===10||t===11)&&i.push(M),{value:e.getFullYear(),ns:n.ns,dateString:r(e),cssClass:i.join(` `)}}})},first:function(e){var t=e.getFullYear();return Y(t-t%10,e.getMonth(),e.getDate())},last:function(e){var t=e.getFullYear();return Y(t-t%10+9,e.getMonth(),e.getDate())},compare:function(e,t){return G(e,t,10)},setDate:function(e,t){fe(e,t,1)},toDateString:function(e){return e.getFullYear()+`/0/1`},valueType:function(){return`year`}},{name:T,title:function(e,t,n){return ue(e,t,n,100)},content:function(e){var t=e.date.getFullYear(),r=e.min.getFullYear(),i=e.max.getFullYear(),a=this.toDateString,o=r,s=i,c=``;return o-=o%10,s-=s%10,s-o<10&&(s=o+9),e.showHeader&&(c+=`<table tabindex="0" role="grid" class="k-calendar-table" cellspacing="0">`,c+=`<caption class="k-calendar-caption k-meta-header">`,c+=this.title(e.date,e.min,e.max),c+=`</caption>`,c+=`<tbody class="k-calendar-tbody">`,c+=`<tr role="row" class="k-calendar-tr">`),W({start:Y(t-t%100,0,1),min:Y(o,0,1),max:Y(s,0,1),showOtherMonthDays:e.showOtherMonthDays,html:c,setter:this.setDate,build:function(t,o){var s=[`k-calendar-td`],c=t.getFullYear(),l=c+9;return(o===10||o===11)&&s.push(M),c<r&&(c=r),l>i&&(l=i),{ns:n.ns,value:e.centuryCellsFormat===`long`?`${c} - ${l}`:c,dateString:a(t),cssClass:s.join(` `)}}})},first:function(e){var t=e.getFullYear();return Y(t-t%100,e.getMonth(),e.getDate())},last:function(e){var t=e.getFullYear();return Y(t-t%100+99,e.getMonth(),e.getDate())},compare:function(e,t){return G(e,t,100)},setDate:function(e,t){fe(e,t,10)},toDateString:function(e){var t=e.getFullYear();return t-t%10+`/0/1`},valueType:function(){return`decade`}}]};function ue(e,t,n,r){var i=e.getFullYear(),a=t.getFullYear(),o=n.getFullYear(),s;return i-=i%r,s=i+(r-1),i<a&&(i=a),s>o&&(s=o),i+`-`+s}function W(e){var t=0,n,r=e.min,i=e.max,a=e.start,o=e.setter,s=e.build,c=e.weekNumberBuild,u=e.cells||12,d=e.isWeekColumnVisible,f=e.perRow||4,p=e.showOtherMonthDays,m=e.lastDayOfMonth,h=e.weekNumber||y,b=e.content||g,x=e.empty||_,S=e.otherMonthCellTemplate||v,C=e.html||`<table tabindex="0" role="grid" class="k-calendar-table" cellspacing="0"><tbody class="k-calendar-tbody"><tr role="row" class="k-calendar-tr">`;for(d&&(C+=h(c(a)));t<u;t++)t>0&&t%f===0&&(C+=`</tr><tr role="row" class="k-calendar-tr">`,d&&(C+=p||+a<=+m?h(c(a)):h({weekNumber:`&nbsp;`}))),a=Y(a.getFullYear(),a.getMonth(),a.getDate()),l(a,0),n=s(a,t,e.disableDates),n.cssClass.indexOf(j)!==-1&&!p?C+=S(n):J(a,r,i)&&n.cssClass.indexOf(M)===-1?C+=b(n):C+=x(n),o(a,1);return C+`</tr></tbody></table>`}function G(e,t,n){var r=e.getFullYear(),i=t.getFullYear(),a=i,o=0;return n&&(i-=i%n,a=i-i%n+n-1),r>a?o=1:r<i&&(o=-1),o}function K(){var e=new B;return new B(e.getFullYear(),e.getMonth(),e.getDate())}function q(e,t,n){var r=K();return e&&(r=new B(+e)),t>r?r=new B(+t):n<r&&(r=new B(+n)),r}function J(e,t,n){return+e>=+t&&+e<=+n}function de(e,t){return e.slice(t).concat(e.slice(0,t))}function fe(e,t,n){t=t instanceof B?t.getFullYear():e.getFullYear()+n*t,e.setFullYear(t)}function pe(e,t){if(+t<+e){var r=+e;U.views[0].setDate(e,t),U.views[0].setDate(t,new Date(r))}var i=Date.UTC(e.getFullYear(),e.getMonth(),e.getDate()),a=Date.UTC(t.getFullYear(),t.getMonth(),t.getDate());return Math.ceil((a-+i)/n.date.MS_PER_DAY)}function me(e,t,n,r){for(var i=0;i<=t;i++){var a=new Date(n.getTime());a=new Date(a.setDate(a.getDate()+i)),r(a)||e.push(a)}}function he(t){e(this).hasClass(`k-disabled`)||e(this).toggleClass(`k-hover`,re.indexOf(t.type)>-1||t.type==te)}function ge(e){e.preventDefault()}function Y(e,t,n){var r=new B(e,t,n);return r.setFullYear(e,t,n),r}function X(e){return h(e).calendars.standard}function Z(e){var n=V[e.start],r=V[e.depth],i=h(e.culture);e.format=p(e.format||i.calendars.standard.patterns.d),isNaN(n)&&(n=0,e.start=w),(r===t||r>n)&&(e.depth=w),e.dates===null&&(e.dates=[])}function _e(e,t){for(var n=0,r=t.length;n<r;n++)if(e===+t[n])return!0;return!1}function ve(e,t){return e?e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate():!1}function ye(e,t){return e?e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth():!1}function Q(t){return n.isFunction(t)?t:Array.isArray(t)?xe(t):e.noop}function be(e){for(var t=[],n=0;n<e.length;n++)t.push(e[n].setHours(0,0,0,0));return t}function xe(e){var t,n=[],r=[`su`,`mo`,`tu`,`we`,`th`,`fr`,`sa`];return e[0]instanceof B?(n=be(e),t=e=>!!(e&&n.indexOf(new Date(e).setHours(0,0,0,0))>-1)):(n=e.map(e=>{e=e.slice(0,2).toLowerCase();let t=r.indexOf(e);if(t>-1)return t}),t=e=>!!(e&&n.indexOf(new Date(e).getDay())>-1)),t}function Se(e,t){return e instanceof Date&&t instanceof Date&&(e=e.getTime(),t=t.getTime()),e===t}function $(t){var r=e(t).attr(n.attr(O)).split(`/`);return r=Y(r[0],r[1],r[2]),r}function Ce(e,r){return e?n.isFunction(e)?e(r):m(e)(r):t}U.isEqualDatePart=ve,U.isEqualDate=Se,U.restrictValue=q,U.isInRange=J,U.normalize=Z,U.viewsEnum=V,U.disabled=Q,U.toDateObject=$,U.getToday=K,U.createDate=Y,n.calendar=U})(window.kendo.jQuery);var a=kendo;e.__meta__=i,e.default=a}); //# sourceMappingURL=kendo.calendar.min.js.map