Files
medicalalert-web-reloaded/wp/wp-content/plugins/facetwp/assets/vendor/fDate/fDate.min.js
Tony Volpe 779393381f Merged in feature/plugins-update (pull request #9)
wp plugin updates from pantheon

* wp plugin updates from pantheon
2023-12-15 18:08:21 +00:00

2 lines
11 KiB
JavaScript

!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 <div class="fdate-wrap">\n <div class="fdate-nav">\n <div class="fdate-nav-prev">&lt;</div>\n <div class="fdate-nav-label" tabindex="-1"></div>\n <div class="fdate-nav-next">&gt;</div>\n </div>\n <div class="fdate-grid"></div>\n <div class="fdate-clear" tabindex="-1">'+this.settings.i18n.clearText+"</div>\n </div>\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.str<n?n:this.min.str}if(e<this.max.str){var s=new Date(e+"T00:00");this.year=s.getFullYear(),this.month=s.getMonth()}else this.year=this.max.year,this.month=this.max.month},n.prototype.setDateBounds=function(){var t=this.settings.minDate||"1000-01-01",e=this.settings.maxDate||"3000-01-01",a=new Date(t+"T00:00"),n=new Date(e+"T00:00");this.min={year:a.getFullYear(),month:a.getMonth(),str:t},this.max={year:n.getFullYear(),month:n.getMonth(),str:e}},n.prototype.isInBounds=function(t){if("year"==this.mode){var e=parseInt(t);if(e<this.min.year||e>this.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(s<i||s>r)return!1}else if("day"==this.mode&&(t<this.min.str||t>this.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?e<parseInt(this.max.str.substr(0,4)):e>parseInt(this.min.str.substr(0,4))}return"month"==this.mode?"next"==t?a(this.year+1,0,0)<this.max.str:a(this.year,0)>this.min.str:"day"==this.mode?"next"==t?a(this.year,this.month+1,0)<this.max.str:a(this.year,this.month)>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+='<div class="fdate-month'+s+'" data-value="'+e+'" tabindex="-1">'+t+"</div>"})),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+='<div class="fdate-year'+r+'" data-value="'+(s+i)+'" tabindex="-1">'+(s+i)+"</div>"}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+='<div class="fdate-day'+t.class+'" data-value="'+t.value+'" tabindex="-1">'+t.text+"</div>"})),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(0<o){var f=JSON.parse(JSON.stringify(r)),u=f.splice(0,o);r=f.concat(u)}if(r.forEach((function(t){s.push({text:t,value:"",class:" weekday"})})),0<l)for(var p=0==e?t-1:t,h=0==e?11:e-1,v=new Date(p,h+1,0).getDate(),g=v-l+1;g<=v;g++){var y=a(p,h,g),m=n.isInBounds(y)?"":" disabled";s.push({text:g,value:y,class:m})}for(g=1;g<=d;g++)y=a(t,e,g),n.isInBounds(y)?(m=" inner",m+=y==c?" today":"",m+=y==this.el.value?" selected":""):m=" disabled",s.push({text:g,value:y,class:m});var b=11==e?t+1:t,D=11==e?0:e+1,L=42-d-l;for(g=1;g<=L;g++)y=a(b,D,g),m=n.isInBounds(y)?"":" disabled",s.push({text:g,value:y,class:m});return s},n.prototype.adjustDate=function(t,e){var a="year"==e?this.year+t:this.year,n="month"==e?this.month+t:this.month,s=new Date(a,n);this.year=s.getFullYear(),this.month=s.getMonth()},n.prototype.on=function(t,e,a){document.addEventListener(t,(function(t){for(var n=t.target;n&&n!=this;n=n.parentNode)if(n.matches(e)){a.call(n,t);break}}),!1)},n.prototype.getAltDate=function(){var t=this;if(""===t.el.value)return"";var e=t.el.value.split("-"),a=t.settings.altFormat.split(""),n="",s=!1;return a.forEach((function(a){"\\"!==a?(n+=s?a:t.parseDateToken(a,e),s=!1):s=!0})),n},n.prototype.parseDateToken=function(t,a){var n=this.settings.i18n,s={d:function(){return a[2]},j:function(){return parseInt(a[2])},m:function(){return a[1]},n:function(){return parseInt(a[1])},F:function(){return n.months[parseInt(a[1])-1]},M:function(){return n.months_short[parseInt(a[1])-1]},y:function(){return a[0].substring(2)},Y:function(){return a[0]}};return e(s[t])?s[t]():t},n.prototype.setPosition=function(e){var a=t(".fdate-wrap"),n=e.getBoundingClientRect(),s=a.getBoundingClientRect().width,i=a.getBoundingClientRect().height,r=document.body.clientWidth-n.left,o=document.body.clientHeight-n.bottom<i&&n.top>i,l=r<s&&n.left>s,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<Math.abs(e);n++)if(null===(a=0<e?a.nextElementSibling:a.previousElementSibling)||!a.classList.contains("inner"))return null;return a},n)}();