@kyndryl-design-system/shidoka-applications 2.9.0 → 2.9.2

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 (27) hide show
  1. package/components/reusable/card/card.d.ts +2 -0
  2. package/components/reusable/card/card.d.ts.map +1 -1
  3. package/components/reusable/card/card.js +13 -5
  4. package/components/reusable/card/card.js.map +1 -1
  5. package/components/reusable/datePicker/datepicker.d.ts +4 -0
  6. package/components/reusable/datePicker/datepicker.d.ts.map +1 -1
  7. package/components/reusable/datePicker/datepicker.js +4 -4
  8. package/components/reusable/datePicker/datepicker.js.map +1 -1
  9. package/components/reusable/daterangepicker/daterangepicker.d.ts +4 -0
  10. package/components/reusable/daterangepicker/daterangepicker.d.ts.map +1 -1
  11. package/components/reusable/daterangepicker/daterangepicker.js +2 -2
  12. package/components/reusable/daterangepicker/daterangepicker.js.map +1 -1
  13. package/components/reusable/modal/modal.d.ts +1 -0
  14. package/components/reusable/modal/modal.d.ts.map +1 -1
  15. package/components/reusable/modal/modal.js.map +1 -1
  16. package/components/reusable/notification/notification.d.ts.map +1 -1
  17. package/components/reusable/notification/notification.js +7 -21
  18. package/components/reusable/notification/notification.js.map +1 -1
  19. package/components/reusable/table/table-cell.d.ts +1 -1
  20. package/components/reusable/table/table-cell.js.map +1 -1
  21. package/components/reusable/table/table-header.d.ts +1 -1
  22. package/components/reusable/table/table-header.js.map +1 -1
  23. package/components/reusable/timepicker/timepicker.d.ts +4 -0
  24. package/components/reusable/timepicker/timepicker.d.ts.map +1 -1
  25. package/components/reusable/timepicker/timepicker.js +7 -7
  26. package/components/reusable/timepicker/timepicker.js.map +1 -1
  27. package/package.json +1 -1
