@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
4 lines • 45 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`kendo.dropdownlist.min.js`),require(`kendo.datepicker.min.js`),require(`kendo.numerictextbox.min.js`),require(`kendo.buttongroup.min.js`),require(`kendo.icons.min.js`)):typeof define==`function`&&define.amd?define([`exports`,`kendo.dropdownlist.min`,`kendo.datepicker.min`,`kendo.numerictextbox.min`,`kendo.buttongroup.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.SchedulerRecurrence={}),e.kendo._globals.Dropdownlist,e.kendo._globals.Datepicker,e.kendo._globals.Numerictextbox,e.kendo._globals.Buttongroup,e.kendo._globals.Icons))})(this,function(e,t,n,r,i,a){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let o={id:`scheduler.recurrence`,name:`Recurrence`,category:`web`,depends:[`dropdownlist`,`datepicker`,`numerictextbox`,`buttongroup`,`icons`],hidden:!0};(function(e,t){var n=window.kendo,r=n.htmlEncode,i=n.timezone,a=n.Class,o=n.ui,s=o.Widget,c=o.DropDownList,l=o.ButtonGroup,u=n.date,d=u.setTime,f=u.setDayOfWeek,p=u.adjustDST,m=u.firstDayOfMonth,h=u.getMilliseconds,g=[0,31,60,91,121,152,182,213,244,274,305,335,366],_=[0,31,59,90,120,151,181,212,243,273,304,334,365],v=[31,28,31,30,31,30,31,31,30,31,30,31],y={0:`SU`,1:`MO`,2:`TU`,3:`WE`,4:`TH`,5:`FR`,6:`SA`},b={SU:0,MO:1,TU:2,WE:3,TH:4,FR:5,SA:6},x=[`yyyy-MM-ddTHH:mm:ss.fffzzz`,`yyyy-MM-ddTHH:mm:sszzz`,`yyyy-MM-ddTHH:mm:ss`,`yyyy-MM-ddTHH:mm`,`yyyy-MM-ddTHH`,`yyyy-MM-dd`,`yyyyMMddTHHmmssfffzzz`,`yyyyMMddTHHmmsszzz`,`yyyyMMddTHHmmss`,`yyyyMMddTHHmm`,`yyyyMMddTHH`,`yyyyMMdd`],S=[`months`,`weeks`,`yearDays`,`monthDays`,`weekDays`,`hours`,`minutes`,`seconds`],C=S.length,ee=`yyyyMMddTHHmmssZ`,w={months:function(e,t,n){var r=n.months,i=H(r,e.getMonth()+1),a=!1;return i!==null&&(i.length?e.setMonth(i[0]-1,1):e.setFullYear(e.getFullYear()+1,r[0]-1,1),a=!0),a},monthDays:function(e,t,n){for(var r,i,a,o=!1,s=e.getHours(),c=function(e){return e<0&&(e=r+e+1),e};e<=t;){if(i=e.getMonth(),r=ne(e),a=H(n.monthDays,e.getDate(),c),a===null)return o;if(o=!0,a.length){if(e.setMonth(i,a.sort(K)[0]),p(e,s),i===e.getMonth())break}else e.setMonth(i+1,1)}return o},yearDays:function(e,t,n){for(var r,i,a=!1,o=e.getHours(),s=function(e){return e<0&&(e=r+e),e};e<t;){if(r=re(e)?366:365,i=H(n.yearDays,P(e),s),i===null)return a;if(a=!0,r=e.getFullYear(),i.length){e.setFullYear(r,0,i.sort(K)[0]),p(e,o);break}else e.setFullYear(r+1,0,1)}return a},weeks:function(e,t,n){for(var r=n.weekStart,i,a,o,s=!1,c=e.getHours(),l=function(e){return e<0&&(e=53+e),e};e<t;){if(a=H(n.weeks,F(e,r),l),a===null)return s;if(s=!0,i=e.getFullYear(),a.length){o=a.sort(K)[0]*7-1,e.setFullYear(i,0,o),f(e,r,-1),p(e,c);break}else e.setFullYear(i+1,0,1)}return s},weekDays:function(e,t,n){var r=new Date(e.getTime()+n.offsets.start),i=r.getDay()-e.getDay(),a=n.weekDays,o=n.weekStart,s=V(a,r,o),c=e.getHours(),l=function(t){var n=new Date(e.getFullYear(),e.getMonth()+1,1),r=L(t.day,o);n.getDay()<=r&&(!u||L(u.day,o)>r)&&(u=t)},u,d;if(s===null)return!1;if(u=s[0],u||((n.freq===`monthly`&&!n.positions||n.position>0)&&a.forEach(l),u||=a[0],f(e,o)),d=u.day,d-=i,u.offset)for(;e<=t&&!B(e,u,o);)I(e,o)===z(e,o)?(e.setMonth(e.getMonth()+1,1),p(e,c)):(e.setDate(e.getDate()+7),p(e,c),f(e,o,-1));return e.getDay()!==d&&f(e,d),!0},hours:function(e,t,n){var r=n.hours,i=n._startTime,a=i.getHours(),o=H(r,a),s=!1;return o!==null&&(s=!0,e.setHours(a),p(e,a),o.length?(o=o[0],e.setHours(o)):(o=e.getHours(),e.setDate(e.getDate()+1),p(e,o),o=r[0],e.setHours(o),p(e,o)),n.minutes&&e.setMinutes(0),i.setHours(o,e.getMinutes())),s},minutes:function(e,t,n){var r=n.minutes,i=H(r,e.getMinutes()),a=n._startTime.getHours(),o=!1;return i!==null&&(o=!0,i.length?i=i[0]:(a+=1,i=r[0]),n.seconds&&e.setSeconds(0),e.setHours(a,i),a%=24,p(e,a),n._startTime.setHours(a,i,e.getSeconds())),o},seconds:function(e,t,n){var r=n.seconds,i=n._startTime.getHours(),a=H(r,e.getSeconds()),o=e.getMinutes(),s=!1;return a!==null&&(s=!0,a.length?e.setSeconds(a[0]):(o+=1,e.setMinutes(o,r[0]),o>59&&(o%=60,i=(i+1)%24)),n._startTime.setHours(i,o,e.getSeconds())),s}},T=a.extend({next:function(e,t){var n=t._startTime,r=n.getDate(),i,a;if(t.seconds)a=e.getSeconds()+1,e.setSeconds(a),n.setSeconds(a),n.setDate(r);else if(t.minutes)i=e.getMinutes()+1,e.setMinutes(i),n.setMinutes(i),n.setDate(r);else return!1;return!0},normalize:function(e){var t=e.rule;e.idx===4&&t.hours&&(t._startTime.setHours(0),this._hour(e.date,t))},limit:function(e,n,r){for(var i=r.interval,a,o,s,c,l;e<=n;){for(s=o=t,l=e.getDate(),c=0;c<C;c++){if(a=S[c],r[a]){if(s=w[a](e,n,r),o!==t&&s)break;o=s}s&&this.normalize({date:e,rule:r,day:l,idx:c})}if((i===1||!this.interval(r,e))&&c===C)break}},interval:function(e,t){var n=new Date(e._startPeriod),r=new Date(t),i=t.getHours(),a=e.weekStart,o=e.interval,s=e.freq,c=!1,l=0,d=0,f=1,m,h;return s===`hourly`?(m=r.getTimezoneOffset()-n.getTimezoneOffset(),h=e._startTime.getHours(),r=r.getTime(),i!==h&&(r+=(h-i)*u.MS_PER_HOUR),r-=n,m&&(r-=m*u.MS_PER_MINUTE),m=Math.floor(r/u.MS_PER_HOUR),l=N(m,o),l!==0&&(this._hour(t,e,l),c=!0)):s===`daily`?(u.setTime(r,-n,!0),m=Math.round(r/u.MS_PER_DAY),l=N(m,o),l!==0&&(this._date(t,e,l),c=!0)):s===`weekly`?(l=this._getNumberOfWeeksBetweenDates(n,t),L(t.getDay(),a)<L(n.getDay(),a)&&(l+=1),l=N(l,o),l!==0&&(u.setDayOfWeek(t,e.weekStart,-1),t.setDate(t.getDate()+l*7),p(t,i),c=!0)):s===`monthly`?(m=t.getFullYear()-n.getFullYear(),m=t.getMonth()-n.getMonth()+m*12,l=N(m,o),l!==0&&(f=e._hasRuleValue?1:t.getDate(),t.setFullYear(t.getFullYear(),t.getMonth()+l,f),p(t,i),c=!0)):s===`yearly`&&(m=t.getFullYear()-n.getFullYear(),l=N(m,o),e.months||(d=t.getMonth()),!e.yearDays&&!e.monthDays&&!e.weekDays&&(f=t.getDate()),l!==0&&(t.setFullYear(t.getFullYear()+l,d,f),p(t,i),c=!0)),c},_getNumberOfWeeksBetweenDates:function(e,t){var n=(t-e)/6048e5,r=Math.floor(n);return n-r>.99&&(r=Math.round(n)),r},_hour:function(e,t,n){var r=t._startTime,i=r.getHours();n&&(i+=n),e.setHours(i),i%=24,r.setHours(i),p(e,i)},_date:function(e,t,n){var r=e.getHours();e.setDate(e.getDate()+n),p(e,r)||this._hour(e,t)}}),E=T.extend({next:function(e,t){T.fn.next(e,t)||this._hour(e,t,1)},normalize:function(e){var t=e.rule;e.idx===4&&(t._startTime.setHours(0),this._hour(e.date,t))}}),D=T.extend({next:function(e,t){T.fn.next(e,t)||this[t.hours?`_hour`:`_date`](e,t,1)}}),O=D.extend({setup:function(e,t){e.weekDays||=[{day:t.getDay(),offset:0}]}}),k=T.extend({next:function(e,t){var n,r;if(!T.fn.next(e,t))if(t.hours)this._hour(e,t,1);else if(t.monthDays||t.weekDays||t.yearDays||t.weeks)this._date(e,t,1);else{for(n=e.getDate(),r=e.getHours(),e.setMonth(e.getMonth()+1),p(e,r);e.getDate()!==n;)e.setDate(n),p(e,r);this._hour(e,t)}},normalize:function(e){var t=e.rule,n=e.date,r=n.getHours();e.idx===0&&!t.monthDays&&!t.weekDays?(n.setDate(e.day),p(n,r)):T.fn.normalize(e)},setup:function(e,t,n){!e.monthDays&&!e.weekDays&&n.setDate(t.getDate())}}),A=k.extend({next:function(e,t){var n,r=e.getHours();if(!T.fn.next(e,t))if(t.hours)this._hour(e,t,1);else if(t.monthDays||t.weekDays||t.yearDays||t.weeks)this._date(e,t,1);else if(t.months){for(n=e.getDate(),e.setMonth(e.getMonth()+1),p(e,r);e.getDate()!==n;)e.setDate(n),p(e,r);this._hour(e,t)}else e.setFullYear(e.getFullYear()+1),p(e,r),this._hour(e,t)},setup:function(){}}),te={hourly:new E,daily:new D,weekly:new O,monthly:new k,yearly:new A},j=`click`,M=`change`;function N(e,t){var n;return e!==0&&e<t?n=t-e:(n=e%t,n&&=t-n),n}function P(e){var t=e.getMonth();return(re(e)?g[t]:_[t])+e.getDate()}function F(e,n){var r,i;return e=new Date(e.getFullYear(),e.getMonth(),e.getDate()),p(e,0),r=e.getFullYear(),n===t?e.setDate(e.getDate()+(4-(e.getDay()||7))):(f(e,n,-1),e.setDate(e.getDate()+4)),p(e,0),i=Math.floor((e.getTime()-new Date(r,0,1,-6))/864e5),1+Math.floor(i/7)}function I(e,t){var n=7-(m(e).getDay()+7-(t||7))||7;return n<0&&(n+=7),Math.ceil((e.getDate()-n)/7)+1}function L(e,t){return e+(e<t?7:0)}function R(e,t,n){var r=t.offset;if(!r)return I(e,n);var i=new Date(e.getFullYear(),e.getMonth()+1,0),a=I(i,n),o=L(t.day,n),s=o<L(new Date(e.getFullYear(),e.getMonth(),1).getDay(),n),c=o>L(i.getDay(),n);return r<0?r=a+(r+1-(c?1:0)):s&&(r+=1),a-=c?1:0,r<(s?1:0)||r>a?null:r}function z(e,t){return I(new Date(e.getFullYear(),e.getMonth()+1,0),t)}function B(e,t,n){return I(e,n)===R(e,t,n)}function V(e,t,n){for(var r=L(t.getDay(),n),i=e.length,a,o,s,c,l=[],u=0;u<i;u++)if(o=e[u],c=I(t,n),a=R(t,o,n),a!==null){if(c<a)l.push(o);else if(c===a){if(s=L(o.day,n),r<s)l.push(o);else if(r===s)return null}}return l}function H(e,t,n){for(var r=0,i=e.length,a=[],o;r<i;r++){if(o=e[r],n&&(o=n(o)),t===o)return null;t<o&&a.push(o)}return a}function U(e,t){for(var n=0,r=e.length,i;n<r;n++){if(i=parseInt(e[n],10),isNaN(i)||i<t.start||i>t.end||i===0&&t.start<0)return null;e[n]=i}return e.sort(K)}function W(e){for(var n=0,r=e.length,i,a,o;n<r;n++){if(i=e[n],a=i.length,o=i.substring(a-2).toUpperCase(),o=b[o],o===t)return null;e[n]={offset:parseInt(i.substring(0,a-2),10)||0,day:o}}return e}function G(e){for(var t=0,n=e.length,r,i,a=[];t<n;t++)r=e[t],typeof r==`string`?i=r:(i=``+y[r.day],r.offset&&(i=r.offset+i)),a.push(i);return a.toString()}function ne(e){var t=e.getMonth();return t===1?new Date(e.getFullYear(),1,29).getMonth()===1?29:28:v[t]}function re(e){return e=e.getFullYear(),e%4==0&&e%100!=0||e%400==0}function K(e,t){return e-t}function ie(e,t){var n=0,r,i,a=[];if(e)for(e=e.split(e.indexOf(`;`)===-1?`,`:`;`),r=e.length;n<r;n++)i=X(e[n],t),i&&a.push(i);return a}function q(e,t,n){for(var r=Array.isArray(e)?e:ie(e,n),i=t.getTime()-t.getMilliseconds(),a=0,o=r.length;a<o;a++)if(r[a].getTime()===i)return!0;return!1}function ae(e,t){var r=0,i,a,o=[].concat(e);for(i=o.length;r<i;r++)a=o[r],a=n.timezone.convert(a,t||a.getTimezoneOffset(),`Etc/UTC`),o[r]=n.toString(a,ee);return o.join(`,`)}function oe(e,t){var n=new Date(e);switch(t.freq){case`yearly`:n.setFullYear(n.getFullYear(),0,1);break;case`monthly`:n.setFullYear(n.getFullYear(),n.getMonth(),1);break;case`weekly`:f(n,t.weekStart,-1);break;default:break}return t.hours&&n.setHours(0),t.minutes&&n.setMinutes(0),t.seconds&&n.setSeconds(0),n}function J(e,t){var n=new Date(e);switch(t.freq){case`yearly`:n.setFullYear(n.getFullYear(),11,31);break;case`monthly`:n.setFullYear(n.getFullYear(),n.getMonth()+1,0);break;case`weekly`:f(n,t.weekStart,-1),n.setDate(n.getDate()+6);break;default:break}return t.hours&&n.setHours(23),t.minutes&&n.setMinutes(59),t.seconds&&n.setSeconds(59),n}function se(e,t,n,r){for(var i=e.length,a=[],o,s,c,l=0,u=n.length;l<u;l++)o=n[l],o<0?o=i+o:--o,s=e[o],c=r?s.start<r:!0,s&&s.start>=t&&c&&a.push(s);return a}function ce(e,t,n){for(var r=[],i,a=0;a<e.length;a++)i=e[a],q(t,i.start,n)||r.push(i);return r}function le(e,r,i,a){var o,s,c,l,f,p,m,g,_,v,y,b,x,S,C,ee,w,T,E,D,O,k,A,j=[],M,N,P,F;if(o=Q(e.recurrenceRule,a,{start:(Y(e.start,a)-Y(e.start,e.startTimezone||a))*n.date.MS_PER_MINUTE,end:(Y(e.end,a)-Y(e.end,e.endTimezone||a))*n.date.MS_PER_MINUTE}),!o)return[e];O=o.positions,k=O?0:1,y=o.start,b=o.end,(y||b)&&(e=e.clone({start:y?new Date(y.value[0]):t,end:b?new Date(b.value[0]):t})),T=e.start,w=T.getTime(),ee=h(T),C=ie(e.recurrenceException,a),!C[0]&&o.exdates&&(C=o.exdates.value,e.set(`recurrenceException`,ae(C,a))),_=r=new Date(r),i=new Date(i),S=o.freq,D=te[S],E=o.count,o.until&&o.until<i&&(i=new Date(o.until)),x=S===`yearly`||S===`monthly`||S===`weekly`,r<w||E||o.interval>1||x||(S===`daily`||S===`hourly`)&&!o.seconds?r=new Date(w):(f=r.getHours(),p=r.getMinutes(),m=r.getSeconds(),o.hours||(f=T.getHours()),o.minutes||(p=T.getMinutes()),o.seconds||(m=T.getSeconds()),r.setHours(f,p,m,T.getMilliseconds())),o._startPeriod=new Date(r),O&&(r=oe(r,o),i=J(i,o),h(i)-h(r)<0&&(f=r.getHours(),i.setHours(f,r.getMinutes(),r.getSeconds(),r.getMilliseconds()),u.adjustDST(i,f)),o._startPeriod=new Date(r),o._endPeriod=J(r,o)),g=e.duration();var I=e.isAllDay?864e5:0;for(o._startTime=s=u.toInvariantTime(r),D.setup&&D.setup(o,T,r),D.limit(r,i,o);r<=i;){l=new Date(r),d(l,g);var L=new Date(r);if(d(L,g+I),v=r>=_||L>_,v&&!q(C,r,a)||O)if(s=u.toUtcTime(u.getDate(r))+h(o._startTime),c=s+g,w!==r.getTime()||ee!==h(o._startTime)){var R=e.startTimezone||e.endTimezone,z=e.endTimezone||e.startTimezone;if(!e.isAllDay&&(a&&R||!a&&!R)){var B=Y(r,a)-Y(e.start,a),V=Y(l,a)-Y(e.end,a),H=Y(r,R)-Y(e.start,R),U=Y(l,z)-Y(e.end,z);if(B!==H){var W=(B-H)*6e4;M=new Date(r.getTime()-W),P=s-W}if(V!==U){var G=(V-U)*6e4;N=new Date(l.getTime()-G),F=c-G}}j.push(e.toOccurrence({start:M||new Date(r),end:N||l,_startTime:P||s,_endTime:F||c})),M=N=P=F=null}else e._startTime=s,e._endTime=c,j.push(e);if(O){if(D.next(r,o),D.limit(r,i,o),r>o._endPeriod&&(A=se(j.slice(k),T,O,o.until),A=ce(A,C,a),j=j.slice(0,k).concat(A),o._endPeriod=J(r,o),k=j.length),E&&E===k)break}else{if(E&&E===k)break;k+=1;var ne=ue(r);D.next(r,o),ne&&o.freq!==`hourly`&&u.toInvariantTime(e.start).getTime()!==u.toInvariantTime(r).getTime()&&(o._startTime=s=new Date(r.getTime()-36e5)),D.limit(r,i,o)}}return j}function ue(e){return e.getTimezoneOffset()<new Date(e.getTime()-36e5).getTimezoneOffset()}function Y(e,t){return t?n.timezone.offset(e,t):e.getTimezoneOffset()}function X(e,t){return e=n.parseDate(e,x),e&&t&&(e=i.apply(e,t)),e}function Z(e,t){for(var n=e.split(`;`),r,i,a,o,s,c,l=0,u=n.length;l<u;l++)if(r=n[l].split(`:`),i=r[0],a=r[1],i.indexOf(`TZID`)!==-1&&(o=i.substring(i.indexOf(`TZID`)).split(`=`)[1]),a)for(a=a.split(`,`),s=0,c=a.length;s<c;s++)a[s]=X(a[s],o||t);if(a)return{value:a,tzid:o}}function Q(e,r,i){var a={},o,s,c=0,l,u=!1,d,f,p,m,h,g,_=function(e,t){var n=e.day,r=t.day;return n<h&&(n+=7),r<h&&(r+=7),n-r};if(!e)return null;for(p=e.split(`
`),!p[1]&&(e.indexOf(`DTSTART`)!==-1||e.indexOf(`DTEND`)!==-1||e.indexOf(`EXDATE`)!==-1)&&(p=e.split(` `)),c=0,l=p.length;c<l;c++)f=n.trim(p[c]),f.indexOf(`DTSTART`)===-1?f.indexOf(`DTEND`)===-1?f.indexOf(`EXDATE`)===-1?f.indexOf(`RRULE`)===-1?n.trim(f)&&(d=f):d=f.substring(6):a.exdates=Z(f,r):a.end=Z(f,r):a.start=Z(f,r);for(d=d.split(`;`),c=0,l=d.length;c<l;c++)switch(m=d[c],o=m.split(`=`),s=n.trim(o[1]).split(`,`),n.trim(o[0]).toUpperCase()){case`FREQ`:a.freq=s[0].toLowerCase();break;case`UNTIL`:a.until=X(s[0],r);break;case`COUNT`:a.count=parseInt(s[0],10);break;case`INTERVAL`:a.interval=parseInt(s[0],10);break;case`BYSECOND`:a.seconds=U(s,{start:0,end:60}),u=!0;break;case`BYMINUTE`:a.minutes=U(s,{start:0,end:59}),u=!0;break;case`BYHOUR`:a.hours=U(s,{start:0,end:23}),u=!0;break;case`BYMONTHDAY`:a.monthDays=U(s,{start:-31,end:31}),u=!0;break;case`BYYEARDAY`:a.yearDays=U(s,{start:-366,end:366}),u=!0;break;case`BYMONTH`:a.months=U(s,{start:1,end:12}),u=!0;break;case`BYDAY`:a.weekDays=g=W(s),u=!0;break;case`BYWEEKNO`:a.weeks=U(s,{start:-53,end:53}),u=!0;break;case`BYSETPOS`:a.positions=U(s,{start:-366,end:366});break;case`WKST`:a.weekStart=h=b[s[0]];break}return a.freq===t||a.count!==t&&a.until?null:(a.interval||=1,h===t&&(a.weekStart=h=n.culture().calendar.firstDay),g&&(a.weekDays=g.sort(_)),a.positions&&!u&&(a.positions=null),a._hasRuleValue=u,a.offsets=i,a)}function de(e,t){for(var r=e.value,a=e.tzid||``,o=r.length,s=0,c;s<o;s++)c=r[s],c=i.convert(c,a||t||c.getTimezoneOffset(),`Etc/UTC`),r[s]=n.toString(c,`yyyyMMddTHHmmssZ`);return a&&=`;TZID=`+a,a+`:`+r.join(`,`)+` `}function fe(e,r){var a=e.weekStart,o=`FREQ=`+e.freq.toUpperCase(),s=e.exdates||``,c=e.start||``,l=e.end||``,u=e.until;return a===t&&(a=n.culture().calendar.firstDay),e.interval>1&&(o+=`;INTERVAL=`+e.interval),e.count&&(o+=`;COUNT=`+e.count),u&&(u=i.convert(u,r||u.getTimezoneOffset(),`Etc/UTC`),o+=`;UNTIL=`+n.toString(u,`yyyyMMddTHHmmssZ`)),e.months&&(o+=`;BYMONTH=`+e.months),e.weeks&&(o+=`;BYWEEKNO=`+e.weeks),e.yearDays&&(o+=`;BYYEARDAY=`+e.yearDays),e.monthDays&&(o+=`;BYMONTHDAY=`+e.monthDays),e.weekDays&&(o+=`;BYDAY=`+G(e.weekDays)),e.hours&&(o+=`;BYHOUR=`+e.hours),e.minutes&&(o+=`;BYMINUTE=`+e.minutes),e.seconds&&(o+=`;BYSECOND=`+e.seconds),e.positions&&(o+=`;BYSETPOS=`+e.positions),a!==t&&(o+=`;WKST=`+y[a]),c&&=`DTSTART`+de(c,r),l&&=`DTEND`+de(l,r),s&&=`EXDATE`+de(s,r),(c||l||s)&&(o=c+l+s+`RRULE:`+o),o}n.recurrence={rule:{parse:Q,serialize:fe},expand:le,dayInYear:P,weekInYear:F,weekInMonth:I,numberOfWeeks:z,isException:q,toExceptionString:ae};var pe=n.template(({frequency:e,messages:t,end:i})=>(e===`never`?``:`<div class="k-form-field"><label id="recur_interval_label" class="k-label k-form-label" for="recur_interval">${r(t.repeatEvery)}</label><div class="k-form-field-wrap"><input id="recur_interval" ref-recur-interval title="${r(t.repeatEvery)} ${r(t.interval)}" aria-labelledby="recur_interval_label">${r(t.interval)}</div></div>`)+(e===`weekly`?`<div class="k-form-field"><label class="k-label k-form-label">${r(t.repeatOn)}</label><div class="k-form-field-wrap"><div class="k-button-group-stretched k-recur-weekday-buttons" title="${r(t.repeatOn)}"></div></div></div></div>`:``)+(e===`monthly`?`<div class="k-form-field"><label class="k-label k-form-label">${r(t.repeatOn)}</label></div><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-month-radio k-radio" type="radio" name="month" value="monthday" title="${r(t.repeatOn)}" />${r(t.date)}:</label><input ref-recur-monthday aria-label="${r(t.date)}" title="${r(t.date)}" /></li><li class="k-radio-item"><input class="k-recur-month-radio k-radio" type="radio" name="month" value="weekday" aria-label="${r(t.repeatOn)} ${r(t.day)}" title="${r(t.repeatOn)} ${r(t.day)}" /><input class="k-recur-weekday-offset" title="${r(t.repeatOn)}" ${n.attr(`style-width`)}="8em" /><input class="k-recur-weekday" title="${r(t.day)}" ${n.attr(`style-width`)}="8em" /></li></ul></div></div>`:``)+(e===`yearly`?`<div class="k-form-field"><label class="k-label k-form-label">${r(t.repeatOn)}</label><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><input class="k-recur-year-radio k-radio" type="radio" name="year" value="monthday" title="${r(t.repeatOn)} ${r(t.month)}" /><input class="k-recur-month" aria-label="${r(t.month)}" title="${r(t.month)}" ${n.attr(`style-width`)}="8em" /><input ref-recur-monthday aria-label="${r(t.date)}" title="${r(t.date)}" /></li><li class="k-radio-item"><input class="k-recur-year-radio k-radio" type="radio" name="year" value="weekday" title="${r(t.repeatOn)} ${r(t.day)}" /><input class="k-recur-weekday-offset" title="${r(t.repeatOn)}" ${n.attr(`style-width`)}="8em"/><input class="k-recur-weekday" title="${r(t.day)}" ${n.attr(`style-width`)}="8em"/>${r(t.of)}<input class="k-recur-month" title="${r(t.of+t.month)}" ${n.attr(`style-width`)}="8em"/></li></ul></div></div>`:``)+(e===`never`?``:`<div class="k-form-field"><label class="k-label k-form-label">${r(i.label)}</label><div class="k-form-field-wrap"><ul class="k-radio-list"><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-never k-radio" type="radio" name="end" value="never" title="${r(i.label)}" />${r(i.never)}</label></li><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-count k-radio" type="radio" name="end" value="count" title="${r(i.label)}" />${r(i.after)}</label><input ref-recur-count aria-label="${r(i.occurrence)}" title="${r(i.occurrence)}" />${r(i.occurrence)}</li><li class="k-radio-item"><label class="k-radio-label"><input class="k-recur-end-until k-radio" type="radio" name="end" value="until" title="${r(i.label)}" />${r(i.on)}</label><input title="${r(i.on)}" aria-label="${r(i.on)}" ref-recur-until /></li></ul></div></div>`)),me=[{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}],he=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],ge=[{day:0,offset:0},{day:6,offset:0}],$=s.extend({init:function(e,t){var r,i=this,a=t&&t.frequencies;s.fn.init.call(i,e,t),i.wrapper=i.element,t=i.options,t.start=r=t.start||u.today(),a&&(t.frequencies=a),typeof r==`string`&&(t.start=n.parseDate(r,`yyyyMMddTHHmmss`)),t.firstWeekDay===null&&(t.firstWeekDay=n.culture().calendar.firstDay),i._namespace=`.`+t.name},options:{value:``,start:``,timezone:``,spinners:!0,firstWeekDay:null,frequencies:[`never`,`daily`,`weekly`,`monthly`,`yearly`],mobile:!1,messages:{repeat:`Repeat`,recurrenceEditorTitle:`Recurrence editor`,frequencies:{never:`Never`,hourly:`Hourly`,daily:`Daily`,weekly:`Weekly`,monthly:`Monthly`,yearly:`Yearly`},hourly:{repeatEvery:`Repeat every: `,interval:` hour(s)`},daily:{repeatEvery:`Repeat every: `,interval:` day(s)`},weekly:{interval:` week(s)`,repeatEvery:`Repeat every: `,repeatOn:`Repeat on: `},monthly:{repeatEvery:`Repeat every: `,repeatOn:`Repeat on: `,interval:` month(s)`,day:`Day `,date:`Date`},yearly:{repeatEvery:`Repeat every: `,repeatOn:`Repeat on: `,interval:` year(s)`,of:` of `,month:`month`,day:`day`,date:`Date`},end:{label:`End:`,mobileLabel:`Ends`,never:`Never`,after:`After `,occurrence:` occurrence(s)`,on:`On `},offsetPositions:{first:`first`,second:`second`,third:`third`,fourth:`fourth`,last:`last`},weekdays:{day:`day`,weekday:`weekday`,weekend:`weekend day`}}},events:[`change`],_initInterval:function(){var e=this,t=e._container.find(`[ref-recur-interval]`),n=e._value;e._interval=t.kendoNumericTextBox({spinners:e.options.spinners,value:n.interval||1,decimals:0,format:`#`,min:1,change:function(){n.interval=this.value(),e._trigger()}}).data(`kendoNumericTextBox`),e._interval.wrapper.addClass(`k-recur-interval`)},_weekDayButtons:function(e){for(var t=this,r=n.culture().calendar.days.names,i=n.culture().calendar.days.namesAbbr,a=t.options.messages.weekly.repeatOn,o=r.length,s=0,c=[],u=[];s<o;s++)c.push(s);for(r=r.slice(e).concat(r.slice(0,e)),i=i.slice(e).concat(i.slice(0,e)),c=c.slice(e).concat(c.slice(0,e)),s=0;s<o;s++)u.push({text:i[s],attributes:{"data-value":c[s],"aria-label":a+` `+r[s]}});t._container.find(`.k-recur-weekday-buttons`).length>0&&(t._weekDayButtonGroup=new l(t._container.find(`.k-recur-weekday-buttons`),{items:u,selection:`multiple`,select:function(){var e=t._value;e.weekDays=t._weekDayButtonGroup.current().map(function(e,t){return{day:Number(t.getAttribute(`data-value`)),offset:0}}),t.options.mobile||t._trigger()}}))},_weekDayRule:function(e){var t=this,n=(t._weekDay.element||t._weekDay).val(),r=Number((t._weekDayOffset.element||t._weekDayOffset).val()),i=null,a=null;e||(n===`day`?(i=me,a=r):n===`weekday`?(i=he,a=r):n===`weekend`?(i=ge,a=r):i=[{offset:r,day:Number(n)}]),t._value.weekDays=i,t._value.positions=a},_weekDayView:function(){var e=this,t=e._value.weekDays,n=e._value.positions,r=e._weekDayOffset,i,a,o,s;t&&(o=t.length,n&&(o===7?(a=`day`,i=n):o===5?(a=`weekday`,i=n):o===2&&(a=`weekend`,i=n)),a||(t=t[0],a=t.day,i=t.offset||``),s=r.value?`value`:`val`,r[s](i),e._weekDay[s](a))},_initWeekDay:function(){var t=this,r,i=t.options.messages.weekdays,a=t.options.messages.offsetPositions,o=t._container.find(`.k-recur-weekday`),s=function(){t._weekDayRule(),t._trigger()};o[0]&&(t._weekDayOffset=new c(t._container.find(`.k-recur-weekday-offset`),{autoWidth:!0,change:s,dataTextField:`text`,dataValueField:`value`,dataSource:[{text:a.first,value:`1`},{text:a.second,value:`2`},{text:a.third,value:`3`},{text:a.fourth,value:`4`},{text:a.last,value:`-1`}]}),r=[{text:i.day,value:`day`},{text:i.weekday,value:`weekday`},{text:i.weekend,value:`weekend`}],t._weekDay=new c(o,{autoWidth:!0,value:t.options.start.getDay(),change:s,dataTextField:`text`,dataValueField:`value`,dataSource:r.concat(e.map(n.culture().calendar.days.names,function(e,t){return{text:e,value:t}}))}),t._weekDayView())},_initWeekDays:function(){var e=this,t=e._value,n=e._weekDayButtonGroup;if(n&&t.weekDays&&t.weekDays.length){for(var r=t.weekDays,i=r.length,a=[],o=0,s;o<i;o++)a.push(`[data-value='`+r[o].day+`']`);s=n.element.find(a.join(`,`)),n.select(s)}},_initMonthDay:function(){var e=this,t=e._value,r=e._container.find(`[ref-recur-monthday]`);r[0]&&(e._monthDay=new n.ui.NumericTextBox(r,{spinners:e.options.spinners,min:1,max:31,decimals:0,format:`#`,value:t.monthDays?t.monthDays[0]:e.options.start.getDate(),change:function(){var n=this.value();t.monthDays=n&&[n],e._trigger()}}),e._monthDay.wrapper.addClass(`k-recur-monthday`))},_initCount:function(){var e=this,t=e._container.find(`[ref-recur-count]`),n=e._value;e._count=t.kendoNumericTextBox({spinners:e.options.spinners,value:n.count||1,decimals:0,format:`#`,min:1,change:function(){n.count=this.value(),e._trigger()}}).data(`kendoNumericTextBox`),e._count.wrapper.addClass(`k-recur-count`)},_initUntil:function(){var e=this,t=e._container.find(`[ref-recur-until]`),r=e.options.start,i=e._value,a=i.until,o=a&&a<r?a:r,s=e.wrapper.closest(`.k-scheduler-edit-form`).find(`[name=start]:visible`),c=n.format(n.ui.Validator.prototype.options.messages.date,e.options.messages.end.on),l=n.ui.Validator.prototype.options.messages.dateCompare,u=new Date(r.getFullYear(),r.getMonth(),r.getDate(),23,59,59);t.attr(`data-validDate-msg`,c),t.attr(`data-untilDateCompare-msg`,l),s.length===0&&(s=e.wrapper.closest(`.k-scheduler-edit-form`).find(`[name=start]`)),s.length>0&&s.val()&&(o=n.parseDate(s.val()),u<o&&(u=o)),e._until=t.kendoDatePicker({min:o,value:a||u,change:function(){var t=this.value();t&&(i.until=new Date(t.getFullYear(),t.getMonth(),t.getDate(),23,59,59)),e._trigger()}}).data(`kendoDatePicker`),e._until.wrapper.addClass(`k-recur-until`),s&&s.on(`change`,function(){var t=e._until.element,n=!!t.attr(`readonly`),r=!(t.is(`[disabled]`)||t.parents(`fieldset`).is(`:disabled`));e._until.setOptions({min:s.val(),readonly:n,enable:r})})},_trigger:function(){this.options.mobile||this.trigger(`change`)}}),_e=$.extend({init:function(e,t){var n=this;$.fn.init.call(n,e,t),n._initFrequency(),n._initContainer(),n.value(n.options.value)},options:{name:`RecurrenceEditor`},events:[`change`],destroy:function(){var e=this;e._frequency.destroy(),this._weekDayButtonGroup&&this._weekDayButtonGroup.destroy(),e._container.find(`input[type=radio],input[type=checkbox]`).off(j+e._namespace),n.destroy(e._container),$.fn.destroy.call(e)},value:function(e){var n=this,r=n.options.timezone,i,a;if(e===t)return n._value.freq?fe(n._value,r):``;n._value=Q(e,r)||{},i=n._value.freq,i?(a=n._frequency.element.find(`[data-value='`+i+`']`),n._frequency.select(a)):n._frequency.select(0),n._initView(n._frequency.current().data(`value`))},_initContainer:function(){var t=this.element,n=e(`<div class="k-recur-view" />`),r=t.parent(`.k-edit-field`);r[0]?n.insertAfter(r):t.append(n),this._container=n},_initFrequency:function(){var t=this,n=t.options,r=n.frequencies,i=n.messages.frequencies,a=e(`<div class="k-button-group-stretched k-flex-1"/>`).attr({title:n.messages.recurrenceEditorTitle}),o;r=e.map(r,function(e){return{text:i[e],attributes:{"data-value":e,"aria-label":n.messages.repeat+i[e]}}}),o=r[0],o&&o.attributes&&o.attributes[`data-value`]===`never`&&(o.attributes[`data-value`]=``),t.element.append(a),t._frequency=new l(a,{items:r,select:function(){t._value={},t._initView(t._frequency.current().data(`value`)),t.trigger(`change`)}})},_initView:function(t){var r=this,i=r._value,a=r.options,o,s={frequency:t||`never`,firstWeekDay:a.firstWeekDay,messages:a.messages[t],end:a.messages.end};if(r._weekDayButtonGroup&&=(r._weekDayButtonGroup.destroy(),r._container.find(`.k-recur-weekday-buttons`).empty(),null),n.destroy(r._container),o=e(pe(s)),n.applyStylesFromKendoAttributes(o,[`width`]),r._container.html(o),!t){r._value={};return}i.freq=t,t===`weekly`&&!i.weekDays&&(i.weekDays=[{day:a.start.getDay(),offset:0}]),r._weekDayButtons(a.firstWeekDay),r._initInterval(),r._initWeekDays(),r._initMonthDay(),r._initWeekDay(),r._initMonth(),r._initCount(),r._initUntil(),r._period(),r._end()},_initMonth:function(){var t=this,r=t._value,i=r.months||[t.options.start.getMonth()+1],a=t._container.find(`.k-recur-month`),o;a[0]&&(o={autoWidth:!0,change:function(){r.months=[Number(this.value())],t.trigger(`change`)},dataTextField:`text`,dataValueField:`value`,dataSource:e.map(n.culture().calendar.months.names,function(e,t){return{text:e,value:t+1}})},t._month1=new c(a[0],o),t._month2=new c(a[1],o),i&&(i=i[0],t._month1.value(i),t._month2.value(i)))},_end:function(){var e=this,t=e._value,n=e._container,r=e._namespace,i=function(t){e._toggleEnd(t.currentTarget.value),e.trigger(`change`)},a;e._buttonNever=n.find(`.k-recur-end-never`).on(j+r,i),e._buttonCount=n.find(`.k-recur-end-count`).on(j+r,i),e._buttonUntil=n.find(`.k-recur-end-until`).on(j+r,i),t.count?a=`count`:t.until&&(a=`until`),e._toggleEnd(a)},_period:function(){var e=this,t=e._value,n=t.freq===`monthly`,r=n?e._toggleMonthDay:e._toggleYear,i=`.k-recur-`+(n?`month`:`year`)+`-radio`,a=e._container.find(i);!n&&t.freq!==`yearly`||(a.on(j+e._namespace,function(t){r.call(e,t.currentTarget.value),e.trigger(`change`)}),e._buttonMonthDay=a.eq(0),e._buttonWeekDay=a.eq(1),r.call(e,t.weekDays?`weekday`:`monthday`))},_toggleEnd:function(e){var t=this,n,r,i,a;e===`count`?(t._buttonCount.prop(`checked`,!0),i=!0,a=!1,n=t._count.value(),r=null):e===`until`?(t._buttonUntil.prop(`checked`,!0),i=!1,a=!0,n=null,r=t._until.value()):(t._buttonNever.prop(`checked`,!0),i=a=!1,n=r=null),t._count&&t._count.enable(i),t._until&&t._until.enable(a),t._value.count=n,t._value.until=r},_toggleMonthDay:function(e){var t=this,n=!1,r=!0,i=!1,a;e===`monthday`?(t._buttonMonthDay.prop(`checked`,!0),a=[t._monthDay.value()],n=!0,r=!1,i=!0):(t._buttonWeekDay.prop(`checked`,!0),a=null),t._weekDay.enable(r),t._weekDayOffset.enable(r),t._monthDay.enable(n),t._value.monthDays=a,t._weekDayRule(i)},_toggleYear:function(e){var t=this,n=!1,r=!0,i;e===`monthday`?(n=!0,r=!1,i=t._month1.value()):i=t._month2.value(),t._month1.enable(n),t._month2.enable(r),t._value.months=[i],t._toggleMonthDay(e)}});o.plugin(_e);var ve=n.template(({headerTitle:e})=>`<div data-role="content"><ul class="k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${e}</span><div class="k-recur-pattern k-listgroup-form-field-wrapper"></div></label></li><li class="k-item k-listgroup-item k-recur-view"></li></ul></div>`),ye=n.template(({frequency:e,messages:t})=>(e===`never`?``:`<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.repeatEvery)}</span><div class="k-recur-editor-wrap k-listgroup-form-field-wrapper"><input ref-recur-interval type="number" pattern="\\d*"/>`+(t.interval.length?`<span class="k-recur-editor-text">${r(t.interval)}</span>`:``)+`</div></label>`)+(e===`weekly`?`<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item k-no-click"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.repeatOn)}</span></label></li><div class="k-button-group-stretched k-recur-weekday-buttons" title="${r(t.repeatOn)}"></ul>`:``)+(e===`monthly`?`<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.repeatBy)}</span><div class="k-repeat-rule k-listgroup-form-field-wrapper"></div></label></li><li class="k-monthday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.day)}</span><div class="k-listgroup-form-field-wrapper"><input ref-recur-monthday type="number" aria-label="${r(t.date)}" title="${r(t.day)}" pattern="\\d*"/></div></label></li><li class="k-weekday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.every)}</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday-offset" title="${r(t.every)}"></select></div></label></li><li class="k-weekday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.day)}</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday" title="${r(t.day)}"></select></div></label></li></ul>`:``)+(e===`yearly`?`<ul class="k-recur-items-wrap k-listgroup k-listgroup-flush"><li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.repeatBy)}</span><div class="k-repeat-rule k-listgroup-form-field-wrapper"></div></label></li><li class="k-monthday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.day)}</span><div class="k-listgroup-form-field-wrapper"><input ref-recur-monthday type="number" aria-label="${r(t.date)}" title="${r(t.day)}" pattern="\\d*"/></div></label></li><li class="k-weekday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.every)}</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday-offset" title="${r(t.every)}"></select></div></label></li><li class="k-weekday-view k-item k-listgroup-item" ${n.attr(`style-display`)}="none"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.day)}</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-weekday" title="${r(t.day)}"></select></div></label></li><li class="k-item k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.month)}</span><div class="k-listgroup-form-field-wrapper"><select class="k-recur-month" title="${r(t.month)}"></select></div></label></li></ul>`:``)),be=n.template(({endPattern:e,messages:t})=>{if(e===`count`)return`<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.after)}</span><div class="k-listgroup-form-field-wrapper"><input ref-recur-count aria-label="${r(t.occurrence)}" type="number" pattern="\\d*" /></div></label>`;if(e===`until`)return`<label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">${r(t.on)}</span><div class="k-listgroup-form-field-wrapper"><input type="date" aria-label="${r(t.on)}" ref-recur-until /></div></label>`}),xe=n.template(({dataSource:e,value:t})=>`<select class="k-scheduler-select">`+e.map(e=>`<option value="${e.value}" ${t===e.value?`selected`:``}>${r(e.text)}</option>`).join(``)+`</select>`),Se=$.extend({init:function(e,t){var i=this;$.fn.init.call(i,e,t),t=i.options,i._optionTemplate=n.template(({value:e,text:t})=>`<option value="${r(e)}">${r(t)}</option>`),i.value(t.value),i._pane=t.pane||i.wrapper.closest(`[data-role=pane]`).data(`kendoPane`),i._initRepeatButton(),i._initParentRepeatEnd(),i._defaultValue=i._value},options:{name:`MobileRecurrenceEditor`,animations:{left:`slide`,right:`slide:right`},mobile:!0,messages:{cancel:`Cancel`,update:`Save`,endTitle:`Repeat ends`,repeatTitle:`Repeat pattern`,headerTitle:`Repeat event`,end:{patterns:{never:`Never`,after:`After...`,on:`On...`},never:`Never`,after:`End repeat after`,on:`End repeat on`},daily:{interval:``},hourly:{interval:``},weekly:{interval:``},monthly:{interval:``,repeatBy:`Repeat by: `,dayOfMonth:`Day of the month`,dayOfWeek:`Day of the week`,repeatEvery:`Repeat every`,every:`Every`,day:`Day `},yearly:{interval:``,repeatBy:`Repeat by: `,dayOfMonth:`Day of the month`,dayOfWeek:`Day of the week`,repeatEvery:`Repeat every: `,every:`Every`,month:`Month`,day:`Day`}}},events:[`change`],value:function(e){var n=this,r=n.options.timezone;if(e===t)return n._value.freq?fe(n._value,r):``;n._value=Q(e,r)||{}},destroy:function(){this._destroyView(),n.destroy(this._endFields),this.element.off(j+this._namespace),$.fn.destroy.call(this)},_initInterval:function(){var e=this,t=e._value;e._container.find(`[ref-recur-interval]`).val(e._value.interval||1).on(M+e._namespace,function(n){t.interval=n.target.value,e._trigger()})},_initRepeatButton:function(){var t=this,r=t.options.messages.frequencies[this._value.freq||`never`];t._chevronButton=e(n.ui.icon(`chevron-right`)),t._repeatValue=e(`<span class="">`+r+`</span>`),t.element.append(t._repeatValue).append(t._chevronButton),t.element.parents(`li.k-item`).on(j+t._namespace,function(e){e.preventDefault(),t._createView(`repeat`),t._pane.navigate(t._view,t.options.animations.left)})},_endLiItem:function(){return`<li class="k-item k-listgroup-item"><label class="k-label k-listgroup-form-row"><span class="k-item-title k-listgroup-form-field-label">`+this.options.messages.end.mobileLabel+`</span></label></li>`},_initParentRepeatEnd:function(){var t=this,n=e(t._endLiItem()).insertAfter(t.element.parents(`li.k-item`)),r=e(`<div class="k-scheduler-recur-end-wrap k-listgroup-form-field-wrapper"><span class="k-scheduler-recur-end"></span></div>`).appendTo(n.find(`.k-label`));n.on(j+t._namespace,function(e){e.preventDefault(),t._navigateToView(`repeat`)}),t._endParentLabelField=n.toggle(!!t._value.freq),t._endParentEndButton=r.find(`.k-scheduler-recur-end`).text(t._endText())},_initRepeatEnd:function(){var t=this,r=e(t._endLiItem()).insertAfter(t._container),i=e(`<div class="k-scheduler-recur-end-wrap k-listgroup-form-field-wrapper"><span class="k-scheduler-recur-end"></span>${n.ui.icon(`chevron-right`)}</div>`).appendTo(r.find(`.k-label`));r.on(j+t._namespace,function(e){e.preventDefault(),t._navigateToView(`end`)}),t._endLabelField=r.toggleClass(`k-disabled`,!t._value.freq),t._endButton=i.find(`.k-scheduler-recur-end`).text(t._endText())},_navigateToView:function(e){var t=this;t._createView(e),t._pane.navigate(t._view,t.options.animations.left)},_endText:function(){var e=this._value,t=this.options.messages.end,r=t.never;return e.count?r=n.format(`{0} {1}`,t.after,e.count):e.until&&(r=n.format(`{0} {1:d}`,t.on,e.until)),r},_initFrequency:function(){var t=this,r=t.options.messages.frequencies,i=xe({dataSource:e.map(this.options.frequencies,function(e){return{text:r[e],value:e===`never`?``:e}}),value:t._value.freq||``,ns:n.ns});t._view.element.find(`.k-recur-pattern`).append(i),t._view.element.find(`.k-scheduler-select`).on(M+t._namespace,function(n){t._value={freq:n.target.value},t._defaultValue=e.extend({},t._value),t._initRepeatView(),t._endButton.text(t._endText()),t._endParentEndButton.text(t._endText())})},_initEndNavigation:function(){var e=this,t=e.options.messages.end.patterns,r=e._value,i=``;r.count?i=`count`:r.until&&(i=`until`);var a=xe({dataSource:[{text:t.never,value:``},{text:t.after,value:`count`},{text:t.on,value:`until`}],value:i,ns:n.ns});e._view.element.find(`.k-recur-pattern`).append(a),e._view.element.find(`.k-scheduler-select`).on(M+e._namespace,function(t){var i=t.target.value,a=null,o=null;e._initEndView(i),e._count.length?(a=e._count.val(),o=null):e._until.length&&(a=null,o=e._until.val?n.parseDate(e._until.val(),`yyyy-MM-dd`):e._until.value()),r.count=a,r.until=o})},_createView:function(t){var i=this,a=i.options.messages,o=a[t===`repeat`?`repeatTitle`:`endTitle`],s=`<div data-role="view" class="k-popup-edit-form k-scheduler-edit-form" id="recurrence"><div data-role="header" class="k-appbar k-appbar-primary">`+n.html.renderButton(`<button class="k-header-cancel k-scheduler-cancel" title="${a.cancel}" aria-label="${a.cancel}"></button>`,{fillMode:`flat`,icon:`chevron-left`})+`<span class="k-spacer"></span><span>${r(a.headerTitle)}</span><span class="k-spacer"></span>`+n.html.renderButton(`<button class="k-header-done k-scheduler-update" title="${a.update}" aria-label="${a.update}"></button>`,{fillMode:`flat`,icon:`check`})+`</div>`,c=i._pane.view().id;i._view=i._pane.append(s+ve({headerTitle:o})),i._view.element.on(j+i._namespace,`.k-scheduler-cancel, .k-scheduler-update`,function(t){t.preventDefault(),t.stopPropagation(),e(this).hasClass(`k-scheduler-update`)?(i.trigger(`change`),i._defaultValue=e.extend({},i._value)):i._value=i._defaultValue;var n=i._value.freq;i._endParentEndButton.text(i._endText()),i._endParentLabelField.toggle(!!n&&n!==`never`),i._endButton.text(i._endText()),i._repeatValue.text(a.frequencies[n||`never`]),i._pane.one(`viewShow`,function(){i._destroyView()}),i._pane.navigate(c,i.options.animations.right)}),i._container=i._view.element.find(`.k-recur-view`),t===`repeat`?(i._initFrequency(),i._initRepeatView(),i._initRepeatEnd()):(i._initEndNavigation(),i._initEndView())},_destroyView:function(){this._view&&(this._view.destroy(),this._view.element.remove(),this._container=null),this._view=null},_initRepeatView:function(){var t=this,r=t._value.freq||`never`,i=ye({frequency:r,firstWeekDay:t.options.firstWeekDay,messages:t.options.messages[r]}),a=e(i);n.applyStylesFromKendoAttributes(a,[`display`]);var o=t._container=t._container||this._pane.view().content.find(`li.k-recur-view`),s=t._value;if(t._endLabelField&&t._endLabelField.toggleClass(`k-disabled`,r===`never`),n.destroy(o),o.html(a),i)o.show();else{t._value={},o.hide();return}r===`weekly`&&!s.weekDays&&(s.weekDays=[{day:t.options.start.getDay(),offset:0}]),t._weekDayButtons(t.options.firstWeekDay),t._initInterval(),t._initMonthDay(),t._initWeekDays(),t._initWeekDay(),t._initMonth(),t._period()},_initMonthDay:function(){var e=this,t=e._value;(e._monthDay=e._container.find(`[ref-recur-monthday]`)).attr({min:1,max:31}).val(t.monthDays?t.monthDays[0]:e.options.start.getDate()).on(M+e._namespace,function(n){t.count=n.target.value,e._trigger()})},_initCount:function(){var e=this,t=e._count=e._container.find(`[ref-recur-count]`),n=e._value;t.val(n.count||1).on(M+e._namespace,function(t){n.count=t.target.value,e._trigger()}),t.parent().addClass(`k-recur-count`)},_initEndView:function(e){var r=this,i=r._value;e===t&&(i.count?e=`count`:i.until&&(e=`until`));var a={endPattern:e,messages:r.options.messages.end};n.destroy(r._container),r._container.html(be(a)),r._initCount(),r._initUntil()},_initWeekDay:function(){var t=this,r,i=t.options.messages.weekdays,a=t.options.messages.offsetPositions,o=t._container.find(`.k-recur-weekday`),s=function(){t._weekDayRule(),t.trigger(`change`)};o[0]&&(t._weekDayOffset=t._container.find(`.k-recur-weekday-offset`).html(t._options([{text:a.first,value:`1`},{text:a.second,value:`2`},{text:a.third,value:`3`},{text:a.fourth,value:`4`},{text:a.last,value:`-1`}])).on(`change`,s),r=[{text:i.day,value:`day`},{text:i.weekday,value:`weekday`},{text:i.weekend,value:`weekend`}],r=r.concat(e.map(n.culture().calendar.days.names,function(e,t){return{text:e,value:t}})),t._weekDay=o.html(t._options(r)).on(`change`,s).val(t.options.start.getDay()),t._weekDayView())},_initMonth:function(){var t=this,r=t._value,i=t.options.start,a=r.months||[i.getMonth()+1],o=t._container.find(`.k-recur-month`),s=n.culture().calendar.months.names;if(o[0]){var c=e.map(s,function(e,t){return{text:e,value:t+1}});o.html(t._options(c)).on(`change`,function(){r.months=[Number(this.value)]}),t._monthSelect=o,a&&o.val(a[0])}},_period:function(){var e=this,t=e._value,r=e._container,i=e.options.messages[t.freq],a=r.find(`.k-repeat-rule`),o=r.find(`.k-weekday-view`),s=r.find(`.k-monthday-view`);if(a[0]){var c=t.weekDays?`weekday`:`monthday`,l=xe({value:c,dataSource:[{text:i.dayOfMonth,value:`monthday`},{text:i.dayOfWeek,value:`weekday`}],ns:n.ns}),u=function(n){var r=e._weekDay.val(),i=e._weekDayOffset.val(),a=e._monthDay.val(),c=e._monthSelect?e._monthSelect.val():null;n===`monthday`?(t.weekDays=null,t.monthDays=a&&[a],t.months=c&&[Number(c)],o.hide(),s.show()):(t.monthDays=null,t.months=c&&[Number(c)],t.weekDays=[{offset:Number(i),day:Number(r)}],o.show(),s.hide())};a.append(l),a.find(`.k-scheduler-select`).on(M+e._namespace,function(e){u(e.target.value)}),u(c)}},_initUntil:function(){var e=this,t=e._container.find(`[ref-recur-until]`),r=e.options.start,i=e._value,a=i.until,o=a&&a<r?a:r,s=n.format(n.ui.Validator.prototype.options.messages.date,e.options.messages.end.on),c=n.ui.Validator.prototype.options.messages.dateCompare;t.attr(`data-validDate-msg`,s),t.attr(`data-untilDateCompare-msg`,c),n.support.input.date?(e._until=t.attr(`min`,n.toString(o,`yyyy-MM-dd`)).val(n.toString(a||r,`yyyy-MM-dd`)).on(`change`,function(){var t=n.parseDate(this.value,`yyyy-MM-dd`);t&&(i.until=t),e._trigger()}),e._until.parent().addClass(`k-recur-until`)):(e._until=t.kendoDatePicker({min:o,value:a||r,change:function(){var t=this.value();t&&(i.until=t),e._trigger()}}).data(`kendoDatePicker`),e._until.wrapper.addClass(`k-recur-until`))},_options:function(e,t){var n=0,r=``,i=e.length,a=this._optionTemplate;for(t&&(r+=a({value:``,text:t}));n<i;n++)r+=a(e[n]);return r}});o.plugin(Se)})(window.kendo.jQuery);var s=kendo;e.__meta__=o,e.default=s});
//# sourceMappingURL=kendo.scheduler.recurrence.min.js.map