@kyndryl-design-system/shidoka-applications 2.9.1 → 2.9.3

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.
Files changed (38) hide show
  1. package/common/helpers/flatpickr.d.ts +1 -0
  2. package/common/helpers/flatpickr.d.ts.map +1 -1
  3. package/common/helpers/flatpickr.js +1 -1
  4. package/common/helpers/flatpickr.js.map +1 -1
  5. package/common/scss/shidoka-flatpickr-theme.scss +6 -4
  6. package/components/reusable/card/card.d.ts +2 -0
  7. package/components/reusable/card/card.d.ts.map +1 -1
  8. package/components/reusable/card/card.js +13 -5
  9. package/components/reusable/card/card.js.map +1 -1
  10. package/components/reusable/datePicker/datepicker.d.ts +2 -0
  11. package/components/reusable/datePicker/datepicker.d.ts.map +1 -1
  12. package/components/reusable/datePicker/datepicker.js +26 -3
  13. package/components/reusable/datePicker/datepicker.js.map +1 -1
  14. package/components/reusable/datePicker/index.js +1 -1
  15. package/components/reusable/daterangepicker/daterangepicker.d.ts +2 -0
  16. package/components/reusable/daterangepicker/daterangepicker.d.ts.map +1 -1
  17. package/components/reusable/daterangepicker/daterangepicker.js +21 -3
  18. package/components/reusable/daterangepicker/daterangepicker.js.map +1 -1
  19. package/components/reusable/daterangepicker/index.js +1 -1
  20. package/components/reusable/modal/modal.d.ts +1 -0
  21. package/components/reusable/modal/modal.d.ts.map +1 -1
  22. package/components/reusable/modal/modal.js.map +1 -1
  23. package/components/reusable/notification/notification.d.ts.map +1 -1
  24. package/components/reusable/notification/notification.js +7 -21
  25. package/components/reusable/notification/notification.js.map +1 -1
  26. package/components/reusable/table/table-cell.d.ts +1 -1
  27. package/components/reusable/table/table-cell.js.map +1 -1
  28. package/components/reusable/table/table-header.d.ts +1 -1
  29. package/components/reusable/table/table-header.js.map +1 -1
  30. package/components/reusable/timepicker/index.js +1 -1
  31. package/components/reusable/timepicker/timepicker.d.ts +2 -0
  32. package/components/reusable/timepicker/timepicker.d.ts.map +1 -1
  33. package/components/reusable/timepicker/timepicker.js +30 -7
  34. package/components/reusable/timepicker/timepicker.js.map +1 -1
  35. package/index.js +1 -1
  36. package/package.json +1 -1
  37. package/{shidoka-flatpickr-theme-0e8883f1.js → shidoka-flatpickr-theme-329a4dea.js} +5 -4
  38. package/{shidoka-flatpickr-theme-0e8883f1.js.map → shidoka-flatpickr-theme-329a4dea.js.map} +1 -1
@@ -50,6 +50,7 @@ interface FlatpickrOptionsContext {
50
50
  wrap?: boolean;
51
51
  noCalendar?: boolean;
52
52
  appendTo?: HTMLElement;
53
+ static?: boolean;
53
54
  }
54
55
  export declare function isSupportedLocale(locale: string): boolean;
55
56
  export declare function preventFlatpickrOpen(event: Event, setShouldFlatpickrOpen: (value: boolean) => void): void;