@@ -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"}
@@ -76,6 +76,8 @@ export declare class DatePicker extends DatePicker_base {
76
76
  textStrings: {
77
77
  requiredText: string;
78
78
  clearAll: string;
79
+ pleaseSelectDate: string;
80
+ pleaseSelectValidDate: string;
79
81
  };
80
82
  /** Internal text strings.
81
83
  * @internal
@@ -83,6 +85,8 @@ export declare class DatePicker extends DatePicker_base {
83
85
  _textStrings: {
84
86
  requiredText: string;
85
87
  clearAll: string;
88
+ pleaseSelectDate: string;
89
+ pleaseSelectValidDate: string;
86
90
  };
87
91
  /** Control flag to prevent Flatpickr from opening when clicking caption, error, label, or warning elements.
88
92
  * @internal
@@ -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 w}from"../../../common/helpers/flatpickr.js";import"../button/button.js";import{c as _}from"../../../shidoka-flatpickr-theme-0e8883f1.js";import{j as z,H as $,I as F}from"../../../vendor/@kyndryl-design-system/shidoka-icons-e426f09b.js";import"../../../vendor/flatpickr-bbd13d61.js";import"../../../common/helpers/helpers.js";import"../button/defs.js";var I=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 _}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`*,
2
2
  *::before,
3
3
  *::after {
4
4
  box-sizing: border-box;
@@ -461,7 +461,7 @@ input {
461
461
  }
462
462
  .date-picker__disabled .label-text .required {
463
463
  color: var(--kd-color-text-level-disabled);
464
- }`;const D={requiredText:"Required",clearAll:"Clear"};let E=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=D,this._textStrings=D,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`
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`
465
465
  <div class=${e(this.getDatepickerClasses())}>
466
466
  <div
467
467
  class="label-text"
@@ -535,7 +535,7 @@ input {
535
535
  class="error-icon"
536
536
  aria-label=${`${this.errorAriaLabel}`||"Error message icon"}
537
537
  role="button"
538
- >${p(F)}</span
538
+ >${p(D)}</span
539
539
  >${this.invalidText||this._internalValidationMsg||this.defaultErrorMessage}
540
540
  </div>`:this.warnText?o`<div
541
541
  id=${e}
@@ -547,5 +547,5 @@ input {
547
547
  @click=${this.preventFlatpickrOpen}
548
548
  >
549
549
  ${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(_.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(){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.invalidText&&(r={...r,customError:!0},l=this.invalidText);const n=!r.valueMissing&&!r.customError;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)}};E.styles=[I,_],t([i({type:String})],E.prototype,"label",void 0),t([i({type:String})],E.prototype,"locale",void 0),t([i({type:String})],E.prototype,"dateFormat",void 0),t([i({type:Array})],E.prototype,"defaultDate",void 0),t([i({type:String})],E.prototype,"defaultErrorMessage",void 0),t([i({type:Boolean})],E.prototype,"required",void 0),t([i({type:String})],E.prototype,"size",void 0),t([i({type:Array})],E.prototype,"value",void 0),t([i({type:String})],E.prototype,"warnText",void 0),t([i({type:Array})],E.prototype,"disable",void 0),t([i({type:Array})],E.prototype,"enable",void 0),t([i({type:String})],E.prototype,"mode",void 0),t([i({type:String})],E.prototype,"caption",void 0),t([i({type:Boolean})],E.prototype,"datePickerDisabled",void 0),t([i({type:Boolean})],E.prototype,"twentyFourHourFormat",void 0),t([i({type:String})],E.prototype,"minDate",void 0),t([i({type:String})],E.prototype,"maxDate",void 0),t([i({type:String})],E.prototype,"errorAriaLabel",void 0),t([i({type:String})],E.prototype,"errorTitle",void 0),t([i({type:String})],E.prototype,"warningAriaLabel",void 0),t([i({type:String})],E.prototype,"warningTitle",void 0),t([a()],E.prototype,"_enableTime",void 0),t([a()],E.prototype,"_hasInteracted",void 0),t([a()],E.prototype,"flatpickrInstance",void 0),t([r("input")],E.prototype,"_inputEl",void 0),t([i({type:Object})],E.prototype,"textStrings",void 0),t([a()],E.prototype,"_textStrings",void 0),t([a()],E.prototype,"_shouldFlatpickrOpen",void 0),E=t([l("kyn-date-picker")],E);export{E as DatePicker};
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};
551
551
  //# sourceMappingURL=datepicker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.js","sources":["../../../../src/components/reusable/datePicker/datepicker.ts"],"sourcesContent":["import { html, LitElement, PropertyValues } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport {\n injectFlatpickrStyles,\n langsArray,\n initializeSingleAnchorFlatpickr,\n getFlatpickrOptions,\n getPlaceholder,\n preventFlatpickrOpen,\n handleInputClick,\n handleInputFocus,\n updateEnableTime,\n setCalendarAttributes,\n loadLocale,\n emitValue,\n hideEmptyYear,\n} from '../../../common/helpers/flatpickr';\nimport '../../reusable/button';\n\nimport flatpickr from 'flatpickr';\nimport { BaseOptions } from 'flatpickr/dist/types/options';\n\nimport DatePickerStyles from './datepicker.scss';\nimport ShidokaFlatpickrTheme from '../../../common/scss/shidoka-flatpickr-theme.scss';\n\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-filled.svg';\nimport calendarIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/24/calendar.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/close-simple.svg';\n\ntype SupportedLocale = (typeof langsArray)[number];\n\nconst _defaultTextStrings = {\n requiredText: 'Required',\n clearAll: 'Clear',\n};\n\n/**\n * Datepicker: uses Flatpickr's datetime picker library -- `https://flatpickr.js.org`\n * @fires on-change - Captures the input event and emits the selected value and original event details.\n * @slot tooltip - Slot for tooltip.\n */\n@customElement('kyn-date-picker')\nexport class DatePicker extends FormMixin(LitElement) {\n static override styles = [DatePickerStyles, ShidokaFlatpickrTheme];\n\n /** Label text. */\n @property({ type: String })\n label = '';\n\n /* Sets desired locale and, if supported, dynamically loads language lib */\n @property({ type: String })\n locale: SupportedLocale = 'en';\n\n /** Sets flatpickr value to define how the date will be displayed in the input box (ex: `Y-m-d H:i`). */\n @property({ type: String })\n dateFormat = 'Y-m-d';\n\n /** Sets the initial selected date(s). For multiple mode, provide an array of date strings matching dateFormat. */\n @property({ type: Array })\n defaultDate: string | string[] | null = null;\n\n /** Sets default error message. */\n @property({ type: String })\n defaultErrorMessage = '';\n\n /** Sets datepicker form input value to required/required. */\n @property({ type: Boolean })\n required = false;\n\n /** Input size. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n size = 'md';\n\n /** Sets pre-selected date/time value. */\n @property({ type: Array })\n override value: Date | Date[] | null = null;\n\n /** Sets validation warning messaging. */\n @property({ type: String })\n warnText = '';\n\n /** Sets flatpickr options setting to disable specific dates. */\n @property({ type: Array })\n disable: (string | number | Date)[] = [];\n\n /** Sets flatpickr options setting to enable specific dates. */\n @property({ type: Array })\n enable: (string | number | Date)[] = [];\n\n /** Sets flatpickr mode to select single (default), multiple dates. */\n @property({ type: String })\n mode: 'single' | 'multiple' = 'single';\n\n /** Sets caption to be displayed under primary date picker elements. */\n @property({ type: String })\n caption = '';\n\n /** Sets entire datepicker form element to enabled/disabled. */\n @property({ type: Boolean })\n datePickerDisabled = false;\n\n /** Sets 24 hour formatting true/false.\n * Defaults to 12H for all `en-*` locales and 24H for all other locales.\n */\n @property({ type: Boolean })\n twentyFourHourFormat: boolean | null = null;\n\n /** Sets lower boundary of datepicker date selection. */\n @property({ type: String })\n minDate: string | number | Date = '';\n\n /** Sets upper boundary of datepicker date selection. */\n @property({ type: String })\n maxDate: string | number | Date = '';\n\n /** Sets aria label attribute for error message. */\n @property({ type: String })\n errorAriaLabel = '';\n\n /** Sets title attribute for error message. */\n @property({ type: String })\n errorTitle = '';\n\n /** Sets aria label attribute for warning message. */\n @property({ type: String })\n warningAriaLabel = '';\n\n /** Sets title attribute for warning message. */\n @property({ type: String })\n warningTitle = '';\n\n /** Sets flatpickr enableTime value based on detected dateFormat.\n * @internal\n */\n @state()\n private _enableTime = false;\n\n /**\n * Sets whether user has interacted with datepicker for error handling.\n * @internal\n */\n @state()\n private _hasInteracted = false;\n\n /** Flatpickr instantiation.\n * @internal\n */\n @state()\n private flatpickrInstance?: flatpickr.Instance;\n\n /**\n * Queries the anchor DOM element.\n * @internal\n */\n @query('input')\n private _inputEl?: HTMLInputElement;\n\n /** Customizable text strings. */\n @property({ type: Object })\n textStrings = _defaultTextStrings;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n _textStrings = _defaultTextStrings;\n\n /** Control flag to prevent Flatpickr from opening when clicking caption, error, label, or warning elements.\n * @internal\n */\n @state()\n private _shouldFlatpickrOpen = false;\n\n override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('change', this._onChange);\n this.addEventListener('reset', this._handleFormReset);\n }\n\n override render() {\n const errorId = `${this.name}-error-message`;\n const warningId = `${this.name}-warning-message`;\n const anchorId = this.name\n ? `${this.name}-${Math.random().toString(36).slice(2, 11)}`\n : `date-picker-${Math.random().toString(36).slice(2, 11)}`;\n const descriptionId = this.name ?? '';\n const placeholder = getPlaceholder(this.dateFormat);\n\n return html`\n <div class=${classMap(this.getDatepickerClasses())}>\n <div\n class=\"label-text\"\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n ?disabled=${this.datePickerDisabled}\n id=${`label-${anchorId}`}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings?.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </div>\n\n <div class=\"input-wrapper\">\n <input\n class=\"${classMap({\n [`size--${this.size}`]: true,\n 'input-custom': true,\n })}\"\n type=\"text\"\n id=${anchorId}\n name=${this.name}\n placeholder=${placeholder}\n ?disabled=${this.datePickerDisabled}\n ?required=${this.required}\n ?invalid=${this._isInvalid}\n aria-invalid=${this._isInvalid ? 'true' : 'false'}\n aria-labelledby=${`label-${anchorId}`}\n @click=${this.handleInputClickEvent}\n @focus=${this.handleInputFocusEvent}\n />\n ${this._inputEl?.value ||\n (this.value &&\n Array.isArray(this.value) &&\n this.value.length > 0 &&\n !this.value.every((date) => date === null)) ||\n (this.defaultDate &&\n Array.isArray(this.defaultDate) &&\n this.defaultDate.length > 0 &&\n !this.defaultDate.every((date) => date === null || date === ''))\n ? html`\n <kyn-button\n ?disabled=${this.datePickerDisabled}\n class=\"clear-button\"\n kind=\"ghost\"\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${this._handleClear}\n >\n <span style=\"display:flex;\" slot=\"icon\"\n >${unsafeSVG(clearIcon)}</span\n >\n </kyn-button>\n `\n : html`<span class=\"input-icon\">${unsafeSVG(calendarIcon)}</span>`}\n </div>\n\n ${this.caption\n ? html`<div\n id=${descriptionId}\n class=\"caption\"\n aria-disabled=${this.datePickerDisabled}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n ${this.caption}\n </div>`\n : ''}\n ${this.renderValidationMessage(errorId, warningId)}\n </div>\n `;\n }\n\n private renderValidationMessage(errorId: string, warningId: string) {\n if (this.invalidText || (this._isInvalid && this._hasInteracted)) {\n return html`<div\n id=${errorId}\n class=\"error error-text\"\n role=\"alert\"\n title=${this.errorTitle || 'Error'}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n <span\n class=\"error-icon\"\n aria-label=${`${this.errorAriaLabel}` || 'Error message icon'}\n role=\"button\"\n >${unsafeSVG(errorIcon)}</span\n >${this.invalidText ||\n this._internalValidationMsg ||\n this.defaultErrorMessage}\n </div>`;\n }\n\n if (this.warnText) {\n return html`<div\n id=${warningId}\n class=\"warn warn-text\"\n role=\"alert\"\n aria-label=${this.warningAriaLabel || 'Warning message'}\n title=${this.warningTitle || 'Warning'}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n ${this.warnText}\n </div>`;\n }\n\n return null;\n }\n\n getDatepickerClasses() {\n return {\n 'date-picker': true,\n 'date-picker__enable-time': this._enableTime,\n 'date-picker__multiple-select': this.mode === 'multiple',\n 'date-picker__disabled': this.datePickerDisabled,\n };\n }\n\n private _initialized = false;\n\n override async firstUpdated(changedProperties: PropertyValues) {\n super.firstUpdated(changedProperties);\n if (!this._initialized) {\n injectFlatpickrStyles(ShidokaFlatpickrTheme.toString());\n this._initialized = true;\n await this.updateComplete;\n this.setupAnchor();\n }\n }\n\n override updated(changedProperties: PropertyValues) {\n super.updated(changedProperties);\n if (\n changedProperties.has('dateFormat') ||\n changedProperties.has('defaultDate') ||\n changedProperties.has('minDate') ||\n changedProperties.has('maxDate') ||\n changedProperties.has('locale') ||\n changedProperties.has('twentyFourHourFormat')\n ) {\n this._enableTime = updateEnableTime(this.dateFormat);\n if (this.flatpickrInstance && this._initialized) {\n this.updateFlatpickrOptions();\n }\n }\n\n if (\n changedProperties.has('datePickerDisabled') &&\n this.datePickerDisabled &&\n this.flatpickrInstance\n ) {\n this.flatpickrInstance.close();\n }\n }\n\n private async reinitializeFlatpickr() {\n if (this._initialized && this.flatpickrInstance) {\n this.flatpickrInstance.destroy();\n await this.initializeFlatpickr();\n }\n }\n\n private async setupAnchor() {\n if (this._inputEl) {\n await this.initializeFlatpickr();\n }\n }\n\n private _handleClear(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n this.value = this.mode === 'multiple' ? [] : null;\n this.defaultDate = this.mode === 'multiple' ? [] : null;\n\n if (this.flatpickrInstance) {\n this.flatpickrInstance.clear();\n }\n if (this._inputEl) {\n this._inputEl.value = '';\n }\n\n this.reinitializeFlatpickr();\n\n this._validate(true, false);\n this.requestUpdate();\n }\n\n async initializeFlatpickr(): Promise<void> {\n if (!this._inputEl) return;\n if (this.flatpickrInstance) this.flatpickrInstance.destroy();\n\n this.flatpickrInstance = await initializeSingleAnchorFlatpickr({\n inputEl: this._inputEl,\n getFlatpickrOptions: () => this.getComponentFlatpickrOptions(),\n setCalendarAttributes: (instance) => {\n const modalDetected = !!this.closest('kyn-modal');\n setCalendarAttributes(instance, modalDetected);\n instance.calendarContainer.setAttribute('aria-label', 'Date picker');\n },\n setInitialDates: this.setInitialDates.bind(this),\n });\n\n hideEmptyYear();\n this._validate(false, false);\n }\n\n async updateFlatpickrOptions(): Promise<void> {\n if (!this.flatpickrInstance) return;\n const newOptions = (await this.getComponentFlatpickrOptions()) || {};\n Object.keys(newOptions).forEach((key) => {\n if (\n this.flatpickrInstance!.config &&\n key in this.flatpickrInstance!.config\n ) {\n this.flatpickrInstance!.set(\n key as keyof BaseOptions,\n newOptions[key as keyof BaseOptions]\n );\n }\n });\n this.flatpickrInstance.redraw();\n setTimeout(() => {\n if (this.flatpickrInstance && this.flatpickrInstance.calendarContainer) {\n setCalendarAttributes(this.flatpickrInstance);\n this.flatpickrInstance.calendarContainer.setAttribute(\n 'aria-label',\n 'Date picker'\n );\n } else {\n console.warn('Calendar container not available...');\n }\n }, 0);\n }\n\n setInitialDates(): void {\n if (!this.flatpickrInstance) return;\n\n try {\n if (this.defaultDate) {\n if (Array.isArray(this.defaultDate)) {\n const validDates = this.defaultDate\n .filter((date) => date && date !== '')\n .map((date) => {\n const parsed = new Date(date);\n return isNaN(parsed.getTime()) ? null : parsed;\n })\n .filter((date): date is Date => date !== null);\n\n if (validDates.length > 0) {\n this.value = this.mode === 'multiple' ? validDates : validDates[0];\n this.flatpickrInstance.setDate(validDates, false);\n }\n } else {\n const parsed = new Date(this.defaultDate);\n if (!isNaN(parsed.getTime())) {\n this.value = parsed;\n this.flatpickrInstance.setDate([parsed], false);\n }\n }\n } else if (this.value) {\n const dates = Array.isArray(this.value) ? this.value : [this.value];\n const validDates = dates.filter(\n (date): date is Date => date instanceof Date && !isNaN(date.getTime())\n );\n\n if (validDates.length > 0) {\n this.flatpickrInstance.setDate(validDates, false);\n }\n }\n } catch (error) {\n console.warn('Error setting initial dates:', error);\n }\n }\n\n async getComponentFlatpickrOptions(): Promise<Partial<BaseOptions>> {\n const modal = this.closest('kyn-modal');\n const container = modal ? modal : document.body;\n\n return getFlatpickrOptions({\n locale: this.locale,\n dateFormat: this.dateFormat,\n defaultDate: this.defaultDate ?? undefined,\n enableTime: this._enableTime,\n twentyFourHourFormat: this.twentyFourHourFormat ?? undefined,\n inputEl: this._inputEl!,\n minDate: this.minDate,\n maxDate: this.maxDate,\n enable: this.enable,\n disable: this.disable,\n mode: this.mode,\n closeOnSelect: !(this.mode === 'multiple' || this._enableTime),\n loadLocale,\n onOpen: this.handleOpen.bind(this),\n onClose: this.handleClose.bind(this),\n onChange: this.handleDateChange.bind(this),\n appendTo: container,\n });\n }\n\n handleOpen(): void {\n if (!this._shouldFlatpickrOpen) {\n this.flatpickrInstance?.close();\n this._shouldFlatpickrOpen = true;\n }\n }\n\n async handleClose(): Promise<void> {\n this._hasInteracted = true;\n this._validate(true, false);\n await this.updateComplete;\n }\n\n async handleDateChange(\n selectedDates: Date[],\n dateStr: string\n ): Promise<void> {\n this._hasInteracted = true;\n\n if (this.mode === 'multiple') {\n this.value = selectedDates.length > 0 ? [...selectedDates] : null;\n } else {\n this.value = selectedDates.length > 0 ? selectedDates[0] : null;\n }\n\n let formattedDates;\n if (Array.isArray(this.value)) {\n formattedDates = this.value.map((date) => date.toISOString());\n } else if (this.value instanceof Date) {\n formattedDates = this.value.toISOString();\n } else {\n formattedDates = null;\n }\n\n emitValue(this, 'on-change', {\n dates: formattedDates,\n dateString: (this._inputEl as HTMLInputElement)?.value || dateStr,\n });\n\n this._validate(true, false);\n await this.updateComplete;\n }\n\n private setShouldFlatpickrOpen(value: boolean): void {\n this._shouldFlatpickrOpen = value;\n }\n\n private closeFlatpickr(): void {\n this.flatpickrInstance?.close();\n }\n\n private preventFlatpickrOpen(event: Event): void {\n preventFlatpickrOpen(event, this.setShouldFlatpickrOpen.bind(this));\n }\n\n private handleInputClickEvent(): void {\n handleInputClick(this.setShouldFlatpickrOpen.bind(this));\n }\n\n private handleInputFocusEvent(): void {\n handleInputFocus(\n this._shouldFlatpickrOpen,\n this.closeFlatpickr.bind(this),\n this.setShouldFlatpickrOpen.bind(this)\n );\n }\n\n private _validate(interacted: boolean, report: boolean): void {\n if (!this._inputEl || !(this._inputEl instanceof HTMLInputElement)) {\n return;\n }\n\n if (interacted) {\n this._hasInteracted = true;\n }\n\n const isEmpty = !this._inputEl.value.trim();\n const isRequired = this.required;\n\n let validity = this._inputEl.validity;\n let validationMessage = this._inputEl.validationMessage;\n\n if (isRequired && isEmpty) {\n validity = { ...validity, valueMissing: true };\n validationMessage = this.defaultErrorMessage;\n }\n\n if (this.invalidText) {\n validity = { ...validity, customError: true };\n validationMessage = this.invalidText;\n }\n\n const isValid = !validity.valueMissing && !validity.customError;\n\n this._internals.setValidity(validity, validationMessage, this._inputEl);\n this._isInvalid =\n !isValid && (this._hasInteracted || this.invalidText !== '');\n this._internalValidationMsg = validationMessage;\n\n if (report) {\n this._internals.reportValidity();\n }\n\n this.requestUpdate();\n }\n\n private _onChange() {\n this._validate(true, false);\n }\n\n private _handleFormReset() {\n this.value = null;\n if (this.flatpickrInstance) {\n this.flatpickrInstance.clear();\n }\n this._hasInteracted = false;\n this._validate(false, false);\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener('change', this._onChange);\n this.removeEventListener('reset', this._handleFormReset);\n\n if (this.flatpickrInstance) {\n this.flatpickrInstance.destroy();\n this.flatpickrInstance = undefined;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-date-picker': DatePicker;\n }\n}\n"],"names":["_defaultTextStrings","requiredText","clearAll","DatePicker","FormMixin","LitElement","constructor","this","label","locale","dateFormat","defaultDate","defaultErrorMessage","required","size","value","warnText","disable","enable","mode","caption","datePickerDisabled","twentyFourHourFormat","minDate","maxDate","errorAriaLabel","errorTitle","warningAriaLabel","warningTitle","_enableTime","_hasInteracted","textStrings","_textStrings","_shouldFlatpickrOpen","_initialized","connectedCallback","super","addEventListener","_onChange","_handleFormReset","render","errorId","name","warningId","anchorId","Math","random","toString","slice","descriptionId","_a","placeholder","getPlaceholder","html","classMap","getDatepickerClasses","preventFlatpickrOpen","_b","_c","_isInvalid","handleInputClickEvent","handleInputFocusEvent","_d","_inputEl","Array","isArray","length","every","date","_handleClear","unsafeSVG","clearIcon","calendarIcon","renderValidationMessage","invalidText","errorIcon","_internalValidationMsg","firstUpdated","changedProperties","injectFlatpickrStyles","ShidokaFlatpickrTheme","updateComplete","setupAnchor","updated","has","updateEnableTime","flatpickrInstance","updateFlatpickrOptions","close","reinitializeFlatpickr","destroy","initializeFlatpickr","event","preventDefault","stopPropagation","clear","_validate","requestUpdate","initializeSingleAnchorFlatpickr","inputEl","getFlatpickrOptions","getComponentFlatpickrOptions","setCalendarAttributes","instance","modalDetected","closest","calendarContainer","setAttribute","setInitialDates","bind","hideEmptyYear","newOptions","Object","keys","forEach","key","config","set","redraw","setTimeout","console","warn","validDates","filter","map","parsed","Date","isNaN","getTime","setDate","error","modal","container","document","body","undefined","enableTime","closeOnSelect","loadLocale","onOpen","handleOpen","onClose","handleClose","onChange","handleDateChange","appendTo","selectedDates","dateStr","formattedDates","toISOString","emitValue","dates","dateString","setShouldFlatpickrOpen","closeFlatpickr","handleInputClick","handleInputFocus","interacted","report","HTMLInputElement","isEmpty","trim","isRequired","validity","validationMessage","valueMissing","customError","isValid","_internals","setValidity","reportValidity","disconnectedCallback","removeEventListener","styles","DatePickerStyles","__decorate","property","type","String","prototype","Boolean","state","query","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"datepicker.js","sources":["../../../../src/components/reusable/datePicker/datepicker.ts"],"sourcesContent":["import { html, LitElement, PropertyValues } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport {\n injectFlatpickrStyles,\n langsArray,\n initializeSingleAnchorFlatpickr,\n getFlatpickrOptions,\n getPlaceholder,\n preventFlatpickrOpen,\n handleInputClick,\n handleInputFocus,\n updateEnableTime,\n setCalendarAttributes,\n loadLocale,\n emitValue,\n hideEmptyYear,\n} from '../../../common/helpers/flatpickr';\nimport '../../reusable/button';\n\nimport flatpickr from 'flatpickr';\nimport { BaseOptions } from 'flatpickr/dist/types/options';\n\nimport DatePickerStyles from './datepicker.scss';\nimport ShidokaFlatpickrTheme from '../../../common/scss/shidoka-flatpickr-theme.scss';\n\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-filled.svg';\nimport calendarIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/24/calendar.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/close-simple.svg';\n\ntype SupportedLocale = (typeof langsArray)[number];\n\nconst _defaultTextStrings = {\n requiredText: 'Required',\n clearAll: 'Clear',\n pleaseSelectDate: 'Please select a date',\n pleaseSelectValidDate: 'Please select a valid date',\n};\n\n/**\n * Datepicker: uses Flatpickr's datetime picker library -- `https://flatpickr.js.org`\n * @fires on-change - Captures the input event and emits the selected value and original event details.\n * @slot tooltip - Slot for tooltip.\n */\n@customElement('kyn-date-picker')\nexport class DatePicker extends FormMixin(LitElement) {\n static override styles = [DatePickerStyles, ShidokaFlatpickrTheme];\n\n /** Label text. */\n @property({ type: String })\n label = '';\n\n /* Sets desired locale and, if supported, dynamically loads language lib */\n @property({ type: String })\n locale: SupportedLocale = 'en';\n\n /** Sets flatpickr value to define how the date will be displayed in the input box (ex: `Y-m-d H:i`). */\n @property({ type: String })\n dateFormat = 'Y-m-d';\n\n /** Sets the initial selected date(s). For multiple mode, provide an array of date strings matching dateFormat. */\n @property({ type: Array })\n defaultDate: string | string[] | null = null;\n\n /** Sets default error message. */\n @property({ type: String })\n defaultErrorMessage = '';\n\n /** Sets datepicker form input value to required/required. */\n @property({ type: Boolean })\n required = false;\n\n /** Input size. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n size = 'md';\n\n /** Sets pre-selected date/time value. */\n @property({ type: Array })\n override value: Date | Date[] | null = null;\n\n /** Sets validation warning messaging. */\n @property({ type: String })\n warnText = '';\n\n /** Sets flatpickr options setting to disable specific dates. */\n @property({ type: Array })\n disable: (string | number | Date)[] = [];\n\n /** Sets flatpickr options setting to enable specific dates. */\n @property({ type: Array })\n enable: (string | number | Date)[] = [];\n\n /** Sets flatpickr mode to select single (default), multiple dates. */\n @property({ type: String })\n mode: 'single' | 'multiple' = 'single';\n\n /** Sets caption to be displayed under primary date picker elements. */\n @property({ type: String })\n caption = '';\n\n /** Sets entire datepicker form element to enabled/disabled. */\n @property({ type: Boolean })\n datePickerDisabled = false;\n\n /** Sets 24 hour formatting true/false.\n * Defaults to 12H for all `en-*` locales and 24H for all other locales.\n */\n @property({ type: Boolean })\n twentyFourHourFormat: boolean | null = null;\n\n /** Sets lower boundary of datepicker date selection. */\n @property({ type: String })\n minDate: string | number | Date = '';\n\n /** Sets upper boundary of datepicker date selection. */\n @property({ type: String })\n maxDate: string | number | Date = '';\n\n /** Sets aria label attribute for error message. */\n @property({ type: String })\n errorAriaLabel = '';\n\n /** Sets title attribute for error message. */\n @property({ type: String })\n errorTitle = '';\n\n /** Sets aria label attribute for warning message. */\n @property({ type: String })\n warningAriaLabel = '';\n\n /** Sets title attribute for warning message. */\n @property({ type: String })\n warningTitle = '';\n\n /** Sets flatpickr enableTime value based on detected dateFormat.\n * @internal\n */\n @state()\n private _enableTime = false;\n\n /**\n * Sets whether user has interacted with datepicker for error handling.\n * @internal\n */\n @state()\n private _hasInteracted = false;\n\n /** Flatpickr instantiation.\n * @internal\n */\n @state()\n private flatpickrInstance?: flatpickr.Instance;\n\n /**\n * Queries the anchor DOM element.\n * @internal\n */\n @query('input')\n private _inputEl?: HTMLInputElement;\n\n /** Customizable text strings. */\n @property({ type: Object })\n textStrings = _defaultTextStrings;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n _textStrings = _defaultTextStrings;\n\n /** Control flag to prevent Flatpickr from opening when clicking caption, error, label, or warning elements.\n * @internal\n */\n @state()\n private _shouldFlatpickrOpen = false;\n\n override connectedCallback() {\n super.connectedCallback();\n this.addEventListener('change', this._onChange);\n this.addEventListener('reset', this._handleFormReset);\n }\n\n override render() {\n const errorId = `${this.name}-error-message`;\n const warningId = `${this.name}-warning-message`;\n const anchorId = this.name\n ? `${this.name}-${Math.random().toString(36).slice(2, 11)}`\n : `date-picker-${Math.random().toString(36).slice(2, 11)}`;\n const descriptionId = this.name ?? '';\n const placeholder = getPlaceholder(this.dateFormat);\n\n return html`\n <div class=${classMap(this.getDatepickerClasses())}>\n <div\n class=\"label-text\"\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n ?disabled=${this.datePickerDisabled}\n id=${`label-${anchorId}`}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings?.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </div>\n\n <div class=\"input-wrapper\">\n <input\n class=\"${classMap({\n [`size--${this.size}`]: true,\n 'input-custom': true,\n })}\"\n type=\"text\"\n id=${anchorId}\n name=${this.name}\n placeholder=${placeholder}\n ?disabled=${this.datePickerDisabled}\n ?required=${this.required}\n ?invalid=${this._isInvalid}\n aria-invalid=${this._isInvalid ? 'true' : 'false'}\n aria-labelledby=${`label-${anchorId}`}\n @click=${this.handleInputClickEvent}\n @focus=${this.handleInputFocusEvent}\n />\n ${this._inputEl?.value ||\n (this.value &&\n Array.isArray(this.value) &&\n this.value.length > 0 &&\n !this.value.every((date) => date === null)) ||\n (this.defaultDate &&\n Array.isArray(this.defaultDate) &&\n this.defaultDate.length > 0 &&\n !this.defaultDate.every((date) => date === null || date === ''))\n ? html`\n <kyn-button\n ?disabled=${this.datePickerDisabled}\n class=\"clear-button\"\n kind=\"ghost\"\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${this._handleClear}\n >\n <span style=\"display:flex;\" slot=\"icon\"\n >${unsafeSVG(clearIcon)}</span\n >\n </kyn-button>\n `\n : html`<span class=\"input-icon\">${unsafeSVG(calendarIcon)}</span>`}\n </div>\n\n ${this.caption\n ? html`<div\n id=${descriptionId}\n class=\"caption\"\n aria-disabled=${this.datePickerDisabled}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n ${this.caption}\n </div>`\n : ''}\n ${this.renderValidationMessage(errorId, warningId)}\n </div>\n `;\n }\n\n private renderValidationMessage(errorId: string, warningId: string) {\n if (this.invalidText || (this._isInvalid && this._hasInteracted)) {\n return html`<div\n id=${errorId}\n class=\"error error-text\"\n role=\"alert\"\n title=${this.errorTitle || 'Error'}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n <span\n class=\"error-icon\"\n aria-label=${`${this.errorAriaLabel}` || 'Error message icon'}\n role=\"button\"\n >${unsafeSVG(errorIcon)}</span\n >${this.invalidText ||\n this._internalValidationMsg ||\n this.defaultErrorMessage}\n </div>`;\n }\n\n if (this.warnText) {\n return html`<div\n id=${warningId}\n class=\"warn warn-text\"\n role=\"alert\"\n aria-label=${this.warningAriaLabel || 'Warning message'}\n title=${this.warningTitle || 'Warning'}\n @mousedown=${this.preventFlatpickrOpen}\n @click=${this.preventFlatpickrOpen}\n >\n ${this.warnText}\n </div>`;\n }\n\n return null;\n }\n\n getDatepickerClasses() {\n return {\n 'date-picker': true,\n 'date-picker__enable-time': this._enableTime,\n 'date-picker__multiple-select': this.mode === 'multiple',\n 'date-picker__disabled': this.datePickerDisabled,\n };\n }\n\n private _initialized = false;\n\n override async firstUpdated(changedProperties: PropertyValues) {\n super.firstUpdated(changedProperties);\n if (!this._initialized) {\n injectFlatpickrStyles(ShidokaFlatpickrTheme.toString());\n this._initialized = true;\n await this.updateComplete;\n this.setupAnchor();\n }\n }\n\n override updated(changedProperties: PropertyValues) {\n super.updated(changedProperties);\n if (\n changedProperties.has('dateFormat') ||\n changedProperties.has('defaultDate') ||\n changedProperties.has('minDate') ||\n changedProperties.has('maxDate') ||\n changedProperties.has('locale') ||\n changedProperties.has('twentyFourHourFormat')\n ) {\n this._enableTime = updateEnableTime(this.dateFormat);\n if (this.flatpickrInstance && this._initialized) {\n this.updateFlatpickrOptions();\n }\n }\n\n if (\n changedProperties.has('datePickerDisabled') &&\n this.datePickerDisabled &&\n this.flatpickrInstance\n ) {\n this.flatpickrInstance.close();\n }\n }\n\n private async reinitializeFlatpickr() {\n if (this._initialized && this.flatpickrInstance) {\n this.flatpickrInstance.destroy();\n await this.initializeFlatpickr();\n }\n }\n\n private async setupAnchor() {\n if (this._inputEl) {\n await this.initializeFlatpickr();\n }\n }\n\n private _handleClear(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n this.value = this.mode === 'multiple' ? [] : null;\n this.defaultDate = this.mode === 'multiple' ? [] : null;\n\n if (this.flatpickrInstance) {\n this.flatpickrInstance.clear();\n }\n if (this._inputEl) {\n this._inputEl.value = '';\n }\n\n this.reinitializeFlatpickr();\n\n this._validate(true, false);\n this.requestUpdate();\n }\n\n async initializeFlatpickr(): Promise<void> {\n if (!this._inputEl) return;\n if (this.flatpickrInstance) this.flatpickrInstance.destroy();\n\n this.flatpickrInstance = await initializeSingleAnchorFlatpickr({\n inputEl: this._inputEl,\n getFlatpickrOptions: () => this.getComponentFlatpickrOptions(),\n setCalendarAttributes: (instance) => {\n const modalDetected = !!this.closest('kyn-modal');\n setCalendarAttributes(instance, modalDetected);\n instance.calendarContainer.setAttribute('aria-label', 'Date picker');\n },\n setInitialDates: this.setInitialDates.bind(this),\n });\n\n hideEmptyYear();\n this._validate(false, false);\n }\n\n async updateFlatpickrOptions(): Promise<void> {\n if (!this.flatpickrInstance) return;\n const newOptions = (await this.getComponentFlatpickrOptions()) || {};\n Object.keys(newOptions).forEach((key) => {\n if (\n this.flatpickrInstance!.config &&\n key in this.flatpickrInstance!.config\n ) {\n this.flatpickrInstance!.set(\n key as keyof BaseOptions,\n newOptions[key as keyof BaseOptions]\n );\n }\n });\n this.flatpickrInstance.redraw();\n setTimeout(() => {\n if (this.flatpickrInstance && this.flatpickrInstance.calendarContainer) {\n setCalendarAttributes(this.flatpickrInstance);\n this.flatpickrInstance.calendarContainer.setAttribute(\n 'aria-label',\n 'Date picker'\n );\n } else {\n console.warn('Calendar container not available...');\n }\n }, 0);\n }\n\n setInitialDates(): void {\n if (!this.flatpickrInstance) return;\n\n try {\n if (this.defaultDate) {\n if (Array.isArray(this.defaultDate)) {\n const validDates = this.defaultDate\n .filter((date) => date && date !== '')\n .map((date) => {\n const parsed = new Date(date);\n return isNaN(parsed.getTime()) ? null : parsed;\n })\n .filter((date): date is Date => date !== null);\n\n if (validDates.length > 0) {\n this.value = this.mode === 'multiple' ? validDates : validDates[0];\n this.flatpickrInstance.setDate(validDates, false);\n }\n } else {\n const parsed = new Date(this.defaultDate);\n if (!isNaN(parsed.getTime())) {\n this.value = parsed;\n this.flatpickrInstance.setDate([parsed], false);\n }\n }\n } else if (this.value) {\n const dates = Array.isArray(this.value) ? this.value : [this.value];\n const validDates = dates.filter(\n (date): date is Date => date instanceof Date && !isNaN(date.getTime())\n );\n\n if (validDates.length > 0) {\n this.flatpickrInstance.setDate(validDates, false);\n }\n }\n } catch (error) {\n console.warn('Error setting initial dates:', error);\n }\n }\n\n async getComponentFlatpickrOptions(): Promise<Partial<BaseOptions>> {\n const modal = this.closest('kyn-modal');\n const container = modal ? modal : document.body;\n\n return getFlatpickrOptions({\n locale: this.locale,\n dateFormat: this.dateFormat,\n defaultDate: this.defaultDate ?? undefined,\n enableTime: this._enableTime,\n twentyFourHourFormat: this.twentyFourHourFormat ?? undefined,\n inputEl: this._inputEl!,\n minDate: this.minDate,\n maxDate: this.maxDate,\n enable: this.enable,\n disable: this.disable,\n mode: this.mode,\n closeOnSelect: !(this.mode === 'multiple' || this._enableTime),\n loadLocale,\n onOpen: this.handleOpen.bind(this),\n onClose: this.handleClose.bind(this),\n onChange: this.handleDateChange.bind(this),\n appendTo: container,\n });\n }\n\n handleOpen(): void {\n if (!this._shouldFlatpickrOpen) {\n this.flatpickrInstance?.close();\n this._shouldFlatpickrOpen = true;\n }\n }\n\n async handleClose(): Promise<void> {\n this._hasInteracted = true;\n this._validate(true, false);\n await this.updateComplete;\n }\n\n async handleDateChange(\n selectedDates: Date[],\n dateStr: string\n ): Promise<void> {\n this._hasInteracted = true;\n\n if (this.mode === 'multiple') {\n this.value = selectedDates.length > 0 ? [...selectedDates] : null;\n } else {\n this.value = selectedDates.length > 0 ? selectedDates[0] : null;\n }\n\n let formattedDates;\n if (Array.isArray(this.value)) {\n formattedDates = this.value.map((date) => date.toISOString());\n } else if (this.value instanceof Date) {\n formattedDates = this.value.toISOString();\n } else {\n formattedDates = null;\n }\n\n emitValue(this, 'on-change', {\n dates: formattedDates,\n dateString: (this._inputEl as HTMLInputElement)?.value || dateStr,\n });\n\n this._validate(true, false);\n await this.updateComplete;\n }\n\n private setShouldFlatpickrOpen(value: boolean): void {\n this._shouldFlatpickrOpen = value;\n }\n\n private closeFlatpickr(): void {\n this.flatpickrInstance?.close();\n }\n\n private preventFlatpickrOpen(event: Event): void {\n preventFlatpickrOpen(event, this.setShouldFlatpickrOpen.bind(this));\n }\n\n private handleInputClickEvent(): void {\n handleInputClick(this.setShouldFlatpickrOpen.bind(this));\n }\n\n private handleInputFocusEvent(): void {\n handleInputFocus(\n this._shouldFlatpickrOpen,\n this.closeFlatpickr.bind(this),\n this.setShouldFlatpickrOpen.bind(this)\n );\n }\n\n private _validate(interacted: boolean, report: boolean): void {\n if (!this._inputEl || !(this._inputEl instanceof HTMLInputElement)) {\n return;\n }\n\n if (interacted) {\n this._hasInteracted = true;\n }\n\n const isEmpty = !this._inputEl.value.trim();\n const isRequired = this.required;\n\n let validity = this._inputEl.validity;\n let validationMessage = this._inputEl.validationMessage;\n\n if (isRequired && isEmpty) {\n validity = { ...validity, valueMissing: true };\n validationMessage =\n this.defaultErrorMessage || this._textStrings.pleaseSelectDate;\n }\n\n if (this.invalidText) {\n validity = { ...validity, customError: true };\n validationMessage = this.invalidText;\n }\n\n const isValid = !validity.valueMissing && !validity.customError;\n\n // fix: ensure we have a validation message when validity flags are true\n if (!isValid && !validationMessage) {\n validationMessage = this._textStrings.pleaseSelectValidDate;\n }\n\n this._internals.setValidity(validity, validationMessage, this._inputEl);\n this._isInvalid =\n !isValid && (this._hasInteracted || this.invalidText !== '');\n this._internalValidationMsg = validationMessage;\n\n if (report) {\n this._internals.reportValidity();\n }\n\n this.requestUpdate();\n }\n\n private _onChange() {\n this._validate(true, false);\n }\n\n private _handleFormReset() {\n this.value = null;\n if (this.flatpickrInstance) {\n this.flatpickrInstance.clear();\n }\n this._hasInteracted = false;\n this._validate(false, false);\n }\n\n override disconnectedCallback(): void {\n super.disconnectedCallback();\n this.removeEventListener('change', this._onChange);\n this.removeEventListener('reset', this._handleFormReset);\n\n if (this.flatpickrInstance) {\n this.flatpickrInstance.destroy();\n this.flatpickrInstance = undefined;\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-date-picker': DatePicker;\n }\n}\n"],"names":["_defaultTextStrings","requiredText","clearAll","pleaseSelectDate","pleaseSelectValidDate","DatePicker","FormMixin","LitElement","constructor","this","label","locale","dateFormat","defaultDate","defaultErrorMessage","required","size","value","warnText","disable","enable","mode","caption","datePickerDisabled","twentyFourHourFormat","minDate","maxDate","errorAriaLabel","errorTitle","warningAriaLabel","warningTitle","_enableTime","_hasInteracted","textStrings","_textStrings","_shouldFlatpickrOpen","_initialized","connectedCallback","super","addEventListener","_onChange","_handleFormReset","render","errorId","name","warningId","anchorId","Math","random","toString","slice","descriptionId","_a","placeholder","getPlaceholder","html","classMap","getDatepickerClasses","preventFlatpickrOpen","_b","_c","_isInvalid","handleInputClickEvent","handleInputFocusEvent","_d","_inputEl","Array","isArray","length","every","date","_handleClear","unsafeSVG","clearIcon","calendarIcon","renderValidationMessage","invalidText","errorIcon","_internalValidationMsg","firstUpdated","changedProperties","injectFlatpickrStyles","ShidokaFlatpickrTheme","updateComplete","setupAnchor","updated","has","updateEnableTime","flatpickrInstance","updateFlatpickrOptions","close","reinitializeFlatpickr","destroy","initializeFlatpickr","event","preventDefault","stopPropagation","clear","_validate","requestUpdate","initializeSingleAnchorFlatpickr","inputEl","getFlatpickrOptions","getComponentFlatpickrOptions","setCalendarAttributes","instance","modalDetected","closest","calendarContainer","setAttribute","setInitialDates","bind","hideEmptyYear","newOptions","Object","keys","forEach","key","config","set","redraw","setTimeout","console","warn","validDates","filter","map","parsed","Date","isNaN","getTime","setDate","error","modal","container","document","body","undefined","enableTime","closeOnSelect","loadLocale","onOpen","handleOpen","onClose","handleClose","onChange","handleDateChange","appendTo","selectedDates","dateStr","formattedDates","toISOString","emitValue","dates","dateString","setShouldFlatpickrOpen","closeFlatpickr","handleInputClick","handleInputFocus","interacted","report","HTMLInputElement","isEmpty","trim","isRequired","validity","validationMessage","valueMissing","customError","isValid","_internals","setValidity","reportValidity","disconnectedCallback","removeEventListener","styles","DatePickerStyles","__decorate","property","type","String","prototype","Boolean","state","query","customElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCA,MAAMA,EAAsB,CAC1BC,aAAc,WACdC,SAAU,QACVC,iBAAkB,uBAClBC,sBAAuB,8BASZ,IAAAC,EAAN,cAAyBC,EAAUC,IAAnC,WAAAC,uBAKLC,KAAKC,MAAG,GAIRD,KAAME,OAAoB,KAI1BF,KAAUG,WAAG,QAIbH,KAAWI,YAA6B,KAIxCJ,KAAmBK,oBAAG,GAItBL,KAAQM,UAAG,EAIXN,KAAIO,KAAG,KAIEP,KAAKQ,MAAyB,KAIvCR,KAAQS,SAAG,GAIXT,KAAOU,QAA+B,GAItCV,KAAMW,OAA+B,GAIrCX,KAAIY,KAA0B,SAI9BZ,KAAOa,QAAG,GAIVb,KAAkBc,oBAAG,EAMrBd,KAAoBe,qBAAmB,KAIvCf,KAAOgB,QAA2B,GAIlChB,KAAOiB,QAA2B,GAIlCjB,KAAckB,eAAG,GAIjBlB,KAAUmB,WAAG,GAIbnB,KAAgBoB,iBAAG,GAInBpB,KAAYqB,aAAG,GAMPrB,KAAWsB,aAAG,EAOdtB,KAAcuB,gBAAG,EAiBzBvB,KAAWwB,YAAGjC,EAMdS,KAAYyB,aAAGlC,EAMPS,KAAoB0B,sBAAG,EAkJvB1B,KAAY2B,cAAG,CA6TxB,CA7cU,iBAAAC,GACPC,MAAMD,oBACN5B,KAAK8B,iBAAiB,SAAU9B,KAAK+B,WACrC/B,KAAK8B,iBAAiB,QAAS9B,KAAKgC,iBACrC,CAEQ,MAAAC,eACP,MAAMC,EAAU,GAAGlC,KAAKmC,qBAClBC,EAAY,GAAGpC,KAAKmC,uBACpBE,EAAWrC,KAAKmC,KAClB,GAAGnC,KAAKmC,QAAQG,KAAKC,SAASC,SAAS,IAAIC,MAAM,EAAG,MACpD,eAAeH,KAAKC,SAASC,SAAS,IAAIC,MAAM,EAAG,MACjDC,EAAyB,QAATC,EAAA3C,KAAKmC,YAAI,IAAAQ,EAAAA,EAAI,GAC7BC,EAAcC,EAAe7C,KAAKG,YAExC,OAAO2C,CAAI;mBACIC,EAAS/C,KAAKgD;;;uBAGVhD,KAAKiD;mBACTjD,KAAKiD;sBACFjD,KAAKc;eACZ,SAASuB;;YAEZrC,KAAKM,SACHwC,CAAI;;wBAEuB,QAAjBI,EAAAlD,KAAKyB,oBAAY,IAAAyB,OAAA,EAAAA,EAAE1D;;6BAEG,QAAjB2D,EAAAnD,KAAKyB,oBAAY,IAAA0B,OAAA,EAAAA,EAAE3D;;iBAGlC;YACFQ,KAAKC;;;;;;qBAMI8C,EAAS,CAChB,CAAC,SAAS/C,KAAKO,SAAS,EACxB,gBAAgB;;iBAGb8B;mBACErC,KAAKmC;0BACES;wBACF5C,KAAKc;wBACLd,KAAKM;uBACNN,KAAKoD;2BACDpD,KAAKoD,WAAa,OAAS;8BACxB,SAASf;qBAClBrC,KAAKqD;qBACLrD,KAAKsD;;qBAEdC,EAAAvD,KAAKwD,+BAAUhD,QAChBR,KAAKQ,OACJiD,MAAMC,QAAQ1D,KAAKQ,QACnBR,KAAKQ,MAAMmD,OAAS,IACnB3D,KAAKQ,MAAMoD,OAAOC,GAAkB,OAATA,KAC7B7D,KAAKI,aACJqD,MAAMC,QAAQ1D,KAAKI,cACnBJ,KAAKI,YAAYuD,OAAS,IACzB3D,KAAKI,YAAYwD,OAAOC,GAAkB,OAATA,GAA0B,KAATA,IACjDf,CAAI;;8BAEY9C,KAAKc;;;;gCAIHd,KAAKyB,aAAahC;2BACvBO,KAAK8D;;;uBAGTC,EAAUC;;;gBAInBlB,CAAI,4BAA4BiB,EAAUE;;;UAG9CjE,KAAKa,QACHiC,CAAI;mBACGJ;;8BAEW1C,KAAKc;2BACRd,KAAKiD;uBACTjD,KAAKiD;;gBAEZjD,KAAKa;oBAET;UACFb,KAAKkE,wBAAwBhC,EAASE;;KAG7C,CAEO,uBAAA8B,CAAwBhC,EAAiBE,GAC/C,OAAIpC,KAAKmE,aAAgBnE,KAAKoD,YAAcpD,KAAKuB,eACxCuB,CAAI;aACJZ;;;gBAGGlC,KAAKmB,YAAc;qBACdnB,KAAKiD;iBACTjD,KAAKiD;;;;uBAIC,GAAGjD,KAAKkB,kBAAoB;;aAEtC6C,EAAUK;WACZpE,KAAKmE,aACRnE,KAAKqE,wBACLrE,KAAKK;cAILL,KAAKS,SACAqC,CAAI;aACJV;;;qBAGQpC,KAAKoB,kBAAoB;gBAC9BpB,KAAKqB,cAAgB;qBAChBrB,KAAKiD;iBACTjD,KAAKiD;;UAEZjD,KAAKS;cAIJ,IACR,CAED,oBAAAuC,GACE,MAAO,CACL,eAAe,EACf,2BAA4BhD,KAAKsB,YACjC,+BAA8C,aAAdtB,KAAKY,KACrC,wBAAyBZ,KAAKc,mBAEjC,CAIQ,kBAAMwD,CAAaC,GAC1B1C,MAAMyC,aAAaC,GACdvE,KAAK2B,eACR6C,EAAsBC,EAAsBjC,YAC5CxC,KAAK2B,cAAe,QACd3B,KAAK0E,eACX1E,KAAK2E,cAER,CAEQ,OAAAC,CAAQL,GACf1C,MAAM+C,QAAQL,IAEZA,EAAkBM,IAAI,eACtBN,EAAkBM,IAAI,gBACtBN,EAAkBM,IAAI,YACtBN,EAAkBM,IAAI,YACtBN,EAAkBM,IAAI,WACtBN,EAAkBM,IAAI,2BAEtB7E,KAAKsB,YAAcwD,EAAiB9E,KAAKG,YACrCH,KAAK+E,mBAAqB/E,KAAK2B,cACjC3B,KAAKgF,0BAKPT,EAAkBM,IAAI,uBACtB7E,KAAKc,oBACLd,KAAK+E,mBAEL/E,KAAK+E,kBAAkBE,OAE1B,CAEO,2BAAMC,GACRlF,KAAK2B,cAAgB3B,KAAK+E,oBAC5B/E,KAAK+E,kBAAkBI,gBACjBnF,KAAKoF,sBAEd,CAEO,iBAAMT,GACR3E,KAAKwD,gBACDxD,KAAKoF,qBAEd,CAEO,YAAAtB,CAAauB,GACnBA,EAAMC,iBACND,EAAME,kBAENvF,KAAKQ,MAAsB,aAAdR,KAAKY,KAAsB,GAAK,KAC7CZ,KAAKI,YAA4B,aAAdJ,KAAKY,KAAsB,GAAK,KAE/CZ,KAAK+E,mBACP/E,KAAK+E,kBAAkBS,QAErBxF,KAAKwD,WACPxD,KAAKwD,SAAShD,MAAQ,IAGxBR,KAAKkF,wBAELlF,KAAKyF,WAAU,GAAM,GACrBzF,KAAK0F,eACN,CAED,yBAAMN,GACCpF,KAAKwD,WACNxD,KAAK+E,mBAAmB/E,KAAK+E,kBAAkBI,UAEnDnF,KAAK+E,wBAA0BY,EAAgC,CAC7DC,QAAS5F,KAAKwD,SACdqC,oBAAqB,IAAM7F,KAAK8F,+BAChCC,sBAAwBC,IACtB,MAAMC,IAAkBjG,KAAKkG,QAAQ,aACrCH,EAAsBC,EAAUC,GAChCD,EAASG,kBAAkBC,aAAa,aAAc,cAAc,EAEtEC,gBAAiBrG,KAAKqG,gBAAgBC,KAAKtG,QAG7CuG,IACAvG,KAAKyF,WAAU,GAAO,GACvB,CAED,4BAAMT,GACJ,IAAKhF,KAAK+E,kBAAmB,OAC7B,MAAMyB,QAAoBxG,KAAK8F,gCAAmC,CAAA,EAClEW,OAAOC,KAAKF,GAAYG,SAASC,IAE7B5G,KAAK+E,kBAAmB8B,QACxBD,KAAO5G,KAAK+E,kBAAmB8B,QAE/B7G,KAAK+E,kBAAmB+B,IACtBF,EACAJ,EAAWI,GAEd,IAEH5G,KAAK+E,kBAAkBgC,SACvBC,YAAW,KACLhH,KAAK+E,mBAAqB/E,KAAK+E,kBAAkBoB,mBACnDJ,EAAsB/F,KAAK+E,mBAC3B/E,KAAK+E,kBAAkBoB,kBAAkBC,aACvC,aACA,gBAGFa,QAAQC,KAAK,sCACd,GACA,EACJ,CAED,eAAAb,GACE,GAAKrG,KAAK+E,kBAEV,IACE,GAAI/E,KAAKI,YACP,GAAIqD,MAAMC,QAAQ1D,KAAKI,aAAc,CACnC,MAAM+G,EAAanH,KAAKI,YACrBgH,QAAQvD,GAASA,GAAiB,KAATA,IACzBwD,KAAKxD,IACJ,MAAMyD,EAAS,IAAIC,KAAK1D,GACxB,OAAO2D,MAAMF,EAAOG,WAAa,KAAOH,CAAM,IAE/CF,QAAQvD,GAAgC,OAATA,IAE9BsD,EAAWxD,OAAS,IACtB3D,KAAKQ,MAAsB,aAAdR,KAAKY,KAAsBuG,EAAaA,EAAW,GAChEnH,KAAK+E,kBAAkB2C,QAAQP,GAAY,GAE9C,KAAM,CACL,MAAMG,EAAS,IAAIC,KAAKvH,KAAKI,aACxBoH,MAAMF,EAAOG,aAChBzH,KAAKQ,MAAQ8G,EACbtH,KAAK+E,kBAAkB2C,QAAQ,CAACJ,IAAS,GAE5C,MACI,GAAItH,KAAKQ,MAAO,CACrB,MACM2G,GADQ1D,MAAMC,QAAQ1D,KAAKQ,OAASR,KAAKQ,MAAQ,CAACR,KAAKQ,QACpC4G,QACtBvD,GAAuBA,aAAgB0D,OAASC,MAAM3D,EAAK4D,aAG1DN,EAAWxD,OAAS,GACtB3D,KAAK+E,kBAAkB2C,QAAQP,GAAY,EAE9C,CACF,CAAC,MAAOQ,GACPV,QAAQC,KAAK,+BAAgCS,EAC9C,CACF,CAED,kCAAM7B,WACJ,MAAM8B,EAAQ5H,KAAKkG,QAAQ,aACrB2B,EAAYD,GAAgBE,SAASC,KAE3C,OAAOlC,EAAoB,CACzB3F,OAAQF,KAAKE,OACbC,WAAYH,KAAKG,WACjBC,oBAAauC,EAAA3C,KAAKI,gCAAe4H,EACjCC,WAAYjI,KAAKsB,YACjBP,6BAAsBmC,EAAAlD,KAAKe,yCAAwBiH,EACnDpC,QAAS5F,KAAKwD,SACdxC,QAAShB,KAAKgB,QACdC,QAASjB,KAAKiB,QACdN,OAAQX,KAAKW,OACbD,QAASV,KAAKU,QACdE,KAAMZ,KAAKY,KACXsH,gBAA+B,aAAdlI,KAAKY,MAAuBZ,KAAKsB,aAClD6G,aACAC,OAAQpI,KAAKqI,WAAW/B,KAAKtG,MAC7BsI,QAAStI,KAAKuI,YAAYjC,KAAKtG,MAC/BwI,SAAUxI,KAAKyI,iBAAiBnC,KAAKtG,MACrC0I,SAAUb,GAEb,CAED,UAAAQ,SACOrI,KAAK0B,uBACgB,QAAxBiB,EAAA3C,KAAK+E,yBAAmB,IAAApC,GAAAA,EAAAsC,QACxBjF,KAAK0B,sBAAuB,EAE/B,CAED,iBAAM6G,GACJvI,KAAKuB,gBAAiB,EACtBvB,KAAKyF,WAAU,GAAM,SACfzF,KAAK0E,cACZ,CAED,sBAAM+D,CACJE,EACAC,SAUA,IAAIC,EARJ7I,KAAKuB,gBAAiB,EAEJ,aAAdvB,KAAKY,KACPZ,KAAKQ,MAAQmI,EAAchF,OAAS,EAAI,IAAIgF,GAAiB,KAE7D3I,KAAKQ,MAAQmI,EAAchF,OAAS,EAAIgF,EAAc,GAAK,KAK3DE,EADEpF,MAAMC,QAAQ1D,KAAKQ,OACJR,KAAKQ,MAAM6G,KAAKxD,GAASA,EAAKiF,gBACtC9I,KAAKQ,iBAAiB+G,KACdvH,KAAKQ,MAAMsI,cAEX,KAGnBC,EAAU/I,KAAM,YAAa,CAC3BgJ,MAAOH,EACPI,YAA+C,QAAlCtG,EAAA3C,KAAKwD,gBAA6B,IAAAb,OAAA,EAAAA,EAAEnC,QAASoI,IAG5D5I,KAAKyF,WAAU,GAAM,SACfzF,KAAK0E,cACZ,CAEO,sBAAAwE,CAAuB1I,GAC7BR,KAAK0B,qBAAuBlB,CAC7B,CAEO,cAAA2I,SACkB,QAAxBxG,EAAA3C,KAAK+E,yBAAmB,IAAApC,GAAAA,EAAAsC,OACzB,CAEO,oBAAAhC,CAAqBoC,GAC3BpC,EAAqBoC,EAAOrF,KAAKkJ,uBAAuB5C,KAAKtG,MAC9D,CAEO,qBAAAqD,GACN+F,EAAiBpJ,KAAKkJ,uBAAuB5C,KAAKtG,MACnD,CAEO,qBAAAsD,GACN+F,EACErJ,KAAK0B,qBACL1B,KAAKmJ,eAAe7C,KAAKtG,MACzBA,KAAKkJ,uBAAuB5C,KAAKtG,MAEpC,CAEO,SAAAyF,CAAU6D,EAAqBC,GACrC,KAAKvJ,KAAKwD,UAAcxD,KAAKwD,oBAAoBgG,kBAC/C,OAGEF,IACFtJ,KAAKuB,gBAAiB,GAGxB,MAAMkI,GAAWzJ,KAAKwD,SAAShD,MAAMkJ,OAC/BC,EAAa3J,KAAKM,SAExB,IAAIsJ,EAAW5J,KAAKwD,SAASoG,SACzBC,EAAoB7J,KAAKwD,SAASqG,kBAElCF,GAAcF,IAChBG,EAAW,IAAKA,EAAUE,cAAc,GACxCD,EACE7J,KAAKK,qBAAuBL,KAAKyB,aAAa/B,kBAG9CM,KAAKmE,cACPyF,EAAW,IAAKA,EAAUG,aAAa,GACvCF,EAAoB7J,KAAKmE,aAG3B,MAAM6F,GAAWJ,EAASE,eAAiBF,EAASG,YAG/CC,GAAYH,IACfA,EAAoB7J,KAAKyB,aAAa9B,uBAGxCK,KAAKiK,WAAWC,YAAYN,EAAUC,EAAmB7J,KAAKwD,UAC9DxD,KAAKoD,YACF4G,IAAYhK,KAAKuB,gBAAuC,KAArBvB,KAAKmE,aAC3CnE,KAAKqE,uBAAyBwF,EAE1BN,GACFvJ,KAAKiK,WAAWE,iBAGlBnK,KAAK0F,eACN,CAEO,SAAA3D,GACN/B,KAAKyF,WAAU,GAAM,EACtB,CAEO,gBAAAzD,GACNhC,KAAKQ,MAAQ,KACTR,KAAK+E,mBACP/E,KAAK+E,kBAAkBS,QAEzBxF,KAAKuB,gBAAiB,EACtBvB,KAAKyF,WAAU,GAAO,EACvB,CAEQ,oBAAA2E,GACPvI,MAAMuI,uBACNpK,KAAKqK,oBAAoB,SAAUrK,KAAK+B,WACxC/B,KAAKqK,oBAAoB,QAASrK,KAAKgC,kBAEnChC,KAAK+E,oBACP/E,KAAK+E,kBAAkBI,UACvBnF,KAAK+E,uBAAoBiD,EAE5B,GA9kBepI,EAAA0K,OAAS,CAACC,EAAkB9F,GAI5C+F,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACP/K,EAAAgL,UAAA,aAAA,GAIXJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACa/K,EAAAgL,UAAA,cAAA,GAI/BJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACG/K,EAAAgL,UAAA,kBAAA,GAIrBJ,EAAA,CADCC,EAAS,CAAEC,KAAMjH,SAC2B7D,EAAAgL,UAAA,mBAAA,GAI7CJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACO/K,EAAAgL,UAAA,2BAAA,GAIzBJ,EAAA,CADCC,EAAS,CAAEC,KAAMG,WACDjL,EAAAgL,UAAA,gBAAA,GAIjBJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACN/K,EAAAgL,UAAA,YAAA,GAIZJ,EAAA,CADCC,EAAS,CAAEC,KAAMjH,SAC0B7D,EAAAgL,UAAA,aAAA,GAI5CJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACJ/K,EAAAgL,UAAA,gBAAA,GAIdJ,EAAA,CADCC,EAAS,CAAEC,KAAMjH,SACuB7D,EAAAgL,UAAA,eAAA,GAIzCJ,EAAA,CADCC,EAAS,CAAEC,KAAMjH,SACsB7D,EAAAgL,UAAA,cAAA,GAIxCJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACqB/K,EAAAgL,UAAA,YAAA,GAIvCJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACL/K,EAAAgL,UAAA,eAAA,GAIbJ,EAAA,CADCC,EAAS,CAAEC,KAAMG,WACSjL,EAAAgL,UAAA,0BAAA,GAM3BJ,EAAA,CADCC,EAAS,CAAEC,KAAMG,WAC0BjL,EAAAgL,UAAA,4BAAA,GAI5CJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACmB/K,EAAAgL,UAAA,eAAA,GAIrCJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACmB/K,EAAAgL,UAAA,eAAA,GAIrCJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACE/K,EAAAgL,UAAA,sBAAA,GAIpBJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACF/K,EAAAgL,UAAA,kBAAA,GAIhBJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACI/K,EAAAgL,UAAA,wBAAA,GAItBJ,EAAA,CADCC,EAAS,CAAEC,KAAMC,UACA/K,EAAAgL,UAAA,oBAAA,GAMlBJ,EAAA,CADCM,KAC2BlL,EAAAgL,UAAA,mBAAA,GAO5BJ,EAAA,CADCM,KAC8BlL,EAAAgL,UAAA,sBAAA,GAM/BJ,EAAA,CADCM,KAC8ClL,EAAAgL,UAAA,yBAAA,GAO/CJ,EAAA,CADCO,EAAM,UAC6BnL,EAAAgL,UAAA,gBAAA,GAIpCJ,EAAA,CADCC,EAAS,CAAEC,KAAMjE,UACgB7G,EAAAgL,UAAA,mBAAA,GAMlCJ,EAAA,CADCM,KACkClL,EAAAgL,UAAA,oBAAA,GAMnCJ,EAAA,CADCM,KACoClL,EAAAgL,UAAA,4BAAA,GAjI1BhL,EAAU4K,EAAA,CADtBQ,EAAc,oBACFpL"}
@@ -75,6 +75,8 @@ export declare class DateRangePicker extends DateRangePicker_base {
75
75
  textStrings: {
76
76
  requiredText: string;
77
77
  clearAll: string;
78
+ pleaseSelectDate: string;
79
+ pleaseSelectValidDate: string;
78
80
  };
79
81
  /** Internal text strings.
80
82
  * @internal
@@ -82,6 +84,8 @@ export declare class DateRangePicker extends DateRangePicker_base {
82
84
  _textStrings: {
83
85
  requiredText: string;
84
86
  clearAll: string;
87
+ pleaseSelectDate: string;
88
+ pleaseSelectValidDate: string;
85
89
  };
86
90
  /** Control flag to prevent Flatpickr from opening when clicking caption, error, label, or warning elements.
87
91
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"daterangepicker.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/daterangepicker/daterangepicker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daterangepicker.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/daterangepicker/daterangepicker.ts"],"names":[],"mappings":"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"}
@@ -467,7 +467,7 @@ input {
467
467
  }
468
468
  .date-range-picker__disabled ::slotted(*) {
469
469
  pointer-events: none;
470
- }`;const F={requiredText:"Required",clearAll:"Clear"};let E=class extends(d(s)){constructor(){super(...arguments),this.label="",this.locale="en",this.dateFormat="Y-m-d",this.defaultDate=null,this.defaultErrorMessage="",this.value=[null,null],this.warnText="",this.disable=[],this.enable=[],this.caption="",this.required=!1,this.size="md",this.dateRangePickerDisabled=!1,this.twentyFourHourFormat=null,this.minDate="",this.maxDate="",this.errorAriaLabel="",this.errorTitle="",this.warningAriaLabel="",this.warningTitle="",this._enableTime=!1,this._hasInteracted=!1,this.textStrings=F,this._textStrings=F,this._shouldFlatpickrOpen=!1,this._initialized=!1,this.resizeTimeout=null,this.handleResize=()=>{this.resizeTimeout&&window.clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout((async()=>{this.flatpickrInstance&&await this.initializeFlatpickr(),this.resizeTimeout=null}),250)}}disconnectedCallback(){var t;super.disconnectedCallback(),this.removeEventListener("change",this._onChange),this.removeEventListener("reset",this._handleFormReset),window.removeEventListener("resize",this.handleResize),this.resizeTimeout&&window.clearTimeout(this.resizeTimeout),null===(t=this.flatpickrInstance)||void 0===t||t.destroy()}connectedCallback(){super.connectedCallback(),this.addEventListener("change",this._onChange),this.addEventListener("reset",this._handleFormReset),window.addEventListener("resize",this.handleResize)}render(){var t,i,a;const r=`${this.name}-error-message`,l=`${this.name}-warning-message`,n=this.name?`${this.name}-${Math.random().toString(36).slice(2,11)}`:`date-range-picker-${Math.random().toString(36).slice(2,11)}`,s=null!==(t=this.name)&&void 0!==t?t:"",d=c(this.dateFormat,!0);return o`
470
+ }`;const F={requiredText:"Required",clearAll:"Clear",pleaseSelectDate:"Please select a date",pleaseSelectValidDate:"Please select a valid date"};let E=class extends(d(s)){constructor(){super(...arguments),this.label="",this.locale="en",this.dateFormat="Y-m-d",this.defaultDate=null,this.defaultErrorMessage="",this.value=[null,null],this.warnText="",this.disable=[],this.enable=[],this.caption="",this.required=!1,this.size="md",this.dateRangePickerDisabled=!1,this.twentyFourHourFormat=null,this.minDate="",this.maxDate="",this.errorAriaLabel="",this.errorTitle="",this.warningAriaLabel="",this.warningTitle="",this._enableTime=!1,this._hasInteracted=!1,this.textStrings=F,this._textStrings=F,this._shouldFlatpickrOpen=!1,this._initialized=!1,this.resizeTimeout=null,this.handleResize=()=>{this.resizeTimeout&&window.clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout((async()=>{this.flatpickrInstance&&await this.initializeFlatpickr(),this.resizeTimeout=null}),250)}}disconnectedCallback(){var t;super.disconnectedCallback(),this.removeEventListener("change",this._onChange),this.removeEventListener("reset",this._handleFormReset),window.removeEventListener("resize",this.handleResize),this.resizeTimeout&&window.clearTimeout(this.resizeTimeout),null===(t=this.flatpickrInstance)||void 0===t||t.destroy()}connectedCallback(){super.connectedCallback(),this.addEventListener("change",this._onChange),this.addEventListener("reset",this._handleFormReset),window.addEventListener("resize",this.handleResize)}render(){var t,i,a;const r=`${this.name}-error-message`,l=`${this.name}-warning-message`,n=this.name?`${this.name}-${Math.random().toString(36).slice(2,11)}`:`date-range-picker-${Math.random().toString(36).slice(2,11)}`,s=null!==(t=this.name)&&void 0!==t?t:"",d=c(this.dateFormat,!0);return o`
471
471
  <div class=${e(this.getDateRangePickerClasses())}>
472
472
  <div
473
473
  class="label-text"
@@ -553,5 +553,5 @@ input {
553
553
  @click=${this.preventFlatpickrOpen}
554
554
  >
555
555
  ${this.warnText}
556
- </div>`:null}_handleClear(t){t.preventDefault(),t.stopPropagation(),this.flatpickrInstance&&this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.value=[null,null],this.defaultDate=[],this._validate(!0,!1),this.requestUpdate()}getDateRangePickerClasses(){return{"date-range-picker":!0,"date-range-picker__enable-time":this._enableTime,"date-range-picker__disabled":this.dateRangePickerDisabled}}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("minDate")||t.has("defaultDate")||t.has("maxDate")||t.has("locale")||t.has("twentyFourHourFormat"))&&(this._enableTime=u(this.dateFormat),this.flatpickrInstance&&this._initialized&&this.updateFlatpickrOptions()),t.has("dateRangePickerDisabled")&&this.dateRangePickerDisabled&&this.flatpickrInstance&&this.flatpickrInstance.close()}async setupAnchor(){this._inputEl&&await this.initializeFlatpickr()}async initializeFlatpickr(){this._inputEl&&(this.flatpickrInstance&&this.flatpickrInstance.destroy(),this.flatpickrInstance=await m({inputEl:this._inputEl,getFlatpickrOptions:()=>this.getComponentFlatpickrOptions(),setCalendarAttributes:t=>{if(t&&t.calendarContainer){const e=!!this.closest("kyn-modal");v(t,e),t.calendarContainer.setAttribute("aria-label","Date range calendar")}else console.warn("Calendar container not available...")},setInitialDates:this.setInitialDates.bind(this)}),k(),this._validate(!1,!1))}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,mode:"range",allowInput:!1,inputEl:this._inputEl,minDate:this.minDate,maxDate:this.maxDate,enable:this.enable,disable:this.disable,loadLocale:f,onChange:this.handleDateChange.bind(this),onClose:this.handleClose.bind(this),onOpen:this.handleOpen.bind(this),appendTo:a})}async updateFlatpickrOptions(){if(!this.flatpickrInstance)return;const t=this.flatpickrInstance.selectedDates,e=await this.getComponentFlatpickrOptions();Object.keys(e).forEach((t=>{this.flatpickrInstance.set(t,e[t])})),this.flatpickrInstance.redraw(),k(),t&&2===t.length&&this.flatpickrInstance.setDate(t,!1),setTimeout((()=>{if(this.flatpickrInstance&&this.flatpickrInstance.calendarContainer){const t=!!this.closest("kyn-modal");v(this.flatpickrInstance,t),this.flatpickrInstance.calendarContainer.setAttribute("aria-label","Date range calendar")}else console.warn("Calendar container not available...")}),0)}setInitialDates(){if(this.flatpickrInstance)try{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));2===t.length&&(this.value=t,this.flatpickrInstance.setDate(t,!1))}else if(Array.isArray(this.value)&&2===this.value.length){const t=this.value.map((t=>t instanceof Date&&!isNaN(t.getTime())?t:null)).filter((t=>null!==t));2===t.length&&this.flatpickrInstance.setDate(t,!1)}}catch(t){console.warn("Error setting initial dates:",t)}}handleOpen(){var t;this._shouldFlatpickrOpen||(null===(t=this.flatpickrInstance)||void 0===t||t.close(),this._shouldFlatpickrOpen=!0)}async handleDateChange(t){var e;if(this._hasInteracted=!0,0===t.length?this.value=[null,null]:1===t.length?this.value=[t[0],null]:this.value=[t[0],t[1]],2===t.length){const i=t.map((t=>t.toISOString())),a=(null===(e=this._inputEl)||void 0===e?void 0:e.value)||i.join(" to ");b(this,"on-change",{dates:i,dateString:a})}this.updateSelectedDateRangeAria(t),this._validate(!0,!1),await this.updateComplete}async handleClose(){this._hasInteracted=!0,this.flatpickrInstance&&this.flatpickrInstance.selectedDates&&1===this.flatpickrInstance.selectedDates.length&&(this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.value=[null,null]),this._validate(!0,!1),await this.updateComplete}updateSelectedDateRangeAria(t){var e,i;if(2===t.length){const[i,a]=t;null===(e=this._inputEl)||void 0===e||e.setAttribute("aria-label",`Selected date range: ${i.toLocaleDateString()} to ${a.toLocaleDateString()}`)}else null===(i=this._inputEl)||void 0===i||i.setAttribute("aria-label","Date range")}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()||!this.value[0]||!this.value[1],a=this.required;let r=this._inputEl.validity,l=this._inputEl.validationMessage;a&&i&&(r={...r,valueMissing:!0},l=this.defaultErrorMessage),this.invalidText&&(r={...r,customError:!0},l=this.invalidText);const n=!r.valueMissing&&!r.customError;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,null],this.flatpickrInstance&&this.flatpickrInstance.clear(),this._hasInteracted=!1,this._validate(!1,!1)}};E.styles=[I,_],t([i({type:String})],E.prototype,"label",void 0),t([i({type:String})],E.prototype,"locale",void 0),t([i({type:String})],E.prototype,"dateFormat",void 0),t([i({type:Array})],E.prototype,"defaultDate",void 0),t([i({type:String})],E.prototype,"defaultErrorMessage",void 0),t([i({type:Array})],E.prototype,"value",void 0),t([i({type:String})],E.prototype,"warnText",void 0),t([i({type:Array})],E.prototype,"disable",void 0),t([i({type:Array})],E.prototype,"enable",void 0),t([i({type:String})],E.prototype,"caption",void 0),t([i({type:Boolean})],E.prototype,"required",void 0),t([i({type:String})],E.prototype,"size",void 0),t([i({type:Boolean})],E.prototype,"dateRangePickerDisabled",void 0),t([i({type:Boolean})],E.prototype,"twentyFourHourFormat",void 0),t([i({type:String})],E.prototype,"minDate",void 0),t([i({type:String})],E.prototype,"maxDate",void 0),t([i({type:String})],E.prototype,"errorAriaLabel",void 0),t([i({type:String})],E.prototype,"errorTitle",void 0),t([i({type:String})],E.prototype,"warningAriaLabel",void 0),t([i({type:String})],E.prototype,"warningTitle",void 0),t([a()],E.prototype,"_enableTime",void 0),t([a()],E.prototype,"flatpickrInstance",void 0),t([r("input")],E.prototype,"_inputEl",void 0),t([a()],E.prototype,"_hasInteracted",void 0),t([i({type:Object})],E.prototype,"textStrings",void 0),t([a()],E.prototype,"_textStrings",void 0),t([a()],E.prototype,"_shouldFlatpickrOpen",void 0),E=t([l("kyn-date-range-picker")],E);export{E as DateRangePicker};
556
+ </div>`:null}_handleClear(t){t.preventDefault(),t.stopPropagation(),this.flatpickrInstance&&this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.value=[null,null],this.defaultDate=[],this._validate(!0,!1),this.requestUpdate()}getDateRangePickerClasses(){return{"date-range-picker":!0,"date-range-picker__enable-time":this._enableTime,"date-range-picker__disabled":this.dateRangePickerDisabled}}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("minDate")||t.has("defaultDate")||t.has("maxDate")||t.has("locale")||t.has("twentyFourHourFormat"))&&(this._enableTime=u(this.dateFormat),this.flatpickrInstance&&this._initialized&&this.updateFlatpickrOptions()),t.has("dateRangePickerDisabled")&&this.dateRangePickerDisabled&&this.flatpickrInstance&&this.flatpickrInstance.close()}async setupAnchor(){this._inputEl&&await this.initializeFlatpickr()}async initializeFlatpickr(){this._inputEl&&(this.flatpickrInstance&&this.flatpickrInstance.destroy(),this.flatpickrInstance=await m({inputEl:this._inputEl,getFlatpickrOptions:()=>this.getComponentFlatpickrOptions(),setCalendarAttributes:t=>{if(t&&t.calendarContainer){const e=!!this.closest("kyn-modal");v(t,e),t.calendarContainer.setAttribute("aria-label","Date range calendar")}else console.warn("Calendar container not available...")},setInitialDates:this.setInitialDates.bind(this)}),k(),this._validate(!1,!1))}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,mode:"range",allowInput:!1,inputEl:this._inputEl,minDate:this.minDate,maxDate:this.maxDate,enable:this.enable,disable:this.disable,loadLocale:f,onChange:this.handleDateChange.bind(this),onClose:this.handleClose.bind(this),onOpen:this.handleOpen.bind(this),appendTo:a})}async updateFlatpickrOptions(){if(!this.flatpickrInstance)return;const t=this.flatpickrInstance.selectedDates,e=await this.getComponentFlatpickrOptions();Object.keys(e).forEach((t=>{this.flatpickrInstance.set(t,e[t])})),this.flatpickrInstance.redraw(),k(),t&&2===t.length&&this.flatpickrInstance.setDate(t,!1),setTimeout((()=>{if(this.flatpickrInstance&&this.flatpickrInstance.calendarContainer){const t=!!this.closest("kyn-modal");v(this.flatpickrInstance,t),this.flatpickrInstance.calendarContainer.setAttribute("aria-label","Date range calendar")}else console.warn("Calendar container not available...")}),0)}setInitialDates(){if(this.flatpickrInstance)try{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));2===t.length&&(this.value=t,this.flatpickrInstance.setDate(t,!1))}else if(Array.isArray(this.value)&&2===this.value.length){const t=this.value.map((t=>t instanceof Date&&!isNaN(t.getTime())?t:null)).filter((t=>null!==t));2===t.length&&this.flatpickrInstance.setDate(t,!1)}}catch(t){console.warn("Error setting initial dates:",t)}}handleOpen(){var t;this._shouldFlatpickrOpen||(null===(t=this.flatpickrInstance)||void 0===t||t.close(),this._shouldFlatpickrOpen=!0)}async handleDateChange(t){var e;if(this._hasInteracted=!0,0===t.length?this.value=[null,null]:1===t.length?this.value=[t[0],null]:this.value=[t[0],t[1]],2===t.length){const i=t.map((t=>t.toISOString())),a=(null===(e=this._inputEl)||void 0===e?void 0:e.value)||i.join(" to ");b(this,"on-change",{dates:i,dateString:a})}this.updateSelectedDateRangeAria(t),this._validate(!0,!1),await this.updateComplete}async handleClose(){this._hasInteracted=!0,this.flatpickrInstance&&this.flatpickrInstance.selectedDates&&1===this.flatpickrInstance.selectedDates.length&&(this.flatpickrInstance.clear(),this._inputEl&&(this._inputEl.value=""),this.value=[null,null]),this._validate(!0,!1),await this.updateComplete}updateSelectedDateRangeAria(t){var e,i;if(2===t.length){const[i,a]=t;null===(e=this._inputEl)||void 0===e||e.setAttribute("aria-label",`Selected date range: ${i.toLocaleDateString()} to ${a.toLocaleDateString()}`)}else null===(i=this._inputEl)||void 0===i||i.setAttribute("aria-label","Date range")}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()||!this.value[0]||!this.value[1],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,null],this.flatpickrInstance&&this.flatpickrInstance.clear(),this._hasInteracted=!1,this._validate(!1,!1)}};E.styles=[I,_],t([i({type:String})],E.prototype,"label",void 0),t([i({type:String})],E.prototype,"locale",void 0),t([i({type:String})],E.prototype,"dateFormat",void 0),t([i({type:Array})],E.prototype,"defaultDate",void 0),t([i({type:String})],E.prototype,"defaultErrorMessage",void 0),t([i({type:Array})],E.prototype,"value",void 0),t([i({type:String})],E.prototype,"warnText",void 0),t([i({type:Array})],E.prototype,"disable",void 0),t([i({type:Array})],E.prototype,"enable",void 0),t([i({type:String})],E.prototype,"caption",void 0),t([i({type:Boolean})],E.prototype,"required",void 0),t([i({type:String})],E.prototype,"size",void 0),t([i({type:Boolean})],E.prototype,"dateRangePickerDisabled",void 0),t([i({type:Boolean})],E.prototype,"twentyFourHourFormat",void 0),t([i({type:String})],E.prototype,"minDate",void 0),t([i({type:String})],E.prototype,"maxDate",void 0),t([i({type:String})],E.prototype,"errorAriaLabel",void 0),t([i({type:String})],E.prototype,"errorTitle",void 0),t([i({type:String})],E.prototype,"warningAriaLabel",void 0),t([i({type:String})],E.prototype,"warningTitle",void 0),t([a()],E.prototype,"_enableTime",void 0),t([a()],E.prototype,"flatpickrInstance",void 0),t([r("input")],E.prototype,"_inputEl",void 0),t([a()],E.prototype,"_hasInteracted",void 0),t([i({type:Object})],E.prototype,"textStrings",void 0),t([a()],E.prototype,"_textStrings",void 0),t([a()],E.prototype,"_shouldFlatpickrOpen",void 0),E=t([l("kyn-date-range-picker")],E);export{E as DateRangePicker};
557
557
  //# sourceMappingURL=daterangepicker.js.map