@kyndryl-design-system/shidoka-applications 2.48.0 → 2.48.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"flatpickr.d.ts","sourceRoot":"","sources":["../../../src/common/helpers/flatpickr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flatpickr.d.ts","sourceRoot":"","sources":["../../../src/common/helpers/flatpickr.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAMrD,eAAO,MAAM,8BAA8B;;;;;;CAM1C,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,OAAO,CACxC,OAAO,8BAA8B,CACtC,CAAC;AAIF,wBAAgB,iBAAiB,CAC/B,iBAAiB,GAAE,oBAAyB,GAC3C,IAAI,CAKN;AAED,wBAAgB,cAAc,CAC5B,iBAAiB,GAAE,oBAAyB,GAC3C,OAAO,8BAA8B,CAEvC;AAED,UAAU,oBAAoB;IAC5B,mBAAmB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACzD,qBAAqB,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CAChD;AAED,UAAU,sBAAuB,SAAQ,oBAAoB;IAC3D,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,UAAU,qBAAsB,SAAQ,oBAAoB;IAC1D,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;CAaf,CAAC;AAEX,KAAK,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC;AAEzD,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACrC,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;IAChD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,KAAK,EACZ,sBAAsB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC/C,IAAI,CAGN;AAED,wBAAgB,gBAAgB,CAC9B,sBAAsB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC/C,IAAI,CAEN;AAED,wBAAgB,gBAAgB,CAC9B,mBAAmB,EAAE,OAAO,EAC5B,cAAc,EAAE,MAAM,IAAI,EAC1B,sBAAsB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC/C,IAAI,CAKN;AAED,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAM5E;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAQ/D;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAmF/B;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,sBAAsB,GAAG;IAAE,QAAQ,CAAC,EAAE,WAAW,CAAA;CAAE,GAC3D,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAkE/B;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,gBAAgB,CAE5E;AAED,wBAAgB,cAAc,CAC5B,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,OAAO,GACpB,MAAM,CAYR;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAEnE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAsBnE;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAkL/B;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,QAAQ,EAClB,aAAa,UAAQ,GACpB,IAAI,CA4NN;AAED,wBAAgB,aAAa,IAAI,IAAI,CAqBpC;AAED,wBAAgB,QAAQ,CACtB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,OAAO,EACjB,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,MAAM,EAC3B,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,gBAAgB,GAC1B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,CA4BjD;AAED,wBAAgB,SAAS,CACvB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,GAAG,GACV,IAAI,CAQN;AAED,wBAAsB,mBAAmB,CACvC,iBAAiB,EAAE,QAAQ,GAAG,SAAS,EACvC,OAAO,EAAE,gBAAgB,GAAG,SAAS,EACrC,cAAc,CAAC,EAAE,MAAM,IAAI,GAC1B,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,oBAAY,qBAAqB;IAC/B,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,qBAAqB,EACnC,YAAY,EAAE,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,GACvC,CACD,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,QAAQ,EACZ,OAAO,EAAE,WAAW,GAAG;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,KACrC,IAAI,CAoER;AAED,wBAAgB,gCAAgC,CAC9C,YAAY,EAAE,qBAAqB,EACnC,YAAY,EAAE,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,EACxC,gBAAgB,EAAE,IAAI,GAAG,IAAI,EAAE,GAC9B,CAAC,aAAa,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CA4FtE;AA2BD,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,YAAY,EAAE,qBAAqB,EACnC,YAAY,EAAE,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,EACxC,cAAc,CAAC,EAAE,oBAAoB,GACpC,OAAO,CAAC,WAAW,CAAC,CA8BtB"}
@@ -1,2 +1,2 @@
1
- import{a8 as e,a9 as t,aa as n}from"../../vendor/flatpickr-D1_FkiHZ.js";import{loadLocale as a}from"../flatpickrLangs.js";let i=!1;const r={lockedStartDate:"Start date is locked",lockedEndDate:"End date is locked",dateLocked:"Date is locked",dateNotAvailable:"Date is not available",dateInSelectedRange:"Date is in selected range"};let l={...r};function o(e={}){l={...r,...e}}function s(e={}){return{...l,...e}}const c={"Y-m-d":"yyyy-mm-dd","m-d-Y":"mm-dd-yyyy","d-m-Y":"dd-mm-yyyy","Y-m-d H:i":"yyyy-mm-dd —— : ——","Y-m-d h:i K":"yyyy-mm-dd —— : ——","m-d-Y H:i":"mm-dd-yyyy —— : ——","m-d-Y h:i K":"mm-dd-yyyy —— : ——","d-m-Y H:i":"dd-mm-yyyy —— : ——","d-m-Y h:i K":"dd-mm-yyyy —— : ——","Y-m-d H:i:s":"yyyy-mm-dd —— : —— ——","m-d-Y H:i:s":"mm-dd-yyyy —— : —— ——","d-m-Y H:i:s":"dd-mm-yyyy —— : —— ——"};function d(e,t){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),t(!1)}function u(e){e(!0)}function m(e,t,n){e||(t(),n(!0))}function p(e){var t;(null===(t=e.weekdays)||void 0===t?void 0:t.shorthand)&&(e.weekdays.shorthand=e.weekdays.shorthand.map((e=>e.charAt(0))))}function f(e){if(!i){const t=document.createElement("style");t.id="flatpickr-custom-styles",t.textContent=e,document.head.appendChild(t),i=!0}}async function y(n){const{inputEl:a,endinputEl:i,getFlatpickrOptions:r,setCalendarAttributes:l,setInitialDates:o}=n;if(a)try{const n=await r(),s=e=>{if(e instanceof HTMLInputElement)return e;try{let t=e.querySelector("input");if(!t){if(t=document.createElement("input"),t.type="text",t.style.display="none",!e.isConnected)throw new Error("Element is not connected to the DOM");e.appendChild(t)}return t}catch(e){throw console.error("Error creating or appending input element:",e),e}},c=s(a);if(i){const t=s(i);n.plugins=[...n.plugins||[],e({input:t})]}const d=t(c,n);return d?(setTimeout((()=>{l&&l(d)}),0),o&&o(d),a instanceof HTMLInputElement||a.addEventListener("click",(()=>{d.open()})),!i||i instanceof HTMLInputElement||i.addEventListener("click",(()=>{d.open()})),d):void console.error("Failed to initialize Flatpickr")}catch(e){return void console.error("Error initializing Flatpickr:",e)}else console.error("Cannot initialize Flatpickr: inputEl is undefined")}async function b(e){const{inputEl:n,getFlatpickrOptions:a,setCalendarAttributes:i,setInitialDates:r,appendTo:l}=e;if(n)try{const e=await a(),o=e.dateFormat||("time"===e.mode?"H:i":"Y-m-d");let s;if(e.dateFormat=o,n instanceof HTMLInputElement)s=n,e.clickOpens=!0;else try{s=document.createElement("input"),s.type="text",s.style.display="none";const t=l||n;if(!t)throw new Error("No valid element to append input to");t.appendChild(s),e.clickOpens=!1,e.positionElement=n}catch(e){throw console.error("Error creating input element:",e),e}const c=t(s,e);return c?(setTimeout((()=>{i&&i(c)}),0),r&&r(c),n instanceof HTMLInputElement||n.addEventListener("click",(()=>c.open())),c):void console.error("Failed to initialize Flatpickr")}catch(e){return console.error("Error initializing Flatpickr:",e),void(e instanceof Error&&console.error("Error details:",e.message))}else console.error("Cannot initialize Flatpickr: inputEl is undefined")}function k(e){return e in c}function g(e,t){if(!e)return t?"yyyy-mm-dd to yyyy-mm-dd":"yyyy-mm-dd";if(k(e)){return t?`${c[e]} to ${c[e]}`:c[e]}return"Select date"}function v(e){return a(e)}function A(e){let t=e;for(;t;)if(t instanceof ShadowRoot)t=t.host;else{if(!(t instanceof Element))break;{const e=t.tagName.toLowerCase();if("kyn-modal"===e||"kyn-side-drawer"===e)return t;t=t.parentNode}}return document.body}async function h(e){var a;if(!e)return console.error("Context is required for getFlatpickrOptions"),{};const{locale:i,dateFormat:r,enableTime:l,twentyFourHourFormat:o,inputEl:s,allowInput:c,minDate:d,maxDate:u,minTime:m,maxTime:f,defaultDate:y,defaultHour:b,defaultMinute:k,enable:g,disable:v,mode:A="single",closeOnSelect:h,wrap:w=!1,noCalendar:E=!1,appendTo:D,onChange:T,onClose:L,onOpen:N,loadLocale:S}=e;let x;i||console.warn("Locale not provided. Falling back to default."),r||console.warn("Date format not provided. Using default format.");try{x=await S(i),p(x)}catch(e){console.warn("Error loading locale, falling back to default:",e),x=n}const C=i.split("-")[0].toLowerCase(),I=["en","es"].includes(C),Y=window.innerWidth>=767,F=r||("time"===A?o?"H:i":"h:i K":"Y-m-d"),H={dateFormat:F,mode:"time"===A?"single":A,enableTime:"time"===A||l,noCalendar:"time"===A||E,defaultDate:y,enableSeconds:!1,allowInput:c||!1,clickOpens:!0,time_24hr:"boolean"==typeof o?o:!I,weekNumbers:!1,static:null!==(a=e.static)&&void 0!==a&&a,wrap:w,showMonths:"range"===A&&Y?2:1,monthSelectorType:"static",locale:x,closeOnSelect:null!=h?h:!("multiple"===A||l),onChange:(e,t,n)=>{T&&T(e,t,n)},onClose:(e,t,n)=>{if("range"===A&&n.calendarContainer){const t=n.calendarContainer.querySelector(".flatpickr-time");0===e.length&&(null==t||t.classList.add("default-time-select"),null==t||t.classList.remove("start-date","end-date"))}L&&L(e,t,n)},onOpen:(e,t,n)=>{N&&N(e,t,n)}};if("range"===A&&(H.onReady=(e,t,n)=>{if(n.calendarContainer){const e=n.calendarContainer.querySelector(".flatpickr-time");null==e||e.classList.add("default-time-select")}}),s instanceof HTMLInputElement||(H.positionElement=s),d&&(H.minDate=d),u&&(H.maxDate=u),m&&(H.minTime=m),f&&(H.maxTime=f),y)if(!Array.isArray(y)||"range"!==A&&"multiple"!==A){if(!Array.isArray(y)&&"string"==typeof y){let e=null;switch(F){case"Y-m-d":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(t,n-1,a,12);break}case"d-m-Y":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(a,n-1,t,12);break}case"m-d-Y":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(a,t-1,n,12);break}default:e=new Date(y)}H.defaultDate=e||y}}else H.defaultDate=y;return null!=b&&(H.defaultHour=b),null!=k&&(H.defaultMinute=k),g&&g.length>0&&(H.enable=g),v&&v.length>0&&(H.disable=v.map((e=>{if(e instanceof Date)return e;if("number"==typeof e)return new Date(e);if("string"==typeof e){return t.parseDate(e,F)||e}return e}))),D&&(H.appendTo=D),H}function w(e){return e.includes("H:")||e.includes("h:")}function E(e,t=!1){const n=e.calendarContainer;n&&requestAnimationFrame((()=>{const a=null==e?void 0:e.config.mode;n.setAttribute("role","application"),n.setAttribute("aria-label","Calendar"),n.classList.remove("container-modal","container-body","container-default"),n.classList.add(t?"container-modal":"container-default");const i=n.querySelector(".flatpickr-months");null==i||i.setAttribute("tabindex","0"),null==i||i.setAttribute("role","group"),null==i||i.setAttribute("aria-label","Month and year navigation");const r=n.querySelector(".flatpickr-prev-month");null==r||r.setAttribute("tabindex","0"),null==r||r.setAttribute("role","button"),null==r||r.setAttribute("aria-label","Previous month"),null==r||r.addEventListener("keydown",(t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),e.changeMonth(-1))}));const l=n.querySelector(".flatpickr-next-month");null==l||l.setAttribute("tabindex","0"),null==l||l.setAttribute("role","button"),null==l||l.setAttribute("aria-label","Next month"),null==l||l.addEventListener("keydown",(t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),e.changeMonth(1))}));const o=n.querySelector(".flatpickr-month"),s=null==o?void 0:o.querySelector("input.numInput.cur-year");if(s){s.tabIndex=0,s.setAttribute("role","spinbutton"),s.setAttribute("aria-label","Year"),(null==e?void 0:e.config.minDate)&&s.setAttribute("aria-valuemin",String(new Date(e.config.minDate).getFullYear())),(null==e?void 0:e.config.maxDate)&&s.setAttribute("aria-valuemax",String(new Date(e.config.maxDate).getFullYear()));const t=()=>s.setAttribute("aria-valuenow",s.value);s.addEventListener("keydown",(n=>{"ArrowUp"===n.key&&(n.preventDefault(),e.changeYear(1),setTimeout(t,0)),"ArrowDown"===n.key&&(n.preventDefault(),e.changeYear(-1),setTimeout(t,0))})),setTimeout(t,0)}const c=n.querySelector(".flatpickr-days");null==c||c.removeAttribute("tabindex"),null==c||c.setAttribute("role","grid"),null==c||c.setAttribute("aria-multiselectable","multiple"===a?"true":"false");const d=Array.from(n.querySelectorAll(".flatpickr-day:not(.flatpickr-disabled)"));d.forEach((e=>{e.tabIndex=0,e.setAttribute("role","range"===a?"gridcell":"button")}));const u=n._keyboardNav;u&&n.removeEventListener("keydown",u);const m=e=>{const t=e.target.closest(".flatpickr-day:not(.flatpickr-disabled)");if(t)switch(e.key){case"Enter":case" ":return e.preventDefault(),void t.click();case"ArrowRight":case"ArrowLeft":case"ArrowDown":case"ArrowUp":{e.preventDefault();const n=d.indexOf(t);let a;switch(e.key){case"ArrowRight":a=n+1;break;case"ArrowLeft":a=n-1;break;case"ArrowDown":a=n+7;break;case"ArrowUp":a=n-7;break;default:return}const i=d[a];return void(i&&i.focus())}}};n.addEventListener("keydown",m),n._keyboardNav=m;const p=n.querySelector("input.flatpickr-hour");p&&(p.tabIndex=0,p.setAttribute("role","spinbutton"),p.setAttribute("aria-label","Hour"),p.setAttribute("aria-valuemin",p.min),p.setAttribute("aria-valuemax",p.max),p.setAttribute("aria-valuenow",p.value),p.addEventListener("keydown",(e=>{"ArrowUp"===e.key&&(e.preventDefault(),p.stepUp()),"ArrowDown"===e.key&&(e.preventDefault(),p.stepDown()),setTimeout((()=>p.setAttribute("aria-valuenow",p.value)),0)})));const f=n.querySelector("input.flatpickr-minute");f&&(f.tabIndex=0,f.setAttribute("role","spinbutton"),f.setAttribute("aria-label","Minute"),f.setAttribute("aria-valuemin",f.min),f.setAttribute("aria-valuemax",f.max),f.setAttribute("aria-valuenow",f.value),f.addEventListener("keydown",(e=>{"ArrowUp"===e.key&&(e.preventDefault(),f.stepUp()),"ArrowDown"===e.key&&(e.preventDefault(),f.stepDown()),setTimeout((()=>f.setAttribute("aria-valuenow",f.value)),0)})));const y=n.querySelector(".flatpickr-am-pm");y&&(y.tabIndex=0,y.setAttribute("role","button"),y.setAttribute("aria-label","Toggle AM/PM"),y.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),y.click())})))}))}function D(){const e=document.querySelector(".flatpickr-current-month span.cur-month");document.querySelectorAll(".numInputWrapper").forEach((t=>{const n=t.querySelector(".numInput.cur-year");n&&n.min&&n.max&&n.min===n.max&&(t.style.display="none",e&&(e.style.marginLeft="auto"))}))}function T(e,t,n,a,i,r){if(!e)return console.warn("Input element is undefined..."),{isValid:!0,validationMessage:""};const l=!e.value.trim(),o=t;let s=e.validity,c=e.validationMessage;o&&l&&(s={...s,valueMissing:!0},c=a),n&&(s={...s,customError:!0},c=n),r.setValidity(s,c,e);return{isValid:!n&&(!i||!l||l&&!o),validationMessage:c}}function L(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0}))}async function N(e,t,n){e&&e.clear(),t&&(t.value=""),n&&await n()}var S;function x(e,t){return(n,a,i,r)=>{const l=r.dateObj;e===S.END&&null!==t[0]?l.getTime()<=t[0].getTime()&&(l.getTime()===t[0].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateNotAvailable),r.setAttribute("locked","start"),r.setAttribute("aria-disabled","true")):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().lockedStartDate))):e===S.START&&null!==t[1]?l.getTime()>=t[1].getTime()&&(l.getTime()===t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().lockedEndDate),r.setAttribute("locked","end"),r.setAttribute("aria-disabled","true")):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().dateNotAvailable))):e===S.NONE&&null!==t[0]&&null!==t[1]&&(l.getTime()===t[0].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateLocked),r.setAttribute("locked","start"),r.setAttribute("aria-disabled","true")):l.getTime()===t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateLocked),r.setAttribute("locked","end"),r.setAttribute("aria-disabled","true")):l.getTime()>t[0].getTime()&&l.getTime()<t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateInSelectedRange)):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().dateNotAvailable))),r.classList.contains("flatpickr-disabled")&&!r.classList.contains("flatpickr-locked-date")&&r.classList.add("flatpickr-locked-date")}}function C(e,t,n){return(a,i,r)=>{let l=null,o=null;if(e===S.END&&null!==t[0]&&(l=t[0]),e===S.START&&null!==t[1]&&(o=t[1]),e!==S.NONE||null===t[0]||null===t[1])if(null!==t[0]||null!==t[1]){if(e===S.END&&null!==l){let e=!1;const t=[...a];if(2===a.length&&a[0].getTime()!==l.getTime()?(t[0]=l,e=!0):1===a.length&&(t.splice(0,0,l),e=!0),e)return r.setDate(t,!1),void I(n,t,r.input.value,r)}if(e===S.START&&null!==o){let e=!1;const t=[...a];if(2===a.length&&a[1].getTime()!==o.getTime()?(t[1]=o,e=!0):1===a.length&&(t.push(o),e=!0),e)return r.setDate(t,!1),void I(n,t,r.input.value,r)}I(n,a,i,r)}else I(n,a,i,r);else r.setDate([t[0],t[1]],!1)}}function I(e,t,n,a){try{"function"==typeof e?e(t,n,a):Array.isArray(e)&&e.forEach((e=>{if("function"==typeof e)try{e(t,n,a)}catch(e){console.warn("Error in onChange hook:",e)}}))}catch(e){console.warn("Error calling original onChange handler:",e)}}function Y(e,t,n,a){a&&o(a);const i={...e};if(t===S.BOTH)return i;const r=i.onChange;i.clickOpens=!0;try{i.onDayCreate=x(t,n),i.onChange=C(t,n,r||(()=>{}))}catch(e){console.warn("Error setting up date range editing restrictions:",e)}return i}!function(e){e.BOTH="both",e.START="start",e.END="end",e.NONE="none"}(S||(S={}));export{S as DateRangeEditableMode,r as _defaultCalendarTooltipStrings,Y as applyDateRangeEditingRestrictions,N as clearFlatpickrInput,C as createDateRangeChangeLockHandler,x as createDateRangeDayLockHandler,L as emitValue,h as getFlatpickrOptions,A as getModalContainer,g as getPlaceholder,s as getTextStrings,u as handleInputClick,m as handleInputFocus,D as hideEmptyYear,y as initializeMultiAnchorFlatpickr,b as initializeSingleAnchorFlatpickr,f as injectFlatpickrStyles,k as isValidDateFormat,v as loadLocale,p as modifyWeekdayShorthands,d as preventFlatpickrOpen,E as setCalendarAttributes,o as setTooltipStrings,w as updateEnableTime,T as validate};
1
+ import{a8 as e,a9 as t,aa as n}from"../../vendor/flatpickr-D1_FkiHZ.js";import{loadLocale as a}from"../flatpickrLangs.js";let i=!1;const r={lockedStartDate:"Start date is locked",lockedEndDate:"End date is locked",dateLocked:"Date is locked",dateNotAvailable:"Date is not available",dateInSelectedRange:"Date is in selected range"};let l={...r};function o(e={}){l={...r,...e}}function s(e={}){return{...l,...e}}const c={"Y-m-d":"yyyy-mm-dd","m-d-Y":"mm-dd-yyyy","d-m-Y":"dd-mm-yyyy","Y-m-d H:i":"yyyy-mm-dd —— : ——","Y-m-d h:i K":"yyyy-mm-dd —— : ——","m-d-Y H:i":"mm-dd-yyyy —— : ——","m-d-Y h:i K":"mm-dd-yyyy —— : ——","d-m-Y H:i":"dd-mm-yyyy —— : ——","d-m-Y h:i K":"dd-mm-yyyy —— : ——","Y-m-d H:i:s":"yyyy-mm-dd —— : —— ——","m-d-Y H:i:s":"mm-dd-yyyy —— : —— ——","d-m-Y H:i:s":"dd-mm-yyyy —— : —— ——"};function d(e,t){e.preventDefault(),t(!1)}function u(e){e(!0)}function m(e,t,n){e||(t(),n(!0))}function p(e){var t;(null===(t=e.weekdays)||void 0===t?void 0:t.shorthand)&&(e.weekdays.shorthand=e.weekdays.shorthand.map((e=>e.charAt(0))))}function f(e){if(!i){const t=document.createElement("style");t.id="flatpickr-custom-styles",t.textContent=e,document.head.appendChild(t),i=!0}}async function y(n){const{inputEl:a,endinputEl:i,getFlatpickrOptions:r,setCalendarAttributes:l,setInitialDates:o}=n;if(a)try{const n=await r(),s=e=>{if(e instanceof HTMLInputElement)return e;try{let t=e.querySelector("input");if(!t){if(t=document.createElement("input"),t.type="text",t.style.display="none",!e.isConnected)throw new Error("Element is not connected to the DOM");e.appendChild(t)}return t}catch(e){throw console.error("Error creating or appending input element:",e),e}},c=s(a);if(i){const t=s(i);n.plugins=[...n.plugins||[],e({input:t})]}const d=t(c,n);return d?(setTimeout((()=>{l&&l(d)}),0),o&&o(d),a instanceof HTMLInputElement||a.addEventListener("click",(()=>{d.open()})),!i||i instanceof HTMLInputElement||i.addEventListener("click",(()=>{d.open()})),d):void console.error("Failed to initialize Flatpickr")}catch(e){return void console.error("Error initializing Flatpickr:",e)}else console.error("Cannot initialize Flatpickr: inputEl is undefined")}async function b(e){const{inputEl:n,getFlatpickrOptions:a,setCalendarAttributes:i,setInitialDates:r,appendTo:l}=e;if(n)try{const e=await a(),o=e.dateFormat||("time"===e.mode?"H:i":"Y-m-d");let s;if(e.dateFormat=o,n instanceof HTMLInputElement)s=n,e.clickOpens=!0;else try{s=document.createElement("input"),s.type="text",s.style.display="none";const t=l||n;if(!t)throw new Error("No valid element to append input to");t.appendChild(s),e.clickOpens=!1,e.positionElement=n}catch(e){throw console.error("Error creating input element:",e),e}const c=t(s,e);return c?(setTimeout((()=>{i&&i(c)}),0),r&&r(c),n instanceof HTMLInputElement||n.addEventListener("click",(()=>c.open())),c):void console.error("Failed to initialize Flatpickr")}catch(e){return console.error("Error initializing Flatpickr:",e),void(e instanceof Error&&console.error("Error details:",e.message))}else console.error("Cannot initialize Flatpickr: inputEl is undefined")}function k(e){return e in c}function g(e,t){if(!e)return t?"yyyy-mm-dd to yyyy-mm-dd":"yyyy-mm-dd";if(k(e)){return t?`${c[e]} to ${c[e]}`:c[e]}return"Select date"}function v(e){return a(e)}function A(e){let t=e;for(;t;)if(t instanceof ShadowRoot)t=t.host;else{if(!(t instanceof Element))break;{const e=t.tagName.toLowerCase();if("kyn-modal"===e||"kyn-side-drawer"===e)return t;t=t.parentNode}}return document.body}async function h(e){var a;if(!e)return console.error("Context is required for getFlatpickrOptions"),{};const{locale:i,dateFormat:r,enableTime:l,twentyFourHourFormat:o,inputEl:s,allowInput:c,minDate:d,maxDate:u,minTime:m,maxTime:f,defaultDate:y,defaultHour:b,defaultMinute:k,enable:g,disable:v,mode:A="single",closeOnSelect:h,wrap:w=!1,noCalendar:E=!1,appendTo:D,onChange:T,onClose:L,onOpen:N,loadLocale:S}=e;let x;i||console.warn("Locale not provided. Falling back to default."),r||console.warn("Date format not provided. Using default format.");try{x=await S(i),p(x)}catch(e){console.warn("Error loading locale, falling back to default:",e),x=n}const C=i.split("-")[0].toLowerCase(),Y=["en","es"].includes(C),F=window.innerWidth>=767,H=r||("time"===A?o?"H:i":"h:i K":"Y-m-d"),I={dateFormat:H,mode:"time"===A?"single":A,enableTime:"time"===A||l,noCalendar:"time"===A||E,defaultDate:y,enableSeconds:!1,allowInput:c||!1,clickOpens:!0,time_24hr:"boolean"==typeof o?o:!Y,weekNumbers:!1,static:null!==(a=e.static)&&void 0!==a&&a,wrap:w,showMonths:"range"===A&&F?2:1,monthSelectorType:"static",locale:x,closeOnSelect:null!=h?h:!("multiple"===A||l),onChange:(e,t,n)=>{T&&T(e,t,n)},onClose:(e,t,n)=>{if("range"===A&&n.calendarContainer){const t=n.calendarContainer.querySelector(".flatpickr-time");0===e.length&&(null==t||t.classList.add("default-time-select"),null==t||t.classList.remove("start-date","end-date"))}L&&L(e,t,n)},onOpen:(e,t,n)=>{N&&N(e,t,n)}};if("range"===A&&(I.onReady=(e,t,n)=>{if(n.calendarContainer){const e=n.calendarContainer.querySelector(".flatpickr-time");null==e||e.classList.add("default-time-select")}}),s instanceof HTMLInputElement||(I.positionElement=s),d&&(I.minDate=d),u&&(I.maxDate=u),m&&(I.minTime=m),f&&(I.maxTime=f),y)if(!Array.isArray(y)||"range"!==A&&"multiple"!==A){if(!Array.isArray(y)&&"string"==typeof y){let e=null;switch(H){case"Y-m-d":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(t,n-1,a,12);break}case"d-m-Y":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(a,n-1,t,12);break}case"m-d-Y":{const[t,n,a]=y.split("-").map(Number);e=isNaN(t)||isNaN(n)||isNaN(a)?null:new Date(a,t-1,n,12);break}default:e=new Date(y)}I.defaultDate=e||y}}else I.defaultDate=y;return null!=b&&(I.defaultHour=b),null!=k&&(I.defaultMinute=k),g&&g.length>0&&(I.enable=g),v&&v.length>0&&(I.disable=v.map((e=>{if(e instanceof Date)return e;if("number"==typeof e)return new Date(e);if("string"==typeof e){return t.parseDate(e,H)||e}return e}))),D&&(I.appendTo=D),I}function w(e){return e.includes("H:")||e.includes("h:")}function E(e,t=!1){const n=e.calendarContainer;n&&requestAnimationFrame((()=>{const a=null==e?void 0:e.config.mode;n.setAttribute("role","application"),n.setAttribute("aria-label","Calendar"),n.classList.remove("container-modal","container-body","container-default"),n.classList.add(t?"container-modal":"container-default");const i=n.querySelector(".flatpickr-months");null==i||i.setAttribute("tabindex","0"),null==i||i.setAttribute("role","group"),null==i||i.setAttribute("aria-label","Month and year navigation");const r=n.querySelector(".flatpickr-prev-month");null==r||r.setAttribute("tabindex","0"),null==r||r.setAttribute("role","button"),null==r||r.setAttribute("aria-label","Previous month"),null==r||r.addEventListener("keydown",(t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),e.changeMonth(-1))}));const l=n.querySelector(".flatpickr-next-month");null==l||l.setAttribute("tabindex","0"),null==l||l.setAttribute("role","button"),null==l||l.setAttribute("aria-label","Next month"),null==l||l.addEventListener("keydown",(t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),e.changeMonth(1))}));const o=n.querySelector(".flatpickr-month"),s=null==o?void 0:o.querySelector("input.numInput.cur-year");if(s){s.tabIndex=0,s.setAttribute("role","spinbutton"),s.setAttribute("aria-label","Year"),(null==e?void 0:e.config.minDate)&&s.setAttribute("aria-valuemin",String(new Date(e.config.minDate).getFullYear())),(null==e?void 0:e.config.maxDate)&&s.setAttribute("aria-valuemax",String(new Date(e.config.maxDate).getFullYear()));const t=()=>s.setAttribute("aria-valuenow",s.value);s.addEventListener("keydown",(n=>{"ArrowUp"===n.key&&(n.preventDefault(),e.changeYear(1),setTimeout(t,0)),"ArrowDown"===n.key&&(n.preventDefault(),e.changeYear(-1),setTimeout(t,0))})),setTimeout(t,0)}const c=n.querySelector(".flatpickr-days");null==c||c.removeAttribute("tabindex"),null==c||c.setAttribute("role","grid"),null==c||c.setAttribute("aria-multiselectable","multiple"===a?"true":"false");const d=Array.from(n.querySelectorAll(".flatpickr-day:not(.flatpickr-disabled)"));d.forEach((e=>{e.tabIndex=0,e.setAttribute("role","range"===a?"gridcell":"button")}));const u=n._keyboardNav;u&&n.removeEventListener("keydown",u);const m=e=>{const t=e.target.closest(".flatpickr-day:not(.flatpickr-disabled)");if(t)switch(e.key){case"Enter":case" ":return e.preventDefault(),void t.click();case"ArrowRight":case"ArrowLeft":case"ArrowDown":case"ArrowUp":{e.preventDefault();const n=d.indexOf(t);let a;switch(e.key){case"ArrowRight":a=n+1;break;case"ArrowLeft":a=n-1;break;case"ArrowDown":a=n+7;break;case"ArrowUp":a=n-7;break;default:return}const i=d[a];return void(i&&i.focus())}}};n.addEventListener("keydown",m),n._keyboardNav=m;const p=n.querySelector("input.flatpickr-hour");p&&(p.tabIndex=0,p.setAttribute("role","spinbutton"),p.setAttribute("aria-label","Hour"),p.setAttribute("aria-valuemin",p.min),p.setAttribute("aria-valuemax",p.max),p.setAttribute("aria-valuenow",p.value),p.addEventListener("keydown",(e=>{"ArrowUp"===e.key&&(e.preventDefault(),p.stepUp()),"ArrowDown"===e.key&&(e.preventDefault(),p.stepDown()),setTimeout((()=>p.setAttribute("aria-valuenow",p.value)),0)})));const f=n.querySelector("input.flatpickr-minute");f&&(f.tabIndex=0,f.setAttribute("role","spinbutton"),f.setAttribute("aria-label","Minute"),f.setAttribute("aria-valuemin",f.min),f.setAttribute("aria-valuemax",f.max),f.setAttribute("aria-valuenow",f.value),f.addEventListener("keydown",(e=>{"ArrowUp"===e.key&&(e.preventDefault(),f.stepUp()),"ArrowDown"===e.key&&(e.preventDefault(),f.stepDown()),setTimeout((()=>f.setAttribute("aria-valuenow",f.value)),0)})));const y=n.querySelector(".flatpickr-am-pm");y&&(y.tabIndex=0,y.setAttribute("role","button"),y.setAttribute("aria-label","Toggle AM/PM"),y.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),y.click())})))}))}function D(){const e=document.querySelector(".flatpickr-current-month span.cur-month");document.querySelectorAll(".numInputWrapper").forEach((t=>{const n=t.querySelector(".numInput.cur-year");n&&n.min&&n.max&&n.min===n.max&&(t.style.display="none",e&&(e.style.marginLeft="auto"))}))}function T(e,t,n,a,i,r){if(!e)return console.warn("Input element is undefined..."),{isValid:!0,validationMessage:""};const l=!e.value.trim(),o=t;let s=e.validity,c=e.validationMessage;o&&l&&(s={...s,valueMissing:!0},c=a),n&&(s={...s,customError:!0},c=n),r.setValidity(s,c,e);return{isValid:!n&&(!i||!l||l&&!o),validationMessage:c}}function L(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0}))}async function N(e,t,n){e&&e.clear(),t&&(t.value=""),n&&await n()}var S;function x(e,t){return(n,a,i,r)=>{const l=r.dateObj;e===S.END&&null!==t[0]?l.getTime()<=t[0].getTime()&&(l.getTime()===t[0].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateNotAvailable),r.setAttribute("locked","start"),r.setAttribute("aria-disabled","true")):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().lockedStartDate))):e===S.START&&null!==t[1]?l.getTime()>=t[1].getTime()&&(l.getTime()===t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().lockedEndDate),r.setAttribute("locked","end"),r.setAttribute("aria-disabled","true")):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().dateNotAvailable))):e===S.NONE&&null!==t[0]&&null!==t[1]&&(l.getTime()===t[0].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateLocked),r.setAttribute("locked","start"),r.setAttribute("aria-disabled","true")):l.getTime()===t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateLocked),r.setAttribute("locked","end"),r.setAttribute("aria-disabled","true")):l.getTime()>t[0].getTime()&&l.getTime()<t[1].getTime()?(r.classList.add("flatpickr-locked-date"),r.setAttribute("title",s().dateInSelectedRange)):(r.classList.add("flatpickr-locked-date","flatpickr-disabled"),r.setAttribute("title",s().dateNotAvailable))),r.classList.contains("flatpickr-disabled")&&!r.classList.contains("flatpickr-locked-date")&&r.classList.add("flatpickr-locked-date")}}function C(e,t,n){return(a,i,r)=>{let l=null,o=null;if(e===S.END&&null!==t[0]&&(l=t[0]),e===S.START&&null!==t[1]&&(o=t[1]),e!==S.NONE||null===t[0]||null===t[1])if(null!==t[0]||null!==t[1]){if(e===S.END&&null!==l){let e=!1;const t=[...a];if(2===a.length&&a[0].getTime()!==l.getTime()?(t[0]=l,e=!0):1===a.length&&(t.splice(0,0,l),e=!0),e)return r.setDate(t,!1),void Y(n,t,r.input.value,r)}if(e===S.START&&null!==o){let e=!1;const t=[...a];if(2===a.length&&a[1].getTime()!==o.getTime()?(t[1]=o,e=!0):1===a.length&&(t.push(o),e=!0),e)return r.setDate(t,!1),void Y(n,t,r.input.value,r)}Y(n,a,i,r)}else Y(n,a,i,r);else r.setDate([t[0],t[1]],!1)}}function Y(e,t,n,a){try{"function"==typeof e?e(t,n,a):Array.isArray(e)&&e.forEach((e=>{if("function"==typeof e)try{e(t,n,a)}catch(e){console.warn("Error in onChange hook:",e)}}))}catch(e){console.warn("Error calling original onChange handler:",e)}}function F(e,t,n,a){a&&o(a);const i={...e};if(t===S.BOTH)return i;const r=i.onChange;i.clickOpens=!0;try{i.onDayCreate=x(t,n),i.onChange=C(t,n,r||(()=>{}))}catch(e){console.warn("Error setting up date range editing restrictions:",e)}return i}!function(e){e.BOTH="both",e.START="start",e.END="end",e.NONE="none"}(S||(S={}));export{S as DateRangeEditableMode,r as _defaultCalendarTooltipStrings,F as applyDateRangeEditingRestrictions,N as clearFlatpickrInput,C as createDateRangeChangeLockHandler,x as createDateRangeDayLockHandler,L as emitValue,h as getFlatpickrOptions,A as getModalContainer,g as getPlaceholder,s as getTextStrings,u as handleInputClick,m as handleInputFocus,D as hideEmptyYear,y as initializeMultiAnchorFlatpickr,b as initializeSingleAnchorFlatpickr,f as injectFlatpickrStyles,k as isValidDateFormat,v as loadLocale,p as modifyWeekdayShorthands,d as preventFlatpickrOpen,E as setCalendarAttributes,o as setTooltipStrings,w as updateEnableTime,T as validate};
2
2
  //# sourceMappingURL=flatpickr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flatpickr.js","sources":["../../../src/common/helpers/flatpickr.ts"],"sourcesContent":["import flatpickr from 'flatpickr';\nimport rangePlugin from 'flatpickr/dist/plugins/rangePlugin';\nimport { Instance } from 'flatpickr/dist/types/instance';\nimport { BaseOptions, Hook } from 'flatpickr/dist/types/options';\nimport { Locale } from 'flatpickr/dist/types/locale';\nimport { default as English } from 'flatpickr/dist/l10n/default.js';\nimport { loadLocale as loadLocaleFromLangs } from '../flatpickrLangs';\n\nlet flatpickrStylesInjected = false;\n\nexport const _defaultCalendarTooltipStrings = {\n lockedStartDate: 'Start date is locked',\n lockedEndDate: 'End date is locked',\n dateLocked: 'Date is locked',\n dateNotAvailable: 'Date is not available',\n dateInSelectedRange: 'Date is in selected range',\n};\n\nexport type FlatpickrTextStrings = Partial<\n typeof _defaultCalendarTooltipStrings\n>;\n\nlet currentTooltipStrings = { ..._defaultCalendarTooltipStrings };\n\nexport function setTooltipStrings(\n customTextStrings: FlatpickrTextStrings = {}\n): void {\n currentTooltipStrings = {\n ..._defaultCalendarTooltipStrings,\n ...customTextStrings,\n };\n}\n\nexport function getTextStrings(\n customTextStrings: FlatpickrTextStrings = {}\n): typeof _defaultCalendarTooltipStrings {\n return { ...currentTooltipStrings, ...customTextStrings };\n}\n\ninterface BaseFlatpickrContext {\n getFlatpickrOptions: () => Promise<Partial<BaseOptions>>;\n setCalendarAttributes: (instance: Instance) => void;\n setInitialDates?: (instance: Instance) => void;\n}\n\ninterface SingleFlatpickrContext extends BaseFlatpickrContext {\n inputEl: HTMLElement;\n}\n\ninterface RangeFlatpickrContext extends BaseFlatpickrContext {\n inputEl: HTMLElement;\n endinputEl?: HTMLElement;\n}\n\nconst DATE_FORMAT_OPTIONS = {\n 'Y-m-d': 'yyyy-mm-dd',\n 'm-d-Y': 'mm-dd-yyyy',\n 'd-m-Y': 'dd-mm-yyyy',\n 'Y-m-d H:i': 'yyyy-mm-dd —— : ——',\n 'Y-m-d h:i K': 'yyyy-mm-dd —— : ——',\n 'm-d-Y H:i': 'mm-dd-yyyy —— : ——',\n 'm-d-Y h:i K': 'mm-dd-yyyy —— : ——',\n 'd-m-Y H:i': 'dd-mm-yyyy —— : ——',\n 'd-m-Y h:i K': 'dd-mm-yyyy —— : ——',\n 'Y-m-d H:i:s': 'yyyy-mm-dd —— : —— ——',\n 'm-d-Y H:i:s': 'mm-dd-yyyy —— : —— ——',\n 'd-m-Y H:i:s': 'dd-mm-yyyy —— : —— ——',\n} as const;\n\ntype DateFormatOption = keyof typeof DATE_FORMAT_OPTIONS;\n\ninterface FlatpickrOptionsContext {\n locale: string;\n dateFormat?: string;\n defaultDate?: string | Date | string[] | Date[];\n defaultHour?: number;\n defaultMinute?: number;\n enableTime: boolean;\n twentyFourHourFormat?: boolean;\n endinputEl?: HTMLElement;\n inputEl: HTMLElement;\n allowInput?: boolean;\n minDate?: string | number | Date;\n maxDate?: string | number | Date;\n minTime?: string | number | Date;\n maxTime?: string | number | Date;\n enable?: (string | number | Date)[];\n disable?: (string | number | Date)[];\n onChange?: Hook;\n onClose?: Hook;\n onOpen?: Hook;\n loadLocale: (locale: string) => Promise<Partial<Locale>>;\n mode?: 'single' | 'multiple' | 'range' | 'time';\n closeOnSelect?: boolean;\n wrap?: boolean;\n noCalendar?: boolean;\n appendTo?: HTMLElement;\n static?: boolean;\n}\n\nexport function preventFlatpickrOpen(\n event: Event,\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n setShouldFlatpickrOpen(false);\n}\n\nexport function handleInputClick(\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n setShouldFlatpickrOpen(true);\n}\n\nexport function handleInputFocus(\n shouldFlatpickrOpen: boolean,\n closeFlatpickr: () => void,\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n if (!shouldFlatpickrOpen) {\n closeFlatpickr();\n setShouldFlatpickrOpen(true);\n }\n}\n\nexport function modifyWeekdayShorthands(localeOptions: Partial<Locale>): void {\n if (localeOptions.weekdays?.shorthand) {\n localeOptions.weekdays.shorthand = localeOptions.weekdays.shorthand.map(\n (day) => day.charAt(0)\n ) as [string, string, string, string, string, string, string];\n }\n}\n\nexport function injectFlatpickrStyles(customStyle: string): void {\n if (!flatpickrStylesInjected) {\n const styleElement = document.createElement('style');\n styleElement.id = 'flatpickr-custom-styles';\n styleElement.textContent = customStyle;\n document.head.appendChild(styleElement);\n flatpickrStylesInjected = true;\n }\n}\n\nexport async function initializeMultiAnchorFlatpickr(\n context: RangeFlatpickrContext\n): Promise<Instance | undefined> {\n const {\n inputEl,\n endinputEl,\n getFlatpickrOptions,\n setCalendarAttributes,\n setInitialDates,\n } = context;\n\n if (!inputEl) {\n console.error('Cannot initialize Flatpickr: inputEl is undefined');\n return undefined;\n }\n\n try {\n const options = await getFlatpickrOptions();\n\n const getInputElement = (el: HTMLElement): HTMLInputElement => {\n if (el instanceof HTMLInputElement) {\n return el;\n } else {\n try {\n let input = el.querySelector('input') as HTMLInputElement | null;\n if (!input) {\n input = document.createElement('input');\n input.type = 'text';\n input.style.display = 'none';\n if (!el.isConnected) {\n throw new Error('Element is not connected to the DOM');\n }\n el.appendChild(input);\n }\n return input;\n } catch (error) {\n console.error('Error creating or appending input element:', error);\n throw error;\n }\n }\n };\n\n const inputElement = getInputElement(inputEl);\n if (endinputEl) {\n const endInputElement = getInputElement(endinputEl);\n options.plugins = [\n ...(options.plugins || []),\n rangePlugin({ input: endInputElement }),\n ];\n }\n\n const flatpickrInstance = flatpickr(inputElement, options) as Instance;\n\n if (flatpickrInstance) {\n setTimeout(() => {\n if (setCalendarAttributes) {\n setCalendarAttributes(flatpickrInstance);\n }\n }, 0);\n\n if (setInitialDates) {\n setInitialDates(flatpickrInstance);\n }\n\n if (!(inputEl instanceof HTMLInputElement)) {\n inputEl.addEventListener('click', () => {\n flatpickrInstance.open();\n });\n }\n\n if (endinputEl && !(endinputEl instanceof HTMLInputElement)) {\n endinputEl.addEventListener('click', () => {\n flatpickrInstance.open();\n });\n }\n\n return flatpickrInstance;\n } else {\n console.error('Failed to initialize Flatpickr');\n return undefined;\n }\n } catch (error) {\n console.error('Error initializing Flatpickr:', error);\n return undefined;\n }\n}\n\nexport async function initializeSingleAnchorFlatpickr(\n context: SingleFlatpickrContext & { appendTo?: HTMLElement }\n): Promise<Instance | undefined> {\n const {\n inputEl,\n getFlatpickrOptions,\n setCalendarAttributes,\n setInitialDates,\n appendTo,\n } = context;\n if (!inputEl) {\n console.error('Cannot initialize Flatpickr: inputEl is undefined');\n return undefined;\n }\n try {\n const options = await getFlatpickrOptions();\n const effectiveDateFormat =\n options.dateFormat || (options.mode === 'time' ? 'H:i' : 'Y-m-d');\n options.dateFormat = effectiveDateFormat;\n\n let inputElement: HTMLInputElement;\n if (inputEl instanceof HTMLInputElement) {\n inputElement = inputEl;\n options.clickOpens = true;\n } else {\n try {\n inputElement = document.createElement('input');\n inputElement.type = 'text';\n inputElement.style.display = 'none';\n\n const targetElement = appendTo || inputEl;\n if (!targetElement) {\n throw new Error('No valid element to append input to');\n }\n\n targetElement.appendChild(inputElement);\n options.clickOpens = false;\n options.positionElement = inputEl;\n } catch (error) {\n console.error('Error creating input element:', error);\n throw error;\n }\n }\n const flatpickrInstance = flatpickr(inputElement, options) as Instance;\n if (flatpickrInstance) {\n setTimeout(() => {\n if (setCalendarAttributes) {\n setCalendarAttributes(flatpickrInstance);\n }\n }, 0);\n if (setInitialDates) {\n setInitialDates(flatpickrInstance);\n }\n if (!(inputEl instanceof HTMLInputElement)) {\n inputEl.addEventListener('click', () => flatpickrInstance.open());\n }\n return flatpickrInstance;\n } else {\n console.error('Failed to initialize Flatpickr');\n return undefined;\n }\n } catch (error) {\n console.error('Error initializing Flatpickr:', error);\n if (error instanceof Error) {\n console.error('Error details:', error.message);\n }\n return undefined;\n }\n}\n\nexport function isValidDateFormat(format: string): format is DateFormatOption {\n return format in DATE_FORMAT_OPTIONS;\n}\n\nexport function getPlaceholder(\n dateFormat: string,\n isDateRange?: boolean\n): string {\n if (!dateFormat) {\n return isDateRange ? 'yyyy-mm-dd to yyyy-mm-dd' : 'yyyy-mm-dd';\n }\n\n if (isValidDateFormat(dateFormat)) {\n const placeholder = isDateRange\n ? `${DATE_FORMAT_OPTIONS[dateFormat]} to ${DATE_FORMAT_OPTIONS[dateFormat]}`\n : DATE_FORMAT_OPTIONS[dateFormat];\n return placeholder;\n }\n return 'Select date';\n}\n\nexport function loadLocale(locale: string): Promise<Partial<Locale>> {\n return loadLocaleFromLangs(locale);\n}\n\nexport function getModalContainer(element: HTMLElement): HTMLElement {\n let node: Node | null = element;\n\n while (node) {\n if (node instanceof ShadowRoot) {\n node = node.host;\n continue;\n }\n\n if (node instanceof Element) {\n const tag = node.tagName.toLowerCase();\n if (tag === 'kyn-modal' || tag === 'kyn-side-drawer') {\n return node as HTMLElement;\n }\n node = node.parentNode;\n continue;\n }\n\n break;\n }\n\n return document.body;\n}\n\nexport async function getFlatpickrOptions(\n context: FlatpickrOptionsContext\n): Promise<Partial<BaseOptions>> {\n if (!context) {\n console.error('Context is required for getFlatpickrOptions');\n return {};\n }\n\n const {\n locale,\n dateFormat,\n enableTime,\n twentyFourHourFormat,\n inputEl,\n allowInput,\n minDate,\n maxDate,\n minTime,\n maxTime,\n defaultDate,\n defaultHour,\n defaultMinute,\n enable,\n disable,\n mode = 'single',\n closeOnSelect,\n wrap = false,\n noCalendar = false,\n appendTo,\n onChange,\n onClose,\n onOpen,\n loadLocale,\n } = context;\n\n if (!locale) {\n console.warn('Locale not provided. Falling back to default.');\n }\n\n if (!dateFormat) {\n console.warn('Date format not provided. Using default format.');\n }\n\n let localeOptions;\n try {\n localeOptions = await loadLocale(locale);\n modifyWeekdayShorthands(localeOptions);\n } catch (error) {\n console.warn('Error loading locale, falling back to default:', error);\n localeOptions = English;\n }\n\n const baseLocale = locale.split('-')[0].toLowerCase();\n const isEnglishOr12HourLocale = ['en', 'es'].includes(baseLocale);\n\n const isWideScreen = window.innerWidth >= 767;\n\n const effectiveDateFormat =\n dateFormat ||\n (mode === 'time' ? (twentyFourHourFormat ? 'H:i' : 'h:i K') : 'Y-m-d');\n\n const options: Partial<BaseOptions> = {\n dateFormat: effectiveDateFormat,\n mode: mode === 'time' ? 'single' : mode,\n enableTime: mode === 'time' ? true : enableTime,\n noCalendar: mode === 'time' ? true : noCalendar,\n defaultDate: defaultDate,\n enableSeconds: false,\n allowInput: allowInput || false,\n clickOpens: true,\n time_24hr:\n typeof twentyFourHourFormat === 'boolean'\n ? twentyFourHourFormat\n : !isEnglishOr12HourLocale,\n weekNumbers: false,\n static: context.static ?? false,\n wrap,\n showMonths: mode === 'range' && isWideScreen ? 2 : 1,\n monthSelectorType: 'static',\n locale: localeOptions,\n closeOnSelect: closeOnSelect ?? !(mode === 'multiple' || enableTime),\n onChange: (selectedDates, dateStr, instance) => {\n onChange && onChange(selectedDates, dateStr, instance);\n },\n onClose: (selectedDates, dateStr, instance) => {\n if (mode === 'range' && instance.calendarContainer) {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n if (selectedDates.length === 0) {\n timeContainer?.classList.add('default-time-select');\n timeContainer?.classList.remove('start-date', 'end-date');\n }\n }\n onClose && onClose(selectedDates, dateStr, instance);\n },\n onOpen: (selectedDates, dateStr, instance) => {\n onOpen && onOpen(selectedDates, dateStr, instance);\n },\n };\n\n if (mode === 'range') {\n options.onReady = (_, __, instance) => {\n if (instance.calendarContainer) {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n timeContainer?.classList.add('default-time-select');\n }\n };\n }\n\n if (!(inputEl instanceof HTMLInputElement)) {\n options.positionElement = inputEl;\n }\n\n if (minDate) options.minDate = minDate;\n if (maxDate) options.maxDate = maxDate;\n if (minTime) options.minTime = minTime;\n if (maxTime) options.maxTime = maxTime;\n\n if (defaultDate) {\n if (\n Array.isArray(defaultDate) &&\n (mode === 'range' || mode === 'multiple')\n ) {\n options.defaultDate = defaultDate;\n } else if (!Array.isArray(defaultDate)) {\n if (typeof defaultDate === 'string') {\n let parsedDate: Date | null = null;\n switch (effectiveDateFormat) {\n case 'Y-m-d': {\n const [year, month, day] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(year) && !isNaN(month) && !isNaN(day)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n case 'd-m-Y': {\n const [day, month, year] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(day) && !isNaN(month) && !isNaN(year)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n case 'm-d-Y': {\n const [month, day, year] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(month) && !isNaN(day) && !isNaN(year)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n default:\n parsedDate = new Date(defaultDate);\n break;\n }\n options.defaultDate = parsedDate || defaultDate;\n }\n }\n }\n if (defaultHour !== undefined && defaultHour !== null)\n options.defaultHour = defaultHour;\n if (defaultMinute !== undefined && defaultMinute !== null)\n options.defaultMinute = defaultMinute;\n if (enable && enable.length > 0) options.enable = enable;\n if (disable && disable.length > 0) {\n options.disable = disable.map((date) => {\n if (date instanceof Date) return date;\n if (typeof date === 'number') return new Date(date);\n if (typeof date === 'string') {\n const parsed = flatpickr.parseDate(date, effectiveDateFormat);\n return parsed || date;\n }\n return date;\n });\n }\n if (appendTo) options.appendTo = appendTo;\n\n return options;\n}\n\nexport function updateEnableTime(dateFormat: string): boolean {\n return dateFormat.includes('H:') || dateFormat.includes('h:');\n}\n\nexport function setCalendarAttributes(\n instance: Instance,\n modalDetected = false\n): void {\n const container = instance.calendarContainer;\n if (!container) return;\n\n requestAnimationFrame(() => {\n const mode = instance?.config.mode as\n | 'single'\n | 'multiple'\n | 'range'\n | 'time';\n\n container.setAttribute('role', 'application');\n container.setAttribute('aria-label', 'Calendar');\n container.classList.remove(\n 'container-modal',\n 'container-body',\n 'container-default'\n );\n container.classList.add(\n modalDetected ? 'container-modal' : 'container-default'\n );\n\n const monthsEl = container.querySelector<HTMLElement>('.flatpickr-months');\n monthsEl?.setAttribute('tabindex', '0');\n monthsEl?.setAttribute('role', 'group');\n monthsEl?.setAttribute('aria-label', 'Month and year navigation');\n\n const prevBtn = container.querySelector<HTMLElement>(\n '.flatpickr-prev-month'\n );\n prevBtn?.setAttribute('tabindex', '0');\n prevBtn?.setAttribute('role', 'button');\n prevBtn?.setAttribute('aria-label', 'Previous month');\n prevBtn?.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n instance.changeMonth(-1);\n }\n });\n\n const nextBtn = container.querySelector<HTMLElement>(\n '.flatpickr-next-month'\n );\n nextBtn?.setAttribute('tabindex', '0');\n nextBtn?.setAttribute('role', 'button');\n nextBtn?.setAttribute('aria-label', 'Next month');\n nextBtn?.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n instance.changeMonth(1);\n }\n });\n\n const firstMonth = container.querySelector<HTMLElement>('.flatpickr-month');\n const yearInput = firstMonth?.querySelector<HTMLInputElement>(\n 'input.numInput.cur-year'\n );\n if (yearInput) {\n yearInput.tabIndex = 0;\n yearInput.setAttribute('role', 'spinbutton');\n yearInput.setAttribute('aria-label', 'Year');\n if (instance?.config.minDate) {\n yearInput.setAttribute(\n 'aria-valuemin',\n String(new Date(instance.config.minDate!).getFullYear())\n );\n }\n if (instance?.config.maxDate) {\n yearInput.setAttribute(\n 'aria-valuemax',\n String(new Date(instance.config.maxDate!).getFullYear())\n );\n }\n const updateNow = () =>\n yearInput.setAttribute('aria-valuenow', yearInput.value);\n yearInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n instance.changeYear(1);\n setTimeout(updateNow, 0);\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n instance.changeYear(-1);\n setTimeout(updateNow, 0);\n }\n });\n setTimeout(updateNow, 0);\n }\n\n const daysGrid = container.querySelector<HTMLElement>('.flatpickr-days');\n daysGrid?.removeAttribute('tabindex');\n daysGrid?.setAttribute('role', 'grid');\n daysGrid?.setAttribute(\n 'aria-multiselectable',\n mode === 'multiple' ? 'true' : 'false'\n );\n\n const enabledDays = Array.from(\n container.querySelectorAll<HTMLElement>(\n '.flatpickr-day:not(.flatpickr-disabled)'\n )\n );\n enabledDays.forEach((day) => {\n day.tabIndex = 0;\n day.setAttribute('role', mode === 'range' ? 'gridcell' : 'button');\n });\n\n const oldNav = (container as any)._keyboardNav as EventListener | undefined;\n if (oldNav) container.removeEventListener('keydown', oldNav);\n\n const keyboardNav = (e: KeyboardEvent) => {\n const targetDay = (e.target as HTMLElement).closest<HTMLElement>(\n '.flatpickr-day:not(.flatpickr-disabled)'\n );\n if (!targetDay) return;\n\n switch (e.key) {\n case 'Enter':\n case ' ':\n e.preventDefault();\n targetDay.click();\n return;\n case 'ArrowRight':\n case 'ArrowLeft':\n case 'ArrowDown':\n case 'ArrowUp': {\n e.preventDefault();\n const idx = enabledDays.indexOf(targetDay);\n let nextIdx: number;\n switch (e.key) {\n case 'ArrowRight':\n nextIdx = idx + 1;\n break;\n case 'ArrowLeft':\n nextIdx = idx - 1;\n break;\n case 'ArrowDown':\n nextIdx = idx + 7;\n break;\n case 'ArrowUp':\n nextIdx = idx - 7;\n break;\n default:\n return;\n }\n const next = enabledDays[nextIdx];\n if (next) next.focus();\n return;\n }\n }\n };\n container.addEventListener('keydown', keyboardNav);\n (container as any)._keyboardNav = keyboardNav;\n\n const hourInput = container.querySelector<HTMLInputElement>(\n 'input.flatpickr-hour'\n );\n if (hourInput) {\n hourInput.tabIndex = 0;\n hourInput.setAttribute('role', 'spinbutton');\n hourInput.setAttribute('aria-label', 'Hour');\n hourInput.setAttribute('aria-valuemin', hourInput.min);\n hourInput.setAttribute('aria-valuemax', hourInput.max);\n hourInput.setAttribute('aria-valuenow', hourInput.value);\n hourInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n hourInput.stepUp();\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n hourInput.stepDown();\n }\n setTimeout(\n () => hourInput.setAttribute('aria-valuenow', hourInput.value),\n 0\n );\n });\n }\n\n const minuteInput = container.querySelector<HTMLInputElement>(\n 'input.flatpickr-minute'\n );\n if (minuteInput) {\n minuteInput.tabIndex = 0;\n minuteInput.setAttribute('role', 'spinbutton');\n minuteInput.setAttribute('aria-label', 'Minute');\n minuteInput.setAttribute('aria-valuemin', minuteInput.min);\n minuteInput.setAttribute('aria-valuemax', minuteInput.max);\n minuteInput.setAttribute('aria-valuenow', minuteInput.value);\n minuteInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n minuteInput.stepUp();\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n minuteInput.stepDown();\n }\n setTimeout(\n () => minuteInput.setAttribute('aria-valuenow', minuteInput.value),\n 0\n );\n });\n }\n\n const ampmToggle = container.querySelector<HTMLElement>('.flatpickr-am-pm');\n if (ampmToggle) {\n ampmToggle.tabIndex = 0;\n ampmToggle.setAttribute('role', 'button');\n ampmToggle.setAttribute('aria-label', 'Toggle AM/PM');\n ampmToggle.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n ampmToggle.click();\n }\n });\n }\n });\n}\n\nexport function hideEmptyYear(): void {\n const currentMonth = document.querySelector(\n '.flatpickr-current-month span.cur-month'\n ) as HTMLElement;\n document.querySelectorAll('.numInputWrapper').forEach((wrapper) => {\n const yearInput = wrapper.querySelector(\n '.numInput.cur-year'\n ) as HTMLInputElement;\n if (\n yearInput &&\n yearInput.min &&\n yearInput.max &&\n yearInput.min === yearInput.max\n ) {\n (wrapper as HTMLElement).style.display = 'none';\n\n if (currentMonth) {\n currentMonth.style.marginLeft = 'auto';\n }\n }\n });\n}\n\nexport function validate(\n inputEl: HTMLInputElement,\n required: boolean,\n invalidText: string,\n defaultErrorMessage: string,\n hasInteracted: boolean,\n internals: ElementInternals\n): { isValid: boolean; validationMessage: string } {\n if (!inputEl) {\n console.warn('Input element is undefined...');\n return { isValid: true, validationMessage: '' };\n }\n\n const isEmpty = !inputEl.value.trim();\n const isRequired = required;\n\n let validity = inputEl.validity;\n let validationMessage = inputEl.validationMessage;\n\n if (isRequired && isEmpty) {\n validity = { ...validity, valueMissing: true };\n validationMessage = defaultErrorMessage;\n }\n\n if (invalidText) {\n validity = { ...validity, customError: true };\n validationMessage = invalidText;\n }\n\n internals.setValidity(validity, validationMessage, inputEl);\n\n const isValid =\n !invalidText && (!hasInteracted || !isEmpty || (isEmpty && !isRequired));\n\n return { isValid, validationMessage };\n}\n\nexport function emitValue(\n element: HTMLElement,\n eventName: string,\n detail: any\n): void {\n element.dispatchEvent(\n new CustomEvent(eventName, {\n detail,\n bubbles: true,\n composed: true,\n })\n );\n}\n\nexport async function clearFlatpickrInput(\n flatpickrInstance: Instance | undefined,\n inputEl: HTMLInputElement | undefined,\n updateCallback?: () => void\n): Promise<void> {\n if (flatpickrInstance) {\n flatpickrInstance.clear();\n }\n\n if (inputEl) {\n inputEl.value = '';\n }\n\n if (updateCallback) {\n await updateCallback();\n }\n}\n\nexport enum DateRangeEditableMode {\n BOTH = 'both',\n START = 'start',\n END = 'end',\n NONE = 'none',\n}\n\nexport function createDateRangeDayLockHandler(\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null]\n): (\n dObj: Date,\n dStr: string,\n fp: Instance,\n dayElem: HTMLElement & { dateObj: Date }\n) => void {\n return (_dObj, _dStr, _fp, dayElem: HTMLElement & { dateObj: Date }) => {\n const currentDate = dayElem.dateObj;\n\n if (\n editableMode === DateRangeEditableMode.END &&\n currentValue[0] !== null\n ) {\n if (currentDate.getTime() <= currentValue[0].getTime()) {\n if (currentDate.getTime() === currentValue[0].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n dayElem.setAttribute('locked', 'start');\n dayElem.setAttribute('aria-disabled', 'true');\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().lockedStartDate);\n }\n }\n } else if (\n editableMode === DateRangeEditableMode.START &&\n currentValue[1] !== null\n ) {\n if (currentDate.getTime() >= currentValue[1].getTime()) {\n if (currentDate.getTime() === currentValue[1].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().lockedEndDate);\n dayElem.setAttribute('locked', 'end');\n dayElem.setAttribute('aria-disabled', 'true');\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n }\n }\n } else if (\n editableMode === DateRangeEditableMode.NONE &&\n currentValue[0] !== null &&\n currentValue[1] !== null\n ) {\n if (currentDate.getTime() === currentValue[0].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateLocked);\n dayElem.setAttribute('locked', 'start');\n dayElem.setAttribute('aria-disabled', 'true');\n } else if (currentDate.getTime() === currentValue[1].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateLocked);\n dayElem.setAttribute('locked', 'end');\n dayElem.setAttribute('aria-disabled', 'true');\n } else if (\n currentDate.getTime() > currentValue[0].getTime() &&\n currentDate.getTime() < currentValue[1].getTime()\n ) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateInSelectedRange);\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n }\n }\n\n if (\n dayElem.classList.contains('flatpickr-disabled') &&\n !dayElem.classList.contains('flatpickr-locked-date')\n ) {\n dayElem.classList.add('flatpickr-locked-date');\n }\n };\n}\n\nexport function createDateRangeChangeLockHandler(\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null],\n originalOnChange: Hook | Hook[]\n): (selectedDates: Date[], dateStr: string, instance: Instance) => void {\n return (selectedDates, dateStr, instance) => {\n let lockedStartDate: Date | null = null;\n let lockedEndDate: Date | null = null;\n\n if (\n editableMode === DateRangeEditableMode.END &&\n currentValue[0] !== null\n ) {\n lockedStartDate = currentValue[0];\n }\n if (\n editableMode === DateRangeEditableMode.START &&\n currentValue[1] !== null\n ) {\n lockedEndDate = currentValue[1];\n }\n\n if (editableMode === DateRangeEditableMode.NONE) {\n if (currentValue[0] !== null && currentValue[1] !== null) {\n instance.setDate([currentValue[0], currentValue[1]], false);\n return;\n }\n }\n\n if (currentValue[0] === null && currentValue[1] === null) {\n callOriginalOnChange(originalOnChange, selectedDates, dateStr, instance);\n return;\n }\n\n if (\n editableMode === DateRangeEditableMode.END &&\n lockedStartDate !== null\n ) {\n let modified = false;\n const newDates = [...selectedDates];\n\n if (\n selectedDates.length === 2 &&\n selectedDates[0].getTime() !== lockedStartDate.getTime()\n ) {\n newDates[0] = lockedStartDate;\n modified = true;\n } else if (selectedDates.length === 1) {\n newDates.splice(0, 0, lockedStartDate);\n modified = true;\n }\n\n if (modified) {\n instance.setDate(newDates, false);\n callOriginalOnChange(\n originalOnChange,\n newDates,\n instance.input.value,\n instance\n );\n return;\n }\n }\n\n if (\n editableMode === DateRangeEditableMode.START &&\n lockedEndDate !== null\n ) {\n let modified = false;\n const newDates = [...selectedDates];\n\n if (\n selectedDates.length === 2 &&\n selectedDates[1].getTime() !== lockedEndDate.getTime()\n ) {\n newDates[1] = lockedEndDate;\n modified = true;\n } else if (selectedDates.length === 1) {\n newDates.push(lockedEndDate);\n modified = true;\n }\n\n if (modified) {\n instance.setDate(newDates, false);\n callOriginalOnChange(\n originalOnChange,\n newDates,\n instance.input.value,\n instance\n );\n return;\n }\n }\n\n callOriginalOnChange(originalOnChange, selectedDates, dateStr, instance);\n };\n}\n\nfunction callOriginalOnChange(\n originalOnChange: Hook | Hook[],\n selectedDates: Date[],\n dateStr: string,\n instance: Instance\n): void {\n try {\n if (typeof originalOnChange === 'function') {\n originalOnChange(selectedDates, dateStr, instance);\n } else if (Array.isArray(originalOnChange)) {\n originalOnChange.forEach((hook) => {\n if (typeof hook === 'function') {\n try {\n hook(selectedDates, dateStr, instance);\n } catch (e) {\n console.warn('Error in onChange hook:', e);\n }\n }\n });\n }\n } catch (e) {\n console.warn('Error calling original onChange handler:', e);\n }\n}\n\nexport function applyDateRangeEditingRestrictions(\n options: Partial<BaseOptions>,\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null],\n tooltipStrings?: FlatpickrTextStrings\n): Partial<BaseOptions> {\n if (tooltipStrings) {\n setTooltipStrings(tooltipStrings);\n }\n const newOptions = { ...options };\n\n if (editableMode === DateRangeEditableMode.BOTH) {\n return newOptions;\n }\n\n const originalOnChange = newOptions.onChange;\n\n newOptions.clickOpens = true;\n\n try {\n newOptions.onDayCreate = createDateRangeDayLockHandler(\n editableMode,\n currentValue\n ) as any;\n\n newOptions.onChange = createDateRangeChangeLockHandler(\n editableMode,\n currentValue,\n originalOnChange || (() => {})\n );\n } catch (e) {\n console.warn('Error setting up date range editing restrictions:', e);\n }\n\n return newOptions;\n}\n"],"names":["flatpickrStylesInjected","_defaultCalendarTooltipStrings","lockedStartDate","lockedEndDate","dateLocked","dateNotAvailable","dateInSelectedRange","currentTooltipStrings","setTooltipStrings","customTextStrings","getTextStrings","DATE_FORMAT_OPTIONS","preventFlatpickrOpen","event","setShouldFlatpickrOpen","preventDefault","stopPropagation","stopImmediatePropagation","handleInputClick","handleInputFocus","shouldFlatpickrOpen","closeFlatpickr","modifyWeekdayShorthands","localeOptions","weekdays","_a","shorthand","map","day","charAt","injectFlatpickrStyles","customStyle","styleElement","document","createElement","id","textContent","head","appendChild","async","initializeMultiAnchorFlatpickr","context","inputEl","endinputEl","getFlatpickrOptions","setCalendarAttributes","setInitialDates","options","getInputElement","el","HTMLInputElement","input","querySelector","type","style","display","isConnected","Error","error","console","inputElement","endInputElement","plugins","rangePlugin","flatpickrInstance","flatpickr","setTimeout","addEventListener","open","initializeSingleAnchorFlatpickr","appendTo","effectiveDateFormat","dateFormat","mode","clickOpens","targetElement","positionElement","message","isValidDateFormat","format","getPlaceholder","isDateRange","loadLocale","locale","loadLocaleFromLangs","getModalContainer","element","node","ShadowRoot","host","Element","tag","tagName","toLowerCase","parentNode","body","enableTime","twentyFourHourFormat","allowInput","minDate","maxDate","minTime","maxTime","defaultDate","defaultHour","defaultMinute","enable","disable","closeOnSelect","wrap","noCalendar","onChange","onClose","onOpen","warn","English","baseLocale","split","isEnglishOr12HourLocale","includes","isWideScreen","window","innerWidth","enableSeconds","time_24hr","weekNumbers","static","showMonths","monthSelectorType","selectedDates","dateStr","instance","calendarContainer","timeContainer","length","classList","add","remove","onReady","_","__","Array","isArray","parsedDate","year","month","Number","isNaN","Date","date","parseDate","updateEnableTime","modalDetected","container","requestAnimationFrame","config","setAttribute","monthsEl","prevBtn","e","key","changeMonth","nextBtn","firstMonth","yearInput","tabIndex","String","getFullYear","updateNow","value","changeYear","daysGrid","removeAttribute","enabledDays","from","querySelectorAll","forEach","oldNav","_keyboardNav","removeEventListener","keyboardNav","targetDay","target","closest","click","idx","indexOf","nextIdx","next","focus","hourInput","min","max","stepUp","stepDown","minuteInput","ampmToggle","hideEmptyYear","currentMonth","wrapper","marginLeft","validate","required","invalidText","defaultErrorMessage","hasInteracted","internals","isValid","validationMessage","isEmpty","trim","isRequired","validity","valueMissing","customError","setValidity","emitValue","eventName","detail","dispatchEvent","CustomEvent","bubbles","composed","clearFlatpickrInput","updateCallback","clear","DateRangeEditableMode","createDateRangeDayLockHandler","editableMode","currentValue","_dObj","_dStr","_fp","dayElem","currentDate","dateObj","END","getTime","START","NONE","contains","createDateRangeChangeLockHandler","originalOnChange","modified","newDates","splice","setDate","callOriginalOnChange","push","hook","applyDateRangeEditingRestrictions","tooltipStrings","newOptions","BOTH","onDayCreate"],"mappings":"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"}
