!function(){"use strict";var t,e,a,n;window.fDate=(t=function(t){return document.querySelector(t)},e=function(t){return void 0!==t},a=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var a=new(Function.prototype.bind.apply(Date,[null].concat(t))),n=function(t){return t>9?t:"0"+t};return a.getFullYear()+"-"+n(a.getMonth()+1)+"-"+n(a.getDate())},(n=function(a,n){var s=this;if(s.settings=Object.assign({},{i18n:{weekdays_short:["Su","Mo","Tu","We","Th","Fr","Sa"],months_short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],clearText:"Clear",firstDayOfWeek:0},minDate:"",maxDate:"",altFormat:"",onChange:null},n),"string"==typeof a)var i=document.querySelectorAll(a);else i=a instanceof Node?[a]:a;i.length&&i.forEach((function(t){if(t.setAttribute("readonly","readonly"),""!==s.settings.altFormat){s.el=t;var a=t.cloneNode();a.classList.add("fdate-alt-input"),a.value=s.getAltDate(),a._input=t,t._altInput=a,t.setAttribute("type","hidden"),t.parentNode.insertBefore(a,t.nextSibling)}t.classList.add("fdate-input"),t._input=t,t.fdate={settings:s.settings,refresh:function(){t.click()},open:function(){t.click()},close:function(){s.setCalVisibility("hide")},clear:function(){t.value="",e(t._altInput)&&(t._altInput.value=""),s.triggerEvent("onChange")},destroy:function(){t.classList.remove("fdate-input"),delete t._altInput,delete t._input,delete t.fdate}}})),null===t(".fdate-wrap")&&(this.initCalendar(),this.bindEvents())}).prototype.initCalendar=function(){var t='\n
\n
\n
<
\n
\n
>
\n
\n
\n
'+this.settings.i18n.clearText+"
\n
\n ";document.body.insertAdjacentHTML("beforeend",t)},n.prototype.setInput=function(t){if(this.el=t,this.mode="day",this.settings=t.fdate.settings,this.setDateBounds(),null!==t.value.match(/^\d{4}-\d{2}-\d{2}$/))var e=t.value;else{var n=a();e=this.min.strthis.max.year)return!1}else if("month"==this.mode){var n=parseInt(t),s=a(this.year,n).substr(0,7),i=this.min.str.substr(0,7),r=this.max.str.substr(0,7);if(sr)return!1}else if("day"==this.mode&&(tthis.max.str))return!1;return!0},n.prototype.isNavAllowed=function(t){if("year"==this.mode){var e=parseInt(this.year.toString().substr(0,3)+"0");return"next"==t?eparseInt(this.min.str.substr(0,4))}return"month"==this.mode?"next"==t?a(this.year+1,0,0)this.min.str:"day"==this.mode?"next"==t?a(this.year,this.month+1,0)this.min.str:void 0},n.prototype.setDisplay=function(e){var a=this;if(this.mode=e,t(".fdate-grid").classList.remove("grid-day"),t(".fdate-nav-prev").classList.add("disabled"),t(".fdate-nav-next").classList.add("disabled"),a.isNavAllowed("prev")&&t(".fdate-nav-prev").classList.remove("disabled"),a.isNavAllowed("next")&&t(".fdate-nav-next").classList.remove("disabled"),"month"==e){var n="";this.settings.i18n.months_short.forEach((function(t,e){var s=a.isInBounds(e)?" inner":" disabled";n+='
'+t+"
"})),t(".fdate-grid").innerHTML=n,t(".fdate-nav-label").innerHTML=this.year}else if("year"==e){n="";for(var s=parseInt(this.year.toString().substr(0,3)+"0"),i=0;i<10;i++){var r=a.isInBounds(s+i)?" inner":" disabled";n+='
'+(s+i)+"
"}t(".fdate-grid").innerHTML=n;var o=this.year.toString().substr(0,3);s=o+"0 - "+o+"9",t(".fdate-nav-label").innerHTML=s}else t(".fdate-grid").classList.add("grid-day"),n="",this.generateDays(this.year,this.month).forEach((function(t){n+='
'+t.text+"
"})),t(".fdate-grid").innerHTML=n,t(".fdate-nav-label").innerHTML=this.settings.i18n.months[this.month]+" "+this.year},n.prototype.generateDays=function(t,e){var n=this,s=[],i=n.settings.i18n,r=i.weekdays_short,o=i.firstDayOfWeek,l=new Date(t,e).getDay()-o;l=l<0?7+l:l;var d=new Date(t,e+1,0).getDate(),c=a();if(0i,l=rs,d=window.pageYOffset+n.top+(o?-i-2:e.offsetHeight+2),c=window.pageXOffset+n.left,f=window.pageXOffset+n.right-s,u=l?f:c;a.style.position="absolute",a.style.top=d+"px",a.style.left=u+"px"},n.prototype.setCalVisibility=function(e){var a=t(".fdate-wrap");"hide"===e?a.classList.contains("opened")&&a.classList.remove("opened"):a.classList.contains("opened")||a.classList.add("opened")},n.prototype.triggerEvent=function(t){"function"==typeof this.settings[t]&&this.settings[t](this)},n.prototype.bindEvents=function(){var a=this;a.on("click",".fdate-day:not(.disabled):not(.weekday)",(function(t){a.el.value=t.target.getAttribute("data-value"),e(a.el._altInput)&&(a.el._altInput.value=a.getAltDate()),a.triggerEvent("onChange"),a.setCalVisibility("hide"),t.stopImmediatePropagation()})),a.on("click",".fdate-month:not(.disabled)",(function(t){a.month=parseInt(t.target.getAttribute("data-value")),a.setDisplay("day"),t.stopImmediatePropagation()})),a.on("click",".fdate-year:not(.disabled)",(function(t){a.year=parseInt(t.target.getAttribute("data-value")),a.setDisplay("month"),t.stopImmediatePropagation()})),a.on("click",".fdate-nav-prev:not(.disabled)",(function(){var t="year"==a.mode?-10:-1,e="day"==a.mode?"month":"year";a.adjustDate(t,e),a.setDisplay(a.mode)})),a.on("click",".fdate-nav-next:not(.disabled)",(function(){var t="year"==a.mode?10:1,e="day"==a.mode?"month":"year";a.adjustDate(t,e),a.setDisplay(a.mode)})),a.on("click",".fdate-nav-label",(function(){"day"==a.mode?a.setDisplay("month"):"month"==a.mode?a.setDisplay("year"):"year"==a.mode&&a.setDisplay("day")})),a.on("click",".fdate-clear",(function(){a.el.fdate.clear()})),a.on("click","*",(function(t){var e=t.target.classList.contains("fdate-input")||t.target.classList.contains("fdate-alt-input"),n=null!==t.target.closest(".fdate-wrap"),s=t.target.classList.contains("fdate-clear");if(e||n&&!s){if(a.setCalVisibility("show"),e){var i=t.target._altInput||t.target;a.setInput(t.target._input),a.setDisplay("day"),a.setPosition(i)}}else a.setCalVisibility("hide")})),window.addEventListener("keyup",(function(t){"Tab"===t.key&&(t.target.classList.contains("fdate-input")||t.target.classList.contains("fdate-alt-input")?t.target._input.click():a.setCalVisibility("hide"))})),window.addEventListener("keydown",(function(e){if("Enter"===e.key)e.target.closest(".fdate-grid")&&t(".fdate-nav-label").focus(),e.target.closest(".fdate-wrap")&&e.target.click();else if("Escape"===e.key)(e.target.closest(".fdate-wrap")||e.target.classList.contains("fdate-input")||e.target.classList.contains("fdate-alt-input"))&&a.el.fdate.close();else if("ArrowUp"===e.key){if(e.target.classList.contains("fdate-input")||e.target.classList.contains("fdate-alt-input"))t(".fdate-clear").focus(),e.preventDefault();else if(e.target.classList.contains("fdate-nav-label"))a.el.focus(),e.preventDefault();else if(e.target.classList.contains("fdate-clear")){var n=document.querySelectorAll(".fdate-day.inner");(n.length?n[n.length-1]:t(".fdate-nav-label")).focus(),e.preventDefault()}else if(e.target.closest(".fdate-grid")){var s="day"===a.mode?-7:-4,i=a.getSibling(e.target,s);i?i.focus():t(".fdate-nav-label").focus(),e.preventDefault()}}else if("ArrowDown"===e.key){if(e.target.classList.contains("fdate-input")||e.target.classList.contains("fdate-alt-input")){var r=t(".fdate-grid .selected"),o=t(".fdate-grid .today");r?r.focus():o?o.focus():t(".fdate-nav-label").focus(),e.preventDefault()}else if(e.target.classList.contains("fdate-nav-label"))t(".fdate-grid .inner").focus(),e.preventDefault();else if(e.target.classList.contains("fdate-clear"))a.el.focus(),e.preventDefault();else if(e.target.closest(".fdate-grid")){var l="day"===a.mode?7:4,d=a.getSibling(e.target,l);d?d.focus():t(".fdate-clear").focus(),e.preventDefault()}}else if("ArrowLeft"===e.key){if(e.target.classList.contains("fdate-nav-label")&&(t(".fdate-nav-prev").click(),e.preventDefault()),e.target.closest(".fdate-grid")){var c=e.target.previousElementSibling;if(c&&c.classList.contains("inner"))c.focus();else{var f=document.querySelectorAll(".fdate-day.inner");f[f.length-1].focus()}e.preventDefault()}}else if("ArrowRight"===e.key&&(e.target.classList.contains("fdate-nav-label")&&(t(".fdate-nav-next").click(),e.preventDefault()),e.target.closest(".fdate-grid"))){var u=e.target.nextElementSibling;u&&u.classList.contains("inner")?u.focus():t(".fdate-day.inner").focus(),e.preventDefault()}}))},n.prototype.getSibling=function(t,e){for(var a=t,n=0;n