@@ -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":"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"}
@@ -1,2 +1,2 @@
1
- import{r as e,f as n,E as t}from"../../vendor/flatpickr-bbd13d61.js";let a=!1;const i=["ar","at","az","be","bg","bn","bs","cat","cs","cy","da","de","en","eo","es","et","fa","fi","fo","fr","ga","gr","he","hi","hr","hu","id","is","it","ja","ka","km","ko","kz","lt","lv","mk","mn","ms","my","nl","no","pa","pl","pt","ro","ru","si","sk","sl","sq","sr","sv","th","tr","uk","uz","uz_latn","vn","zh_tw","zh"],o={"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:s":"yyyy-mm-dd —— : —— ——","m-d-Y H:i:s":"mm-dd-yyyy —— : —— ——","d-m-Y H:i:s":"dd-mm-yyyy —— : —— ——"};function l(e){return i.includes(e)}function r(e,n){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),n(!1)}function s(e){e(!0)}function c(e,n,t){e||(n(),t(!0))}function d(e){e.weekdays&&e.weekdays.shorthand&&(e.weekdays.shorthand=e.weekdays.shorthand.map((e=>e.charAt(0))))}function u(e){if(!a){const n=document.createElement("style");n.id="flatpickr-custom-styles",n.textContent=e,document.head.appendChild(n),a=!0}}async function m(t){const{inputEl:a,endinputEl:i,getFlatpickrOptions:o,setCalendarAttributes:l,setInitialDates:r}=t;if(a)try{const t=await o(),s=e=>{if(e instanceof HTMLInputElement)return e;{let n=e.querySelector("input");return n||(n=document.createElement("input"),n.type="text",n.style.display="none",e.appendChild(n)),n}},c=s(a);if(i){const n=s(i);t.plugins=[...t.plugins||[],e({input:n})]}const d=n(c,t);return d?(setTimeout((()=>{l&&l(d)}),0),r&&r(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 p(e){const{inputEl:t,getFlatpickrOptions:a,setCalendarAttributes:i,setInitialDates:o,appendTo:l}=e;if(t)try{const e=await a();let r;e.dateFormat=e.dateFormat||"Y-m-d",t instanceof HTMLInputElement?(r=t,e.clickOpens=!0):(r=document.createElement("input"),r.type="text",r.style.display="none",l?l.appendChild(r):t instanceof HTMLElement&&!(t instanceof HTMLInputElement)?t.appendChild(r):document.body.appendChild(r),e.clickOpens=!1,e.positionElement=t);const s=n(r,e);return s?(setTimeout((()=>{i&&i(s)}),0),o&&o(s),t instanceof HTMLInputElement||t.addEventListener("click",(()=>s.open())),s):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 f(e){return e in o}function y(e,n){let t;return f(e)?(t=n?`${o[e]} to ${o[e]}`:o[e],t):"Select date"}async function h(e){const{locale:n,dateFormat:t,enableTime:a,twentyFourHourFormat:i,inputEl:o,allowInput:l,minDate:r,maxDate:s,minTime:c,maxTime:u,defaultDate:m,defaultHour:p,defaultMinute:f,enable:y,disable:h,mode:g="single",closeOnSelect:k,wrap:E=!1,noCalendar:b=!1,onChange:v,onClose:C,onOpen:w,loadLocale:F,appendTo:L}=e;n||console.warn("Locale not provided. Falling back to default."),t||console.warn("Date format not provided. Using default format.");const T=await F(n);d(T);const H=["en","en-US","en-GB","es-MX"].includes(n),M=window.innerWidth>=767,I={dateFormat:t||("time"===g?"H:i":"Y-m-d"),mode:"time"===g?"single":g,enableTime:"time"===g||a,noCalendar:"time"===g||b,allowInput:l||!1,clickOpens:!0,time_24hr:"boolean"==typeof i?i:!H,weekNumbers:!1,wrap:E,showMonths:"range"===g&&M?2:1,monthSelectorType:"static",locale:T,closeOnSelect:null!=k?k:!("multiple"===g||a),onChange:(e,n,t)=>{v&&v(e,n,t)},onClose:(e,n,t)=>{if("range"===g){const n=t.calendarContainer.querySelector(".flatpickr-time");0===e.length&&(null==n||n.classList.add("default-time-select"),null==n||n.classList.remove("start-date","end-date"))}C&&C(e,n,t)},onOpen:(e,n,t)=>{w&&w(e,n,t)}};return"range"===g&&(I.onReady=(e,n,t)=>{const a=t.calendarContainer.querySelector(".flatpickr-time");null==a||a.classList.add("default-time-select")}),o instanceof HTMLInputElement||(I.positionElement=o),r&&(I.minDate=r),s&&(I.maxDate=s),c&&(I.minTime=c),u&&(I.maxTime=u),m&&((!Array.isArray(m)||"range"!==g&&"multiple"!==g)&&Array.isArray(m)||(I.defaultDate=m)),void 0!==p&&(I.defaultHour=p),void 0!==f&&(I.defaultMinute=f),y&&y.length>0&&(I.enable=y),h&&h.length>0&&(I.disable=h),L&&(I.appendTo=L),I}function g(e){return e.includes("H:")||e.includes("h:")}function k(e,n){if(e&&e.calendarContainer){e.calendarContainer.setAttribute("role","application"),e.calendarContainer.setAttribute("aria-label","Calendar"),e.calendarContainer.classList.remove("container-modal","container-body"),e.calendarContainer.classList.remove("container-modal","container-body");const t=n?"container-modal":"container-default";e.calendarContainer.classList.add(t)}else console.warn("Calendar container not available...")}async function E(e){if("en"===e)return t;if(!l(e))return console.warn(`Unsupported locale: ${e}. Falling back to English.`),t;try{const n=await import(`flatpickr/dist/l10n/${e}.js`),a=n[e]||n.default[e]||n.default;return a||(console.warn(`Locale configuration not found for ${e}. Falling back to English.`),t)}catch(n){return console.error(`Failed to load locale ${e}. Falling back to English.`,n),n instanceof Error&&console.error("Error details:",n.message),t}}function b(){document.querySelectorAll(".numInputWrapper").forEach((e=>{const n=e.querySelector(".numInput.cur-year"),t=document.querySelector(".flatpickr-current-month span.cur-month");n&&n.min&&n.max&&n.min===n.max&&(e.style.display="none",t&&(t.style.marginLeft="auto"))}))}function v(e,n,t,a,i,o){if(!e)return console.warn("Input element is undefined..."),{isValid:!0,validationMessage:""};const l=!e.value.trim(),r=n;let s=e.validity,c=e.validationMessage;r&&l&&(s={...s,valueMissing:!0},c=a),t&&(s={...s,customError:!0},c=t),o.setValidity(s,c,e);return{isValid:!t&&(!i||!l||l&&!r),validationMessage:c}}function C(e,n,t){e.dispatchEvent(new CustomEvent(n,{detail:t,bubbles:!0,composed:!0}))}export{C as emitValue,h as getFlatpickrOptions,y as getPlaceholder,s as handleInputClick,c as handleInputFocus,b as hideEmptyYear,m as initializeMultiAnchorFlatpickr,p as initializeSingleAnchorFlatpickr,u as injectFlatpickrStyles,l as isSupportedLocale,f as isValidDateFormat,i as langsArray,E as loadLocale,d as modifyWeekdayShorthands,r as preventFlatpickrOpen,k as setCalendarAttributes,g as updateEnableTime,v as validate};
1
+ import{r as e,f as t,E as n}from"../../vendor/flatpickr-bbd13d61.js";let a=!1;const i=["ar","at","az","be","bg","bn","bs","cat","cs","cy","da","de","en","eo","es","et","fa","fi","fo","fr","ga","gr","he","hi","hr","hu","id","is","it","ja","ka","km","ko","kz","lt","lv","mk","mn","ms","my","nl","no","pa","pl","pt","ro","ru","si","sk","sl","sq","sr","sv","th","tr","uk","uz","uz_latn","vn","zh_tw","zh"],o={"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:s":"yyyy-mm-dd —— : —— ——","m-d-Y H:i:s":"mm-dd-yyyy —— : —— ——","d-m-Y H:i:s":"dd-mm-yyyy —— : —— ——"};function l(e){return i.includes(e)}function r(e,t){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),t(!1)}function s(e){e(!0)}function c(e,t,n){e||(t(),n(!0))}function d(e){e.weekdays&&e.weekdays.shorthand&&(e.weekdays.shorthand=e.weekdays.shorthand.map((e=>e.charAt(0))))}function u(e){if(!a){const t=document.createElement("style");t.id="flatpickr-custom-styles",t.textContent=e,document.head.appendChild(t),a=!0}}async function m(n){const{inputEl:a,endinputEl:i,getFlatpickrOptions:o,setCalendarAttributes:l,setInitialDates:r}=n;if(a)try{const n=await o(),s=e=>{if(e instanceof HTMLInputElement)return e;{let t=e.querySelector("input");return t||(t=document.createElement("input"),t.type="text",t.style.display="none",e.appendChild(t)),t}},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),r&&r(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 p(e){const{inputEl:n,getFlatpickrOptions:a,setCalendarAttributes:i,setInitialDates:o,appendTo:l}=e;if(n)try{const e=await a();let r;e.dateFormat=e.dateFormat||"Y-m-d",n instanceof HTMLInputElement?(r=n,e.clickOpens=!0):(r=document.createElement("input"),r.type="text",r.style.display="none",l?l.appendChild(r):n instanceof HTMLElement&&!(n instanceof HTMLInputElement)?n.appendChild(r):document.body.appendChild(r),e.clickOpens=!1,e.positionElement=n);const s=t(r,e);return s?(setTimeout((()=>{i&&i(s)}),0),o&&o(s),n instanceof HTMLInputElement||n.addEventListener("click",(()=>s.open())),s):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 f(e){return e in o}function y(e,t){let n;return f(e)?(n=t?`${o[e]} to ${o[e]}`:o[e],n):"Select date"}async function h(e){var t;const{locale:n,dateFormat:a,enableTime:i,twentyFourHourFormat:o,inputEl:l,allowInput:r,minDate:s,maxDate:c,minTime:u,maxTime:m,defaultDate:p,defaultHour:f,defaultMinute:y,enable:h,disable:g,mode:k="single",closeOnSelect:E,wrap:v=!1,noCalendar:C=!1,appendTo:b,onChange:w,onClose:L,onOpen:F,loadLocale:T}=e;n||console.warn("Locale not provided. Falling back to default."),a||console.warn("Date format not provided. Using default format.");const H=await T(n);d(H);const M=["en","en-US","en-GB","es-MX"].includes(n),I=window.innerWidth>=767,z={dateFormat:a||("time"===k?"H:i":"Y-m-d"),mode:"time"===k?"single":k,enableTime:"time"===k||i,noCalendar:"time"===k||C,allowInput:r||!1,clickOpens:!0,time_24hr:"boolean"==typeof o?o:!M,weekNumbers:!1,static:null!==(t=e.static)&&void 0!==t&&t,wrap:v,showMonths:"range"===k&&I?2:1,monthSelectorType:"static",locale:H,closeOnSelect:null!=E?E:!("multiple"===k||i),onChange:(e,t,n)=>{w&&w(e,t,n)},onClose:(e,t,n)=>{if("range"===k){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)=>{F&&F(e,t,n)}};return"range"===k&&(z.onReady=(e,t,n)=>{const a=n.calendarContainer.querySelector(".flatpickr-time");null==a||a.classList.add("default-time-select")}),l instanceof HTMLInputElement||(z.positionElement=l),s&&(z.minDate=s),c&&(z.maxDate=c),u&&(z.minTime=u),m&&(z.maxTime=m),p&&((!Array.isArray(p)||"range"!==k&&"multiple"!==k)&&Array.isArray(p)||(z.defaultDate=p)),void 0!==f&&(z.defaultHour=f),void 0!==y&&(z.defaultMinute=y),h&&h.length>0&&(z.enable=h),g&&g.length>0&&(z.disable=g),b&&(z.appendTo=b),z}function g(e){return e.includes("H:")||e.includes("h:")}function k(e,t){if(e&&e.calendarContainer){e.calendarContainer.setAttribute("role","application"),e.calendarContainer.setAttribute("aria-label","Calendar"),e.calendarContainer.classList.remove("container-modal","container-body"),e.calendarContainer.classList.remove("container-modal","container-body");const n=t?"container-modal":"container-default";e.calendarContainer.classList.add(n),e.calendarContainer.classList.remove("static-position-true","static-position-false"),e.calendarContainer.classList.add(`static-position-${e.config.static}`)}else console.warn("Calendar container not available...")}async function E(e){if("en"===e)return n;if(!l(e))return console.warn(`Unsupported locale: ${e}. Falling back to English.`),n;try{const t=await import(`flatpickr/dist/l10n/${e}.js`),a=t[e]||t.default[e]||t.default;return a||(console.warn(`Locale configuration not found for ${e}. Falling back to English.`),n)}catch(t){return console.error(`Failed to load locale ${e}. Falling back to English.`,t),t instanceof Error&&console.error("Error details:",t.message),n}}function v(){document.querySelectorAll(".numInputWrapper").forEach((e=>{const t=e.querySelector(".numInput.cur-year"),n=document.querySelector(".flatpickr-current-month span.cur-month");t&&t.min&&t.max&&t.min===t.max&&(e.style.display="none",n&&(n.style.marginLeft="auto"))}))}function C(e,t,n,a,i,o){if(!e)return console.warn("Input element is undefined..."),{isValid:!0,validationMessage:""};const l=!e.value.trim(),r=t;let s=e.validity,c=e.validationMessage;r&&l&&(s={...s,valueMissing:!0},c=a),n&&(s={...s,customError:!0},c=n),o.setValidity(s,c,e);return{isValid:!n&&(!i||!l||l&&!r),validationMessage:c}}function b(e,t,n){e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0}))}export{b as emitValue,h as getFlatpickrOptions,y as getPlaceholder,s as handleInputClick,c as handleInputFocus,v as hideEmptyYear,m as initializeMultiAnchorFlatpickr,p as initializeSingleAnchorFlatpickr,u as injectFlatpickrStyles,l as isSupportedLocale,f as isValidDateFormat,i as langsArray,E as loadLocale,d as modifyWeekdayShorthands,r as preventFlatpickrOpen,k as setCalendarAttributes,g as updateEnableTime,C 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';\n\nlet flatpickrStylesInjected = false;\n\nexport const langsArray = [\n 'ar', // Arabic\n 'at', // Austria\n 'az', // Azerbaijan\n 'be', // Belarusian\n 'bg', // Bulgarian\n 'bn', // Bangla\n 'bs', // Bosnia\n 'cat', // Catalan\n 'cs', // Czech\n 'cy', // Welsh\n 'da', // Danish\n 'de', // German\n 'en', // English\n 'eo', // Esperanto\n 'es', // Spanish\n 'et', // Estonian\n 'fa', // Persian\n 'fi', // Finnish\n 'fo', // Faroese\n 'fr', // French\n 'ga', // Gaelic\n 'gr', // Greek\n 'he', // Hebrew\n 'hi', // Hindi\n 'hr', // Croatian\n 'hu', // Hungarian\n 'id', // Indonesian\n 'is', // Icelandic\n 'it', // Italian\n 'ja', // Japanese\n 'ka', // Georgian\n 'km', // Khmer\n 'ko', // Korean\n 'kz', // Kazakh\n 'lt', // Lithuanian\n 'lv', // Latvian\n 'mk', // Macedonian\n 'mn', // Mongolian\n 'ms', // Malaysian\n 'my', // Burmese\n 'nl', // Dutch\n 'no', // Norwegian\n 'pa', // Punjabi\n 'pl', // Polish\n 'pt', // Portuguese\n 'ro', // Romanian\n 'ru', // Russian\n 'si', // Sinhala\n 'sk', // Slovak\n 'sl', // Slovenian\n 'sq', // Albanian\n 'sr', // Serbian\n 'sv', // Swedish\n 'th', // Thai\n 'tr', // Turkish\n 'uk', // Ukrainian\n 'uz', // Uzbek\n 'uz_latn', // Uzbek Latin\n 'vn', // Vietnamese\n 'zh_tw', // Mandarin Traditional\n 'zh', // Mandarin\n];\n\ntype SupportedLocale = (typeof langsArray)[number];\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: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}\n\nexport function isSupportedLocale(locale: string): boolean {\n return langsArray.includes(locale as SupportedLocale);\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 && 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 = (inputEl: HTMLElement): HTMLInputElement => {\n if (inputEl instanceof HTMLInputElement) {\n return inputEl;\n } else {\n let input = inputEl.querySelector('input');\n if (!input) {\n input = document.createElement('input');\n input.type = 'text';\n input.style.display = 'none';\n inputEl.appendChild(input);\n }\n return input as HTMLInputElement;\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 options.dateFormat = options.dateFormat || 'Y-m-d';\n let inputElement: HTMLInputElement;\n if (inputEl instanceof HTMLInputElement) {\n inputElement = inputEl;\n options.clickOpens = true;\n } else {\n inputElement = document.createElement('input');\n inputElement.type = 'text';\n inputElement.style.display = 'none';\n\n if (appendTo) {\n appendTo.appendChild(inputElement);\n } else if (\n inputEl instanceof HTMLElement &&\n !(inputEl instanceof HTMLInputElement)\n ) {\n inputEl.appendChild(inputElement);\n } else {\n document.body.appendChild(inputElement);\n }\n\n options.clickOpens = false;\n options.positionElement = inputEl;\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 let placeholderFormat;\n\n if (isValidDateFormat(dateFormat)) {\n if (isDateRange) {\n placeholderFormat = `${DATE_FORMAT_OPTIONS[dateFormat]} to ${DATE_FORMAT_OPTIONS[dateFormat]}`;\n } else {\n placeholderFormat = DATE_FORMAT_OPTIONS[dateFormat];\n }\n return placeholderFormat;\n }\n return 'Select date';\n}\n\nexport async function getFlatpickrOptions(\n context: FlatpickrOptionsContext\n): Promise<Partial<BaseOptions>> {\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 onChange,\n onClose,\n onOpen,\n loadLocale,\n appendTo,\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 const localeOptions = await loadLocale(locale);\n modifyWeekdayShorthands(localeOptions);\n\n const isEnglishOr12HourLocale = ['en', 'en-US', 'en-GB', 'es-MX'].includes(\n locale\n );\n\n const isWideScreen = window.innerWidth >= 767;\n const options: Partial<BaseOptions> = {\n dateFormat: dateFormat || (mode === 'time' ? 'H:i' : 'Y-m-d'),\n mode: mode === 'time' ? 'single' : mode,\n enableTime: mode === 'time' ? true : enableTime,\n noCalendar: mode === 'time' ? true : noCalendar,\n allowInput: allowInput || false,\n clickOpens: true,\n time_24hr:\n typeof twentyFourHourFormat === 'boolean'\n ? twentyFourHourFormat\n : !isEnglishOr12HourLocale,\n weekNumbers: 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 if (onChange) {\n onChange(selectedDates, dateStr, instance);\n }\n },\n onClose: (selectedDates, dateStr, instance) => {\n if (mode === 'range') {\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 if (onClose) {\n onClose(selectedDates, dateStr, instance);\n }\n },\n onOpen: (selectedDates, dateStr, instance) => {\n if (onOpen) {\n onOpen(selectedDates, dateStr, instance);\n }\n },\n };\n\n if (mode === 'range') {\n options.onReady = (_, __, instance) => {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n timeContainer?.classList.add('default-time-select');\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 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 options.defaultDate = defaultDate;\n }\n }\n if (defaultHour !== undefined) options.defaultHour = defaultHour;\n if (defaultMinute !== undefined) options.defaultMinute = defaultMinute;\n if (enable && enable.length > 0) options.enable = enable;\n if (disable && disable.length > 0) options.disable = disable;\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?: boolean\n): void {\n if (instance && instance.calendarContainer) {\n instance.calendarContainer.setAttribute('role', 'application');\n instance.calendarContainer.setAttribute('aria-label', 'Calendar');\n\n instance.calendarContainer.classList.remove(\n 'container-modal',\n 'container-body'\n );\n\n instance.calendarContainer.classList.remove(\n 'container-modal',\n 'container-body'\n );\n\n const containerClass = modalDetected\n ? 'container-modal'\n : 'container-default';\n instance.calendarContainer.classList.add(containerClass);\n } else {\n console.warn('Calendar container not available...');\n }\n}\n\nexport async function loadLocale(locale: string): Promise<Partial<Locale>> {\n if (locale === 'en') return English;\n if (!isSupportedLocale(locale)) {\n console.warn(`Unsupported locale: ${locale}. Falling back to English.`);\n return English;\n }\n\n try {\n const module = await import(`flatpickr/dist/l10n/${locale}.js`);\n const localeConfig =\n module[locale] || module.default[locale] || module.default;\n if (!localeConfig) {\n console.warn(\n `Locale configuration not found for ${locale}. Falling back to English.`\n );\n return English;\n }\n return localeConfig;\n } catch (error) {\n console.error(\n `Failed to load locale ${locale}. Falling back to English.`,\n error\n );\n if (error instanceof Error) {\n console.error('Error details:', error.message);\n }\n return English;\n }\n}\n\nexport function hideEmptyYear(): void {\n document.querySelectorAll('.numInputWrapper').forEach((wrapper) => {\n const yearInput = wrapper.querySelector(\n '.numInput.cur-year'\n ) as HTMLInputElement;\n\n const currentMonth = document.querySelector(\n '.flatpickr-current-month span.cur-month'\n ) as HTMLElement;\n\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"],"names":["flatpickrStylesInjected","langsArray","DATE_FORMAT_OPTIONS","isSupportedLocale","locale","includes","preventFlatpickrOpen","event","setShouldFlatpickrOpen","preventDefault","stopPropagation","stopImmediatePropagation","handleInputClick","handleInputFocus","shouldFlatpickrOpen","closeFlatpickr","modifyWeekdayShorthands","localeOptions","weekdays","shorthand","map","day","charAt","injectFlatpickrStyles","customStyle","styleElement","document","createElement","id","textContent","head","appendChild","async","initializeMultiAnchorFlatpickr","context","inputEl","endinputEl","getFlatpickrOptions","setCalendarAttributes","setInitialDates","options","getInputElement","HTMLInputElement","input","querySelector","type","style","display","inputElement","endInputElement","plugins","rangePlugin","flatpickrInstance","flatpickr","setTimeout","addEventListener","open","console","error","initializeSingleAnchorFlatpickr","appendTo","dateFormat","clickOpens","HTMLElement","body","positionElement","Error","message","isValidDateFormat","format","getPlaceholder","isDateRange","placeholderFormat","enableTime","twentyFourHourFormat","allowInput","minDate","maxDate","minTime","maxTime","defaultDate","defaultHour","defaultMinute","enable","disable","mode","closeOnSelect","wrap","noCalendar","onChange","onClose","onOpen","loadLocale","warn","isEnglishOr12HourLocale","isWideScreen","window","innerWidth","time_24hr","weekNumbers","showMonths","monthSelectorType","selectedDates","dateStr","instance","timeContainer","calendarContainer","length","classList","add","remove","onReady","_","__","Array","isArray","undefined","updateEnableTime","modalDetected","setAttribute","containerClass","English","module","import","localeConfig","default","hideEmptyYear","querySelectorAll","forEach","wrapper","yearInput","currentMonth","min","max","marginLeft","validate","required","invalidText","defaultErrorMessage","hasInteracted","internals","isValid","validationMessage","isEmpty","value","trim","isRequired","validity","valueMissing","customError","setValidity","emitValue","element","eventName","detail","dispatchEvent","CustomEvent","bubbles","composed"],"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';\n\nlet flatpickrStylesInjected = false;\n\nexport const langsArray = [\n 'ar', // Arabic\n 'at', // Austria\n 'az', // Azerbaijan\n 'be', // Belarusian\n 'bg', // Bulgarian\n 'bn', // Bangla\n 'bs', // Bosnia\n 'cat', // Catalan\n 'cs', // Czech\n 'cy', // Welsh\n 'da', // Danish\n 'de', // German\n 'en', // English\n 'eo', // Esperanto\n 'es', // Spanish\n 'et', // Estonian\n 'fa', // Persian\n 'fi', // Finnish\n 'fo', // Faroese\n 'fr', // French\n 'ga', // Gaelic\n 'gr', // Greek\n 'he', // Hebrew\n 'hi', // Hindi\n 'hr', // Croatian\n 'hu', // Hungarian\n 'id', // Indonesian\n 'is', // Icelandic\n 'it', // Italian\n 'ja', // Japanese\n 'ka', // Georgian\n 'km', // Khmer\n 'ko', // Korean\n 'kz', // Kazakh\n 'lt', // Lithuanian\n 'lv', // Latvian\n 'mk', // Macedonian\n 'mn', // Mongolian\n 'ms', // Malaysian\n 'my', // Burmese\n 'nl', // Dutch\n 'no', // Norwegian\n 'pa', // Punjabi\n 'pl', // Polish\n 'pt', // Portuguese\n 'ro', // Romanian\n 'ru', // Russian\n 'si', // Sinhala\n 'sk', // Slovak\n 'sl', // Slovenian\n 'sq', // Albanian\n 'sr', // Serbian\n 'sv', // Swedish\n 'th', // Thai\n 'tr', // Turkish\n 'uk', // Ukrainian\n 'uz', // Uzbek\n 'uz_latn', // Uzbek Latin\n 'vn', // Vietnamese\n 'zh_tw', // Mandarin Traditional\n 'zh', // Mandarin\n];\n\ntype SupportedLocale = (typeof langsArray)[number];\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: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 isSupportedLocale(locale: string): boolean {\n return langsArray.includes(locale as SupportedLocale);\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 && 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 = (inputEl: HTMLElement): HTMLInputElement => {\n if (inputEl instanceof HTMLInputElement) {\n return inputEl;\n } else {\n let input = inputEl.querySelector('input');\n if (!input) {\n input = document.createElement('input');\n input.type = 'text';\n input.style.display = 'none';\n inputEl.appendChild(input);\n }\n return input as HTMLInputElement;\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 options.dateFormat = options.dateFormat || 'Y-m-d';\n let inputElement: HTMLInputElement;\n if (inputEl instanceof HTMLInputElement) {\n inputElement = inputEl;\n options.clickOpens = true;\n } else {\n inputElement = document.createElement('input');\n inputElement.type = 'text';\n inputElement.style.display = 'none';\n\n if (appendTo) {\n appendTo.appendChild(inputElement);\n } else if (\n inputEl instanceof HTMLElement &&\n !(inputEl instanceof HTMLInputElement)\n ) {\n inputEl.appendChild(inputElement);\n } else {\n document.body.appendChild(inputElement);\n }\n\n options.clickOpens = false;\n options.positionElement = inputEl;\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 let placeholderFormat;\n\n if (isValidDateFormat(dateFormat)) {\n if (isDateRange) {\n placeholderFormat = `${DATE_FORMAT_OPTIONS[dateFormat]} to ${DATE_FORMAT_OPTIONS[dateFormat]}`;\n } else {\n placeholderFormat = DATE_FORMAT_OPTIONS[dateFormat];\n }\n return placeholderFormat;\n }\n return 'Select date';\n}\n\nexport async function getFlatpickrOptions(\n context: FlatpickrOptionsContext\n): Promise<Partial<BaseOptions>> {\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 const localeOptions = await loadLocale(locale);\n modifyWeekdayShorthands(localeOptions);\n\n const isEnglishOr12HourLocale = ['en', 'en-US', 'en-GB', 'es-MX'].includes(\n locale\n );\n\n const isWideScreen = window.innerWidth >= 767;\n const options: Partial<BaseOptions> = {\n dateFormat: dateFormat || (mode === 'time' ? 'H:i' : 'Y-m-d'),\n mode: mode === 'time' ? 'single' : mode,\n enableTime: mode === 'time' ? true : enableTime,\n noCalendar: mode === 'time' ? true : noCalendar,\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 if (onChange) {\n onChange(selectedDates, dateStr, instance);\n }\n },\n onClose: (selectedDates, dateStr, instance) => {\n if (mode === 'range') {\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 if (onClose) {\n onClose(selectedDates, dateStr, instance);\n }\n },\n onOpen: (selectedDates, dateStr, instance) => {\n if (onOpen) {\n onOpen(selectedDates, dateStr, instance);\n }\n },\n };\n\n if (mode === 'range') {\n options.onReady = (_, __, instance) => {\n const timeContainer =\n instance.calendarContainer.querySelector('.flatpickr-time');\n timeContainer?.classList.add('default-time-select');\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 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 options.defaultDate = defaultDate;\n }\n }\n if (defaultHour !== undefined) options.defaultHour = defaultHour;\n if (defaultMinute !== undefined) options.defaultMinute = defaultMinute;\n if (enable && enable.length > 0) options.enable = enable;\n if (disable && disable.length > 0) options.disable = disable;\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?: boolean\n): void {\n if (instance && instance.calendarContainer) {\n instance.calendarContainer.setAttribute('role', 'application');\n instance.calendarContainer.setAttribute('aria-label', 'Calendar');\n\n instance.calendarContainer.classList.remove(\n 'container-modal',\n 'container-body'\n );\n\n instance.calendarContainer.classList.remove(\n 'container-modal',\n 'container-body'\n );\n\n const containerClass = modalDetected\n ? 'container-modal'\n : 'container-default';\n instance.calendarContainer.classList.add(containerClass);\n\n // Add static position class based on the static option\n instance.calendarContainer.classList.remove(\n 'static-position-true',\n 'static-position-false'\n );\n instance.calendarContainer.classList.add(\n `static-position-${instance.config.static}`\n );\n } else {\n console.warn('Calendar container not available...');\n }\n}\n\nexport async function loadLocale(locale: string): Promise<Partial<Locale>> {\n if (locale === 'en') return English;\n if (!isSupportedLocale(locale)) {\n console.warn(`Unsupported locale: ${locale}. Falling back to English.`);\n return English;\n }\n\n try {\n const module = await import(`flatpickr/dist/l10n/${locale}.js`);\n const localeConfig =\n module[locale] || module.default[locale] || module.default;\n if (!localeConfig) {\n console.warn(\n `Locale configuration not found for ${locale}. Falling back to English.`\n );\n return English;\n }\n return localeConfig;\n } catch (error) {\n console.error(\n `Failed to load locale ${locale}. Falling back to English.`,\n error\n );\n if (error instanceof Error) {\n console.error('Error details:', error.message);\n }\n return English;\n }\n}\n\nexport function hideEmptyYear(): void {\n document.querySelectorAll('.numInputWrapper').forEach((wrapper) => {\n const yearInput = wrapper.querySelector(\n '.numInput.cur-year'\n ) as HTMLInputElement;\n\n const currentMonth = document.querySelector(\n '.flatpickr-current-month span.cur-month'\n ) as HTMLElement;\n\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"],"names":["flatpickrStylesInjected","langsArray","DATE_FORMAT_OPTIONS","isSupportedLocale","locale","includes","preventFlatpickrOpen","event","setShouldFlatpickrOpen","preventDefault","stopPropagation","stopImmediatePropagation","handleInputClick","handleInputFocus","shouldFlatpickrOpen","closeFlatpickr","modifyWeekdayShorthands","localeOptions","weekdays","shorthand","map","day","charAt","injectFlatpickrStyles","customStyle","styleElement","document","createElement","id","textContent","head","appendChild","async","initializeMultiAnchorFlatpickr","context","inputEl","endinputEl","getFlatpickrOptions","setCalendarAttributes","setInitialDates","options","getInputElement","HTMLInputElement","input","querySelector","type","style","display","inputElement","endInputElement","plugins","rangePlugin","flatpickrInstance","flatpickr","setTimeout","addEventListener","open","console","error","initializeSingleAnchorFlatpickr","appendTo","dateFormat","clickOpens","HTMLElement","body","positionElement","Error","message","isValidDateFormat","format","getPlaceholder","isDateRange","placeholderFormat","enableTime","twentyFourHourFormat","allowInput","minDate","maxDate","minTime","maxTime","defaultDate","defaultHour","defaultMinute","enable","disable","mode","closeOnSelect","wrap","noCalendar","onChange","onClose","onOpen","loadLocale","warn","isEnglishOr12HourLocale","isWideScreen","window","innerWidth","time_24hr","weekNumbers","static","_a","showMonths","monthSelectorType","selectedDates","dateStr","instance","timeContainer","calendarContainer","length","classList","add","remove","onReady","_","__","Array","isArray","undefined","updateEnableTime","modalDetected","setAttribute","containerClass","config","English","module","import","localeConfig","default","hideEmptyYear","querySelectorAll","forEach","wrapper","yearInput","currentMonth","min","max","marginLeft","validate","required","invalidText","defaultErrorMessage","hasInteracted","internals","isValid","validationMessage","isEmpty","value","trim","isRequired","validity","valueMissing","customError","setValidity","emitValue","element","eventName","detail","dispatchEvent","CustomEvent","bubbles","composed"],"mappings":"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"}
@@ -23,10 +23,8 @@ $calendar-box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.08),
23
23
  width: 323.875px;
24
24
  border: none;
25
25
  box-sizing: border-box;
26
- position: absolute;
27
26
  opacity: 0;
28
27
  padding: 8px;
29
- left: 20px;
30
28
  display: none;
31
29
  text-align: center;
32
30
  visibility: hidden;
@@ -40,8 +38,12 @@ $calendar-box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.08),
40
38
  -ms-touch-action: manipulation;
41
39
  touch-action: manipulation;
42
40
 
43
- &.container-modal {
44
- position: fixed;
41
+ &.static-position-false {
42
+ position: absolute;
43
+
44
+ &.container-modal {
45
+ position: fixed;
46
+ }
45
47
  }
46
48
 
47
49
  .flatpickr-innerContainer {
@@ -16,6 +16,8 @@ export declare class Card extends LitElement {
16
16
  target: any;
17
17
  /** Hide card border. Useful when clickable card use inside `<kyn-notification>` component. */
18
18
  hideBorder: boolean;
19
+ /** Set this to `true` for highlight */
20
+ highlight: boolean;
19
21
  render(): import("lit").TemplateResult<1>;
20
22
  private handleClick;
21
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/card/card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAMvC;;;;GAIG;AAEH,qBACa,IAAK,SAAQ,UAAU;IAClC,OAAgB,MAAM,MAAY;IAElC,4CAA4C;IAE5C,IAAI,SAAY;IAEhB,yCAAyC;IAEzC,IAAI,SAAM;IAEV,sKAAsK;IAEtK,GAAG,SAAM;IAET,sKAAsK;IAEtK,MAAM,EAAE,GAAG,CAAW;IAEtB,8FAA8F;IAE9F,UAAU,UAAS;IAEV,MAAM;IAsBf,OAAO,CAAC,WAAW;CAMpB;AACD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,IAAI,CAAC;KAClB;CACF"}
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/card/card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAMvC;;;;GAIG;AAEH,qBACa,IAAK,SAAQ,UAAU;IAClC,OAAgB,MAAM,MAAY;IAElC,4CAA4C;IAE5C,IAAI,SAAY;IAEhB,yCAAyC;IAEzC,IAAI,SAAM;IAEV,sKAAsK;IAEtK,GAAG,SAAM;IAET,sKAAsK;IAEtK,MAAM,EAAE,GAAG,CAAW;IAEtB,8FAA8F;IAE9F,UAAU,UAAS;IAEnB,uCAAuC;IAEvC,SAAS,UAAS;IAET,MAAM;IA+Bf,OAAO,CAAC,WAAW;CAMpB;AACD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,IAAI,CAAC;KAClB;CACF"}
@@ -1,4 +1,4 @@
1
- import{_ as r}from"../../../vendor/tslib-53a81efe.js";import{n as e,o,e as t}from"../../../vendor/lit-6e2a7867.js";import{i,s as a,x as d}from"../../../vendor/lit-element-3185f710.js";var l=i`*,
1
+ import{_ as r}from"../../../vendor/tslib-53a81efe.js";import{n as o,o as e,e as t}from"../../../vendor/lit-6e2a7867.js";import{i,s as a,x as d}from"../../../vendor/lit-element-3185f710.js";var l=i`*,
2
2
  *::before,
3
3
  *::after {
4
4
  box-sizing: border-box;
@@ -64,16 +64,24 @@ import{_ as r}from"../../../vendor/tslib-53a81efe.js";import{n as e,o,e as t}fro
64
64
  .card-border {
65
65
  outline: 1px solid var(--kd-color-border-level-secondary);
66
66
  box-shadow: var(--kd-elevation-level-1);
67
- }`;let n=class extends a{constructor(){super(...arguments),this.type="normal",this.href="",this.rel="",this.target="_self",this.hideBorder=!1}render(){const r={"card-wrapper-clickable":!0,"card-border":!1===this.hideBorder};return d`${"clickable"===this.type?d`<a
67
+ }
68
+ .card-highlight {
69
+ outline: 1px solid var(--kd-color-background-highlight-border);
70
+ background: var(--kd-color-background-highlight-fill);
71
+ color: var(--kd-color-text-level-primary);
72
+ }`;let n=class extends a{constructor(){super(...arguments),this.type="normal",this.href="",this.rel="",this.target="_self",this.hideBorder=!1,this.highlight=!1}render(){const r={"card-wrapper-clickable":!0,"card-border":!1===this.hideBorder,"card-highlight":this.highlight},o={"card-wrapper":!0,"card-highlight":this.highlight};return d`${"clickable"===this.type?d`<a
68
73
  part="card-wrapper"
69
- class="${o(r)}"
74
+ class="${e(r)}"
70
75
  href=${this.href}
71
76
  target=${this.target}
72
77
  rel=${this.rel}
73
78
  @click=${r=>this.handleClick(r)}
74
79
  >
75
80
  <slot></slot>
76
- </a>`:d`<div part="card-wrapper" class="card-wrapper">
81
+ </a>`:d`<div
82
+ part="card-wrapper"
83
+ class="${e(o)}"
84
+ >
77
85
  <slot></slot>
78
- </div>`} `}handleClick(r){const e=new CustomEvent("on-card-click",{detail:{origEvent:r}});this.dispatchEvent(e)}};n.styles=l,r([e({type:String})],n.prototype,"type",void 0),r([e({type:String})],n.prototype,"href",void 0),r([e({type:String})],n.prototype,"rel",void 0),r([e({type:String})],n.prototype,"target",void 0),r([e({type:Boolean})],n.prototype,"hideBorder",void 0),n=r([t("kyn-card")],n);export{n as Card};
86
+ </div>`} `}handleClick(r){const o=new CustomEvent("on-card-click",{detail:{origEvent:r}});this.dispatchEvent(o)}};n.styles=l,r([o({type:String})],n.prototype,"type",void 0),r([o({type:String})],n.prototype,"href",void 0),r([o({type:String})],n.prototype,"rel",void 0),r([o({type:String})],n.prototype,"target",void 0),r([o({type:Boolean})],n.prototype,"hideBorder",void 0),r([o({type:Boolean})],n.prototype,"highlight",void 0),n=r([t("kyn-card")],n);export{n as Card};
79
87
  //# sourceMappingURL=card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"card.js","sources":["../../../../src/components/reusable/card/card.ts"],"sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport CardScss from './card.scss';\n\n/**\n * Card.\n * @fires on-card-click - Captures the click event of clickable card and emits the original event details. Use `e.stopPropogation()` / `e.preventDefault()` for any internal clickable elements when card type is `'clickable'` to stop bubbling / prevent event.\n * @slot unnamed - Slot for card contents.\n */\n\n@customElement('kyn-card')\nexport class Card extends LitElement {\n static override styles = CardScss;\n\n /** Card Type. `'normal'` & `'clickable'` */\n @property({ type: String })\n type = 'normal';\n\n /** Card link url for clickable cards. */\n @property({ type: String })\n href = '';\n\n /** Use for Card type `'clickable'`. Defines a relationship between a linked resource and the document. An empty string (default) means no particular relationship. */\n @property({ type: String })\n rel = '';\n\n /** Defines a target attribute for where to load the URL in case of clickable card. Possible options include `'_self'` (deafult), `'_blank'`, `'_parent`', `'_top'` */\n @property({ type: String })\n target: any = '_self';\n\n /** Hide card border. Useful when clickable card use inside `<kyn-notification>` component. */\n @property({ type: Boolean })\n hideBorder = false;\n\n override render() {\n const cardWrapperClasses = {\n 'card-wrapper-clickable': true,\n 'card-border': this.hideBorder === false,\n };\n\n return html`${this.type === 'clickable'\n ? html`<a\n part=\"card-wrapper\"\n class=\"${classMap(cardWrapperClasses)}\"\n href=${this.href}\n target=${this.target}\n rel=${this.rel}\n @click=${(e: Event) => this.handleClick(e)}\n >\n <slot></slot>\n </a>`\n : html`<div part=\"card-wrapper\" class=\"card-wrapper\">\n <slot></slot>\n </div>`} `;\n }\n\n private handleClick(e: Event) {\n const event = new CustomEvent('on-card-click', {\n detail: { origEvent: e },\n });\n this.dispatchEvent(event);\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-card': Card;\n }\n}\n"],"names":["Card","LitElement","constructor","this","type","href","rel","target","hideBorder","render","cardWrapperClasses","html","classMap","e","handleClick","event","CustomEvent","detail","origEvent","dispatchEvent","styles","CardScss","__decorate","property","String","prototype","Boolean","customElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAaO,IAAMA,EAAN,cAAmBC,EAAnB,WAAAC,uBAKLC,KAAIC,KAAG,SAIPD,KAAIE,KAAG,GAIPF,KAAGG,IAAG,GAINH,KAAMI,OAAQ,QAIdJ,KAAUK,YAAG,CA8Bd,CA5BU,MAAAC,GACP,MAAMC,EAAqB,CACzB,0BAA0B,EAC1B,eAAmC,IAApBP,KAAKK,YAGtB,OAAOG,CAAI,GAAiB,cAAdR,KAAKC,KACfO,CAAI;;mBAEOC,EAASF;iBACXP,KAAKE;mBACHF,KAAKI;gBACRJ,KAAKG;mBACDO,GAAaV,KAAKW,YAAYD;;;cAI1CF,CAAI;;kBAGT,CAEO,WAAAG,CAAYD,GAClB,MAAME,EAAQ,IAAIC,YAAY,gBAAiB,CAC7CC,OAAQ,CAAEC,UAAWL,KAEvBV,KAAKgB,cAAcJ,EACpB,GAjDef,EAAMoB,OAAGC,EAIzBC,EAAA,CADCC,EAAS,CAAEnB,KAAMoB,UACFxB,EAAAyB,UAAA,YAAA,GAIhBH,EAAA,CADCC,EAAS,CAAEnB,KAAMoB,UACRxB,EAAAyB,UAAA,YAAA,GAIVH,EAAA,CADCC,EAAS,CAAEnB,KAAMoB,UACTxB,EAAAyB,UAAA,WAAA,GAITH,EAAA,CADCC,EAAS,CAAEnB,KAAMoB,UACIxB,EAAAyB,UAAA,cAAA,GAItBH,EAAA,CADCC,EAAS,CAAEnB,KAAMsB,WACC1B,EAAAyB,UAAA,kBAAA,GArBRzB,EAAIsB,EAAA,CADhBK,EAAc,aACF3B"}
1
+ {"version":3,"file":"card.js","sources":["../../../../src/components/reusable/card/card.ts"],"sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport CardScss from './card.scss';\n\n/**\n * Card.\n * @fires on-card-click - Captures the click event of clickable card and emits the original event details. Use `e.stopPropogation()` / `e.preventDefault()` for any internal clickable elements when card type is `'clickable'` to stop bubbling / prevent event.\n * @slot unnamed - Slot for card contents.\n */\n\n@customElement('kyn-card')\nexport class Card extends LitElement {\n static override styles = CardScss;\n\n /** Card Type. `'normal'` & `'clickable'` */\n @property({ type: String })\n type = 'normal';\n\n /** Card link url for clickable cards. */\n @property({ type: String })\n href = '';\n\n /** Use for Card type `'clickable'`. Defines a relationship between a linked resource and the document. An empty string (default) means no particular relationship. */\n @property({ type: String })\n rel = '';\n\n /** Defines a target attribute for where to load the URL in case of clickable card. Possible options include `'_self'` (deafult), `'_blank'`, `'_parent`', `'_top'` */\n @property({ type: String })\n target: any = '_self';\n\n /** Hide card border. Useful when clickable card use inside `<kyn-notification>` component. */\n @property({ type: Boolean })\n hideBorder = false;\n\n /** Set this to `true` for highlight */\n @property({ type: Boolean })\n highlight = false;\n\n override render() {\n const cardWrapperClasses = {\n 'card-wrapper-clickable': true,\n 'card-border': this.hideBorder === false,\n 'card-highlight': this.highlight,\n };\n\n const cardWrapperDefaultClasses = {\n 'card-wrapper': true,\n 'card-highlight': this.highlight,\n };\n\n return html`${this.type === 'clickable'\n ? html`<a\n part=\"card-wrapper\"\n class=\"${classMap(cardWrapperClasses)}\"\n href=${this.href}\n target=${this.target}\n rel=${this.rel}\n @click=${(e: Event) => this.handleClick(e)}\n >\n <slot></slot>\n </a>`\n : html`<div\n part=\"card-wrapper\"\n class=\"${classMap(cardWrapperDefaultClasses)}\"\n >\n <slot></slot>\n </div>`} `;\n }\n\n private handleClick(e: Event) {\n const event = new CustomEvent('on-card-click', {\n detail: { origEvent: e },\n });\n this.dispatchEvent(event);\n }\n}\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-card': Card;\n }\n}\n"],"names":["Card","LitElement","constructor","this","type","href","rel","target","hideBorder","highlight","render","cardWrapperClasses","cardWrapperDefaultClasses","html","classMap","e","handleClick","event","CustomEvent","detail","origEvent","dispatchEvent","styles","CardScss","__decorate","property","String","prototype","Boolean","customElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAaO,IAAMA,EAAN,cAAmBC,EAAnB,WAAAC,uBAKLC,KAAIC,KAAG,SAIPD,KAAIE,KAAG,GAIPF,KAAGG,IAAG,GAINH,KAAMI,OAAQ,QAIdJ,KAAUK,YAAG,EAIbL,KAASM,WAAG,CAuCb,CArCU,MAAAC,GACP,MAAMC,EAAqB,CACzB,0BAA0B,EAC1B,eAAmC,IAApBR,KAAKK,WACpB,iBAAkBL,KAAKM,WAGnBG,EAA4B,CAChC,gBAAgB,EAChB,iBAAkBT,KAAKM,WAGzB,OAAOI,CAAI,GAAiB,cAAdV,KAAKC,KACfS,CAAI;;mBAEOC,EAASH;iBACXR,KAAKE;mBACHF,KAAKI;gBACRJ,KAAKG;mBACDS,GAAaZ,KAAKa,YAAYD;;;cAI1CF,CAAI;;mBAEOC,EAASF;;;kBAIzB,CAEO,WAAAI,CAAYD,GAClB,MAAME,EAAQ,IAAIC,YAAY,gBAAiB,CAC7CC,OAAQ,CAAEC,UAAWL,KAEvBZ,KAAKkB,cAAcJ,EACpB,GA9DejB,EAAMsB,OAAGC,EAIzBC,EAAA,CADCC,EAAS,CAAErB,KAAMsB,UACF1B,EAAA2B,UAAA,YAAA,GAIhBH,EAAA,CADCC,EAAS,CAAErB,KAAMsB,UACR1B,EAAA2B,UAAA,YAAA,GAIVH,EAAA,CADCC,EAAS,CAAErB,KAAMsB,UACT1B,EAAA2B,UAAA,WAAA,GAITH,EAAA,CADCC,EAAS,CAAErB,KAAMsB,UACI1B,EAAA2B,UAAA,cAAA,GAItBH,EAAA,CADCC,EAAS,CAAErB,KAAMwB,WACC5B,EAAA2B,UAAA,kBAAA,GAInBH,EAAA,CADCC,EAAS,CAAErB,KAAMwB,WACA5B,EAAA2B,UAAA,iBAAA,GAzBP3B,EAAIwB,EAAA,CADhBK,EAAc,aACF7B"}
@@ -54,6 +54,8 @@ export declare class DatePicker extends DatePicker_base {
54
54
  warningAriaLabel: string;
55
55
  /** Sets title attribute for warning message. */
56
56
  warningTitle: string;
57
+ /** Sets whether the Flatpickr calendar UI should use static positioning. */
58
+ staticPosition: boolean;
57
59
  /** Sets flatpickr enableTime value based on detected dateFormat.
58
60
  * @internal
59
61
  */
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/datePicker/datepicker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datepicker.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/datePicker/datepicker.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import{_ as t}from"../../../vendor/tslib-53a81efe.js";import{o as e,n as i,t as a,i as r,e as l}from"../../../vendor/lit-6e2a7867.js";import{i as n,x as o,s}from"../../../vendor/lit-element-3185f710.js";import{FormMixin as d}from"../../../common/mixins/form-input.js";import{o as p}from"../../../vendor/lit-html-29220869.js";import{getPlaceholder as c,injectFlatpickrStyles as h,updateEnableTime as u,initializeSingleAnchorFlatpickr as m,setCalendarAttributes as v,hideEmptyYear as k,getFlatpickrOptions as g,loadLocale as f,emitValue as b,preventFlatpickrOpen as y,handleInputClick as x,handleInputFocus as _}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as w}from"../../../shidoka-flatpickr-theme-0e8883f1.js";import{j as z,H as $,I as D}from"../../../vendor/@kyndryl-design-system/shidoka-icons-e426f09b.js";import"../../../vendor/flatpickr-bbd13d61.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";var F=n`*,
1
+ import{_ as t}from"../../../vendor/tslib-53a81efe.js";import{o as e,n as i,t as a,i as r,e as l}from"../../../vendor/lit-6e2a7867.js";import{i as n,x as o,s}from"../../../vendor/lit-element-3185f710.js";import{FormMixin as d}from"../../../common/mixins/form-input.js";import{o as p}from"../../../vendor/lit-html-29220869.js";import{getPlaceholder as c,injectFlatpickrStyles as h,updateEnableTime as u,initializeSingleAnchorFlatpickr as m,setCalendarAttributes as v,hideEmptyYear as k,getFlatpickrOptions as g,loadLocale as f,emitValue as b,preventFlatpickrOpen as y,handleInputClick as x,handleInputFocus as w}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as _}from"../../../shidoka-flatpickr-theme-329a4dea.js";import{j as z,H as $,I as D}from"../../../vendor/@kyndryl-design-system/shidoka-icons-e426f09b.js";import"../../../vendor/flatpickr-bbd13d61.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";var F=n`*,
2
2
  *::before,
3
3
  *::after {
4
4
  box-sizing: border-box;
@@ -439,6 +439,29 @@ input {
439
439
  padding: 0 50px 0 16px;
440
440
  }
441
441
 
442
+ .input-wrapper {
443
+ position: relative;
444
+ display: inline-block;
445
+ width: 100%;
446
+ }
447
+ .input-wrapper .flatpickr-wrapper {
448
+ width: 100%;
449
+ }
450
+ .input-wrapper .input-icon,
451
+ .input-wrapper .clear-icon {
452
+ position: absolute;
453
+ top: 50%;
454
+ transform: translateY(-50%);
455
+ z-index: 2;
456
+ pointer-events: auto;
457
+ }
458
+ .input-wrapper .input-icon {
459
+ right: 12px;
460
+ }
461
+ .input-wrapper .clear-icon {
462
+ right: 36px;
463
+ }
464
+
442
465
  .date-picker {
443
466
  width: inherit;
444
467
  }
@@ -461,7 +484,7 @@ input {
461
484
  }
462
485
  .date-picker__disabled .label-text .required {
463
486
  color: var(--kd-color-text-level-disabled);
464
- }`;const I={requiredText:"Required",clearAll:"Clear",pleaseSelectDate:"Please select a date",pleaseSelectValidDate:"Please select a valid date"};let S=class extends(d(s)){constructor(){super(...arguments),this.label="",this.locale="en",this.dateFormat="Y-m-d",this.defaultDate=null,this.defaultErrorMessage="",this.required=!1,this.size="md",this.value=null,this.warnText="",this.disable=[],this.enable=[],this.mode="single",this.caption="",this.datePickerDisabled=!1,this.twentyFourHourFormat=null,this.minDate="",this.maxDate="",this.errorAriaLabel="",this.errorTitle="",this.warningAriaLabel="",this.warningTitle="",this._enableTime=!1,this._hasInteracted=!1,this.textStrings=I,this._textStrings=I,this._shouldFlatpickrOpen=!1,this._initialized=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("change",this._onChange),this.addEventListener("reset",this._handleFormReset)}render(){var t,i,a,r;const l=`${this.name}-error-message`,n=`${this.name}-warning-message`,s=this.name?`${this.name}-${Math.random().toString(36).slice(2,11)}`:`date-picker-${Math.random().toString(36).slice(2,11)}`,d=null!==(t=this.name)&&void 0!==t?t:"",h=c(this.dateFormat);return o`
487
+ }`;const I={requiredText:"Required",clearAll:"Clear",pleaseSelectDate:"Please select a date",pleaseSelectValidDate:"Please select a valid date"};let S=class extends(d(s)){constructor(){super(...arguments),this.label="",this.locale="en",this.dateFormat="Y-m-d",this.defaultDate=null,this.defaultErrorMessage="",this.required=!1,this.size="md",this.value=null,this.warnText="",this.disable=[],this.enable=[],this.mode="single",this.caption="",this.datePickerDisabled=!1,this.twentyFourHourFormat=null,this.minDate="",this.maxDate="",this.errorAriaLabel="",this.errorTitle="",this.warningAriaLabel="",this.warningTitle="",this.staticPosition=!1,this._enableTime=!1,this._hasInteracted=!1,this.textStrings=I,this._textStrings=I,this._shouldFlatpickrOpen=!1,this._initialized=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("change",this._onChange),this.addEventListener("reset",this._handleFormReset)}render(){var t,i,a,r;const l=`${this.name}-error-message`,n=`${this.name}-warning-message`,s=this.name?`${this.name}-${Math.random().toString(36).slice(2,11)}`:`date-picker-${Math.random().toString(36).slice(2,11)}`,d=null!==(t=this.name)&&void 0!==t?t:"",h=c(this.dateFormat);return o`
465
488
  <div class=${e(this.getDatepickerClasses())}>
466
489
  <div
467
490
  class="label-text"
@@ -547,5 +570,5 @@ input {
547
570
  @click=${this.preventFlatpickrOpen}
548
571
  >
549
572
  ${this.warnText}
550
- </div>`:null}getDatepickerClasses(){return{"date-picker":!0,"date-picker__enable-time":this._enableTime,"date-picker__multiple-select":"multiple"===this.mode,"date-picker__disabled":this.datePickerDisabled}}async firstUpdated(t){super.firstUpdated(t),this._initialized||(h(w.toString()),this._initialized=!0,await this.updateComplete,this.setupAnchor())}updated(t){super.updated(t),(t.has("dateFormat")||t.has("defaultDate")||t.has("minDate")||t.has("maxDate")||t.has("locale")||t.has("twentyFourHourFormat"))&&(this._enableTime=u(this.dateFormat),this.flatpickrInstance&&this._initialized&&this.updateFlatpickrOptions()),t.has("datePickerDisabled")&&this.datePickerDisabled&&this.flatpickrInstance&&this.flatpickrInstance.close()}async reinitializeFlatpickr(){this._initialized&&this.flatpickrInstance&&(this.flatpickrInstance.destroy(),await this.initializeFlatpickr())}async setupAnchor(){this._inputEl&&await this.initializeFlatpickr()}_handleClear(t){t.preventDefault(),t.stopPropagation(),this.value="multiple"===this.mode?[]:null,this.defaultDate="multiple"===this.mode?[]:null,this.flatpickrInstance&&this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.reinitializeFlatpickr(),this._validate(!0,!1),this.requestUpdate()}async initializeFlatpickr(){this._inputEl&&(this.flatpickrInstance&&this.flatpickrInstance.destroy(),this.flatpickrInstance=await m({inputEl:this._inputEl,getFlatpickrOptions:()=>this.getComponentFlatpickrOptions(),setCalendarAttributes:t=>{const e=!!this.closest("kyn-modal");v(t,e),t.calendarContainer.setAttribute("aria-label","Date picker")},setInitialDates:this.setInitialDates.bind(this)}),k(),this._validate(!1,!1))}async updateFlatpickrOptions(){if(!this.flatpickrInstance)return;const t=await this.getComponentFlatpickrOptions()||{};Object.keys(t).forEach((e=>{this.flatpickrInstance.config&&e in this.flatpickrInstance.config&&this.flatpickrInstance.set(e,t[e])})),this.flatpickrInstance.redraw(),setTimeout((()=>{this.flatpickrInstance&&this.flatpickrInstance.calendarContainer?(v(this.flatpickrInstance),this.flatpickrInstance.calendarContainer.setAttribute("aria-label","Date picker")):console.warn("Calendar container not available...")}),0)}setInitialDates(){if(this.flatpickrInstance)try{if(this.defaultDate)if(Array.isArray(this.defaultDate)){const t=this.defaultDate.filter((t=>t&&""!==t)).map((t=>{const e=new Date(t);return isNaN(e.getTime())?null:e})).filter((t=>null!==t));t.length>0&&(this.value="multiple"===this.mode?t:t[0],this.flatpickrInstance.setDate(t,!1))}else{const t=new Date(this.defaultDate);isNaN(t.getTime())||(this.value=t,this.flatpickrInstance.setDate([t],!1))}else if(this.value){const t=(Array.isArray(this.value)?this.value:[this.value]).filter((t=>t instanceof Date&&!isNaN(t.getTime())));t.length>0&&this.flatpickrInstance.setDate(t,!1)}}catch(t){console.warn("Error setting initial dates:",t)}}async getComponentFlatpickrOptions(){var t,e;const i=this.closest("kyn-modal"),a=i||document.body;return g({locale:this.locale,dateFormat:this.dateFormat,defaultDate:null!==(t=this.defaultDate)&&void 0!==t?t:void 0,enableTime:this._enableTime,twentyFourHourFormat:null!==(e=this.twentyFourHourFormat)&&void 0!==e?e:void 0,inputEl:this._inputEl,minDate:this.minDate,maxDate:this.maxDate,enable:this.enable,disable:this.disable,mode:this.mode,closeOnSelect:!("multiple"===this.mode||this._enableTime),loadLocale:f,onOpen:this.handleOpen.bind(this),onClose:this.handleClose.bind(this),onChange:this.handleDateChange.bind(this),appendTo:a})}handleOpen(){var t;this._shouldFlatpickrOpen||(null===(t=this.flatpickrInstance)||void 0===t||t.close(),this._shouldFlatpickrOpen=!0)}async handleClose(){this._hasInteracted=!0,this._validate(!0,!1),await this.updateComplete}async handleDateChange(t,e){var i;let a;this._hasInteracted=!0,"multiple"===this.mode?this.value=t.length>0?[...t]:null:this.value=t.length>0?t[0]:null,a=Array.isArray(this.value)?this.value.map((t=>t.toISOString())):this.value instanceof Date?this.value.toISOString():null,b(this,"on-change",{dates:a,dateString:(null===(i=this._inputEl)||void 0===i?void 0:i.value)||e}),this._validate(!0,!1),await this.updateComplete}setShouldFlatpickrOpen(t){this._shouldFlatpickrOpen=t}closeFlatpickr(){var t;null===(t=this.flatpickrInstance)||void 0===t||t.close()}preventFlatpickrOpen(t){y(t,this.setShouldFlatpickrOpen.bind(this))}handleInputClickEvent(){x(this.setShouldFlatpickrOpen.bind(this))}handleInputFocusEvent(){_(this._shouldFlatpickrOpen,this.closeFlatpickr.bind(this),this.setShouldFlatpickrOpen.bind(this))}_validate(t,e){if(!(this._inputEl&&this._inputEl instanceof HTMLInputElement))return;t&&(this._hasInteracted=!0);const i=!this._inputEl.value.trim(),a=this.required;let r=this._inputEl.validity,l=this._inputEl.validationMessage;a&&i&&(r={...r,valueMissing:!0},l=this.defaultErrorMessage||this._textStrings.pleaseSelectDate),this.invalidText&&(r={...r,customError:!0},l=this.invalidText);const n=!r.valueMissing&&!r.customError;n||l||(l=this._textStrings.pleaseSelectValidDate),this._internals.setValidity(r,l,this._inputEl),this._isInvalid=!n&&(this._hasInteracted||""!==this.invalidText),this._internalValidationMsg=l,e&&this._internals.reportValidity(),this.requestUpdate()}_onChange(){this._validate(!0,!1)}_handleFormReset(){this.value=null,this.flatpickrInstance&&this.flatpickrInstance.clear(),this._hasInteracted=!1,this._validate(!1,!1)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("change",this._onChange),this.removeEventListener("reset",this._handleFormReset),this.flatpickrInstance&&(this.flatpickrInstance.destroy(),this.flatpickrInstance=void 0)}};S.styles=[F,w],t([i({type:String})],S.prototype,"label",void 0),t([i({type:String})],S.prototype,"locale",void 0),t([i({type:String})],S.prototype,"dateFormat",void 0),t([i({type:Array})],S.prototype,"defaultDate",void 0),t([i({type:String})],S.prototype,"defaultErrorMessage",void 0),t([i({type:Boolean})],S.prototype,"required",void 0),t([i({type:String})],S.prototype,"size",void 0),t([i({type:Array})],S.prototype,"value",void 0),t([i({type:String})],S.prototype,"warnText",void 0),t([i({type:Array})],S.prototype,"disable",void 0),t([i({type:Array})],S.prototype,"enable",void 0),t([i({type:String})],S.prototype,"mode",void 0),t([i({type:String})],S.prototype,"caption",void 0),t([i({type:Boolean})],S.prototype,"datePickerDisabled",void 0),t([i({type:Boolean})],S.prototype,"twentyFourHourFormat",void 0),t([i({type:String})],S.prototype,"minDate",void 0),t([i({type:String})],S.prototype,"maxDate",void 0),t([i({type:String})],S.prototype,"errorAriaLabel",void 0),t([i({type:String})],S.prototype,"errorTitle",void 0),t([i({type:String})],S.prototype,"warningAriaLabel",void 0),t([i({type:String})],S.prototype,"warningTitle",void 0),t([a()],S.prototype,"_enableTime",void 0),t([a()],S.prototype,"_hasInteracted",void 0),t([a()],S.prototype,"flatpickrInstance",void 0),t([r("input")],S.prototype,"_inputEl",void 0),t([i({type:Object})],S.prototype,"textStrings",void 0),t([a()],S.prototype,"_textStrings",void 0),t([a()],S.prototype,"_shouldFlatpickrOpen",void 0),S=t([l("kyn-date-picker")],S);export{S as DatePicker};
573
+ </div>`:null}getDatepickerClasses(){return{"date-picker":!0,"date-picker__enable-time":this._enableTime,"date-picker__multiple-select":"multiple"===this.mode,"date-picker__disabled":this.datePickerDisabled}}async firstUpdated(t){super.firstUpdated(t),this._initialized||(h(_.toString()),this._initialized=!0,await this.updateComplete,this.setupAnchor())}updated(t){super.updated(t),(t.has("dateFormat")||t.has("defaultDate")||t.has("minDate")||t.has("maxDate")||t.has("locale")||t.has("twentyFourHourFormat"))&&(this._enableTime=u(this.dateFormat),this.flatpickrInstance&&this._initialized&&this.updateFlatpickrOptions()),t.has("datePickerDisabled")&&this.datePickerDisabled&&this.flatpickrInstance&&this.flatpickrInstance.close()}async reinitializeFlatpickr(){this._initialized&&this.flatpickrInstance&&(this.flatpickrInstance.destroy(),await this.initializeFlatpickr())}async setupAnchor(){this._inputEl&&await this.initializeFlatpickr()}_handleClear(t){t.preventDefault(),t.stopPropagation(),this.value="multiple"===this.mode?[]:null,this.defaultDate="multiple"===this.mode?[]:null,this.flatpickrInstance&&this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.reinitializeFlatpickr(),this._validate(!0,!1),this.requestUpdate()}async initializeFlatpickr(){this._inputEl&&(this.flatpickrInstance&&this.flatpickrInstance.destroy(),this.flatpickrInstance=await m({inputEl:this._inputEl,getFlatpickrOptions:()=>this.getComponentFlatpickrOptions(),setCalendarAttributes:t=>{const e=!!this.closest("kyn-modal");v(t,e),t.calendarContainer.setAttribute("aria-label","Date picker")},setInitialDates:this.setInitialDates.bind(this)}),k(),this._validate(!1,!1))}async updateFlatpickrOptions(){if(!this.flatpickrInstance)return;const t=await this.getComponentFlatpickrOptions()||{};Object.keys(t).forEach((e=>{this.flatpickrInstance.config&&e in this.flatpickrInstance.config&&this.flatpickrInstance.set(e,t[e])})),this.flatpickrInstance.redraw(),setTimeout((()=>{this.flatpickrInstance&&this.flatpickrInstance.calendarContainer?(v(this.flatpickrInstance),this.flatpickrInstance.calendarContainer.setAttribute("aria-label","Date picker")):console.warn("Calendar container not available...")}),0)}setInitialDates(){if(this.flatpickrInstance)try{if(this.defaultDate)if(Array.isArray(this.defaultDate)){const t=this.defaultDate.filter((t=>t&&""!==t)).map((t=>{const e=new Date(t);return isNaN(e.getTime())?null:e})).filter((t=>null!==t));t.length>0&&(this.value="multiple"===this.mode?t:t[0],this.flatpickrInstance.setDate(t,!1))}else{const t=new Date(this.defaultDate);isNaN(t.getTime())||(this.value=t,this.flatpickrInstance.setDate([t],!1))}else if(this.value){const t=(Array.isArray(this.value)?this.value:[this.value]).filter((t=>t instanceof Date&&!isNaN(t.getTime())));t.length>0&&this.flatpickrInstance.setDate(t,!1)}}catch(t){console.warn("Error setting initial dates:",t)}}async getComponentFlatpickrOptions(){var t,e;const i=this.closest("kyn-modal"),a=i||document.body;return g({locale:this.locale,dateFormat:this.dateFormat,defaultDate:null!==(t=this.defaultDate)&&void 0!==t?t:void 0,enableTime:this._enableTime,twentyFourHourFormat:null!==(e=this.twentyFourHourFormat)&&void 0!==e?e:void 0,inputEl:this._inputEl,minDate:this.minDate,maxDate:this.maxDate,enable:this.enable,disable:this.disable,mode:this.mode,closeOnSelect:!("multiple"===this.mode||this._enableTime),loadLocale:f,onOpen:this.handleOpen.bind(this),onClose:this.handleClose.bind(this),onChange:this.handleDateChange.bind(this),appendTo:a,static:this.staticPosition})}handleOpen(){var t;this._shouldFlatpickrOpen||(null===(t=this.flatpickrInstance)||void 0===t||t.close(),this._shouldFlatpickrOpen=!0)}async handleClose(){this._hasInteracted=!0,this._validate(!0,!1),await this.updateComplete}async handleDateChange(t,e){var i;let a;this._hasInteracted=!0,"multiple"===this.mode?this.value=t.length>0?[...t]:null:this.value=t.length>0?t[0]:null,a=Array.isArray(this.value)?this.value.map((t=>t.toISOString())):this.value instanceof Date?this.value.toISOString():null,b(this,"on-change",{dates:a,dateString:(null===(i=this._inputEl)||void 0===i?void 0:i.value)||e}),this._validate(!0,!1),await this.updateComplete}setShouldFlatpickrOpen(t){this._shouldFlatpickrOpen=t}closeFlatpickr(){var t;null===(t=this.flatpickrInstance)||void 0===t||t.close()}preventFlatpickrOpen(t){y(t,this.setShouldFlatpickrOpen.bind(this))}handleInputClickEvent(){x(this.setShouldFlatpickrOpen.bind(this))}handleInputFocusEvent(){w(this._shouldFlatpickrOpen,this.closeFlatpickr.bind(this),this.setShouldFlatpickrOpen.bind(this))}_validate(t,e){if(!(this._inputEl&&this._inputEl instanceof HTMLInputElement))return;t&&(this._hasInteracted=!0);const i=!this._inputEl.value.trim(),a=this.required;let r=this._inputEl.validity,l=this._inputEl.validationMessage;a&&i&&(r={...r,valueMissing:!0},l=this.defaultErrorMessage||this._textStrings.pleaseSelectDate),this.invalidText&&(r={...r,customError:!0},l=this.invalidText);const n=!r.valueMissing&&!r.customError;n||l||(l=this._textStrings.pleaseSelectValidDate),this._internals.setValidity(r,l,this._inputEl),this._isInvalid=!n&&(this._hasInteracted||""!==this.invalidText),this._internalValidationMsg=l,e&&this._internals.reportValidity(),this.requestUpdate()}_onChange(){this._validate(!0,!1)}_handleFormReset(){this.value=null,this.flatpickrInstance&&this.flatpickrInstance.clear(),this._hasInteracted=!1,this._validate(!1,!1)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("change",this._onChange),this.removeEventListener("reset",this._handleFormReset),this.flatpickrInstance&&(this.flatpickrInstance.destroy(),this.flatpickrInstance=void 0)}};S.styles=[F,_],t([i({type:String})],S.prototype,"label",void 0),t([i({type:String})],S.prototype,"locale",void 0),t([i({type:String})],S.prototype,"dateFormat",void 0),t([i({type:Array})],S.prototype,"defaultDate",void 0),t([i({type:String})],S.prototype,"defaultErrorMessage",void 0),t([i({type:Boolean})],S.prototype,"required",void 0),t([i({type:String})],S.prototype,"size",void 0),t([i({type:Array})],S.prototype,"value",void 0),t([i({type:String})],S.prototype,"warnText",void 0),t([i({type:Array})],S.prototype,"disable",void 0),t([i({type:Array})],S.prototype,"enable",void 0),t([i({type:String})],S.prototype,"mode",void 0),t([i({type:String})],S.prototype,"caption",void 0),t([i({type:Boolean})],S.prototype,"datePickerDisabled",void 0),t([i({type:Boolean})],S.prototype,"twentyFourHourFormat",void 0),t([i({type:String})],S.prototype,"minDate",void 0),t([i({type:String})],S.prototype,"maxDate",void 0),t([i({type:String})],S.prototype,"errorAriaLabel",void 0),t([i({type:String})],S.prototype,"errorTitle",void 0),t([i({type:String})],S.prototype,"warningAriaLabel",void 0),t([i({type:String})],S.prototype,"warningTitle",void 0),t([i({type:Boolean})],S.prototype,"staticPosition",void 0),t([a()],S.prototype,"_enableTime",void 0),t([a()],S.prototype,"_hasInteracted",void 0),t([a()],S.prototype,"flatpickrInstance",void 0),t([r("input")],S.prototype,"_inputEl",void 0),t([i({type:Object})],S.prototype,"textStrings",void 0),t([a()],S.prototype,"_textStrings",void 0),t([a()],S.prototype,"_shouldFlatpickrOpen",void 0),S=t([l("kyn-date-picker")],S);export{S as DatePicker};
551
574
  //# sourceMappingURL=datepicker.js.map