1
+ {"version":3,"file":"flatpickr.js","sources":["../../../src/common/helpers/flatpickr.ts"],"sourcesContent":["import flatpickr from 'flatpickr';\nimport rangePlugin from 'flatpickr/dist/plugins/rangePlugin';\nimport { Instance } from 'flatpickr/dist/types/instance';\nimport { BaseOptions, Hook } from 'flatpickr/dist/types/options';\nimport { Locale } from 'flatpickr/dist/types/locale';\nimport { default as English } from 'flatpickr/dist/l10n/default.js';\nimport { loadLocale as loadLocaleFromLangs } from '../flatpickrLangs';\n\nlet flatpickrStylesInjected = false;\n\nexport const _defaultCalendarTooltipStrings = {\n lockedStartDate: 'Start date is locked',\n lockedEndDate: 'End date is locked',\n dateLocked: 'Date is locked',\n dateNotAvailable: 'Date is not available',\n dateInSelectedRange: 'Date is in selected range',\n};\n\nexport type FlatpickrTextStrings = Partial<\n typeof _defaultCalendarTooltipStrings\n>;\n\nlet currentTooltipStrings = { ..._defaultCalendarTooltipStrings };\n\nexport function setTooltipStrings(\n customTextStrings: FlatpickrTextStrings = {}\n): void {\n currentTooltipStrings = {\n ..._defaultCalendarTooltipStrings,\n ...customTextStrings,\n };\n}\n\nexport function getTextStrings(\n customTextStrings: FlatpickrTextStrings = {}\n): typeof _defaultCalendarTooltipStrings {\n return { ...currentTooltipStrings, ...customTextStrings };\n}\n\ninterface BaseFlatpickrContext {\n getFlatpickrOptions: () => Promise<Partial<BaseOptions>>;\n setCalendarAttributes: (instance: Instance) => void;\n setInitialDates?: (instance: Instance) => void;\n}\n\ninterface SingleFlatpickrContext extends BaseFlatpickrContext {\n inputEl: HTMLElement;\n}\n\ninterface RangeFlatpickrContext extends BaseFlatpickrContext {\n inputEl: HTMLElement;\n endinputEl?: HTMLElement;\n}\n\nconst DATE_FORMAT_OPTIONS = {\n 'Y-m-d': 'yyyy-mm-dd',\n 'm-d-Y': 'mm-dd-yyyy',\n 'd-m-Y': 'dd-mm-yyyy',\n 'Y-m-d H:i': 'yyyy-mm-dd —— : ——',\n 'Y-m-d h:i K': 'yyyy-mm-dd —— : ——',\n 'm-d-Y H:i': 'mm-dd-yyyy —— : ——',\n 'm-d-Y h:i K': 'mm-dd-yyyy —— : ——',\n 'd-m-Y H:i': 'dd-mm-yyyy —— : ——',\n 'd-m-Y h:i K': 'dd-mm-yyyy —— : ——',\n 'Y-m-d H:i:s': 'yyyy-mm-dd —— : —— ——',\n 'm-d-Y H:i:s': 'mm-dd-yyyy —— : —— ——',\n 'd-m-Y H:i:s': 'dd-mm-yyyy —— : —— ——',\n} as const;\n\ntype DateFormatOption = keyof typeof DATE_FORMAT_OPTIONS;\n\ninterface FlatpickrOptionsContext {\n locale: string;\n dateFormat?: string;\n defaultDate?: string | Date | string[] | Date[];\n defaultHour?: number;\n defaultMinute?: number;\n enableTime: boolean;\n twentyFourHourFormat?: boolean;\n endinputEl?: HTMLElement;\n inputEl: HTMLElement;\n allowInput?: boolean;\n minDate?: string | number | Date;\n maxDate?: string | number | Date;\n minTime?: string | number | Date;\n maxTime?: string | number | Date;\n enable?: (string | number | Date)[];\n disable?: (string | number | Date)[];\n onChange?: Hook;\n onClose?: Hook;\n onOpen?: Hook;\n loadLocale: (locale: string) => Promise<Partial<Locale>>;\n mode?: 'single' | 'multiple' | 'range' | 'time';\n closeOnSelect?: boolean;\n wrap?: boolean;\n noCalendar?: boolean;\n appendTo?: HTMLElement;\n static?: boolean;\n}\n\nexport function preventFlatpickrOpen(\n event: Event,\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n event.preventDefault();\n setShouldFlatpickrOpen(false);\n}\n\nexport function handleInputClick(\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n setShouldFlatpickrOpen(true);\n}\n\nexport function handleInputFocus(\n shouldFlatpickrOpen: boolean,\n closeFlatpickr: () => void,\n setShouldFlatpickrOpen: (value: boolean) => void\n): void {\n if (!shouldFlatpickrOpen) {\n closeFlatpickr();\n setShouldFlatpickrOpen(true);\n }\n}\n\nexport function modifyWeekdayShorthands(localeOptions: Partial<Locale>): void {\n if (localeOptions.weekdays?.shorthand) {\n localeOptions.weekdays.shorthand = localeOptions.weekdays.shorthand.map(\n (day) => day.charAt(0)\n ) as [string, string, string, string, string, string, string];\n }\n}\n\nexport function injectFlatpickrStyles(customStyle: string): void {\n if (!flatpickrStylesInjected) {\n const styleElement = document.createElement('style');\n styleElement.id = 'flatpickr-custom-styles';\n styleElement.textContent = customStyle;\n document.head.appendChild(styleElement);\n flatpickrStylesInjected = true;\n }\n}\n\nexport async function initializeMultiAnchorFlatpickr(\n context: RangeFlatpickrContext\n): Promise<Instance | undefined> {\n const {\n inputEl,\n endinputEl,\n getFlatpickrOptions,\n setCalendarAttributes,\n setInitialDates,\n } = context;\n\n if (!inputEl) {\n console.error('Cannot initialize Flatpickr: inputEl is undefined');\n return undefined;\n }\n\n try {\n const options = await getFlatpickrOptions();\n\n const getInputElement = (el: HTMLElement): HTMLInputElement => {\n if (el instanceof HTMLInputElement) {\n return el;\n } else {\n try {\n let input = el.querySelector('input') as HTMLInputElement | null;\n if (!input) {\n input = document.createElement('input');\n input.type = 'text';\n input.style.display = 'none';\n if (!el.isConnected) {\n throw new Error('Element is not connected to the DOM');\n }\n el.appendChild(input);\n }\n return input;\n } catch (error) {\n console.error('Error creating or appending input element:', error);\n throw error;\n }\n }\n };\n\n const inputElement = getInputElement(inputEl);\n if (endinputEl) {\n const endInputElement = getInputElement(endinputEl);\n options.plugins = [\n ...(options.plugins || []),\n rangePlugin({ input: endInputElement }),\n ];\n }\n\n const flatpickrInstance = flatpickr(inputElement, options) as Instance;\n\n if (flatpickrInstance) {\n setTimeout(() => {\n if (setCalendarAttributes) {\n setCalendarAttributes(flatpickrInstance);\n }\n }, 0);\n\n if (setInitialDates) {\n setInitialDates(flatpickrInstance);\n }\n\n if (!(inputEl instanceof HTMLInputElement)) {\n inputEl.addEventListener('click', () => {\n flatpickrInstance.open();\n });\n }\n\n if (endinputEl && !(endinputEl instanceof HTMLInputElement)) {\n endinputEl.addEventListener('click', () => {\n flatpickrInstance.open();\n });\n }\n\n return flatpickrInstance;\n } else {\n console.error('Failed to initialize Flatpickr');\n return undefined;\n }\n } catch (error) {\n console.error('Error initializing Flatpickr:', error);\n return undefined;\n }\n}\n\nexport async function initializeSingleAnchorFlatpickr(\n context: SingleFlatpickrContext & { appendTo?: HTMLElement }\n): Promise<Instance | undefined> {\n const {\n inputEl,\n getFlatpickrOptions,\n setCalendarAttributes,\n setInitialDates,\n appendTo,\n } = context;\n if (!inputEl) {\n console.error('Cannot initialize Flatpickr: inputEl is undefined');\n return undefined;\n }\n try {\n const options = await getFlatpickrOptions();\n const effectiveDateFormat =\n options.dateFormat || (options.mode === 'time' ? 'H:i' : 'Y-m-d');\n options.dateFormat = effectiveDateFormat;\n\n let inputElement: HTMLInputElement;\n if (inputEl instanceof HTMLInputElement) {\n inputElement = inputEl;\n options.clickOpens = true;\n } else {\n try {\n inputElement = document.createElement('input');\n inputElement.type = 'text';\n inputElement.style.display = 'none';\n\n const targetElement = appendTo || inputEl;\n if (!targetElement) {\n throw new Error('No valid element to append input to');\n }\n\n targetElement.appendChild(inputElement);\n options.clickOpens = false;\n options.positionElement = inputEl;\n } catch (error) {\n console.error('Error creating input element:', error);\n throw error;\n }\n }\n const flatpickrInstance = flatpickr(inputElement, options) as Instance;\n if (flatpickrInstance) {\n setTimeout(() => {\n if (setCalendarAttributes) {\n setCalendarAttributes(flatpickrInstance);\n }\n }, 0);\n if (setInitialDates) {\n setInitialDates(flatpickrInstance);\n }\n if (!(inputEl instanceof HTMLInputElement)) {\n inputEl.addEventListener('click', () => flatpickrInstance.open());\n }\n return flatpickrInstance;\n } else {\n console.error('Failed to initialize Flatpickr');\n return undefined;\n }\n } catch (error) {\n console.error('Error initializing Flatpickr:', error);\n if (error instanceof Error) {\n console.error('Error details:', error.message);\n }\n return undefined;\n }\n}\n\nexport function isValidDateFormat(format: string): format is DateFormatOption {\n return format in DATE_FORMAT_OPTIONS;\n}\n\nexport function getPlaceholder(\n dateFormat: string,\n isDateRange?: boolean\n): string {\n if (!dateFormat) {\n return isDateRange ? 'yyyy-mm-dd to yyyy-mm-dd' : 'yyyy-mm-dd';\n }\n\n if (isValidDateFormat(dateFormat)) {\n const placeholder = isDateRange\n ? `${DATE_FORMAT_OPTIONS[dateFormat]} to ${DATE_FORMAT_OPTIONS[dateFormat]}`\n : DATE_FORMAT_OPTIONS[dateFormat];\n return placeholder;\n }\n return 'Select date';\n}\n\nexport function loadLocale(locale: string): Promise<Partial<Locale>> {\n return loadLocaleFromLangs(locale);\n}\n\nexport function getModalContainer(element: HTMLElement): HTMLElement {\n let node: Node | null = element;\n\n while (node) {\n if (node instanceof ShadowRoot) {\n node = node.host;\n continue;\n }\n\n if (node instanceof Element) {\n const tag = node.tagName.toLowerCase();\n if (tag === 'kyn-modal' || tag === 'kyn-side-drawer') {\n return node as HTMLElement;\n }\n node = node.parentNode;\n continue;\n }\n\n break;\n }\n\n return document.body;\n}\n\nexport async function getFlatpickrOptions(\n context: FlatpickrOptionsContext\n): Promise<Partial<BaseOptions>> {\n if (!context) {\n console.error('Context is required for getFlatpickrOptions');\n return {};\n }\n\n const {\n locale,\n dateFormat,\n enableTime,\n twentyFourHourFormat,\n inputEl,\n allowInput,\n minDate,\n maxDate,\n minTime,\n maxTime,\n defaultDate,\n defaultHour,\n defaultMinute,\n enable,\n disable,\n mode = 'single',\n closeOnSelect,\n wrap = false,\n noCalendar = false,\n appendTo,\n onChange,\n onClose,\n onOpen,\n loadLocale,\n } = context;\n\n if (!locale) {\n console.warn('Locale not provided. Falling back to default.');\n }\n\n if (!dateFormat) {\n console.warn('Date format not provided. Using default format.');\n }\n\n let localeOptions;\n try {\n localeOptions = await loadLocale(locale);\n modifyWeekdayShorthands(localeOptions);\n } catch (error) {\n console.warn('Error loading locale, falling back to default:', error);\n localeOptions = English;\n }\n\n const baseLocale = locale.split('-')[0].toLowerCase();\n const isEnglishOr12HourLocale = ['en', 'es'].includes(baseLocale);\n\n const isWideScreen = window.innerWidth >= 767;\n\n const effectiveDateFormat =\n dateFormat ||\n (mode === 'time' ? (twentyFourHourFormat ? 'H:i' : 'h:i K') : 'Y-m-d');\n\n const options: Partial<BaseOptions> = {\n dateFormat: effectiveDateFormat,\n mode: mode === 'time' ? 'single' : mode,\n enableTime: mode === 'time' ? true : enableTime,\n noCalendar: mode === 'time' ? true : noCalendar,\n defaultDate: defaultDate,\n enableSeconds: false,\n allowInput: allowInput || false,\n clickOpens: true,\n time_24hr:\n typeof twentyFourHourFormat === 'boolean'\n ? twentyFourHourFormat\n : !isEnglishOr12HourLocale,\n weekNumbers: false,\n static: context.static ?? false,\n wrap,\n showMonths: mode === 'range' && isWideScreen ? 2 : 1,\n monthSelectorType: 'static',\n locale: localeOptions,\n closeOnSelect: closeOnSelect ?? !(mode === 'multiple' || enableTime),\n onChange: (selectedDates, dateStr, instance) => {\n onChange && onChange(selectedDates, dateStr, instance);\n },\n onClose: (selectedDates, dateStr, instance) => {\n if (mode === 'range' && instance.calendarContainer) {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n if (selectedDates.length === 0) {\n timeContainer?.classList.add('default-time-select');\n timeContainer?.classList.remove('start-date', 'end-date');\n }\n }\n onClose && onClose(selectedDates, dateStr, instance);\n },\n onOpen: (selectedDates, dateStr, instance) => {\n onOpen && onOpen(selectedDates, dateStr, instance);\n },\n };\n\n if (mode === 'range') {\n options.onReady = (_, __, instance) => {\n if (instance.calendarContainer) {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n timeContainer?.classList.add('default-time-select');\n }\n };\n }\n\n if (!(inputEl instanceof HTMLInputElement)) {\n options.positionElement = inputEl;\n }\n\n if (minDate) options.minDate = minDate;\n if (maxDate) options.maxDate = maxDate;\n if (minTime) options.minTime = minTime;\n if (maxTime) options.maxTime = maxTime;\n\n if (defaultDate) {\n if (\n Array.isArray(defaultDate) &&\n (mode === 'range' || mode === 'multiple')\n ) {\n options.defaultDate = defaultDate;\n } else if (!Array.isArray(defaultDate)) {\n if (typeof defaultDate === 'string') {\n let parsedDate: Date | null = null;\n switch (effectiveDateFormat) {\n case 'Y-m-d': {\n const [year, month, day] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(year) && !isNaN(month) && !isNaN(day)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n case 'd-m-Y': {\n const [day, month, year] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(day) && !isNaN(month) && !isNaN(year)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n case 'm-d-Y': {\n const [month, day, year] = defaultDate.split('-').map(Number);\n parsedDate =\n !isNaN(month) && !isNaN(day) && !isNaN(year)\n ? new Date(year, month - 1, day, 12)\n : null;\n break;\n }\n default:\n parsedDate = new Date(defaultDate);\n break;\n }\n options.defaultDate = parsedDate || defaultDate;\n }\n }\n }\n if (defaultHour !== undefined && defaultHour !== null)\n options.defaultHour = defaultHour;\n if (defaultMinute !== undefined && defaultMinute !== null)\n options.defaultMinute = defaultMinute;\n if (enable && enable.length > 0) options.enable = enable;\n if (disable && disable.length > 0) {\n options.disable = disable.map((date) => {\n if (date instanceof Date) return date;\n if (typeof date === 'number') return new Date(date);\n if (typeof date === 'string') {\n const parsed = flatpickr.parseDate(date, effectiveDateFormat);\n return parsed || date;\n }\n return date;\n });\n }\n if (appendTo) options.appendTo = appendTo;\n\n return options;\n}\n\nexport function updateEnableTime(dateFormat: string): boolean {\n return dateFormat.includes('H:') || dateFormat.includes('h:');\n}\n\nexport function setCalendarAttributes(\n instance: Instance,\n modalDetected = false\n): void {\n const container = instance.calendarContainer;\n if (!container) return;\n\n requestAnimationFrame(() => {\n const mode = instance?.config.mode as\n | 'single'\n | 'multiple'\n | 'range'\n | 'time';\n\n container.setAttribute('role', 'application');\n container.setAttribute('aria-label', 'Calendar');\n container.classList.remove(\n 'container-modal',\n 'container-body',\n 'container-default'\n );\n container.classList.add(\n modalDetected ? 'container-modal' : 'container-default'\n );\n\n const monthsEl = container.querySelector<HTMLElement>('.flatpickr-months');\n monthsEl?.setAttribute('tabindex', '0');\n monthsEl?.setAttribute('role', 'group');\n monthsEl?.setAttribute('aria-label', 'Month and year navigation');\n\n const prevBtn = container.querySelector<HTMLElement>(\n '.flatpickr-prev-month'\n );\n prevBtn?.setAttribute('tabindex', '0');\n prevBtn?.setAttribute('role', 'button');\n prevBtn?.setAttribute('aria-label', 'Previous month');\n prevBtn?.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n instance.changeMonth(-1);\n }\n });\n\n const nextBtn = container.querySelector<HTMLElement>(\n '.flatpickr-next-month'\n );\n nextBtn?.setAttribute('tabindex', '0');\n nextBtn?.setAttribute('role', 'button');\n nextBtn?.setAttribute('aria-label', 'Next month');\n nextBtn?.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n instance.changeMonth(1);\n }\n });\n\n const firstMonth = container.querySelector<HTMLElement>('.flatpickr-month');\n const yearInput = firstMonth?.querySelector<HTMLInputElement>(\n 'input.numInput.cur-year'\n );\n if (yearInput) {\n yearInput.tabIndex = 0;\n yearInput.setAttribute('role', 'spinbutton');\n yearInput.setAttribute('aria-label', 'Year');\n if (instance?.config.minDate) {\n yearInput.setAttribute(\n 'aria-valuemin',\n String(new Date(instance.config.minDate!).getFullYear())\n );\n }\n if (instance?.config.maxDate) {\n yearInput.setAttribute(\n 'aria-valuemax',\n String(new Date(instance.config.maxDate!).getFullYear())\n );\n }\n const updateNow = () =>\n yearInput.setAttribute('aria-valuenow', yearInput.value);\n yearInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n instance.changeYear(1);\n setTimeout(updateNow, 0);\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n instance.changeYear(-1);\n setTimeout(updateNow, 0);\n }\n });\n setTimeout(updateNow, 0);\n }\n\n const daysGrid = container.querySelector<HTMLElement>('.flatpickr-days');\n daysGrid?.removeAttribute('tabindex');\n daysGrid?.setAttribute('role', 'grid');\n daysGrid?.setAttribute(\n 'aria-multiselectable',\n mode === 'multiple' ? 'true' : 'false'\n );\n\n const enabledDays = Array.from(\n container.querySelectorAll<HTMLElement>(\n '.flatpickr-day:not(.flatpickr-disabled)'\n )\n );\n enabledDays.forEach((day) => {\n day.tabIndex = 0;\n day.setAttribute('role', mode === 'range' ? 'gridcell' : 'button');\n });\n\n const oldNav = (container as any)._keyboardNav as EventListener | undefined;\n if (oldNav) container.removeEventListener('keydown', oldNav);\n\n const keyboardNav = (e: KeyboardEvent) => {\n const targetDay = (e.target as HTMLElement).closest<HTMLElement>(\n '.flatpickr-day:not(.flatpickr-disabled)'\n );\n if (!targetDay) return;\n\n switch (e.key) {\n case 'Enter':\n case ' ':\n e.preventDefault();\n targetDay.click();\n return;\n case 'ArrowRight':\n case 'ArrowLeft':\n case 'ArrowDown':\n case 'ArrowUp': {\n e.preventDefault();\n const idx = enabledDays.indexOf(targetDay);\n let nextIdx: number;\n switch (e.key) {\n case 'ArrowRight':\n nextIdx = idx + 1;\n break;\n case 'ArrowLeft':\n nextIdx = idx - 1;\n break;\n case 'ArrowDown':\n nextIdx = idx + 7;\n break;\n case 'ArrowUp':\n nextIdx = idx - 7;\n break;\n default:\n return;\n }\n const next = enabledDays[nextIdx];\n if (next) next.focus();\n return;\n }\n }\n };\n container.addEventListener('keydown', keyboardNav);\n (container as any)._keyboardNav = keyboardNav;\n\n const hourInput = container.querySelector<HTMLInputElement>(\n 'input.flatpickr-hour'\n );\n if (hourInput) {\n hourInput.tabIndex = 0;\n hourInput.setAttribute('role', 'spinbutton');\n hourInput.setAttribute('aria-label', 'Hour');\n hourInput.setAttribute('aria-valuemin', hourInput.min);\n hourInput.setAttribute('aria-valuemax', hourInput.max);\n hourInput.setAttribute('aria-valuenow', hourInput.value);\n hourInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n hourInput.stepUp();\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n hourInput.stepDown();\n }\n setTimeout(\n () => hourInput.setAttribute('aria-valuenow', hourInput.value),\n 0\n );\n });\n }\n\n const minuteInput = container.querySelector<HTMLInputElement>(\n 'input.flatpickr-minute'\n );\n if (minuteInput) {\n minuteInput.tabIndex = 0;\n minuteInput.setAttribute('role', 'spinbutton');\n minuteInput.setAttribute('aria-label', 'Minute');\n minuteInput.setAttribute('aria-valuemin', minuteInput.min);\n minuteInput.setAttribute('aria-valuemax', minuteInput.max);\n minuteInput.setAttribute('aria-valuenow', minuteInput.value);\n minuteInput.addEventListener('keydown', (e) => {\n if (e.key === 'ArrowUp') {\n e.preventDefault();\n minuteInput.stepUp();\n }\n if (e.key === 'ArrowDown') {\n e.preventDefault();\n minuteInput.stepDown();\n }\n setTimeout(\n () => minuteInput.setAttribute('aria-valuenow', minuteInput.value),\n 0\n );\n });\n }\n\n const ampmToggle = container.querySelector<HTMLElement>('.flatpickr-am-pm');\n if (ampmToggle) {\n ampmToggle.tabIndex = 0;\n ampmToggle.setAttribute('role', 'button');\n ampmToggle.setAttribute('aria-label', 'Toggle AM/PM');\n ampmToggle.addEventListener('keydown', (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n ampmToggle.click();\n }\n });\n }\n });\n}\n\nexport function hideEmptyYear(): void {\n const currentMonth = document.querySelector(\n '.flatpickr-current-month span.cur-month'\n ) as HTMLElement;\n document.querySelectorAll('.numInputWrapper').forEach((wrapper) => {\n const yearInput = wrapper.querySelector(\n '.numInput.cur-year'\n ) as HTMLInputElement;\n if (\n yearInput &&\n yearInput.min &&\n yearInput.max &&\n yearInput.min === yearInput.max\n ) {\n (wrapper as HTMLElement).style.display = 'none';\n\n if (currentMonth) {\n currentMonth.style.marginLeft = 'auto';\n }\n }\n });\n}\n\nexport function validate(\n inputEl: HTMLInputElement,\n required: boolean,\n invalidText: string,\n defaultErrorMessage: string,\n hasInteracted: boolean,\n internals: ElementInternals\n): { isValid: boolean; validationMessage: string } {\n if (!inputEl) {\n console.warn('Input element is undefined...');\n return { isValid: true, validationMessage: '' };\n }\n\n const isEmpty = !inputEl.value.trim();\n const isRequired = required;\n\n let validity = inputEl.validity;\n let validationMessage = inputEl.validationMessage;\n\n if (isRequired && isEmpty) {\n validity = { ...validity, valueMissing: true };\n validationMessage = defaultErrorMessage;\n }\n\n if (invalidText) {\n validity = { ...validity, customError: true };\n validationMessage = invalidText;\n }\n\n internals.setValidity(validity, validationMessage, inputEl);\n\n const isValid =\n !invalidText && (!hasInteracted || !isEmpty || (isEmpty && !isRequired));\n\n return { isValid, validationMessage };\n}\n\nexport function emitValue(\n element: HTMLElement,\n eventName: string,\n detail: any\n): void {\n element.dispatchEvent(\n new CustomEvent(eventName, {\n detail,\n bubbles: true,\n composed: true,\n })\n );\n}\n\nexport async function clearFlatpickrInput(\n flatpickrInstance: Instance | undefined,\n inputEl: HTMLInputElement | undefined,\n updateCallback?: () => void\n): Promise<void> {\n if (flatpickrInstance) {\n flatpickrInstance.clear();\n }\n\n if (inputEl) {\n inputEl.value = '';\n }\n\n if (updateCallback) {\n await updateCallback();\n }\n}\n\nexport enum DateRangeEditableMode {\n BOTH = 'both',\n START = 'start',\n END = 'end',\n NONE = 'none',\n}\n\nexport function createDateRangeDayLockHandler(\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null]\n): (\n dObj: Date,\n dStr: string,\n fp: Instance,\n dayElem: HTMLElement & { dateObj: Date }\n) => void {\n return (_dObj, _dStr, _fp, dayElem: HTMLElement & { dateObj: Date }) => {\n const currentDate = dayElem.dateObj;\n\n if (\n editableMode === DateRangeEditableMode.END &&\n currentValue[0] !== null\n ) {\n if (currentDate.getTime() <= currentValue[0].getTime()) {\n if (currentDate.getTime() === currentValue[0].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n dayElem.setAttribute('locked', 'start');\n dayElem.setAttribute('aria-disabled', 'true');\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().lockedStartDate);\n }\n }\n } else if (\n editableMode === DateRangeEditableMode.START &&\n currentValue[1] !== null\n ) {\n if (currentDate.getTime() >= currentValue[1].getTime()) {\n if (currentDate.getTime() === currentValue[1].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().lockedEndDate);\n dayElem.setAttribute('locked', 'end');\n dayElem.setAttribute('aria-disabled', 'true');\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n }\n }\n } else if (\n editableMode === DateRangeEditableMode.NONE &&\n currentValue[0] !== null &&\n currentValue[1] !== null\n ) {\n if (currentDate.getTime() === currentValue[0].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateLocked);\n dayElem.setAttribute('locked', 'start');\n dayElem.setAttribute('aria-disabled', 'true');\n } else if (currentDate.getTime() === currentValue[1].getTime()) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateLocked);\n dayElem.setAttribute('locked', 'end');\n dayElem.setAttribute('aria-disabled', 'true');\n } else if (\n currentDate.getTime() > currentValue[0].getTime() &&\n currentDate.getTime() < currentValue[1].getTime()\n ) {\n dayElem.classList.add('flatpickr-locked-date');\n dayElem.setAttribute('title', getTextStrings().dateInSelectedRange);\n } else {\n dayElem.classList.add('flatpickr-locked-date', 'flatpickr-disabled');\n dayElem.setAttribute('title', getTextStrings().dateNotAvailable);\n }\n }\n\n if (\n dayElem.classList.contains('flatpickr-disabled') &&\n !dayElem.classList.contains('flatpickr-locked-date')\n ) {\n dayElem.classList.add('flatpickr-locked-date');\n }\n };\n}\n\nexport function createDateRangeChangeLockHandler(\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null],\n originalOnChange: Hook | Hook[]\n): (selectedDates: Date[], dateStr: string, instance: Instance) => void {\n return (selectedDates, dateStr, instance) => {\n let lockedStartDate: Date | null = null;\n let lockedEndDate: Date | null = null;\n\n if (\n editableMode === DateRangeEditableMode.END &&\n currentValue[0] !== null\n ) {\n lockedStartDate = currentValue[0];\n }\n if (\n editableMode === DateRangeEditableMode.START &&\n currentValue[1] !== null\n ) {\n lockedEndDate = currentValue[1];\n }\n\n if (editableMode === DateRangeEditableMode.NONE) {\n if (currentValue[0] !== null && currentValue[1] !== null) {\n instance.setDate([currentValue[0], currentValue[1]], false);\n return;\n }\n }\n\n if (currentValue[0] === null && currentValue[1] === null) {\n callOriginalOnChange(originalOnChange, selectedDates, dateStr, instance);\n return;\n }\n\n if (\n editableMode === DateRangeEditableMode.END &&\n lockedStartDate !== null\n ) {\n let modified = false;\n const newDates = [...selectedDates];\n\n if (\n selectedDates.length === 2 &&\n selectedDates[0].getTime() !== lockedStartDate.getTime()\n ) {\n newDates[0] = lockedStartDate;\n modified = true;\n } else if (selectedDates.length === 1) {\n newDates.splice(0, 0, lockedStartDate);\n modified = true;\n }\n\n if (modified) {\n instance.setDate(newDates, false);\n callOriginalOnChange(\n originalOnChange,\n newDates,\n instance.input.value,\n instance\n );\n return;\n }\n }\n\n if (\n editableMode === DateRangeEditableMode.START &&\n lockedEndDate !== null\n ) {\n let modified = false;\n const newDates = [...selectedDates];\n\n if (\n selectedDates.length === 2 &&\n selectedDates[1].getTime() !== lockedEndDate.getTime()\n ) {\n newDates[1] = lockedEndDate;\n modified = true;\n } else if (selectedDates.length === 1) {\n newDates.push(lockedEndDate);\n modified = true;\n }\n\n if (modified) {\n instance.setDate(newDates, false);\n callOriginalOnChange(\n originalOnChange,\n newDates,\n instance.input.value,\n instance\n );\n return;\n }\n }\n\n callOriginalOnChange(originalOnChange, selectedDates, dateStr, instance);\n };\n}\n\nfunction callOriginalOnChange(\n originalOnChange: Hook | Hook[],\n selectedDates: Date[],\n dateStr: string,\n instance: Instance\n): void {\n try {\n if (typeof originalOnChange === 'function') {\n originalOnChange(selectedDates, dateStr, instance);\n } else if (Array.isArray(originalOnChange)) {\n originalOnChange.forEach((hook) => {\n if (typeof hook === 'function') {\n try {\n hook(selectedDates, dateStr, instance);\n } catch (e) {\n console.warn('Error in onChange hook:', e);\n }\n }\n });\n }\n } catch (e) {\n console.warn('Error calling original onChange handler:', e);\n }\n}\n\nexport function applyDateRangeEditingRestrictions(\n options: Partial<BaseOptions>,\n editableMode: DateRangeEditableMode,\n currentValue: [Date | null, Date | null],\n tooltipStrings?: FlatpickrTextStrings\n): Partial<BaseOptions> {\n if (tooltipStrings) {\n setTooltipStrings(tooltipStrings);\n }\n const newOptions = { ...options };\n\n if (editableMode === DateRangeEditableMode.BOTH) {\n return newOptions;\n }\n\n const originalOnChange = newOptions.onChange;\n\n newOptions.clickOpens = true;\n\n try {\n newOptions.onDayCreate = createDateRangeDayLockHandler(\n editableMode,\n currentValue\n ) as any;\n\n newOptions.onChange = createDateRangeChangeLockHandler(\n editableMode,\n currentValue,\n originalOnChange || (() => {})\n );\n } catch (e) {\n console.warn('Error setting up date range editing restrictions:', e);\n }\n\n return newOptions;\n}\n"],"names":["flatpickrStylesInjected","_defaultCalendarTooltipStrings","lockedStartDate","lockedEndDate","dateLocked","dateNotAvailable","dateInSelectedRange","currentTooltipStrings","setTooltipStrings","customTextStrings","getTextStrings","DATE_FORMAT_OPTIONS","preventFlatpickrOpen","event","setShouldFlatpickrOpen","preventDefault","handleInputClick","handleInputFocus","shouldFlatpickrOpen","closeFlatpickr","modifyWeekdayShorthands","localeOptions","weekdays","_a","shorthand","map","day","charAt","injectFlatpickrStyles","customStyle","styleElement","document","createElement","id","textContent","head","appendChild","async","initializeMultiAnchorFlatpickr","context","inputEl","endinputEl","getFlatpickrOptions","setCalendarAttributes","setInitialDates","options","getInputElement","el","HTMLInputElement","input","querySelector","type","style","display","isConnected","Error","error","console","inputElement","endInputElement","plugins","rangePlugin","flatpickrInstance","flatpickr","setTimeout","addEventListener","open","initializeSingleAnchorFlatpickr","appendTo","effectiveDateFormat","dateFormat","mode","clickOpens","targetElement","positionElement","message","isValidDateFormat","format","getPlaceholder","isDateRange","loadLocale","locale","loadLocaleFromLangs","getModalContainer","element","node","ShadowRoot","host","Element","tag","tagName","toLowerCase","parentNode","body","enableTime","twentyFourHourFormat","allowInput","minDate","maxDate","minTime","maxTime","defaultDate","defaultHour","defaultMinute","enable","disable","closeOnSelect","wrap","noCalendar","onChange","onClose","onOpen","warn","English","baseLocale","split","isEnglishOr12HourLocale","includes","isWideScreen","window","innerWidth","enableSeconds","time_24hr","weekNumbers","static","showMonths","monthSelectorType","selectedDates","dateStr","instance","calendarContainer","timeContainer","length","classList","add","remove","onReady","_","__","Array","isArray","parsedDate","year","month","Number","isNaN","Date","date","parseDate","updateEnableTime","modalDetected","container","requestAnimationFrame","config","setAttribute","monthsEl","prevBtn","e","key","changeMonth","nextBtn","firstMonth","yearInput","tabIndex","String","getFullYear","updateNow","value","changeYear","daysGrid","removeAttribute","enabledDays","from","querySelectorAll","forEach","oldNav","_keyboardNav","removeEventListener","keyboardNav","targetDay","target","closest","click","idx","indexOf","nextIdx","next","focus","hourInput","min","max","stepUp","stepDown","minuteInput","ampmToggle","hideEmptyYear","currentMonth","wrapper","marginLeft","validate","required","invalidText","defaultErrorMessage","hasInteracted","internals","isValid","validationMessage","isEmpty","trim","isRequired","validity","valueMissing","customError","setValidity","emitValue","eventName","detail","dispatchEvent","CustomEvent","bubbles","composed","clearFlatpickrInput","updateCallback","clear","DateRangeEditableMode","createDateRangeDayLockHandler","editableMode","currentValue","_dObj","_dStr","_fp","dayElem","currentDate","dateObj","END","getTime","START","NONE","contains","createDateRangeChangeLockHandler","originalOnChange","modified","newDates","splice","setDate","callOriginalOnChange","push","hook","applyDateRangeEditingRestrictions","tooltipStrings","newOptions","BOTH","onDayCreate"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kyndryl-design-system/shidoka-applications",
3
- "version": "2.48.0",
3
+ "version": "2.48.1",
4
4
  "description": "Shidoka Web Components for Applications",
5
5
  "license": "MIT",
6
6
  "main": "index.js",