1import{j as D}from"./scripts.MRbQwgCU.js";const P=r=>{var l=function(t){this.options=D.extend(l.defaults,t),this.element=this.options.element,this.input=this.element.getElementsByClassName("js-date-input-text")[0],this.trigger=this.element.getElementsByClassName("js-date-input-trigger")[0],this.triggerLabel=this.trigger.getAttribute("aria-label"),this.datePicker=this.element.getElementsByClassName("js-date-picker")[0],this.body=this.datePicker.getElementsByClassName("js-date-picker-dates")[0],this.navigation=this.datePicker.getElementsByClassName("js-date-picker-month-nav")[0],this.heading=this.datePicker.getElementsByClassName("js-date-picker-month-label")[0],this.pickerVisible=!1,this.dateIndexes=z(this),p(this),this.dateSelected=!1,this.selectedDay=!1,this.selectedMonth=!1,this.selectedYear=!1,this.firstFocusable=!1,this.lastFocusable=!1,this.dateValueEl=this.element.getElementsByClassName("js-date-input-value"),this.dateValueEl.length>0&&(this.dateValueLabelInit=this.dateValueEl[0].textContent),R(this),H(this),T(this)};l.prototype.showCalendar=function(){b(this)},l.prototype.showNextMonth=function(){h(this,!0)},l.prototype.showPrevMonth=function(){y(this,!0)};function R(t){E(t),t.dateValueEl.length>0&&(p(t),Y(t));var e=document.createElement("div");e.setAttribute("aria-live","polite"),D.addClass(e,"sr-only js-date-input-sr-live"),t.element.appendChild(e),t.srLiveReagion=t.element.getElementsByClassName("js-date-input-sr-live")[0]}function H(t){t.input.addEventListener("focus",function(e){N(t,!0)}),t.trigger&&t.trigger.addEventListener("click",function(e){e.preventDefault(),t.pickerVisible=!1,N(t),t.trigger.setAttribute("aria-expanded","true")}),t.body.addEventListener("click",function(e){e.preventDefault();var n=e.target.closest("button");n&&(t.dateSelected=!0,t.selectedDay=n.innerText,t.selectedMonth=t.currentMonth,t.selectedYear=t.currentYear,G(t),t.input.focus(),E(t),Y(t))}),t.navigation.addEventListener("click",function(e){e.preventDefault();var n=e.target.closest(".js-date-picker-month-nav-btn");n&&(n.classList.contains("js-date-picker-month-nav-btn-prev")?y(t,!0):h(t,!0))}),window.addEventListener("keydown",function(e){(e.keyCode&&e.keyCode==27||e.key&&e.key.toLowerCase()=="escape")&&(document.activeElement.closest(".js-date-picker")?t.input.focus():i(t))}),window.addEventListener("click",function(e){!e.target.closest(".js-date-picker")&&!e.target.closest(".js-date-input")&&t.pickerVisible&&i(t),e.target!==t.input&&e.target!==t.datePicker&&!e.target.closest(".js-date-picker")&&t.pickerVisible&&i(t)}),t.body.addEventListener("keydown",function(e){var n=t.currentDay;e.keyCode&&e.keyCode==40||e.key&&e.key.toLowerCase()=="arrowdown"?(e.preventDefault(),n=n+7,u(n,t)):e.keyCode&&e.keyCode==39||e.key&&e.key.toLowerCase()=="arrowright"?(e.preventDefault(),n=n+1,u(n,t)):e.keyCode&&e.keyCode==37||e.key&&e.key.toLowerCase()=="arrowleft"?(e.preventDefault(),n=n-1,u(n,t)):e.keyCode&&e.keyCode==38||e.key&&e.key.toLowerCase()=="arrowup"?(e.preventDefault(),n=n-7,u(n,t)):e.keyCode&&e.keyCode==35||e.key&&e.key.toLowerCase()=="end"?(e.preventDefault(),n=n+6-x(t.currentYear,t.currentMonth,n),u(n,t)):e.keyCode&&e.keyCode==36||e.key&&e.key.toLowerCase()=="home"?(e.preventDefault(),n=n-x(t.currentYear,t.currentMonth,n),u(n,t)):e.keyCode&&e.keyCode==34||e.key&&e.key.toLowerCase()=="pagedown"?(e.preventDefault(),h(t)):(e.keyCode&&e.keyCode==33||e.key&&e.key.toLowerCase()=="pageup")&&(e.preventDefault(),y(t))}),t.datePicker.addEventListener("keydown",function(e){(e.keyCode&&e.keyCode==9||e.key&&e.key=="Tab")&&Z(e,t)}),t.input.addEventListener("keydown",function(e){e.keyCode&&e.keyCode==13||e.key&&e.key.toLowerCase()=="enter"?(p(t),E(t),Y(t),i(t)):(e.keyCode&&e.keyCode==40||e.key&&e.key.toLowerCase()=="arrowdown"&&t.pickerVisible)&&t.body.querySelector('button[tabindex="0"]').focus()})}function O(t){const e=new Date;return e.setHours(0,0,0,0),t<e}function q(t,e){return t>e}function d(t){return t?W(t):new Date().getDate()}function w(t){return t?J(t):new Date().getMonth()}function M(t){return t?K(t):new Date().getFullYear()}function W(t){var e=parseInt(t.split("-")[2]);return isNaN(e)?d(!1):e}function J(t){var e=parseInt(t.split("-")[1])-1;return isNaN(e)?w(!1):e}function K(t){var e=parseInt(t.split("-")[0]);return isNaN(e)?M(!1):e}function h(t,e){t.currentYear=t.currentMonth===11?t.currentYear+1:t.currentYear,t.currentMonth=(t.currentMonth+1)%12,t.currentDay=V(t),b(t,e),t.srLiveReagion.textContent=t.options.months[t.currentMonth]+" "+t.currentYear}function y(t,e){t.currentYear=t.currentMonth===0?t.currentYear-1:t.currentYear,t.currentMonth=t.currentMonth===0?11:t.currentMonth-1,t.currentDay=V(t),b(t,e),t.srLiveReagion.textContent=t.options.months[t.currentMonth]+" "+t.currentYear}function V(t){return t.currentDay>g(t.currentYear,t.currentMonth)?1:t.currentDay}function g(t,e){return 32-new Date(t,e,32).getDate()}function p(t){var e=!1,n=t.input.value;if(t.dateSelected=!1,n!=""){var o=Q(t);t.dateSelected=!0,e=o}t.currentDay=d(e),t.currentMonth=w(e),t.currentYear=M(e),t.fullDate=e,t.selectedDay=t.dateSelected?t.currentDay:!1,t.selectedMonth=t.dateSelected?t.currentMonth:!1,t.selectedYear=t.dateSelected?t.currentYear:!1}function b(t,e){var n=x(t.currentYear,t.currentMonth,"01");t.body.innerHTML="",t.heading.innerHTML=t.options.months[t.currentMonth]+" "+t.currentYear;for(var o=1,s="",a=0;a<6;a++)for(var v=0;v<7;v++)if(a===0&&v<n)s=s+'<li class="empty"></li>';else{if(o>g(t.currentYear,t.currentMonth))break;var f="",I="-1",F=!1;if(o===t.currentDay&&(I="0"),t.options.disablePast){let m=function(c){return c>9?""+c:"0"+c};var A=new Date(new String(`${t.currentYear}-${t.currentMonth+1}-${m(o)}`));O(A)&&(F=!0)}if(t.options.matchElement&&t.options.elementToMatch&&t.options.elementToMatch.value){let m=function(C){return C>9?""+C:"0"+C};var S=t.options.elementToMatch.value.split("/"),_=new Date(new String(`${t.currentYear}-${t.currentMonth+1}-${m(o)}`)),A=new Date(new String(`${S[2]}-${S[1]}-${m(S[0])}`));q(A,_)&&(F=!0)}!t.dateSelected&&w()==t.currentMonth&&M()==t.currentYear&&o==d()&&(f=f+" date-picker-date--today"),t.dateSelected&&o===t.selectedDay&&t.currentYear===t.selectedYear&&t.currentMonth===t.selectedMonth&&(f=f+" date-picker-date--selected"),F?s=s+`<li><span class="date-picker-date-disabled ${f}" tabindex="-1">${o}</span></li>`:s=s+`<li><button class="date-picker-date ${f}" tabindex="${I}" type="button">${o}</button></li>`,o++}t.body.innerHTML=s,t.pickerVisible||D.addClass(t.datePicker,"date-picker--is-visible"),t.pickerVisible=!0,e||t.body.querySelector('button[tabindex="0"]').focus(),B(t),T(t)}function i(t){D.removeClass(t.datePicker,"date-picker--is-visible"),t.pickerVisible=!1,t.firstFocusable=!1,t.lastFocusable=!1,t.trigger&&t.trigger.setAttribute("aria-expanded","fal
1se")}function N(t,e){t.pickerVisible?i(t):(p(t),b(t,e))}function x(t,e,n){var o=new Date(t,e,n).getDay()-1;return o<0&&(o=6),o}function z(t){var e=t.options.dateFormat.toLowerCase().replace(/-/g,"");return[e.indexOf("d"),e.indexOf("m"),e.indexOf("y")]}function G(t){t.input.value=j(t),t.input.dispatchEvent(new window.Event("change",{bubbles:!0}))}function j(t){var e=[];return e[t.dateIndexes[0]]=$(t.selectedDay),e[t.dateIndexes[1]]=$(t.selectedMonth+1),e[t.dateIndexes[2]]=t.selectedYear,e[0]+t.options.dateSeparator+e[1]+t.options.dateSeparator+e[2]}function Q(t){var e=t.input.value.split(t.options.dateSeparator);return e[t.dateIndexes[2]]+"-"+e[t.dateIndexes[1]]+"-"+e[t.dateIndexes[0]]}function $(t){return t<10?"0"+t:t}function u(t,e){var n=g(e.currentYear,e.currentMonth);if(t>n)e.currentDay=t-n,h(e,!1);else if(t<1){var o=e.currentMonth==0?11:e.currentMonth-1;e.currentDay=g(e.currentYear,o)+t,y(e,!1)}else{e.currentDay=t,e.body.querySelector('button[tabindex="0"]').setAttribute("tabindex","-1");for(var s=e.body.getElementsByTagName("button"),a=0;a<s.length;a++)if(s[a].textContent==e.currentDay){s[a].setAttribute("tabindex","0"),s[a].focus();break}B(e)}}function E(t){t.trigger&&(t.selectedYear&&t.selectedMonth!==!1&&t.selectedDay?t.trigger.setAttribute("aria-label",t.triggerLabel+", selected date is "+new Date(t.selectedYear,t.selectedMonth,t.selectedDay).toDateString()):t.trigger.setAttribute("aria-label",t.triggerLabel))}function Y(t){t.dateValueEl.length<1||(t.selectedYear&&t.selectedMonth!==!1&&t.selectedDay?t.dateValueEl[0].textContent=j(t):t.dateValueEl[0].textContent=t.dateValueLabelInit)}function B(t){var e=t.datePicker.querySelectorAll('[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex]:not([tabindex="-1"]), [contenteditable], audio[controls], video[controls], summary');U(e,t),X(e,t)}function U(t,e){for(var n=0;n<t.length;n++)if((t[n].offsetWidth||t[n].offsetHeight||t[n].getClientRects().length)&&t[n].getAttribute("tabindex")!="-1")return e.firstFocusable=t[n],!0}function X(t,e){for(var n=t.length-1;n>=0;n--)if((t[n].offsetWidth||t[n].offsetHeight||t[n].getClientRects().length)&&t[n].getAttribute("tabindex")!="-1")return e.lastFocusable=t[n],!0}function Z(t,e){e.firstFocusable==document.activeElement&&t.shiftKey&&(t.preventDefault(),e.lastFocusable.focus()),e.lastFocusable==document.activeElement&&!t.shiftKey&&(t.preventDefault(),e.firstFocusable.focus())}function T(t){t.datePicker.style.left="0px",t.datePicker.style.right="auto";var e=t.datePicker.getBoundingClientRect();e.right>window.innerWidth&&(t.datePicker.style.left="auto",t.datePicker.style.right="0px")}if(l.defaults={element:"",months:["January","February","March","April","May","June","July","August","September","October","November","December"],dateFormat:"d-m-y",dateSeparator:"/",matchElement:!1,disablePast:!1},window.DatePicker=l,r.length>0)for(var L=0;L<r.length;L++)(function(t){var e={element:r[t]};r[t].getAttribute("data-date-format")&&(e.dateFormat=r[t].getAttribute("data-date-format")),r[t].getAttribute("data-date-separator")&&(e.dateSeparator=r[t].getAttribute("data-date-separator")),r[t].getAttribute("data-disable-past")&&(e.disablePast=!0),r[t].getAttribute("data-match-element")&&(e.matchElement=!0,e.elementToMatch=document.getElementById(r[t].getAttribute("data-match-element"))),r[t].getAttribute("data-months")&&(e.months=r[t].getAttribute("data-months").split(",").map(function(n){return n.trim()})),new l(e)})(L)};export{P as default}; 2//# sourceMappingURL=datepicker.CkW8rdo0.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.