Files
ticket_dev/libs/datepicker---/datepicker.js

2 lines
21 KiB
JavaScript

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Datepicker=t()}(this,function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e};function a(e,t){var n=(t||document).querySelectorAll(e);return Array.prototype.slice.call(n)}function r(e,t){var n=e.matches||e.matchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;return n&&n.call(e,t)}function s(e,t,n){for(var i=n&&!n.contains(e);e&&!i;){if(r(e,t))return e;i=n&&!n.contains(e.parentNode),e=e.parentNode}return!1}function o(e,t){e.classList.add.apply(e.classList,t.split(" ").filter(Boolean))}function l(e,t){e.classList.remove.apply(e.classList,t.split(" ").filter(Boolean))}function h(e,t,n){void 0===n&&(n=!function(e,t){return t&&e.classList.contains(t)}(e,t)),t&&(n?o(e,t):l(e,t))}function d(e,t){return e instanceof Date&&(t=e.getMonth(),e=e.getFullYear()),[31,function(e){return e%4==0&&e%100!=0||e%400==0}(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}function u(e,t,n){for(var i=0;i<t.length;i++){var a=e,r=t[i];if("year"==n?(a=a.getFullYear(),r=r.getFullYear()):"month"==n?(a=a.getMonth(),r=r.getMonth()):(a=a.getTime(),r=r.getTime()),a==r)return!0}return!1}function c(e,t){return e.getTime()-t.getTime()}function p(e){return!!e&&e instanceof Date&&!isNaN(e.getTime())}function f(e){return _(e,function(e){return e&&e.setHours(0,0,0,0),e})}function g(e,t){var n=e=new Date(e);e>(t=new Date(t))&&(e=t,t=n,n=e);for(var i=[new Date(n)];n<t;)n.setDate(n.getDate()+1),i.push(new Date(n));return i}function m(t){if("object"==(void 0===t?"undefined":e(t))&&null!==t){var n=Object.getPrototypeOf(t);return n===Object.prototype||null===n}return!1}function v(t){for(var n=Array.prototype.slice.call(arguments,1),i=0;i<n.length;i++)for(var a in n[i])void 0!==t[a]&&"object"===e(n[i][a])&&null!==n[i][a]&&void 0===n[i][a].nodeName?(n[i][a]instanceof Date&&(t[a]=new Date(n[i][a].getTime())),Array.isArray(n[i][a])?t[a]=n[i][a].slice(0):t[a]=v(t[a],n[i][a])):t[a]=n[i][a];return t}function _(e,t,n){var i=[].concat(e).map(t,n);return 1===i.length?i[0]:i}function y(e,t){var n=new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push('"+e.replace(/[\r\t\n]/g," ").split("<%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return t?n(t):n}var w={inline:!1,multiple:!1,ranged:!1,time:!1,openOn:"first",min:!1,max:!1,within:!1,without:!1,yearRange:5,weekStart:0,defaultTime:{start:[0,0],end:[12,0]},separator:",",serialize:function(e){var t=e.toLocaleDateString();if(this.get("time")){var n=e.toLocaleTimeString();return t+"@"+(n=n.replace(/(\d{1,2}:\d{2}):00/,"$1"))}return t},deserialize:function(e){return new Date(e)},toValue:!1,fromValue:!1,onInit:!1,onChange:!1,onRender:!1,i18n:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],time:["Time","Start","End"]},classNames:{node:"datepicker",wrapper:"datepicker__wrapper",inline:"is-inline",selected:"is-selected",disabled:"is-disabled",highlighted:"is-highlighted",otherMonth:"is-otherMonth",weekend:"is-weekend",today:"is-today"},templates:{container:['<div class="datepicker__container">',"<%= renderHeader() %>","<%= renderTimepicker() %>","<%= renderCalendar() %>","</div>"].join(""),header:['<header class="datepicker__header">','<a class="datepicker__prev<%= (hasPrev) ? "" : " is-disabled" %>" data-prev>&lsaquo;</a>','<span class="datepicker__title"><%= renderMonthSelect() %></span>','<span class="datepicker__title"><%= renderYearSelect() %></span>','<a class="datepicker__next<%= (hasNext) ? "" : " is-disabled" %>" data-next>&rsaquo;</a>',"</header>"].join(""),timepicker:['<div class="datepicker__time">','<span class="datepicker__label"><%= label %></span>','<span class="datepicker__field"><%= renderHourSelect() %></span>:','<span class="datepicker__field"><%= renderMinuteSelect() %></span>','<span class="datepicker__field"><%= renderPeriodSelect() %></span>',"</div>"].join(""),calendar:['<table class="datepicker__cal">',"<thead>","<tr>","<% weekdays.forEach(function(name) { %>","<th><%= name %></th>","<% }); %>","</tr>","</thead>","<tbody>","<% days.forEach(function(day, i) { %>",'<%= (i % 7 == 0) ? "<tr>" : "" %>',"<%= renderDay(day) %>",'<%= (i % 7 == 6) ? "</tr>" : "" %>',"<% }); %>","</tbody>","</table>"].join(""),day:['<% classNames.push("datepicker__day"); %>','<td class="<%= classNames.join(" ") %>" data-day="<%= timestamp %>"><div>','<span class="datepicker__daynum"><%= daynum %></span>',"</div></td>"].join("")}};var b=function(){function e(n,i){var r=this;if(t(this,e),"string"==typeof n){if("#"!=n.substr(0,1))return a(n).map(function(e){return new r.constructor(e,i)});n=document.getElementById(n.substr(1))}n||(n=document.createElement("input")),"input"!==n.tagName.toLowerCase()||/input|hidden/i.test(n.type)||(n.type="text"),this._initDOM(n),this._initOptions(i),this._initEvents(),this.setValue(n.value||n.dataset.value||""),this._opts.onInit&&this._opts.onInit(n)}return n(e,[{key:"_initOptions",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._opts={};var n=function(e,t){var n=t.classNames.inline;return this.node&&(h(this.node,n,e),this.wrapper.style.position=e?"":"absolute",this.wrapper.style.display=e?"":"none"),this._isOpen=e,e}.bind(this),i=function(e,t){var n=t.deserialize;return!!p(e=!!e&&_(e,n,this))&&e}.bind(this),a=function(e,t){var n=t.deserialize;return e.length&&(e=f(_(e,n,this)),e=[].concat(e).filter(p)),!!e.length&&e}.bind(this),r=function(e,t){var n=t.deserialize;if("string"!=typeof e||/^(first|last|today)$/.test(e)||p(e=n.call(this,e))||(e=new Date),!this._month){var i=e;"string"!=typeof i&&p(i)||(i=new Date),(i=f(new Date(i.getTime()))).setDate(1),this._month=i}return e}.bind(this),s=function(e){return Math.min(Math.max(e,0),6)}.bind(this),o=function(e,t){return m(e)?v({},e,t.defaultTime):{start:e.slice(0),end:e.slice(0)}}.bind(this),l=function(e,t){var n=e.node,i=e.inline,a=e.wrapper,r=t.inline;if(this.node)for(var s in e)switch(s){case"node":case"inline":this.node.className=n+(r?" "+i:"");break;case"wrapper":this.wrapper.className=a}return e}.bind(this),d=function(e){return"function"==typeof e&&e.bind(this)}.bind(this),u=function(e){for(var t in e)"select"!==t&&(this._renderers[t]=y(e[t]));return e}.bind(this);this._set={openOn:r,inline:n,weekstart:s,min:i,max:i,within:a,without:a,defaultTime:o,classNames:l,templates:u};["serialize","deserialize","onInit","onChange","onRender","setValue","getValue"].forEach(function(t){return e._set[t]=d}),this._renderers={select:y(['<span style="position:relative"><%= text %>','<select data-<%= type %>="<%= value %>" data-index="<%= index %>"','style="position:absolute;top:0;left:0;width:100%;height:100%;margin:0;opacity:0.005;cursor:pointer;">',"<% options.forEach(function(o) { %>",'<option value="<%= o.value %>"','<%= o.selected ? " selected" : "" %>','<%= o.disabled ? " disabled" : "" %>',"><%= o.text %></option>","<% }); %>","</select>","</span>"].join(""))},this.set(v({},this.constructor.defaults,function(e){var t=function(e){return e.trim()},n={};if(!e||!e.dataset)return n;for(var i in e.dataset){var a=e.dataset[i];/true|false/.test(a.toLowerCase())?a="true"==a.toLowerCase():"["==a[0]&&"]"==a.substr(-1)?a=_(a.substr(1,a.length-2).split(","),t):/^\d*$/.test(a)&&(a=parseInt(a,10)),n[i]=a}return n}(this._el),t))}},{key:"_initDOM",value:function(e){this.node||(this._el=e,this.node=document.createElement("div"),this.node.style.position="relative",this.wrapper=document.createElement("div"),this.wrapper.style.zIndex=9999,e.parentNode&&e.parentNode.insertBefore(this.node,e),this.node.appendChild(e),this.node.appendChild(this.wrapper))}},{key:"_initEvents",value:function(){var e=this;this._isInitialized||(this._highlighted=[],this._onmousedown=this._onmousedown.bind(this),this._onmousemove=this._onmousemove.bind(this),this._onmouseup=this._onmouseup.bind(this),this._onclick=this._onclick.bind(this),"input"!==this._el.tagName.toLowerCase()?this._el.addEventListener("click",function(){return e.toggle()}):this._el.addEventListener("focus",function(){return e.open()}),document.addEventListener("mousedown",function(t){e.node.contains(t.target)||e.hide()}),this.node.onselectstart=function(){return!1},this.node.addEventListener("mousedown",this._onmousedown),this.node.addEventListener("mousemove",this._onmousemove),this.node.addEventListener("mouseup",this._onmouseup),this.node.addEventListener("click",this._onclick),this._isInitialized=!0)}},{key:"_onmousedown",value:function(e){var t=this,n=this._opts,i=n.ranged,r=n.multiple,d=n.classNames,u=d.selected,c=d.highlighted,p=s(e.target,"[data-day]",this.wrapper),f=p?parseInt(p.dataset.day,10):null;f&&(i&&this._dragStart?this._onmousemove(e):(this._deselect=!i&&this.hasDate(new Date(f)),this._highlighted=[f],this._dragStart=f,r||a("[data-day]."+u,this.wrapper).forEach(function(e){l(e,u)}),a('[data-day="'+f+'"]',this.wrapper).forEach(function(e){h(e,u,!t._deselect),o(e,c)})))}},{key:"_onmousemove",value:function(e){var t=this,n=this._opts,i=n.ranged,r=n.multiple,d=n.classNames,u=d.selected,c=d.highlighted;if((i||r)&&1===e.buttons){var p=s(e.target,"[data-day]",this.wrapper),f=p?parseInt(p.dataset.day,10):null;f&&this._dragStart&&(this._highlighted=g(this._dragStart,f).map(function(e){return e.getTime()}),this._isDragging=f!==this._dragStart,a("[data-day]."+c,this.wrapper).forEach(function(e){var n=new Date(parseInt(e.dataset.day,10));h(e,u,!i&&t.hasDate(n)),l(e,c)}),this._highlighted.forEach(function(e){a('[data-day="'+e+'"]',t.wrapper).forEach(function(e){h(e,u,!t._deselect),o(e,c)})}))}}},{key:"_onmouseup",value:function(e){var t=this._opts,n=t.ranged,i=t.multiple,r=t.classNames.highlighted;if(a("[data-day]."+r,this.wrapper).forEach(function(e){l(e,r)}),this._dragStart&&s(e.target,"[data-day]",this.node)){var o=this._highlighted.map(function(e){return new Date(e)});n||!i?this.setDate(o):this.toggleDate(o,!this._deselect),this.render(),i||n&&!this._isDragging||this.hide()}n&&!this._isDragging||(this._highlighted=[],this._dragStart=null),this._isDragging=!1}},{key:"_onclick",value:function(e){var t=this,n=e.target;n.hasAttribute("data-prev")?this.prev(n.dataset.prev):n.hasAttribute("data-next")?this.next(n.dataset.next):n.hasAttribute("data-year")&&!n.onchange?n.onchange=function(){var e=n.dataset.year,i=t._month.getFullYear();t._month.setFullYear(parseInt(n.value)-(e-i)),t.render()}:n.hasAttribute("data-month")&&!n.onchange?n.onchange=function(){t._month.setMonth(n.value-n.dataset.index),t.render()}:n.hasAttribute("data-hour")&&!n.onchange?n.onchange=function(){t.setTime(n.dataset.hour,n.value),n.parentNode.firstChild.textContent=n.selectedOptions[0].textContent}:n.hasAttribute("data-minute")&&!n.onchange?n.onchange=function(){t.setTime(n.dataset.minute,null,n.value),n.parentNode.firstChild.textContent=n.selectedOptions[0].textContent}:n.hasAttribute("data-period")&&!n.onchange&&(n.onchange=function(){var e=n.dataset.period,i="am"===n.value?-12:12;a('[data-hour="'+e+'"] option',t.wrapper).forEach(function(e){e.value=parseInt(e.value)+i}),t.setTime(e,(t._time?t._time[e][0]:0)+i),n.parentNode.firstChild.textContent=n.selectedOptions[0].textContent})}},{key:"set",value:function(e,t){if(e){if(m(e)){for(var n in this._noRender=!0,e.serialize&&(this.set("serialize",e.serialize),delete e.serialize),e.deserialize&&(this.set("deserialize",e.deserialize),delete e.deserialize),e)this.set(n,e[n]);this._noRender=!1,t=this._opts}else{var i=v({},this.constructor.defaults,this._opts);e in this._set&&(t=this._set[e](t,i)),m(t)&&(t=v({},i[e],t)),this._opts[e]=t}return this._isOpen&&this.wrapper&&this.render(),t}}},{key:"get",value:function(e){var t=this;if(arguments.length>1)return[].concat(Array.prototype.slice.call(arguments)).reduce(function(e,n){return e[n]=t.get(n),e},{});var n=this._opts[e];return m(n)&&(n=v({},n)),n}},{key:"open",value:function(e){var t=[].concat(this.getDate());"string"==typeof(e=e||this._opts.openOn||this._month)&&("first"===(e=e.toLowerCase())&&t.length?e=t[0]:"last"===e&&t.length?e=t[t.length-1]:"today"!==e&&(e=this._opts.deserialize(e))),p(e)||(e=new Date),this.setTime(!!this._selected.length),this.goToDate(e),this.render(),this.show()}},{key:"show",value:function(){if(!this._opts.inline){this.wrapper.style.display="block";var e=this.node.getBoundingClientRect(),t=this._el.getBoundingClientRect(),n=t.bottom-e.top+"px",i=e.bottom-t.top+"px";this.wrapper.style.top=n,this.wrapper.style.right="",this.wrapper.style.bottom="",this.wrapper.style.left=0;var a=this.wrapper.getBoundingClientRect(),r=a.right>window.innerWidth,s=a.bottom>window.innerHeight;this.wrapper.style.top=s?"":n,this.wrapper.style.right=r?0:"",this.wrapper.style.bottom=s?i:"",this.wrapper.style.left=r?"":0;var o=(a=this.wrapper.getBoundingClientRect()).right>=a.width,l=a.bottom>a.height;this.wrapper.style.top=s&&l?"":n,this.wrapper.style.right=r&&o?0:"",this.wrapper.style.bottom=s&&l?i:"",this.wrapper.style.left=r&&o?"":0,this._isOpen=!0}}},{key:"hide",value:function(){this._opts.inline||(this.wrapper.style.display="none",this._isOpen=!1)}},{key:"toggle",value:function(){this._isOpen?this.hide():this.open()}},{key:"next",value:function(e){var t=new Date(this._month.getTime());e=Math.max(e||1,1),t.setMonth(t.getMonth()+e),this.goToDate(t)}},{key:"prev",value:function(e){var t=new Date(this._month.getTime());e=Math.max(e||1,1),t.setMonth(t.getMonth()-e),this.goToDate(t)}},{key:"goToDate",value:function(e){(e=f(this._opts.deserialize(e))).setDate(1),this._month=e,this._isOpen&&this.render(),this._opts.onNavigate&&this._opts.onNavigate(e)}},{key:"hasDate",value:function(e){return e=f(p(e)?e:this._opts.deserialize(e)),!!this._selected&&this._selected.indexOf(e.getTime())>-1}},{key:"addDate",value:function(e){this.toggleDate(e,!0)}},{key:"removeDate",value:function(e){this.toggleDate(e,!1)}},{key:"toggleDate",value:function(e,t){var n=this,i=this._opts,a=i.ranged,r=i.multiple,s=i.deserialize,o=[].concat(e);o=(o=o.map(function(e){return p(e)?e:s(e)})).filter(function(e){return p(e)&&n.dateAllowed(e)}),a?o=(o=o.concat(this.getDate()).sort(c)).length?g(o[0],o.pop()):[]:r||(o=o.slice(0,1)),o.map(function(e){return f(e).getTime()}).forEach(function(e){var i=n._selected.indexOf(e),s=i>-1;s||!1===t?s&&!0!==t&&n._selected.splice(i,1):a||r?n._selected.push(e):n._selected=[e]}),this._update()}},{key:"_update",value:function(){var e=this._opts.onChange;"input"===this._el.nodeName.toLowerCase()?this._el.value=this.getValue():this._el.dataset.value=this.getValue(),e&&e(this.getDate())}},{key:"getDate",value:function(){var e=this._opts,t=e.ranged,n=e.multiple,i=e.time,a=this._time?this._time.start:[0,0];if(this._selected=(this._selected||[]).sort(),n||t){var r=this._selected.map(function(e){return new Date(e)});if(i&&r.length&&(r[0].setHours(a[0],a[1]),r.length>1)){var s=this._time?this._time.end:[0,0];r[r.length-1].setHours(s[0],s[1])}return r}if(this._selected.length){var o=new Date(this._selected[0]);return o.setHours(a[0],a[1]),o}}},{key:"setDate",value:function(e){this._selected=[],this.addDate(e)}},{key:"setTime",value:function(e,t,n){var i=this._opts,a=i.time,r=i.defaultTime;a&&(!0!==e&&this._time||(this._time=v({},r)),e&&!0!==e&&("number"==typeof e&&(n=t,t=e,e="start"),e="end"===e?e:"start",t=!!t&&parseInt(t,10),n=!!n&&parseInt(n,10),t&&!isNaN(t)&&(this._time[e][0]=t),n&&!isNaN(n)&&(this._time[e][1]=n)),this._update())}},{key:"getValue",value:function(){var e=this._opts,t=e.ranged,n=e.separator,i=e.serialize,a=e.toValue,r=[].concat(this.getDate()||[]);t&&r.length>1&&(r=[r[0],r.pop()]);var s=r.map(i).join(n);return a&&(s=a(s,r)),s}},{key:"setValue",value:function(e){var t=this._opts,n=t.ranged,i=t.time,a=t.separator,r=t.serialize,s=t.fromValue;this._selected=[];var o=s?s(e):e.split(a).filter(Boolean).map(r);if(this.addDate(o),i&&o.length){var l=o.sort(c)[0];if(this.setTime("start",l.getHours(),l.getMinutes()),"ranged"===i||n){var h=o[o.length-1];this.setTime("end",h.getHours(),h.getMinutes())}}}},{key:"dateAllowed",value:function(e,t){var n=this._opts,i=n.min,a=n.max,r=n.within,s=n.without,o=n.deserialize,l=void 0,h=l=!0;return e=f(p(e)?e:o(e)),"month"==t?(h=!i||e.getMonth()>=i.getMonth(),l=!a||e.getMonth()<=a.getMonth()):"year"==t?(h=!i||e.getFullYear()>=i.getFullYear(),l=!a||e.getFullYear()<=a.getFullYear()):(h=!i||e>=i,l=!a||e<=a),h&&l&&(!s||!u(e,s,t))&&(!r||u(e,r,t))}},{key:"render",value:function(){var e=this,t=this._opts,n=t.ranged,a=t.time,r=t.onRender;if(!this._noRender&&this._renderers){var s={},o=function(t){return s[t]||(s[t]=e.getData(t))};this.wrapper.innerHTML=this._renderers.container({renderHeader:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return e._renderHeader(o(t))},renderCalendar:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=o(t);return e._renderers.calendar(i({},n,{renderHeader:function(){return e._renderHeader(n)},renderDay:function(t){return e._renderers.day(t)}}))},renderTimepicker:function(){var t="";return a&&(t=e._renderTimepicker("start"),("ranged"===a||n)&&(t+=e._renderTimepicker("end"))),t}}),r&&r(this.wrapper.firstChild)}}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=this._opts,n=t.i18n,i=t.weekStart,a=t.serialize,r=t.min,s=t.max,o=t.classNames,l=o.selected,h=o.disabled,u=o.otherMonth,c=o.weekend,p=o.today,g=new Date(this._month.getTime());g.setMonth(g.getMonth()+e);var m=g.getMonth(),v=g.getFullYear(),_=new Date(g.getTime());_.setMonth(_.getMonth()+1),_.setDate(1);var y=new Date(g.getTime());y.setMonth(y.getMonth()-1),y.setDate(d(y));for(var w=[],b=g.getDay()-i;b<0;)b+=7;for(var k=d(v,m)+b;k%7;)k+=1;for(var D=f(new Date),x=0;x<k;x++){var M=new Date(v,m,x-b+1),T=M.getMonth(),N=M.getDay(),S=this.hasDate(M),C=!this.dateAllowed(M),E=T<m,z=T>m,O=!E&&!z,j=0===N||6===N,A=M.getTime()===D.getTime(),L=[];S&&L.push(l),C&&L.push(h),O||L.push(u),j&&L.push(c),A&&L.push(p),w.push({_date:M,date:a(M),daynum:M.getDate(),timestamp:M.getTime(),weekday:n.weekdays[N],isSelected:S,isDisabled:C,isPrevMonth:E,isNextMonth:z,isThisMonth:O,isWeekend:j,isToday:A,classNames:L})}return{_date:g,index:e,year:v,month:n.months[m],days:w,weekdays:n.weekdays,hasNext:!s||_<=s,hasPrev:!r||y>=r}}},{key:"_renderHeader",value:function(e){var t=this,n=this._opts,a=n.yearRange,r=n.i18n,s=e._date,o=e.index,l=e.year,h=s.getMonth();return this._renderers.header(i({},e,{renderMonthSelect:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,n=new Date(s.getTime()),i=[],a=0;a<12;a++)n.setMonth(a),i.push({text:r.months[a],disabled:!t.dateAllowed(n,"month"),selected:a===h,value:a});return t._renderers.select({index:e,type:"month",text:r.months[h],value:h,options:i})},renderYearSelect:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o,n=new Date(s.getTime()),i=l-a,r=l+a,h=[];i<=r;i++)n.setFullYear(i),h.push({disabled:!t.dateAllowed(n,"year"),selected:i===l,value:i,text:i});return t._renderers.select({index:e,type:"year",text:l,value:l,options:h})}}))}},{key:"_renderTimepicker",value:function(e){var t=this,n=this._opts,i=n.ranged,a=n.time,r=n.i18n;if(a){this._time||this.setTime(!0);var s=this._time[e],o=r.time[0];return("ranged"===a||i)&&(o=r.time["start"===e?1:2]),this._renderers.timepicker({label:o,renderHourSelect:function(){for(var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=[],a=s[0],r=n?24:12,o=0;o<r;o++)i.push({text:n||o?o:"12",selected:a===o,disabled:!1,value:o});!n&&a>=12?i.forEach(function(e){return e.selected=(e.value+=12)===a}):n||i.push(i.shift());var l=i.filter(function(e){return e.selected})[0].text;return t._renderers.select({index:0,type:"hour",value:e,options:i,text:l})},renderMinuteSelect:function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15,i=[],a=0;a<60;a+=n)i.push({text:a<10?"0"+a:a,selected:s[1]===a,disabled:!1,value:a});var r=i.filter(function(e){return e.selected})[0].text;return t._renderers.select({index:null,type:"minute",value:e,options:i,text:r})},renderPeriodSelect:function(){return t._renderers.select({index:null,type:"period",text:s[0]>=12?"PM":"AM",value:e,options:[{text:"AM",value:"am",selected:s[0]<12},{text:"PM",value:"pm",selected:s[0]>=12}]})}})}}}]),e}();return b.defaults=w,b});