@kyndryl-design-system/shidoka-applications 2.65.6 → 2.66.0

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.
@@ -0,0 +1,16 @@
1
+ import { LitElement } from 'lit';
2
+ /**
3
+ * Divider Component.
4
+ */
5
+ export declare class Divider extends LitElement {
6
+ static styles: import("lit").CSSResult;
7
+ /** Vertical orientation. <br><i>Note:</i> Vertical divider will span the full height of its container. */
8
+ accessor vertical: boolean;
9
+ render(): import("lit-html").TemplateResult<1>;
10
+ }
11
+ declare global {
12
+ interface HTMLElementTagNameMap {
13
+ 'kyn-divider': Divider;
14
+ }
15
+ }
16
+ //# sourceMappingURL=divider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/divider/divider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;AAIlD;;GAEG;AACH,qBACa,OAAQ,SAAQ,UAAU;IACrC,OAAgB,MAAM,0BAA0B;IAEhD,0GAA0G;IAE1G,QAAQ,CAAC,QAAQ,UAAS;IAEjB,MAAM;CAQhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,OAAO,CAAC;KACxB;CACF"}
@@ -0,0 +1,32 @@
1
+ import{_ as e,a as t,b as a,c as r,d as i}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as l,t as o,r as s,n}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{x as c}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as d}from"../../../vendor/lit-element-DxLLCKb1.js";var v=l`*,
2
+ *::before,
3
+ *::after {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ * {
8
+ -webkit-tap-highlight-color: transparent;
9
+ }
10
+
11
+ :host(:not([vertical])) {
12
+ display: block;
13
+ }
14
+
15
+ :host([vertical]) {
16
+ display: inline-flex;
17
+ }
18
+
19
+ .divider {
20
+ background-color: var(--kd-color-border-level-secondary);
21
+ height: 1px;
22
+ }
23
+ :host([vertical]) .divider {
24
+ width: 1px;
25
+ height: auto;
26
+ }`;let m=(()=>{var l;let m,h,b,p=[o("kyn-divider")],u=[],f=d,y=[],g=[];return h=class extends f{get vertical(){return r(this,l,"f")}set vertical(e){i(this,l,e,"f")}render(){return c`
27
+ <div
28
+ role="separator"
29
+ class="divider ${this.vertical?"vertical":"horizontal"}"
30
+ ></div>
31
+ `}constructor(){super(...arguments),l.set(this,a(this,y,!1)),a(this,g)}},l=new WeakMap,e(h,"Divider"),(()=>{var e;const a="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=f[Symbol.metadata])&&void 0!==e?e:null):void 0;b=[n({type:Boolean,reflect:!0})],t(h,null,b,{kind:"accessor",name:"vertical",static:!1,private:!1,access:{has:e=>"vertical"in e,get:e=>e.vertical,set:(e,t)=>{e.vertical=t}},metadata:a},y,g),t(null,m={value:h},p,{kind:"class",name:h.name,metadata:a},null,u),h=m.value,a&&Object.defineProperty(h,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})})(),h.styles=s(v),a(h,u),h})();export{m as Divider};
32
+ //# sourceMappingURL=divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.js","sources":["../../../../src/components/reusable/divider/divider.ts"],"sourcesContent":["import { LitElement, html, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport DividerScss from './divider.scss?inline';\n\n/**\n * Divider Component.\n */\n@customElement('kyn-divider')\nexport class Divider extends LitElement {\n static override styles = unsafeCSS(DividerScss);\n\n /** Vertical orientation. <br><i>Note:</i> Vertical divider will span the full height of its container. */\n @property({ type: Boolean, reflect: true })\n accessor vertical = false;\n\n override render() {\n return html`\n <div\n role=\"separator\"\n class=\"divider ${this.vertical ? 'vertical' : 'horizontal'}\"\n ></div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-divider': Divider;\n }\n}\n"],"names":["Divider","customElement","LitElement","_classThis","_classSuper","vertical","__classPrivateFieldGet","this","_Divider_vertical_accessor_storage","value","__classPrivateFieldSet","render","html","set","__runInitializers","_vertical_initializers","property","type","Boolean","reflect","__esDecorate","_vertical_decorators","kind","name","static","private","access","has","obj","get","metadata","_metadata","_vertical_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","DividerScss"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;OAQaA,EAAO,yBADnBC,EAAc,uBACcC,mBAARC,EAAA,cAAQC,EAK3B,YAASC,GAAQ,OAAAC,EAAAC,KAAAC,EAAA,IAAA,CAAjB,YAASH,CAAQI,GAAAC,EAAAH,KAAAC,EAAAC,EAAA,IAAA,CAER,MAAAE,GACP,OAAOC,CAAI;;;yBAGUL,KAAKF,SAAW,WAAa;;wCAN3CG,EAAAK,IAAAN,KAAAO,EAAAP,KAAAQ,GAAW,sLADnBC,EAAS,CAAEC,KAAMC,QAASC,SAAS,KACpCC,EAAAjB,EAAA,KAAAkB,EAAA,CAAAC,KAAA,WAAAC,KAAA,WAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAC,IAAAC,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASvB,SAAQQ,IAAA,CAAAe,EAAAnB,KAAAmB,EAARvB,SAAQI,CAAA,GAAAqB,SAAAC,GAAAhB,EAAAiB,GALnBZ,EAAA,KAAAa,EAAA,CAAAxB,MAAAN,GAAA+B,EAAA,CAAAZ,KAAA,QAAAC,KAAApB,EAAAoB,KAAAO,SAAAC,GAAA,KAAAI,iHACkBhC,EAAAiC,OAASC,EAAUC,GADxBxB,EAAAX,EAAAgC,MAAO"}
@@ -0,0 +1,2 @@
1
+ export { Divider } from './divider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/divider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ export{Divider}from"./divider.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/lit-element-DxLLCKb1.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAmB,MAAM,KAAK,CAAC;AAQlE,OAAO,kBAAkB,CAAC;AAC1B,OAAO,0BAA0B,CAAC;AAClC,OAAO,QAAQ,CAAC;AAChB,OAAO,WAAW,CAAC;AAEnB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;;AAwBlE;;;;;;;;;;;;GAYG;AACH,qBACa,QAAS,SAAQ,aAAqB;IACjD,OAAgB,MAAM,0BAA2B;IAEjD,kBAAkB;IAElB,QAAQ,CAAC,KAAK,SAAM;IAEpB,iDAAiD;IAEjD,QAAQ,CAAC,IAAI,SAAQ;IAErB,qBAAqB;IAErB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAa;IAE5C,kCAAkC;IAElC,QAAQ,CAAC,MAAM,UAAS;IAExB,uCAAuC;IAEvC,QAAQ,CAAC,OAAO,SAAM;IAEtB,4BAA4B;IAE5B,QAAQ,CAAC,WAAW,SAAM;IAE1B,iCAAiC;IAEjC,QAAQ,CAAC,IAAI,UAAS;IAEtB,qCAAqC;IAErC,QAAQ,CAAC,UAAU,UAAS;IAE5B,mCAAmC;IAEnC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,gEAAgE;IAEhE,QAAQ,CAAC,QAAQ,UAAS;IAE1B,0CAA0C;IAE1C,QAAQ,CAAC,YAAY,UAAS;IAE9B,0CAA0C;IAE1C,QAAQ,CAAC,QAAQ,UAAS;IAE1B,mCAAmC;IAEnC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,+BAA+B;IAE/B,QAAQ,CAAC,SAAS,UAAS;IAE3B,+BAA+B;IAE/B,QAAQ,CAAC,QAAQ,UAAS;IAE1B,wCAAwC;IAExC,QAAQ,CAAC,QAAQ,UAAS;IAE1B,wEAAwE;IAExE,QAAQ,CAAC,SAAS,UAAS;IAE3B,uCAAuC;IAEvC,QAAQ,CAAC,aAAa,SAAgB;IAEtC,gCAAgC;IAEhC,QAAQ,CAAC,YAAY,SAAW;IAEhC,8CAA8C;IAE9C,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAU;IAExD;;OAEG;IAEH,QAAQ,CAAC,gBAAgB,UAAS;IAElC;;OAEG;IAEH,QAAQ,CAAC,sBAAsB,UAAS;IAExC,iCAAiC;IAEjC,QAAQ,CAAC,WAAW;;;;;;;;;MAAuB;IAE3C,4CAA4C;IAE5C,QAAQ,CAAC,cAAc,UAAS;IAEhC;;OAEG;IAEH,QAAQ,CAAC,YAAY;;;;;;;;;MAAuB;IAE5C;;;OAGG;IAEH,QAAQ,CAAC,cAAc,SAAM;IAE7B;;;OAGG;IAEH,QAAQ,CAAC,IAAI,SAAM;IAEnB;;OAEG;IAEH,QAAQ,CAAC,UAAU,SAAM;IAEzB;;;OAGG;IAEH,QAAQ,CAAC,aAAa,SAA4B;IAElD;;;OAGG;IACH,SAAS,KAAK,OAAO,IAAI,KAAK,CAAC,cAAc,GAAG,sBAAsB,CAAC,CAMtE;IAED;;;OAGG;IACH,SAAS,KAAK,eAAe,IAAI,KAAK,CACpC,cAAc,GAAG,sBAAsB,CACxC,CAKA;IAED;;;OAGG;IAEH,QAAQ,CAAC,QAAQ,EAAG,gBAAgB,CAAC;IAErC;;;OAGG;IAEH,QAAQ,CAAC,QAAQ,EAAG,WAAW,CAAC;IAEhC;;;OAGG;IAEH,QAAQ,CAAC,SAAS,EAAG,WAAW,CAAC;IAEjC;;;OAGG;IAEH,QAAQ,CAAC,eAAe,EAAG,WAAW,CAAC;IAEvC;;;OAGG;IAEH,QAAQ,CAAC,gBAAgB,EAAG,gBAAgB,CAAC;IAE7C;;;OAGG;IAEH,QAAQ,CAAC,YAAY,UAAS;IAE9B;;;OAGG;IAEH,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAM;IAEnC;;OAEG;IACH,iBAAiB,EAAE,GAAG,CAAS;IAE/B;;OAEG;IACH,sBAAsB,SAAM;IAE5B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,aAAa,CAA6C;IAClE,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,YAAY,CAA4C;IAEvD,MAAM;IAsOf,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,mBAAmB;IAkElB,YAAY;IAerB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,cAAc;IAyMtB,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,WAAW;IA4BnB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,mBAAmB;IAqD3B,OAAO,CAAC,iBAAiB;IA0DzB,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,YAAY;IA4CpB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,eAAe;IAMd,iBAAiB;IAWjB,oBAAoB;IAW7B,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,SAAS;IAuCjB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,WAAW;IASV,UAAU,CAAC,YAAY,EAAE,GAAG;IAM5B,OAAO,CAAC,YAAY,EAAE,cAAc;IAyG7C,OAAO,KAAK,SAAS,GAEpB;IAGD,OAAO,CAAC,WAAW;IAsCnB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,mBAAmB;CAkC5B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,cAAc,EAAE,QAAQ,CAAC;KAC1B;CACF"}
1
+ {"version":3,"file":"dropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"names":[],"mappings":"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"}
@@ -852,7 +852,7 @@ kyn-tag-group {
852
852
 
853
853
  .dropdown.ai-connected .wrapper .custom .options {
854
854
  box-shadow: var(--kd-elevation-level-1);
855
- }`;const w={title:"Dropdown",selectedOptions:"List of selected options",requiredText:"Required",errorText:"Error",clearAll:"Clear all",clear:"Clear",addItem:"Add item...",add:"Add"},E="Enter",$="Escape",S="ArrowDown",O="ArrowUp";let _=(()=>{var d,_,T,z,C,A,M,D,I,W,N,q,V,L,j,B,K,P,R,U,Y,H,F,G,J,Q,X,Z,ee,te,ie,ae,se,le,ne,oe;let re,de,he,ce,pe,ue,me,ve,ge,be,fe,ke,xe,ye,we,Ee,$e,Se,Oe,_e,Te,ze,Ce,Ae,Me,De,Ie,We,Ne,qe,Ve,Le,je,Be,Ke,Pe,Re,Ue,Ye=[c("kyn-dropdown")],He=[],Fe=g(v),Ge=[],Je=[],Qe=[],Xe=[],Ze=[],et=[],tt=[],it=[],at=[],st=[],lt=[],nt=[],ot=[],rt=[],dt=[],ht=[],ct=[],pt=[],ut=[],mt=[],vt=[],gt=[],bt=[],ft=[],kt=[],xt=[],yt=[],wt=[],Et=[],$t=[],St=[],Ot=[],_t=[],Tt=[],zt=[],Ct=[],At=[],Mt=[],Dt=[],It=[],Wt=[],Nt=[],qt=[],Vt=[],Lt=[],jt=[],Bt=[],Kt=[],Pt=[],Rt=[],Ut=[],Yt=[],Ht=[],Ft=[],Gt=[],Jt=[],Qt=[],Xt=[],Zt=[],ei=[],ti=[],ii=[],ai=[],si=[],li=[],ni=[],oi=[],ri=[],di=[],hi=[],ci=[],pi=[];return de=class extends Fe{constructor(){super(...arguments),d.set(this,i(this,Ge,"")),_.set(this,(i(this,Je),i(this,Qe,"md"))),T.set(this,(i(this,Xe),i(this,Ze,"default"))),z.set(this,(i(this,et),i(this,tt,!1))),C.set(this,(i(this,it),i(this,at,""))),A.set(this,(i(this,st),i(this,lt,""))),M.set(this,(i(this,nt),i(this,ot,!1))),D.set(this,(i(this,rt),i(this,dt,!1))),I.set(this,(i(this,ht),i(this,ct,!1))),W.set(this,(i(this,pt),i(this,ut,!1))),N.set(this,(i(this,mt),i(this,vt,!1))),q.set(this,(i(this,gt),i(this,bt,!1))),V.set(this,(i(this,ft),i(this,kt,!1))),L.set(this,(i(this,xt),i(this,yt,!1))),j.set(this,(i(this,wt),i(this,Et,!1))),B.set(this,(i(this,$t),i(this,St,!1))),K.set(this,(i(this,Ot),i(this,_t,!1))),P.set(this,(i(this,Tt),i(this,zt,"Select all"))),R.set(this,(i(this,Ct),i(this,At,"120px"))),U.set(this,(i(this,Mt),i(this,Dt,"auto"))),Y.set(this,(i(this,It),i(this,Wt,!1))),H.set(this,(i(this,Nt),i(this,qt,!1))),F.set(this,(i(this,Vt),i(this,Lt,w))),G.set(this,(i(this,jt),i(this,Bt,!1))),J.set(this,(i(this,Kt),i(this,Pt,w))),Q.set(this,(i(this,Rt),i(this,Ut,""))),X.set(this,(i(this,Yt),i(this,Ht,""))),Z.set(this,(i(this,Ft),i(this,Gt,""))),ee.set(this,(i(this,Jt),i(this,Qt,"Dropdown menu options."))),te.set(this,(i(this,Xt),i(this,Zt,void 0))),ie.set(this,(i(this,ei),i(this,ti,void 0))),ae.set(this,(i(this,ii),i(this,ai,void 0))),se.set(this,(i(this,si),i(this,li,void 0))),le.set(this,(i(this,ni),i(this,oi,void 0))),ne.set(this,(i(this,ri),i(this,di,!1))),oe.set(this,(i(this,hi),i(this,ci,[]))),this.searchTextEntered=(i(this,pi),!1),this.prevSearchKeydownIndex=-1,this._onDocumentClick=e=>this._handleClickOut(e),this._onChildClick=e=>this._handleClick(e),this._onChildRemove=e=>this._handleRemoveOption(),this._onChildBlur=e=>this._handleBlur(e)}get label(){return a(this,d,"f")}set label(e){s(this,d,e,"f")}get size(){return a(this,_,"f")}set size(e){s(this,_,e,"f")}get kind(){return a(this,T,"f")}set kind(e){s(this,T,e,"f")}get inline(){return a(this,z,"f")}set inline(e){s(this,z,e,"f")}get caption(){return a(this,C,"f")}set caption(e){s(this,C,e,"f")}get placeholder(){return a(this,A,"f")}set placeholder(e){s(this,A,e,"f")}get open(){return a(this,M,"f")}set open(e){s(this,M,e,"f")}get searchable(){return a(this,D,"f")}set searchable(e){s(this,D,e,"f")}get enhanced(){return a(this,I,"f")}set enhanced(e){s(this,I,e,"f")}get readonly(){return a(this,W,"f")}set readonly(e){s(this,W,e,"f")}get filterSearch(){return a(this,N,"f")}set filterSearch(e){s(this,N,e,"f")}get multiple(){return a(this,q,"f")}set multiple(e){s(this,q,e,"f")}get required(){return a(this,V,"f")}set required(e){s(this,V,e,"f")}get hideLabel(){return a(this,L,"f")}set hideLabel(e){s(this,L,e,"f")}get disabled(){return a(this,j,"f")}set disabled(e){s(this,j,e,"f")}get hideTags(){return a(this,B,"f")}set hideTags(e){s(this,B,e,"f")}get selectAll(){return a(this,K,"f")}set selectAll(e){s(this,K,e,"f")}get selectAllText(){return a(this,P,"f")}set selectAllText(e){s(this,P,e,"f")}get menuMinWidth(){return a(this,R,"f")}set menuMinWidth(e){s(this,R,e,"f")}get openDirection(){return a(this,U,"f")}set openDirection(e){s(this,U,e,"f")}get selectAllChecked(){return a(this,Y,"f")}set selectAllChecked(e){s(this,Y,e,"f")}get selectAllIndeterminate(){return a(this,H,"f")}set selectAllIndeterminate(e){s(this,H,e,"f")}get textStrings(){return a(this,F,"f")}set textStrings(e){s(this,F,e,"f")}get allowAddOption(){return a(this,G,"f")}set allowAddOption(e){s(this,G,e,"f")}get _textStrings(){return a(this,J,"f")}set _textStrings(e){s(this,J,e,"f")}get newOptionValue(){return a(this,Q,"f")}set newOptionValue(e){s(this,Q,e,"f")}get text(){return a(this,X,"f")}set text(e){s(this,X,e,"f")}get searchText(){return a(this,Z,"f")}set searchText(e){s(this,Z,e,"f")}get assistiveText(){return a(this,ee,"f")}set assistiveText(e){s(this,ee,e,"f")}get options(){return Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option"))}get selectedOptions(){return this.options.filter((e=>e.hasAttribute("selected")))}get searchEl(){return a(this,te,"f")}set searchEl(e){s(this,te,e,"f")}get buttonEl(){return a(this,ie,"f")}set buttonEl(e){s(this,ie,e,"f")}get listboxEl(){return a(this,ae,"f")}set listboxEl(e){s(this,ae,e,"f")}get clearMultipleEl(){return a(this,se,"f")}set clearMultipleEl(e){s(this,se,e,"f")}get addOptionInputEl(){return a(this,le,"f")}set addOptionInputEl(e){s(this,le,e,"f")}get _openUpwards(){return a(this,ne,"f")}set _openUpwards(e){s(this,ne,e,"f")}get _tags(){return a(this,oe,"f")}set _tags(e){s(this,oe,e,"f")}render(){var e;const t={dropdown:!0,"ai-connected":"ai"===this.kind};return o`
855
+ }`;const w={title:"Dropdown",selectedOptions:"List of selected options",requiredText:"Required",errorText:"Error",clearAll:"Clear all",clear:"Clear",addItem:"Add item...",add:"Add"},E="Enter",$="Escape",S="ArrowDown",O="ArrowUp";let _=(()=>{var d,_,T,z,C,A,M,I,D,W,N,q,V,L,j,B,K,P,R,U,Y,H,F,G,J,Q,X,Z,ee,te,ie,ae,se,le,ne,oe;let re,de,he,ce,pe,ue,me,ve,ge,be,fe,ke,xe,ye,we,Ee,$e,Se,Oe,_e,Te,ze,Ce,Ae,Me,Ie,De,We,Ne,qe,Ve,Le,je,Be,Ke,Pe,Re,Ue,Ye=[c("kyn-dropdown")],He=[],Fe=g(v),Ge=[],Je=[],Qe=[],Xe=[],Ze=[],et=[],tt=[],it=[],at=[],st=[],lt=[],nt=[],ot=[],rt=[],dt=[],ht=[],ct=[],pt=[],ut=[],mt=[],vt=[],gt=[],bt=[],ft=[],kt=[],xt=[],yt=[],wt=[],Et=[],$t=[],St=[],Ot=[],_t=[],Tt=[],zt=[],Ct=[],At=[],Mt=[],It=[],Dt=[],Wt=[],Nt=[],qt=[],Vt=[],Lt=[],jt=[],Bt=[],Kt=[],Pt=[],Rt=[],Ut=[],Yt=[],Ht=[],Ft=[],Gt=[],Jt=[],Qt=[],Xt=[],Zt=[],ei=[],ti=[],ii=[],ai=[],si=[],li=[],ni=[],oi=[],ri=[],di=[],hi=[],ci=[],pi=[];return de=class extends Fe{constructor(){super(...arguments),d.set(this,i(this,Ge,"")),_.set(this,(i(this,Je),i(this,Qe,"md"))),T.set(this,(i(this,Xe),i(this,Ze,"default"))),z.set(this,(i(this,et),i(this,tt,!1))),C.set(this,(i(this,it),i(this,at,""))),A.set(this,(i(this,st),i(this,lt,""))),M.set(this,(i(this,nt),i(this,ot,!1))),I.set(this,(i(this,rt),i(this,dt,!1))),D.set(this,(i(this,ht),i(this,ct,!1))),W.set(this,(i(this,pt),i(this,ut,!1))),N.set(this,(i(this,mt),i(this,vt,!1))),q.set(this,(i(this,gt),i(this,bt,!1))),V.set(this,(i(this,ft),i(this,kt,!1))),L.set(this,(i(this,xt),i(this,yt,!1))),j.set(this,(i(this,wt),i(this,Et,!1))),B.set(this,(i(this,$t),i(this,St,!1))),K.set(this,(i(this,Ot),i(this,_t,!1))),P.set(this,(i(this,Tt),i(this,zt,"Select all"))),R.set(this,(i(this,Ct),i(this,At,"120px"))),U.set(this,(i(this,Mt),i(this,It,"auto"))),Y.set(this,(i(this,Dt),i(this,Wt,!1))),H.set(this,(i(this,Nt),i(this,qt,!1))),F.set(this,(i(this,Vt),i(this,Lt,w))),G.set(this,(i(this,jt),i(this,Bt,!1))),J.set(this,(i(this,Kt),i(this,Pt,w))),Q.set(this,(i(this,Rt),i(this,Ut,""))),X.set(this,(i(this,Yt),i(this,Ht,""))),Z.set(this,(i(this,Ft),i(this,Gt,""))),ee.set(this,(i(this,Jt),i(this,Qt,"Dropdown menu options."))),te.set(this,(i(this,Xt),i(this,Zt,void 0))),ie.set(this,(i(this,ei),i(this,ti,void 0))),ae.set(this,(i(this,ii),i(this,ai,void 0))),se.set(this,(i(this,si),i(this,li,void 0))),le.set(this,(i(this,ni),i(this,oi,void 0))),ne.set(this,(i(this,ri),i(this,di,!1))),oe.set(this,(i(this,hi),i(this,ci,[]))),this.searchTextEntered=(i(this,pi),!1),this.prevSearchKeydownIndex=-1,this._onDocumentClick=e=>this._handleClickOut(e),this._onChildClick=e=>this._handleClick(e),this._onChildRemove=e=>this._handleRemoveOption(),this._onChildBlur=e=>this._handleBlur(e)}get label(){return a(this,d,"f")}set label(e){s(this,d,e,"f")}get size(){return a(this,_,"f")}set size(e){s(this,_,e,"f")}get kind(){return a(this,T,"f")}set kind(e){s(this,T,e,"f")}get inline(){return a(this,z,"f")}set inline(e){s(this,z,e,"f")}get caption(){return a(this,C,"f")}set caption(e){s(this,C,e,"f")}get placeholder(){return a(this,A,"f")}set placeholder(e){s(this,A,e,"f")}get open(){return a(this,M,"f")}set open(e){s(this,M,e,"f")}get searchable(){return a(this,I,"f")}set searchable(e){s(this,I,e,"f")}get enhanced(){return a(this,D,"f")}set enhanced(e){s(this,D,e,"f")}get readonly(){return a(this,W,"f")}set readonly(e){s(this,W,e,"f")}get filterSearch(){return a(this,N,"f")}set filterSearch(e){s(this,N,e,"f")}get multiple(){return a(this,q,"f")}set multiple(e){s(this,q,e,"f")}get required(){return a(this,V,"f")}set required(e){s(this,V,e,"f")}get hideLabel(){return a(this,L,"f")}set hideLabel(e){s(this,L,e,"f")}get disabled(){return a(this,j,"f")}set disabled(e){s(this,j,e,"f")}get hideTags(){return a(this,B,"f")}set hideTags(e){s(this,B,e,"f")}get selectAll(){return a(this,K,"f")}set selectAll(e){s(this,K,e,"f")}get selectAllText(){return a(this,P,"f")}set selectAllText(e){s(this,P,e,"f")}get menuMinWidth(){return a(this,R,"f")}set menuMinWidth(e){s(this,R,e,"f")}get openDirection(){return a(this,U,"f")}set openDirection(e){s(this,U,e,"f")}get selectAllChecked(){return a(this,Y,"f")}set selectAllChecked(e){s(this,Y,e,"f")}get selectAllIndeterminate(){return a(this,H,"f")}set selectAllIndeterminate(e){s(this,H,e,"f")}get textStrings(){return a(this,F,"f")}set textStrings(e){s(this,F,e,"f")}get allowAddOption(){return a(this,G,"f")}set allowAddOption(e){s(this,G,e,"f")}get _textStrings(){return a(this,J,"f")}set _textStrings(e){s(this,J,e,"f")}get newOptionValue(){return a(this,Q,"f")}set newOptionValue(e){s(this,Q,e,"f")}get text(){return a(this,X,"f")}set text(e){s(this,X,e,"f")}get searchText(){return a(this,Z,"f")}set searchText(e){s(this,Z,e,"f")}get assistiveText(){return a(this,ee,"f")}set assistiveText(e){s(this,ee,e,"f")}get options(){return Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option"))}get selectedOptions(){return this.options.filter((e=>e.hasAttribute("selected")))}get searchEl(){return a(this,te,"f")}set searchEl(e){s(this,te,e,"f")}get buttonEl(){return a(this,ie,"f")}set buttonEl(e){s(this,ie,e,"f")}get listboxEl(){return a(this,ae,"f")}set listboxEl(e){s(this,ae,e,"f")}get clearMultipleEl(){return a(this,se,"f")}set clearMultipleEl(e){s(this,se,e,"f")}get addOptionInputEl(){return a(this,le,"f")}set addOptionInputEl(e){s(this,le,e,"f")}get _openUpwards(){return a(this,ne,"f")}set _openUpwards(e){s(this,ne,e,"f")}get _tags(){return a(this,oe,"f")}set _tags(e){s(this,oe,e,"f")}render(){var e;const t={dropdown:!0,"ai-connected":"ai"===this.kind};return o`
856
856
  <div
857
857
  class=${l(t)}
858
858
  ?disabled=${this.disabled}
@@ -1076,5 +1076,5 @@ kyn-tag-group {
1076
1076
  ${this.assistiveText}
1077
1077
  </div>
1078
1078
  </div>
1079
- `}firstUpdated(){""===this.placeholder&&(this.searchable?this.placeholder="Search":this.multiple?this.placeholder="Select items":this.placeholder="Select an option")}handleSlotChange(){this.updateChildOptions(),this._updateOptions(),this._updateSelectedText()}updateChildOptions(){var e;(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector("#children")).assignedElements({flatten:!0}).forEach((e=>{const t=e.tagName;"KYN-DROPDOWN-OPTION"!==t&&"KYN-ENHANCED-DROPDOWN-OPTION"!==t||(e.allowAddOption=this.allowAddOption,e.multiple=this.multiple,e.readonly=this.readonly)}))}handleClick(){this.canOpen()&&(this.open=!this.open,this.searchable?this.searchEl.focus():this.buttonEl.focus())}handleButtonKeydown(e){var t;this.readonly?"Escape"===e.key&&(this.open=!1,null===(t=this.buttonEl)||void 0===t||t.focus()):this.handleKeyboard(e,e.keyCode,"button")}handleListKeydown(e){var t;if(this.readonly)return void("Escape"===e.key&&(e.preventDefault(),this.open=!1,null===(t=this.buttonEl)||void 0===t||t.focus()));9!==e.keyCode&&e.preventDefault(),this.handleKeyboard(e,e.keyCode,"list")}_handleListFocus(){var e;const t=[...Array.from((null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelectorAll(".select-all"))||[]),...this.options.filter((e=>"none"!==e.style.display))],i=t.find((e=>!e.disabled));i&&(t.forEach((e=>e.highlighted=!1)),(!("tabIndex"in i)||i.tabIndex<0)&&(i.tabIndex=0),i.focus(),i.scrollIntoView({block:"nearest"}),this.assistiveText=i.text||"Option")}handleListBlur(e){if(this.multiple)return;this.options.forEach((e=>e.highlighted=!1));const t=e.relatedTarget;t&&(t.closest("kyn-dropdown-option")||t.closest("kyn-enhanced-dropdown-option")||t.classList.contains("search")||t.closest(".add-option"))||(this.open=!1,this.assistiveText="Dropdown menu options.")}handleKeyboard(e,t,i){var a,s,l,n,o;const r=[0,32],d=13,h=[...Array.from((null===(a=this.shadowRoot)||void 0===a?void 0:a.querySelectorAll(".select-all"))||[]),...this.options.filter((e=>"none"!==e.style.display))],c=h.find((e=>e.highlighted)),p=h.find((e=>e.selected));let u=c?h.indexOf(c):p?h.indexOf(p):0;if(r.includes(t)&&e.preventDefault(),this.readonly){if(40===t||38===t){e.preventDefault();let i=40===t?(u+1)%h.length:(u-1+h.length)%h.length,a=0;for(;(null===(s=h[i])||void 0===s?void 0:s.disabled)&&a++<h.length;)i=40===t?(i+1)%h.length:(i-1+h.length)%h.length;return void(h[i]&&(h[u]&&(h[u].highlighted=!1),h[i].focus(),h[i].highlighted=!0,null===(n=(l=h[i]).scrollIntoView)||void 0===n||n.call(l,{block:"nearest"}),this.assistiveText=h[i].text||"Option"))}return r.includes(t)||t===d?void e.preventDefault():27===t?(this.open=!1,null===(o=this.searchable?this.searchEl:this.buttonEl)||void 0===o||o.focus(),void(this.assistiveText="Dropdown menu options.")):void 0}const m=this.open;if("button"===i||"addOption"===i){let a=r.includes(t)||t===d||40==t||38==t;if(e.target===this.clearMultipleEl&&t===d&&(a=!1,h[u].highlighted=!1,h[u].selected=!h[u].selected,u=0,t!==d))return;a&&(this.open=!0,this.allowAddOption&&"button"===i&&t===d?setTimeout((()=>{var e;null===(e=this.addOptionInputEl)||void 0===e||e.focus()}),100):this.multiple||""===this.value||h[u].scrollIntoView({block:"nearest"}))}switch(t){case 0:case 32:case d:return h[u].highlighted=!0,void(m&&(this.multiple?(h[u].selected=!h[u].selected,this._handleClick({detail:{value:h[u].value,selected:h[u].selected}})):(h.forEach((e=>e.selected=!1)),h[u].selected=!0,this.updateValue(h[u].value,!0),this.emitValue(),this.open=!1,this.assistiveText=`Selected ${h[u].value}`)));case 40:{let e=c||p?u===h.length-1?0:u+1:0;return h[e].disabled&&(e=e===h.length-1?0:e+1),h[e].focus(),h[u].highlighted=!1,h[e].highlighted=!0,h[e].scrollIntoView({block:"nearest"}),void(this.assistiveText=h[e].text)}case 38:{let e=0===u?h.length-1:u-1;return h[e].disabled&&(e=0===e?h.length-1:e-1),h[e].focus(),h[u].highlighted=!1,h[e].highlighted=!0,h[e].scrollIntoView({block:"nearest"}),void(this.assistiveText=h[e].text)}case 27:return this.open=!1,this.searchable?this.searchEl.focus():this.buttonEl.focus(),void(this.assistiveText="Dropdown menu options.");default:return}}handleClearMultiple(e){var t;if(this.readonly)return;if(e.stopPropagation(),this.multiple){const e=(null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("slot#children")).assignedElements().filter((e=>e.selected&&e.disabled)).map((e=>e.value));this.value=e.length?e:[]}else this.value="";this._validate(!0,!1),this._updateSelectedOptions(),this.emitValue();const i=new CustomEvent("on-clear-all",{detail:{value:this.value}});this.dispatchEvent(i)}handleTagClear(e){this.readonly||(this.updateValue(e.value,!1),this._updateSelectedOptions(),this.emitValue())}handleClear(e){this.readonly||(e.stopPropagation(),this.text="",this.searchText="",this.searchEl.value="",this._emitSearch(),this.filterSearch&&this.options.map((e=>{e.style.display="block"})),this.multiple||(this.value="",this._validate(!0,!1),this._updateSelectedOptions(),this.emitValue()))}handleSearchClick(e){var t;this.readonly||(e.stopPropagation(),this.open=!0,""===(null!==(t=this.searchText)&&void 0!==t?t:"").trim()&&(this.searchText=""))}handleSearchKeydown(e){if(this.readonly)return"Escape"===e.key&&(this.open=!1,this.buttonEl.focus()),e.stopPropagation(),void e.preventDefault();e.stopPropagation();const t=this.options.find((e=>e.highlighted)),i=this.options.findIndex((e=>e.highlighted));this.searchTextEntered=!1,13===e.keyCode&&(this.searchTextEntered=!0,t?(this.prevSearchKeydownIndex!==i&&(this.multiple?t.selected=!t.selected:(this.options.forEach((e=>e.selected=!1)),t.selected=!0,this.open=!1),this.updateValue(t.value,t.selected)),t.selected?(this.assistiveText=`Selected ${t.innerHTML}`,this.prevSearchKeydownIndex=i):this.assistiveText=`Deselected ${t.innerHTML}`):this.assistiveText="No item matched."),27===e.keyCode&&(this.open=!1,this.buttonEl.focus())}handleSearchInput(e){if(this.readonly)return;const t=e.target.value;if(this.searchText=t,this.open=!0,this._emitSearch(),this.filterSearch)this.options.map((e=>{let i=e.text;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}i.toLowerCase().includes(t.toLowerCase())?e.style.display="block":e.style.display="none"}));else{const e=this.options.filter((e=>{let i=e.text;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}return i.toLowerCase().startsWith(t.toLowerCase())}));this.options.forEach((e=>e.highlighted=!1)),""!==t&&e.length&&(e[0].highlighted=!0,e[0].scrollIntoView({block:"nearest"}),this.searchTextEntered&&(this.assistiveText="Option Matched"))}}_updateSelectedOptions(){this.options.forEach((e=>{this.multiple?e.selected=this.value.includes(e.value):e.selected=this.value===e.value}))}_handleClick(e){var t;if(!this.readonly){if("selectAll"===e.detail.value){this.selectAllChecked=e.detail.selected;const i=(null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("slot#children")).assignedElements().filter((e=>e.selected&&e.disabled)).map((e=>e.value));e.detail.selected?(this.value=this.options.filter((e=>!e.disabled||e.disabled&&e.selected)).map((e=>e.value)),this.assistiveText="Selected all items."):(this.value=i.length?i:[],this.assistiveText="Deselected all items."),this._validate(!0,!1)}else this.updateValue(e.detail.value,e.detail.selected),this.assistiveText=e.detail.selected?`Selected ${e.detail.value}`:`Deselected ${e.detail.value}`;this._updateSelectedOptions(),this.multiple||(this.open=!1),this.emitValue()}}_handleBlur(e){const t=e.detail.origEvent.relatedTarget;(!t||"kyn-dropdown-option"!==(null==t?void 0:t.localName)&&"kyn-enhanced-dropdown-option"!==(null==t?void 0:t.localName)&&"kyn-dropdown"!==t.localName)&&(this.open=!1)}_handleClickOut(e){e.composedPath().includes(this)||(this.open=!1)}connectedCallback(){super.connectedCallback(),this._onConnected(),document.addEventListener("click",this._onDocumentClick),this.addEventListener("on-click",this._onChildClick),this.addEventListener("on-remove-option",this._onChildRemove),this.addEventListener("on-blur",this._onChildBlur)}disconnectedCallback(){this._onDisconnected(),document.removeEventListener("click",this._onDocumentClick),this.removeEventListener("on-click",this._onChildClick),this.removeEventListener("on-remove-option",this._onChildRemove),this.removeEventListener("on-blur",this._onChildBlur),super.disconnectedCallback()}updateValue(e,t=!1){if(!this.readonly){if(this.multiple){const i=""===this.value?[]:JSON.parse(JSON.stringify(this.value));if(t)i.push(e);else{const t=i.indexOf(e);i.splice(t,1)}this.value=i}else this.value=e;this._validate(!0,!1),this.multiple||(this.searchable?this.searchEl.focus():this.buttonEl.focus())}}_validate(e,t){const i={customError:""!==this.invalidText,valueMissing:this.required&&!this.readonly&&(!this.value||this.multiple&&!this.value.length||!this.multiple&&""===this.value)},a=this.required&&!this.value.length?"Please fill out this field.":"",s=""!==this.invalidText?this.invalidText:a,l=this.buttonEl||this.listboxEl;l?this._internals.setValidity(i,s,l):this._internals.setValidity(i,s),e&&(this._internalValidationMsg=a),t&&this._internals.reportValidity()}emitValue(){const e=new CustomEvent("on-change",{detail:{value:this.value}});this.dispatchEvent(e)}_emitSearch(){const e=new CustomEvent("on-search",{detail:{searchText:this.searchText}});this.dispatchEvent(e)}willUpdate(e){e.has("textStrings")&&(this._textStrings=b(w,this.textStrings))}updated(e){var t,i,a;super.updated(e),e.has("readonly")&&(null===(t=this.clearMultipleEl)||void 0===t||t.classList.toggle("is-readonly",this.readonly),null===(i=this.clearMultipleEl)||void 0===i||i.toggleAttribute("data-readonly",this.readonly)),e.has("kind")&&(this.dispatchEvent(new CustomEvent("kind-changed",{detail:this.kind,bubbles:!0,composed:!0})),this.classList.toggle("ai-connected","ai"===this.kind));const s=this.shadowRoot;if(s){if(e.has("open")){const e=s.querySelector('slot[name="anchor"]'),t=null==e?void 0:e.assignedElements({flatten:!0}),i=null==t?void 0:t.find((e=>!e.querySelector(".clear-multiple-icon"))),a=null==i?void 0:i.querySelector('span[slot="icon"]');a&&(a.style.transition="transform 0.2s ease-in-out",a.style.transform=this.open?"rotate(180deg)":"rotate(0deg)")}if(this._onUpdated(e),e.has("value")){this._updateOptions();const e=s.querySelector("slot#children").assignedElements().filter((e=>!e.disabled)),t=e.filter((e=>e.selected));this.selectAllChecked=t.length===e.length,this.selectAllIndeterminate=t.length>0&&t.length<e.length,this._updateTags(),this._updateSelectedText()}if(e.has("open")||e.has("openDirection")){if(this.open&&(this.options.forEach((e=>e.highlighted=!1)),!this.searchable&&this.listboxEl&&(this.listboxEl.focus({preventScroll:!0}),this.assistiveText="Selecting items. Use up and down arrow keys to navigate.")),"up"===this.openDirection)this._openUpwards=!0;else if("down"===this.openDirection)this._openUpwards=!1;else if(this.open){const e=this.buttonEl.getBoundingClientRect();this._openUpwards=e.top>.6*window.innerHeight}if(this.open&&!this.multiple){const e=this.options.find((e=>e.selected));null==e||e.scrollIntoView({block:"nearest"})}}e.has("multiple")&&this.options.forEach((e=>e.multiple=this.multiple)),e.has("searchText")&&this.searchEl&&(this.searchEl.value=this.searchText),(e.has("multiple")||e.has("allowAddOption")||e.has("readonly"))&&this.updateChildOptions(),e.has("open")&&this.open&&!this.searchable&&(null===(a=this.listboxEl)||void 0===a||a.focus({preventScroll:!0}))}}get hasSearch(){var e;return(null!==(e=this.searchText)&&void 0!==e?e:"").trim().length>0}_updateTags(){if(this.multiple){const e=Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option")),t=[];e&&(e.forEach((e=>{if(e.selected){let i=e.textContent;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}else i=e.textContent.trim();t.push({value:e.value,text:i,disabled:e.disabled})}})),this._tags=t)}}_updateOptions(){Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option")).forEach((e=>{if(e.multiple=this.multiple,this.multiple){const t=this.value.includes(e.value);e.selected=t}else e.selected=this.value===e.value}))}_handleInputNewOption(e){const t=e.target;this.newOptionValue=t.value}_handleRemoveOption(){this.assistiveText="MY option removed ",setTimeout((()=>{this.open=!1,this.buttonEl.focus()}),100)}_updateSelectedText(){const e=Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option"));if(!this.multiple){if(e.length&&""!==this.value){const t=e.find((e=>e.value===this.value));if(t)if("KYN-ENHANCED-DROPDOWN-OPTION"===t.tagName){const e=t.querySelector('[slot="title"]');e&&e.textContent.trim()?this.text=e.textContent.trim():this.text=t.displayText||this.value}else this.text=t.textContent.trim();else this.text="",console.warn(`No dropdown option found with value: ${this.value}`)}this.searchable&&this.text&&(this.searchText=this.text===this.placeholder?"":this.text,this.searchEl.value=this.searchText)}}},d=new WeakMap,_=new WeakMap,T=new WeakMap,z=new WeakMap,C=new WeakMap,A=new WeakMap,M=new WeakMap,D=new WeakMap,I=new WeakMap,W=new WeakMap,N=new WeakMap,q=new WeakMap,V=new WeakMap,L=new WeakMap,j=new WeakMap,B=new WeakMap,K=new WeakMap,P=new WeakMap,R=new WeakMap,U=new WeakMap,Y=new WeakMap,H=new WeakMap,F=new WeakMap,G=new WeakMap,J=new WeakMap,Q=new WeakMap,X=new WeakMap,Z=new WeakMap,ee=new WeakMap,te=new WeakMap,ie=new WeakMap,ae=new WeakMap,se=new WeakMap,le=new WeakMap,ne=new WeakMap,oe=new WeakMap,e(de,"Dropdown"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=Fe[Symbol.metadata])&&void 0!==e?e:null):void 0;he=[u({type:String})],ce=[u({type:String})],pe=[u({type:String,attribute:"kind"})],ue=[u({type:Boolean})],me=[u({type:String})],ve=[u({type:String})],ge=[u({type:Boolean,reflect:!0})],be=[u({type:Boolean})],fe=[u({type:Boolean})],ke=[u({type:Boolean,reflect:!0})],xe=[u({type:Boolean})],ye=[u({type:Boolean})],we=[u({type:Boolean})],Ee=[u({type:Boolean})],$e=[u({type:Boolean})],Se=[u({type:Boolean})],Oe=[u({type:Boolean})],_e=[u({type:String})],Te=[u({type:String})],ze=[u({type:String})],Ce=[u({type:Boolean})],Ae=[u({type:Boolean})],Me=[u({type:Object})],De=[u({type:Boolean})],Ie=[h()],We=[h()],Ne=[h()],qe=[u({type:String})],Ve=[h()],Le=[m(".search")],je=[m(".select")],Be=[m(".options")],Ke=[m(".clear-multiple")],Pe=[m(".add-option-input")],Re=[h()],Ue=[h()],t(de,null,he,{kind:"accessor",name:"label",static:!1,private:!1,access:{has:e=>"label"in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:i},Ge,Je),t(de,null,ce,{kind:"accessor",name:"size",static:!1,private:!1,access:{has:e=>"size"in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:i},Qe,Xe),t(de,null,pe,{kind:"accessor",name:"kind",static:!1,private:!1,access:{has:e=>"kind"in e,get:e=>e.kind,set:(e,t)=>{e.kind=t}},metadata:i},Ze,et),t(de,null,ue,{kind:"accessor",name:"inline",static:!1,private:!1,access:{has:e=>"inline"in e,get:e=>e.inline,set:(e,t)=>{e.inline=t}},metadata:i},tt,it),t(de,null,me,{kind:"accessor",name:"caption",static:!1,private:!1,access:{has:e=>"caption"in e,get:e=>e.caption,set:(e,t)=>{e.caption=t}},metadata:i},at,st),t(de,null,ve,{kind:"accessor",name:"placeholder",static:!1,private:!1,access:{has:e=>"placeholder"in e,get:e=>e.placeholder,set:(e,t)=>{e.placeholder=t}},metadata:i},lt,nt),t(de,null,ge,{kind:"accessor",name:"open",static:!1,private:!1,access:{has:e=>"open"in e,get:e=>e.open,set:(e,t)=>{e.open=t}},metadata:i},ot,rt),t(de,null,be,{kind:"accessor",name:"searchable",static:!1,private:!1,access:{has:e=>"searchable"in e,get:e=>e.searchable,set:(e,t)=>{e.searchable=t}},metadata:i},dt,ht),t(de,null,fe,{kind:"accessor",name:"enhanced",static:!1,private:!1,access:{has:e=>"enhanced"in e,get:e=>e.enhanced,set:(e,t)=>{e.enhanced=t}},metadata:i},ct,pt),t(de,null,ke,{kind:"accessor",name:"readonly",static:!1,private:!1,access:{has:e=>"readonly"in e,get:e=>e.readonly,set:(e,t)=>{e.readonly=t}},metadata:i},ut,mt),t(de,null,xe,{kind:"accessor",name:"filterSearch",static:!1,private:!1,access:{has:e=>"filterSearch"in e,get:e=>e.filterSearch,set:(e,t)=>{e.filterSearch=t}},metadata:i},vt,gt),t(de,null,ye,{kind:"accessor",name:"multiple",static:!1,private:!1,access:{has:e=>"multiple"in e,get:e=>e.multiple,set:(e,t)=>{e.multiple=t}},metadata:i},bt,ft),t(de,null,we,{kind:"accessor",name:"required",static:!1,private:!1,access:{has:e=>"required"in e,get:e=>e.required,set:(e,t)=>{e.required=t}},metadata:i},kt,xt),t(de,null,Ee,{kind:"accessor",name:"hideLabel",static:!1,private:!1,access:{has:e=>"hideLabel"in e,get:e=>e.hideLabel,set:(e,t)=>{e.hideLabel=t}},metadata:i},yt,wt),t(de,null,$e,{kind:"accessor",name:"disabled",static:!1,private:!1,access:{has:e=>"disabled"in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:i},Et,$t),t(de,null,Se,{kind:"accessor",name:"hideTags",static:!1,private:!1,access:{has:e=>"hideTags"in e,get:e=>e.hideTags,set:(e,t)=>{e.hideTags=t}},metadata:i},St,Ot),t(de,null,Oe,{kind:"accessor",name:"selectAll",static:!1,private:!1,access:{has:e=>"selectAll"in e,get:e=>e.selectAll,set:(e,t)=>{e.selectAll=t}},metadata:i},_t,Tt),t(de,null,_e,{kind:"accessor",name:"selectAllText",static:!1,private:!1,access:{has:e=>"selectAllText"in e,get:e=>e.selectAllText,set:(e,t)=>{e.selectAllText=t}},metadata:i},zt,Ct),t(de,null,Te,{kind:"accessor",name:"menuMinWidth",static:!1,private:!1,access:{has:e=>"menuMinWidth"in e,get:e=>e.menuMinWidth,set:(e,t)=>{e.menuMinWidth=t}},metadata:i},At,Mt),t(de,null,ze,{kind:"accessor",name:"openDirection",static:!1,private:!1,access:{has:e=>"openDirection"in e,get:e=>e.openDirection,set:(e,t)=>{e.openDirection=t}},metadata:i},Dt,It),t(de,null,Ce,{kind:"accessor",name:"selectAllChecked",static:!1,private:!1,access:{has:e=>"selectAllChecked"in e,get:e=>e.selectAllChecked,set:(e,t)=>{e.selectAllChecked=t}},metadata:i},Wt,Nt),t(de,null,Ae,{kind:"accessor",name:"selectAllIndeterminate",static:!1,private:!1,access:{has:e=>"selectAllIndeterminate"in e,get:e=>e.selectAllIndeterminate,set:(e,t)=>{e.selectAllIndeterminate=t}},metadata:i},qt,Vt),t(de,null,Me,{kind:"accessor",name:"textStrings",static:!1,private:!1,access:{has:e=>"textStrings"in e,get:e=>e.textStrings,set:(e,t)=>{e.textStrings=t}},metadata:i},Lt,jt),t(de,null,De,{kind:"accessor",name:"allowAddOption",static:!1,private:!1,access:{has:e=>"allowAddOption"in e,get:e=>e.allowAddOption,set:(e,t)=>{e.allowAddOption=t}},metadata:i},Bt,Kt),t(de,null,Ie,{kind:"accessor",name:"_textStrings",static:!1,private:!1,access:{has:e=>"_textStrings"in e,get:e=>e._textStrings,set:(e,t)=>{e._textStrings=t}},metadata:i},Pt,Rt),t(de,null,We,{kind:"accessor",name:"newOptionValue",static:!1,private:!1,access:{has:e=>"newOptionValue"in e,get:e=>e.newOptionValue,set:(e,t)=>{e.newOptionValue=t}},metadata:i},Ut,Yt),t(de,null,Ne,{kind:"accessor",name:"text",static:!1,private:!1,access:{has:e=>"text"in e,get:e=>e.text,set:(e,t)=>{e.text=t}},metadata:i},Ht,Ft),t(de,null,qe,{kind:"accessor",name:"searchText",static:!1,private:!1,access:{has:e=>"searchText"in e,get:e=>e.searchText,set:(e,t)=>{e.searchText=t}},metadata:i},Gt,Jt),t(de,null,Ve,{kind:"accessor",name:"assistiveText",static:!1,private:!1,access:{has:e=>"assistiveText"in e,get:e=>e.assistiveText,set:(e,t)=>{e.assistiveText=t}},metadata:i},Qt,Xt),t(de,null,Le,{kind:"accessor",name:"searchEl",static:!1,private:!1,access:{has:e=>"searchEl"in e,get:e=>e.searchEl,set:(e,t)=>{e.searchEl=t}},metadata:i},Zt,ei),t(de,null,je,{kind:"accessor",name:"buttonEl",static:!1,private:!1,access:{has:e=>"buttonEl"in e,get:e=>e.buttonEl,set:(e,t)=>{e.buttonEl=t}},metadata:i},ti,ii),t(de,null,Be,{kind:"accessor",name:"listboxEl",static:!1,private:!1,access:{has:e=>"listboxEl"in e,get:e=>e.listboxEl,set:(e,t)=>{e.listboxEl=t}},metadata:i},ai,si),t(de,null,Ke,{kind:"accessor",name:"clearMultipleEl",static:!1,private:!1,access:{has:e=>"clearMultipleEl"in e,get:e=>e.clearMultipleEl,set:(e,t)=>{e.clearMultipleEl=t}},metadata:i},li,ni),t(de,null,Pe,{kind:"accessor",name:"addOptionInputEl",static:!1,private:!1,access:{has:e=>"addOptionInputEl"in e,get:e=>e.addOptionInputEl,set:(e,t)=>{e.addOptionInputEl=t}},metadata:i},oi,ri),t(de,null,Re,{kind:"accessor",name:"_openUpwards",static:!1,private:!1,access:{has:e=>"_openUpwards"in e,get:e=>e._openUpwards,set:(e,t)=>{e._openUpwards=t}},metadata:i},di,hi),t(de,null,Ue,{kind:"accessor",name:"_tags",static:!1,private:!1,access:{has:e=>"_tags"in e,get:e=>e._tags,set:(e,t)=>{e._tags=t}},metadata:i},ci,pi),t(null,re={value:de},Ye,{kind:"class",name:de.name,metadata:i},null,He),de=re.value,i&&Object.defineProperty(de,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),de.styles=p(y),i(de,He),de})();export{_ as Dropdown};
1079
+ `}firstUpdated(){""===this.placeholder&&(this.searchable?this.placeholder="Search":this.multiple?this.placeholder="Select items":this.placeholder="Select an option")}handleSlotChange(){this.updateChildOptions(),this._updateOptions(),this._updateSelectedText()}updateChildOptions(){var e;(null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector("#children")).assignedElements({flatten:!0}).forEach((e=>{const t=e.tagName;"KYN-DROPDOWN-OPTION"!==t&&"KYN-ENHANCED-DROPDOWN-OPTION"!==t||(e.allowAddOption=this.allowAddOption,e.multiple=this.multiple,e.readonly=this.readonly)}))}handleClick(){this.canOpen()&&(this.open=!this.open,this.searchable?this.searchEl.focus():this.buttonEl.focus())}handleButtonKeydown(e){var t;this.readonly?"Escape"===e.key&&(this.open=!1,null===(t=this.buttonEl)||void 0===t||t.focus()):this.handleKeyboard(e,e.keyCode,"button")}handleListKeydown(e){var t;if(this.readonly)return void("Escape"===e.key&&(e.preventDefault(),this.open=!1,null===(t=this.buttonEl)||void 0===t||t.focus()));9!==e.keyCode&&e.preventDefault(),this.handleKeyboard(e,e.keyCode,"list")}_handleListFocus(){var e;const t=[...Array.from((null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelectorAll(".select-all"))||[]),...this.options.filter((e=>"none"!==e.style.display))],i=t.find((e=>!e.disabled));i&&(t.forEach((e=>e.highlighted=!1)),(!("tabIndex"in i)||i.tabIndex<0)&&(i.tabIndex=0),i.focus(),i.scrollIntoView({block:"nearest"}),this.assistiveText=i.text||"Option")}handleListBlur(e){if(this.multiple)return;this.options.forEach((e=>e.highlighted=!1));const t=e.relatedTarget;t&&(t.closest("kyn-dropdown-option")||t.closest("kyn-enhanced-dropdown-option")||t.classList.contains("search")||t.closest(".add-option"))||(this.open=!1,this.assistiveText="Dropdown menu options.")}handleKeyboard(e,t,i){var a,s,l,n,o;const r=[0,32],d=13,h=[...Array.from((null===(a=this.shadowRoot)||void 0===a?void 0:a.querySelectorAll(".select-all"))||[]),...this.options.filter((e=>"none"!==e.style.display))],c=h.find((e=>e.highlighted)),p=h.find((e=>e.selected));let u=c?h.indexOf(c):p?h.indexOf(p):0;if(r.includes(t)&&e.preventDefault(),this.readonly){if(40===t||38===t){e.preventDefault();let i=40===t?(u+1)%h.length:(u-1+h.length)%h.length,a=0;for(;(null===(s=h[i])||void 0===s?void 0:s.disabled)&&a++<h.length;)i=40===t?(i+1)%h.length:(i-1+h.length)%h.length;return void(h[i]&&(h[u]&&(h[u].highlighted=!1),h[i].focus(),h[i].highlighted=!0,null===(n=(l=h[i]).scrollIntoView)||void 0===n||n.call(l,{block:"nearest"}),this.assistiveText=h[i].text||"Option"))}return r.includes(t)||t===d?void e.preventDefault():27===t?(this.open=!1,null===(o=this.searchable?this.searchEl:this.buttonEl)||void 0===o||o.focus(),void(this.assistiveText="Dropdown menu options.")):void 0}const m=this.open;if("button"===i||"addOption"===i){let a=r.includes(t)||t===d||40==t||38==t;if(e.target===this.clearMultipleEl&&t===d&&(a=!1,h[u].highlighted=!1,h[u].selected=!h[u].selected,u=0,t!==d))return;a&&(this.open=!0,this.allowAddOption&&"button"===i&&t===d?setTimeout((()=>{var e;null===(e=this.addOptionInputEl)||void 0===e||e.focus()}),100):this.multiple||""===this.value||h[u].scrollIntoView({block:"nearest"}))}switch(t){case 0:case 32:case d:return h[u].highlighted=!0,void(m&&(this.multiple?(h[u].selected=!h[u].selected,this._handleClick({detail:{value:h[u].value,selected:h[u].selected}})):(h.forEach((e=>e.selected=!1)),h[u].selected=!0,this.updateValue(h[u].value,!0),this.emitValue(),this.open=!1,this.assistiveText=`Selected ${h[u].value}`)));case 40:{let e=c||p?u===h.length-1?0:u+1:0;return h[e].disabled&&(e=e===h.length-1?0:e+1),h[e].focus(),h[u].tabIndex=-1,h[e].tabIndex=0,h[u].highlighted=!1,h[e].highlighted=!0,h[e].scrollIntoView({block:"nearest"}),void(this.assistiveText=h[e].text)}case 38:{let e=0===u?h.length-1:u-1;return h[e].disabled&&(e=0===e?h.length-1:e-1),h[e].focus(),h[u].tabIndex=-1,h[e].tabIndex=0,h[u].highlighted=!1,h[e].highlighted=!0,h[e].scrollIntoView({block:"nearest"}),void(this.assistiveText=h[e].text)}case 27:return this.open=!1,this.searchable?this.searchEl.focus():this.buttonEl.focus(),void(this.assistiveText="Dropdown menu options.");default:return}}handleClearMultiple(e){var t;if(this.readonly)return;if(e.stopPropagation(),this.multiple){const e=(null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("slot#children")).assignedElements().filter((e=>e.selected&&e.disabled)).map((e=>e.value));this.value=e.length?e:[]}else this.value="";this._validate(!0,!1),this._updateSelectedOptions(),this.emitValue();const i=new CustomEvent("on-clear-all",{detail:{value:this.value}});this.dispatchEvent(i)}handleTagClear(e){this.readonly||(this.updateValue(e.value,!1),this._updateSelectedOptions(),this.emitValue())}handleClear(e){this.readonly||(e.stopPropagation(),this.text="",this.searchText="",this.searchEl.value="",this._emitSearch(),this.filterSearch&&this.options.map((e=>{e.style.display="block"})),this.multiple||(this.value="",this._validate(!0,!1),this._updateSelectedOptions(),this.emitValue()))}handleSearchClick(e){var t;this.readonly||(e.stopPropagation(),this.open=!0,""===(null!==(t=this.searchText)&&void 0!==t?t:"").trim()&&(this.searchText=""))}handleSearchKeydown(e){if(this.readonly)return"Escape"===e.key&&(this.open=!1,this.buttonEl.focus()),e.stopPropagation(),void e.preventDefault();e.stopPropagation();const t=this.options.find((e=>e.highlighted)),i=this.options.findIndex((e=>e.highlighted));this.searchTextEntered=!1,13===e.keyCode&&(this.searchTextEntered=!0,t?(this.prevSearchKeydownIndex!==i&&(this.multiple?t.selected=!t.selected:(this.options.forEach((e=>e.selected=!1)),t.selected=!0,this.open=!1),this.updateValue(t.value,t.selected)),t.selected?(this.assistiveText=`Selected ${t.innerHTML}`,this.prevSearchKeydownIndex=i):this.assistiveText=`Deselected ${t.innerHTML}`):this.assistiveText="No item matched."),27===e.keyCode&&(this.open=!1,this.buttonEl.focus())}handleSearchInput(e){if(this.readonly)return;const t=e.target.value;if(this.searchText=t,this.open=!0,this._emitSearch(),this.filterSearch)this.options.map((e=>{let i=e.text;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}i.toLowerCase().includes(t.toLowerCase())?e.style.display="block":e.style.display="none"}));else{const e=this.options.filter((e=>{let i=e.text;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}return i.toLowerCase().startsWith(t.toLowerCase())}));this.options.forEach((e=>e.highlighted=!1)),""!==t&&e.length&&(e[0].highlighted=!0,e[0].scrollIntoView({block:"nearest"}),this.searchTextEntered&&(this.assistiveText="Option Matched"))}}_updateSelectedOptions(){this.options.forEach((e=>{this.multiple?e.selected=this.value.includes(e.value):e.selected=this.value===e.value}))}_handleClick(e){var t;if(!this.readonly){if("selectAll"===e.detail.value){this.selectAllChecked=e.detail.selected;const i=(null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector("slot#children")).assignedElements().filter((e=>e.selected&&e.disabled)).map((e=>e.value));e.detail.selected?(this.value=this.options.filter((e=>!e.disabled||e.disabled&&e.selected)).map((e=>e.value)),this.assistiveText="Selected all items."):(this.value=i.length?i:[],this.assistiveText="Deselected all items."),this._validate(!0,!1)}else this.updateValue(e.detail.value,e.detail.selected),this.assistiveText=e.detail.selected?`Selected ${e.detail.value}`:`Deselected ${e.detail.value}`;this._updateSelectedOptions(),this.multiple||(this.open=!1),this.emitValue()}}_handleBlur(e){const t=e.detail.origEvent.relatedTarget;(!t||"kyn-dropdown-option"!==(null==t?void 0:t.localName)&&"kyn-enhanced-dropdown-option"!==(null==t?void 0:t.localName)&&"kyn-dropdown"!==t.localName)&&(this.open=!1)}_handleClickOut(e){e.composedPath().includes(this)||(this.open=!1)}connectedCallback(){super.connectedCallback(),this._onConnected(),document.addEventListener("click",this._onDocumentClick),this.addEventListener("on-click",this._onChildClick),this.addEventListener("on-remove-option",this._onChildRemove),this.addEventListener("on-blur",this._onChildBlur)}disconnectedCallback(){this._onDisconnected(),document.removeEventListener("click",this._onDocumentClick),this.removeEventListener("on-click",this._onChildClick),this.removeEventListener("on-remove-option",this._onChildRemove),this.removeEventListener("on-blur",this._onChildBlur),super.disconnectedCallback()}updateValue(e,t=!1){if(!this.readonly){if(this.multiple){const i=""===this.value?[]:JSON.parse(JSON.stringify(this.value));if(t)i.push(e);else{const t=i.indexOf(e);i.splice(t,1)}this.value=i}else this.value=e;this._validate(!0,!1),this.multiple||(this.searchable?this.searchEl.focus():this.buttonEl.focus())}}_validate(e,t){const i={customError:""!==this.invalidText,valueMissing:this.required&&!this.readonly&&(!this.value||this.multiple&&!this.value.length||!this.multiple&&""===this.value)},a=this.required&&!this.value.length?"Please fill out this field.":"",s=""!==this.invalidText?this.invalidText:a,l=this.buttonEl||this.listboxEl;l?this._internals.setValidity(i,s,l):this._internals.setValidity(i,s),e&&(this._internalValidationMsg=a),t&&this._internals.reportValidity()}emitValue(){const e=new CustomEvent("on-change",{detail:{value:this.value}});this.dispatchEvent(e)}_emitSearch(){const e=new CustomEvent("on-search",{detail:{searchText:this.searchText}});this.dispatchEvent(e)}willUpdate(e){e.has("textStrings")&&(this._textStrings=b(w,this.textStrings))}updated(e){var t,i,a;super.updated(e),e.has("readonly")&&(null===(t=this.clearMultipleEl)||void 0===t||t.classList.toggle("is-readonly",this.readonly),null===(i=this.clearMultipleEl)||void 0===i||i.toggleAttribute("data-readonly",this.readonly)),e.has("kind")&&(this.dispatchEvent(new CustomEvent("kind-changed",{detail:this.kind,bubbles:!0,composed:!0})),this.classList.toggle("ai-connected","ai"===this.kind));const s=this.shadowRoot;if(s){if(e.has("open")){const e=s.querySelector('slot[name="anchor"]'),t=null==e?void 0:e.assignedElements({flatten:!0}),i=null==t?void 0:t.find((e=>!e.querySelector(".clear-multiple-icon"))),a=null==i?void 0:i.querySelector('span[slot="icon"]');a&&(a.style.transition="transform 0.2s ease-in-out",a.style.transform=this.open?"rotate(180deg)":"rotate(0deg)")}if(this._onUpdated(e),e.has("value")){this._updateOptions();const e=s.querySelector("slot#children").assignedElements().filter((e=>!e.disabled)),t=e.filter((e=>e.selected));this.selectAllChecked=t.length===e.length,this.selectAllIndeterminate=t.length>0&&t.length<e.length,this._updateTags(),this._updateSelectedText()}if(e.has("open")||e.has("openDirection")){if(this.open&&(this.options.forEach((e=>e.highlighted=!1)),!this.searchable&&this.listboxEl&&(this.listboxEl.focus({preventScroll:!0}),this.assistiveText="Selecting items. Use up and down arrow keys to navigate.")),"up"===this.openDirection)this._openUpwards=!0;else if("down"===this.openDirection)this._openUpwards=!1;else if(this.open){const e=this.buttonEl.getBoundingClientRect();this._openUpwards=e.top>.6*window.innerHeight}if(this.open&&!this.multiple){const e=this.options.find((e=>e.selected));null==e||e.scrollIntoView({block:"nearest"})}}e.has("multiple")&&this.options.forEach((e=>e.multiple=this.multiple)),e.has("searchText")&&this.searchEl&&(this.searchEl.value=this.searchText),(e.has("multiple")||e.has("allowAddOption")||e.has("readonly"))&&this.updateChildOptions(),e.has("open")&&this.open&&!this.searchable&&(null===(a=this.listboxEl)||void 0===a||a.focus({preventScroll:!0}))}}get hasSearch(){var e;return(null!==(e=this.searchText)&&void 0!==e?e:"").trim().length>0}_updateTags(){if(this.multiple){const e=Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option")),t=[];e&&(e.forEach((e=>{if(e.selected){let i=e.textContent;if("KYN-ENHANCED-DROPDOWN-OPTION"===e.tagName){const t=e.querySelector('[slot="title"]');i=t&&t.textContent.trim()?t.textContent.trim():e.displayText||e.value}else i=e.textContent.trim();t.push({value:e.value,text:i,disabled:e.disabled})}})),this._tags=t)}}_updateOptions(){Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option")).forEach((e=>{if(e.multiple=this.multiple,this.multiple){const t=this.value.includes(e.value);e.selected=t}else e.selected=this.value===e.value}))}_handleInputNewOption(e){const t=e.target;this.newOptionValue=t.value}_handleRemoveOption(){this.assistiveText="MY option removed ",setTimeout((()=>{this.open=!1,this.buttonEl.focus()}),100)}_updateSelectedText(){const e=Array.from(this.querySelectorAll("kyn-dropdown-option, kyn-enhanced-dropdown-option"));if(!this.multiple){if(e.length&&""!==this.value){const t=e.find((e=>e.value===this.value));if(t)if("KYN-ENHANCED-DROPDOWN-OPTION"===t.tagName){const e=t.querySelector('[slot="title"]');e&&e.textContent.trim()?this.text=e.textContent.trim():this.text=t.displayText||this.value}else this.text=t.textContent.trim();else this.text="",console.warn(`No dropdown option found with value: ${this.value}`)}this.searchable&&this.text&&(this.searchText=this.text===this.placeholder?"":this.text,this.searchEl.value=this.searchText)}}},d=new WeakMap,_=new WeakMap,T=new WeakMap,z=new WeakMap,C=new WeakMap,A=new WeakMap,M=new WeakMap,I=new WeakMap,D=new WeakMap,W=new WeakMap,N=new WeakMap,q=new WeakMap,V=new WeakMap,L=new WeakMap,j=new WeakMap,B=new WeakMap,K=new WeakMap,P=new WeakMap,R=new WeakMap,U=new WeakMap,Y=new WeakMap,H=new WeakMap,F=new WeakMap,G=new WeakMap,J=new WeakMap,Q=new WeakMap,X=new WeakMap,Z=new WeakMap,ee=new WeakMap,te=new WeakMap,ie=new WeakMap,ae=new WeakMap,se=new WeakMap,le=new WeakMap,ne=new WeakMap,oe=new WeakMap,e(de,"Dropdown"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=Fe[Symbol.metadata])&&void 0!==e?e:null):void 0;he=[u({type:String})],ce=[u({type:String})],pe=[u({type:String,attribute:"kind"})],ue=[u({type:Boolean})],me=[u({type:String})],ve=[u({type:String})],ge=[u({type:Boolean,reflect:!0})],be=[u({type:Boolean})],fe=[u({type:Boolean})],ke=[u({type:Boolean,reflect:!0})],xe=[u({type:Boolean})],ye=[u({type:Boolean})],we=[u({type:Boolean})],Ee=[u({type:Boolean})],$e=[u({type:Boolean})],Se=[u({type:Boolean})],Oe=[u({type:Boolean})],_e=[u({type:String})],Te=[u({type:String})],ze=[u({type:String})],Ce=[u({type:Boolean})],Ae=[u({type:Boolean})],Me=[u({type:Object})],Ie=[u({type:Boolean})],De=[h()],We=[h()],Ne=[h()],qe=[u({type:String})],Ve=[h()],Le=[m(".search")],je=[m(".select")],Be=[m(".options")],Ke=[m(".clear-multiple")],Pe=[m(".add-option-input")],Re=[h()],Ue=[h()],t(de,null,he,{kind:"accessor",name:"label",static:!1,private:!1,access:{has:e=>"label"in e,get:e=>e.label,set:(e,t)=>{e.label=t}},metadata:i},Ge,Je),t(de,null,ce,{kind:"accessor",name:"size",static:!1,private:!1,access:{has:e=>"size"in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:i},Qe,Xe),t(de,null,pe,{kind:"accessor",name:"kind",static:!1,private:!1,access:{has:e=>"kind"in e,get:e=>e.kind,set:(e,t)=>{e.kind=t}},metadata:i},Ze,et),t(de,null,ue,{kind:"accessor",name:"inline",static:!1,private:!1,access:{has:e=>"inline"in e,get:e=>e.inline,set:(e,t)=>{e.inline=t}},metadata:i},tt,it),t(de,null,me,{kind:"accessor",name:"caption",static:!1,private:!1,access:{has:e=>"caption"in e,get:e=>e.caption,set:(e,t)=>{e.caption=t}},metadata:i},at,st),t(de,null,ve,{kind:"accessor",name:"placeholder",static:!1,private:!1,access:{has:e=>"placeholder"in e,get:e=>e.placeholder,set:(e,t)=>{e.placeholder=t}},metadata:i},lt,nt),t(de,null,ge,{kind:"accessor",name:"open",static:!1,private:!1,access:{has:e=>"open"in e,get:e=>e.open,set:(e,t)=>{e.open=t}},metadata:i},ot,rt),t(de,null,be,{kind:"accessor",name:"searchable",static:!1,private:!1,access:{has:e=>"searchable"in e,get:e=>e.searchable,set:(e,t)=>{e.searchable=t}},metadata:i},dt,ht),t(de,null,fe,{kind:"accessor",name:"enhanced",static:!1,private:!1,access:{has:e=>"enhanced"in e,get:e=>e.enhanced,set:(e,t)=>{e.enhanced=t}},metadata:i},ct,pt),t(de,null,ke,{kind:"accessor",name:"readonly",static:!1,private:!1,access:{has:e=>"readonly"in e,get:e=>e.readonly,set:(e,t)=>{e.readonly=t}},metadata:i},ut,mt),t(de,null,xe,{kind:"accessor",name:"filterSearch",static:!1,private:!1,access:{has:e=>"filterSearch"in e,get:e=>e.filterSearch,set:(e,t)=>{e.filterSearch=t}},metadata:i},vt,gt),t(de,null,ye,{kind:"accessor",name:"multiple",static:!1,private:!1,access:{has:e=>"multiple"in e,get:e=>e.multiple,set:(e,t)=>{e.multiple=t}},metadata:i},bt,ft),t(de,null,we,{kind:"accessor",name:"required",static:!1,private:!1,access:{has:e=>"required"in e,get:e=>e.required,set:(e,t)=>{e.required=t}},metadata:i},kt,xt),t(de,null,Ee,{kind:"accessor",name:"hideLabel",static:!1,private:!1,access:{has:e=>"hideLabel"in e,get:e=>e.hideLabel,set:(e,t)=>{e.hideLabel=t}},metadata:i},yt,wt),t(de,null,$e,{kind:"accessor",name:"disabled",static:!1,private:!1,access:{has:e=>"disabled"in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:i},Et,$t),t(de,null,Se,{kind:"accessor",name:"hideTags",static:!1,private:!1,access:{has:e=>"hideTags"in e,get:e=>e.hideTags,set:(e,t)=>{e.hideTags=t}},metadata:i},St,Ot),t(de,null,Oe,{kind:"accessor",name:"selectAll",static:!1,private:!1,access:{has:e=>"selectAll"in e,get:e=>e.selectAll,set:(e,t)=>{e.selectAll=t}},metadata:i},_t,Tt),t(de,null,_e,{kind:"accessor",name:"selectAllText",static:!1,private:!1,access:{has:e=>"selectAllText"in e,get:e=>e.selectAllText,set:(e,t)=>{e.selectAllText=t}},metadata:i},zt,Ct),t(de,null,Te,{kind:"accessor",name:"menuMinWidth",static:!1,private:!1,access:{has:e=>"menuMinWidth"in e,get:e=>e.menuMinWidth,set:(e,t)=>{e.menuMinWidth=t}},metadata:i},At,Mt),t(de,null,ze,{kind:"accessor",name:"openDirection",static:!1,private:!1,access:{has:e=>"openDirection"in e,get:e=>e.openDirection,set:(e,t)=>{e.openDirection=t}},metadata:i},It,Dt),t(de,null,Ce,{kind:"accessor",name:"selectAllChecked",static:!1,private:!1,access:{has:e=>"selectAllChecked"in e,get:e=>e.selectAllChecked,set:(e,t)=>{e.selectAllChecked=t}},metadata:i},Wt,Nt),t(de,null,Ae,{kind:"accessor",name:"selectAllIndeterminate",static:!1,private:!1,access:{has:e=>"selectAllIndeterminate"in e,get:e=>e.selectAllIndeterminate,set:(e,t)=>{e.selectAllIndeterminate=t}},metadata:i},qt,Vt),t(de,null,Me,{kind:"accessor",name:"textStrings",static:!1,private:!1,access:{has:e=>"textStrings"in e,get:e=>e.textStrings,set:(e,t)=>{e.textStrings=t}},metadata:i},Lt,jt),t(de,null,Ie,{kind:"accessor",name:"allowAddOption",static:!1,private:!1,access:{has:e=>"allowAddOption"in e,get:e=>e.allowAddOption,set:(e,t)=>{e.allowAddOption=t}},metadata:i},Bt,Kt),t(de,null,De,{kind:"accessor",name:"_textStrings",static:!1,private:!1,access:{has:e=>"_textStrings"in e,get:e=>e._textStrings,set:(e,t)=>{e._textStrings=t}},metadata:i},Pt,Rt),t(de,null,We,{kind:"accessor",name:"newOptionValue",static:!1,private:!1,access:{has:e=>"newOptionValue"in e,get:e=>e.newOptionValue,set:(e,t)=>{e.newOptionValue=t}},metadata:i},Ut,Yt),t(de,null,Ne,{kind:"accessor",name:"text",static:!1,private:!1,access:{has:e=>"text"in e,get:e=>e.text,set:(e,t)=>{e.text=t}},metadata:i},Ht,Ft),t(de,null,qe,{kind:"accessor",name:"searchText",static:!1,private:!1,access:{has:e=>"searchText"in e,get:e=>e.searchText,set:(e,t)=>{e.searchText=t}},metadata:i},Gt,Jt),t(de,null,Ve,{kind:"accessor",name:"assistiveText",static:!1,private:!1,access:{has:e=>"assistiveText"in e,get:e=>e.assistiveText,set:(e,t)=>{e.assistiveText=t}},metadata:i},Qt,Xt),t(de,null,Le,{kind:"accessor",name:"searchEl",static:!1,private:!1,access:{has:e=>"searchEl"in e,get:e=>e.searchEl,set:(e,t)=>{e.searchEl=t}},metadata:i},Zt,ei),t(de,null,je,{kind:"accessor",name:"buttonEl",static:!1,private:!1,access:{has:e=>"buttonEl"in e,get:e=>e.buttonEl,set:(e,t)=>{e.buttonEl=t}},metadata:i},ti,ii),t(de,null,Be,{kind:"accessor",name:"listboxEl",static:!1,private:!1,access:{has:e=>"listboxEl"in e,get:e=>e.listboxEl,set:(e,t)=>{e.listboxEl=t}},metadata:i},ai,si),t(de,null,Ke,{kind:"accessor",name:"clearMultipleEl",static:!1,private:!1,access:{has:e=>"clearMultipleEl"in e,get:e=>e.clearMultipleEl,set:(e,t)=>{e.clearMultipleEl=t}},metadata:i},li,ni),t(de,null,Pe,{kind:"accessor",name:"addOptionInputEl",static:!1,private:!1,access:{has:e=>"addOptionInputEl"in e,get:e=>e.addOptionInputEl,set:(e,t)=>{e.addOptionInputEl=t}},metadata:i},oi,ri),t(de,null,Re,{kind:"accessor",name:"_openUpwards",static:!1,private:!1,access:{has:e=>"_openUpwards"in e,get:e=>e._openUpwards,set:(e,t)=>{e._openUpwards=t}},metadata:i},di,hi),t(de,null,Ue,{kind:"accessor",name:"_tags",static:!1,private:!1,access:{has:e=>"_tags"in e,get:e=>e._tags,set:(e,t)=>{e._tags=t}},metadata:i},ci,pi),t(null,re={value:de},Ye,{kind:"class",name:de.name,metadata:i},null,He),de=re.value,i&&Object.defineProperty(de,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),de.styles=p(y),i(de,He),de})();export{_ as Dropdown};
1080
1080
  //# sourceMappingURL=dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown.js","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, PropertyValues, html, unsafeCSS } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport DropdownScss from './dropdown.scss?inline';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { deepmerge } from 'deepmerge-ts';\nimport { nothing } from 'lit';\n\nimport './dropdownOption';\nimport './enhancedDropdownOption';\nimport '../tag';\nimport '../button';\n\nimport { DropdownOption } from './dropdownOption';\nimport { EnhancedDropdownOption } from './enhancedDropdownOption';\n\nimport downIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nconst _defaultTextStrings = {\n title: 'Dropdown',\n selectedOptions: 'List of selected options',\n requiredText: 'Required',\n errorText: 'Error',\n clearAll: 'Clear all',\n clear: 'Clear',\n addItem: 'Add item...',\n add: 'Add',\n};\n\nconst KEY = {\n Enter: 'Enter',\n Escape: 'Escape',\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n} as const;\n\n/**\n * Dropdown, single select.\n * @fires on-change - Captures the dropdown change event and emits the selected value and original event details. `detail:{ value: string/array }`\n * @fires on-search - Capture the search input event and emits the search text.`detail:{ searchText: string }`\n * @fires on-clear-all - Captures the the multi-select clear all button click event and emits the value. `detail:{ value: array }`\n * @fires on-add-option - Captures the add button click and emits the newly added option. `detail:{ value: string }`\n * @slot unnamed - Slot for dropdown options.\n * @slot tooltip - Slot for tooltip.\n * @slot anchor - Slot for custom dropdown anchor element. If not provided, defaults to standard input-style anchor.\n * @attr {string/array} [value=''/[]] - The selected value(s) of the input. For single select, it is a string. For multi-select, it is an array of strings.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n */\n@customElement('kyn-dropdown')\nexport class Dropdown extends FormMixin(LitElement) {\n static override styles = unsafeCSS(DropdownScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Dropdown size/height. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Dropdown kind. */\n @property({ type: String, attribute: 'kind' })\n accessor kind: 'ai' | 'default' = 'default';\n\n /** Dropdown inline style type. */\n @property({ type: Boolean })\n accessor inline = false;\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Dropdown placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Listbox/drawer open state. */\n @property({ type: Boolean, reflect: true })\n accessor open = false;\n\n /** Makes the dropdown searchable. */\n @property({ type: Boolean })\n accessor searchable = false;\n\n /** Makes the dropdown enhanced. */\n @property({ type: Boolean })\n accessor enhanced = false;\n\n /** Dropdown read-only state (focusable but not interactive). */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Searchable variant filters results. */\n @property({ type: Boolean })\n accessor filterSearch = false;\n\n /** Enabled multi-select functionality. */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Makes the dropdown required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Dropdown disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Hide the tags below multi-select. */\n @property({ type: Boolean })\n accessor hideTags = false;\n\n /** Adds a \"Select all\" option to the top of a multi-select dropdown. */\n @property({ type: Boolean })\n accessor selectAll = false;\n\n /** \"Select all\" text customization. */\n @property({ type: String })\n accessor selectAllText = 'Select all';\n\n /** Menu CSS min-width value. */\n @property({ type: String })\n accessor menuMinWidth = '120px';\n\n /** Controls direction that dropdown opens. */\n @property({ type: String })\n accessor openDirection: 'auto' | 'up' | 'down' = 'auto';\n\n /** Is \"Select All\" box checked.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllChecked = false;\n\n /** Is \"Select All\" indeterminate.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllIndeterminate = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Enables the \"Add New Option\" feature. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * New dropdown option value.\n * @ignore\n */\n @state()\n accessor newOptionValue = '';\n\n /**\n * Selected option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text = '';\n\n /**\n * Search input value.\n */\n @property({ type: String })\n accessor searchText = '';\n\n /**\n * Assistive text for screen readers.\n * @ignore\n */\n @state()\n accessor assistiveText = 'Dropdown menu options.';\n\n /**\n * Queries any slotted options, default or enhanced.\n * @ignore\n */\n protected get options(): Array<DropdownOption | EnhancedDropdownOption> {\n return Array.from(\n this.querySelectorAll<DropdownOption | EnhancedDropdownOption>(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n }\n\n /**\n * Queries any slotted selected options.\n * @ignore\n */\n protected get selectedOptions(): Array<\n DropdownOption | EnhancedDropdownOption\n > {\n return this.options.filter(\n (opt): opt is DropdownOption | EnhancedDropdownOption =>\n opt.hasAttribute('selected')\n );\n }\n\n /**\n * Queries the .search DOM element.\n * @ignore\n */\n @query('.search')\n accessor searchEl!: HTMLInputElement;\n\n /**\n * Queries the .select DOM element.\n * @ignore\n */\n @query('.select')\n accessor buttonEl!: HTMLElement;\n\n /**\n * Queries the .options DOM element.\n * @ignore\n */\n @query('.options')\n accessor listboxEl!: HTMLElement;\n\n /**\n * Queries the .clear-multiple DOM element.\n * @ignore\n */\n @query('.clear-multiple')\n accessor clearMultipleEl!: HTMLElement;\n\n /**\n * Queries the .add-option-input DOM element.\n * @ignore\n */\n @query('.add-option-input')\n accessor addOptionInputEl!: HTMLInputElement;\n\n /**\n * Open drawer upwards.\n * @ignore\n */\n @state()\n accessor _openUpwards = false;\n\n /**\n * Tags value/text reference.\n * @ignore\n */\n @state()\n accessor _tags: Array<object> = [];\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n searchTextEntered: any = false;\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n prevSearchKeydownIndex = -1;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onChildClick = (e: Event) => this._handleClick(e as any);\n private _onChildRemove = (_e: Event) => this._handleRemoveOption();\n private _onChildBlur = (e: Event) => this._handleBlur(e as any);\n\n override render() {\n const mainDropdownClasses = {\n dropdown: true,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(mainDropdownClasses)}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?open=${this.open}\n ?inline=${this.inline}\n ?searchable=${this.searchable}\n >\n <label\n id=\"label-${this.name}\"\n class=\"label-text ${this.hideLabel || this.inline ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=${classMap({\n wrapper: true,\n open: this.open,\n })}\n >\n <div\n class=\"custom\"\n @click=${(e: MouseEvent) => this.handleAnchorClick(e)}\n @keydown=${(e: KeyboardEvent) => this.handleAnchorKeydown(e)}\n >\n <slot name=\"anchor\">\n <div\n class=\"${classMap({\n select: true,\n 'is-readonly': !this.disabled && this.readonly,\n multiple: this.multiple,\n 'input-custom': true,\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n inline: this.inline,\n })}\"\n aria-labelledby=\"label-${this.name}\"\n aria-expanded=${this.open}\n aria-controls=\"options\"\n role=\"combobox\"\n id=${this.name}\n name=${this.name}\n title=${this._textStrings.title}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?invalid=${this._isInvalid}\n tabindex=${this.disabled ? '' : this.searchable ? '-1' : '0'}\n @mousedown=${(e: MouseEvent) => {\n if (!this.searchable && !this.readonly) e.preventDefault();\n }}\n aria-readonly=${this.readonly}\n @blur=${(e: any) => e.stopPropagation()}\n >\n ${this.multiple && this.value.length\n ? html`\n <button\n class=${classMap({\n 'clear-multiple': true,\n })}\n aria-label=\"${this.value\n .length} items selected. Clear selections\"\n ?disabled=${this.disabled || this.readonly}\n title=${this._textStrings.clear}\n @click=${(e: Event) => this.handleClearMultiple(e)}\n >\n ${this.value.length}\n <span style=\"display:flex;\" class=\"clear-multiple-icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </button>\n `\n : null}\n ${this.searchable\n ? html`\n <input\n class=\"search\"\n type=\"text\"\n placeholder=${this.placeholder}\n value=${this.searchText}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n aria-disabled=${this.disabled}\n @keydown=${(e: any) => this.handleSearchKeydown(e)}\n @input=${(e: any) => this.handleSearchInput(e)}\n @blur=${(e: any) => e.stopPropagation()}\n @click=${(e: any) => this.handleSearchClick(e)}\n />\n `\n : html`\n <span\n class=\"${classMap({\n 'placeholder-text': this.text === '',\n })}\"\n >\n ${this.multiple\n ? this.placeholder\n : this.value === ''\n ? this.placeholder\n : this.text}\n </span>\n `}\n <span class=\"arrow-icon\">${unsafeSVG(downIcon)}</span>\n </div>\n </slot>\n\n <div\n id=\"options\"\n class=${classMap({\n options: true,\n open: this.open,\n upwards: this._openUpwards,\n })}\n style=\"min-width: ${this.menuMinWidth};\"\n aria-hidden=${!this.open}\n @keydown=${this.handleListKeydown}\n @blur=${this.handleListBlur}\n @focus=${this._handleListFocus}\n >\n ${this.allowAddOption\n ? html`\n <div class=\"add-option\">\n <input\n class=\"add-option-input\"\n type=\"text\"\n placeholder=${this._textStrings.addItem}\n .value=${this.newOptionValue}\n aria-label=\"Add new option\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n @input=${this._handleInputNewOption}\n @keydown=${this._onAddOptionInputKeydown}\n @focus=${this._onAddOptionInputFocus}\n />\n <kyn-button\n type=\"button\"\n size=\"small\"\n kind=\"secondary\"\n ?disabled=${this.disabled}\n @on-click=${this._handleAddOption}\n >\n ${this._textStrings.add}\n </kyn-button>\n </div>\n `\n : null}\n\n <div\n role=\"listbox\"\n aria-labelledby=\"label-${this.name}\"\n class=${classMap({\n 'dropdown-listbox': true,\n 'ai-connected': this.kind === 'ai',\n })}\n >\n ${this.multiple && this.selectAll\n ? html`\n ${this.enhanced\n ? html`\n <kyn-enhanced-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-enhanced-dropdown-option>\n `\n : html`\n <kyn-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-dropdown-option>\n `}\n `\n : null}\n\n <slot\n id=\"children\"\n @slotchange=${() => this.handleSlotChange()}\n ></slot>\n </div>\n </div>\n </div>\n ${this.hasSearch && this.open\n ? html`\n <kyn-button\n ?disabled=${this.disabled || this.readonly}\n class=\"clear-button dropdown-clear\"\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${(e: Event) => this.handleClear(e)}\n >\n <span style=\"display:flex;\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n ${this.renderHelperContent()}\n </div>\n `;\n }\n\n private _onAddOptionInputKeydown(e: KeyboardEvent) {\n if (this.readonly) return;\n\n e.stopPropagation();\n switch (e.key) {\n case KEY.Enter:\n this._handleAddOption();\n break;\n case KEY.Escape:\n this.newOptionValue = '';\n this.open = false;\n this.buttonEl.focus();\n break;\n case KEY.ArrowDown:\n this.handleKeyboard(e, 40, 'addOption');\n break;\n case KEY.ArrowUp:\n this.handleKeyboard(e, 38, 'addOption');\n break;\n }\n }\n\n private _onAddOptionInputFocus() {\n this.assistiveText = 'Add new option input';\n }\n\n private canOpen(): boolean {\n return !this.disabled && !this.readonly;\n }\n\n private handleAnchorClick(e: MouseEvent) {\n if (!this.canOpen()) return;\n\n const path = (e.composedPath?.() || []) as Array<EventTarget>;\n const isInOptions =\n path.some((t) => (t as HTMLElement)?.classList?.contains('options')) ||\n (e.target as HTMLElement)?.closest?.(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option, .add-option'\n );\n\n if (isInOptions) return;\n\n this.handleClick();\n }\n\n private handleAnchorKeydown(e: KeyboardEvent) {\n if (!this.canOpen()) {\n const openKeys = [' ', 'Enter', 'ArrowDown', 'ArrowUp'];\n if (openKeys.includes(e.key)) e.preventDefault();\n return;\n }\n\n this.handleButtonKeydown(\n e as unknown as KeyboardEvent & { keyCode: number }\n );\n }\n\n private _handleAddOption() {\n if (this.readonly) return;\n\n const v = this.newOptionValue.trim();\n if (!v) return;\n this.dispatchEvent(\n new CustomEvent('on-add-option', { detail: { value: v } })\n );\n this.newOptionValue = '';\n }\n\n private renderHelperContent() {\n return html`\n ${\n this.multiple && !this.hideTags && this._tags.length\n ? html`\n <kyn-tag-group\n ?filter=${this.disabled || this.readonly ? false : true}\n role=\"list\"\n aria-label=${this._textStrings.selectedOptions}\n data-readonly=${this.readonly ? '' : nothing}\n >\n ${this._tags.map((tag: any) => {\n return html`\n <kyn-tag\n role=\"listitem\"\n tagColor=${this.kind === 'ai' ? 'ai' : 'default'}\n label=${tag.text}\n ?disabled=${this.disabled ||\n tag.disabled ||\n this.readonly}\n @on-close=${() => this.handleTagClear(tag)}\n ></kyn-tag>\n `;\n })}\n </kyn-tag-group>\n `\n : null\n }\n ${\n this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null\n }\n ${\n this._isInvalid\n ? html`\n <div class=\"error\">\n <span\n class=\"error-icon\"\n role=\"img\"\n title=${this._textStrings.errorText}\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null\n }\n\n <div\n class=\"assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\"\n >\n ${this.assistiveText}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // set a default placeholder if none provided\n if (this.placeholder === '') {\n if (this.searchable) {\n this.placeholder = 'Search';\n } else {\n if (this.multiple) {\n this.placeholder = 'Select items';\n } else {\n this.placeholder = 'Select an option';\n }\n }\n }\n }\n\n private handleSlotChange() {\n this.updateChildOptions();\n this._updateOptions();\n this._updateSelectedText();\n }\n\n private updateChildOptions() {\n const slot = this.shadowRoot?.querySelector('#children') as HTMLSlotElement;\n const options = slot.assignedElements({ flatten: true }) as HTMLElement[];\n\n options.forEach((option) => {\n const tag = option.tagName;\n if (\n tag === 'KYN-DROPDOWN-OPTION' ||\n tag === 'KYN-ENHANCED-DROPDOWN-OPTION'\n ) {\n (option as any).allowAddOption = this.allowAddOption;\n (option as any).multiple = this.multiple;\n (option as any).readonly = this.readonly;\n }\n });\n }\n\n private handleClick() {\n if (!this.canOpen()) return;\n\n this.open = !this.open;\n if (this.searchable) this.searchEl.focus();\n else this.buttonEl.focus();\n }\n\n private handleButtonKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n this.handleKeyboard(e, e.keyCode, 'button');\n }\n\n private handleListKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n e.preventDefault();\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n\n const TAB_KEY_CODE = 9;\n\n if (e.keyCode !== TAB_KEY_CODE) {\n e.preventDefault();\n }\n\n this.handleKeyboard(e, e.keyCode, 'list');\n }\n\n private _handleListFocus() {\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n\n const firstEnabled = visibleOptions.find((o: any) => !o.disabled) as any;\n if (!firstEnabled) return;\n\n visibleOptions.forEach((o: any) => (o.highlighted = false));\n\n if (!('tabIndex' in firstEnabled) || firstEnabled.tabIndex < 0) {\n firstEnabled.tabIndex = 0;\n }\n firstEnabled.focus();\n firstEnabled.scrollIntoView({ block: 'nearest' });\n this.assistiveText = firstEnabled.text || 'Option';\n }\n\n private handleListBlur(e: FocusEvent): void {\n if (this.multiple) {\n return;\n }\n\n this.options.forEach((o) => (o.highlighted = false));\n const target = e.relatedTarget as HTMLElement | null;\n\n if (\n target &&\n (target.closest('kyn-dropdown-option') ||\n target.closest('kyn-enhanced-dropdown-option') ||\n target.classList.contains('search') ||\n target.closest('.add-option'))\n ) {\n return;\n }\n\n this.open = false;\n this.assistiveText = 'Dropdown menu options.';\n }\n\n private handleKeyboard(e: any, keyCode: number, target: string) {\n const SPACEBAR_KEY_CODE = [0, 32];\n const ENTER_KEY_CODE = 13;\n const DOWN_ARROW_KEY_CODE = 40;\n const UP_ARROW_KEY_CODE = 38;\n const ESCAPE_KEY_CODE = 27;\n\n // get highlighted element + index and selected element\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n // visibleOptions.forEach((e) => (e.tabIndex = 0));\n\n const highlightedEl = visibleOptions.find(\n (option: any) => option.highlighted\n );\n const selectedEl = visibleOptions.find((option: any) => option.selected);\n let highlightedIndex = highlightedEl\n ? visibleOptions.indexOf(highlightedEl)\n : selectedEl\n ? visibleOptions.indexOf(selectedEl)\n : 0;\n\n if (SPACEBAR_KEY_CODE.includes(keyCode)) {\n e.preventDefault();\n }\n\n if (this.readonly) {\n if (keyCode === DOWN_ARROW_KEY_CODE || keyCode === UP_ARROW_KEY_CODE) {\n e.preventDefault();\n let nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (highlightedIndex + 1) % visibleOptions.length\n : (highlightedIndex - 1 + visibleOptions.length) %\n visibleOptions.length;\n\n let guard = 0;\n while (\n visibleOptions[nextIndex]?.disabled &&\n guard++ < visibleOptions.length\n ) {\n nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (nextIndex + 1) % visibleOptions.length\n : (nextIndex - 1 + visibleOptions.length) % visibleOptions.length;\n }\n\n if (visibleOptions[nextIndex]) {\n visibleOptions[highlightedIndex] &&\n (visibleOptions[highlightedIndex].highlighted = false);\n visibleOptions[nextIndex].focus();\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView?.({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text || 'Option';\n }\n return;\n }\n\n if (SPACEBAR_KEY_CODE.includes(keyCode) || keyCode === ENTER_KEY_CODE) {\n e.preventDefault();\n return;\n }\n\n if (keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n (this.searchable ? this.searchEl : this.buttonEl)?.focus();\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n\n return;\n }\n\n const isListboxElOpened = this.open;\n // open the listbox\n if (target === 'button' || target === 'addOption') {\n let openDropdown =\n SPACEBAR_KEY_CODE.includes(keyCode) ||\n keyCode === ENTER_KEY_CODE ||\n keyCode == DOWN_ARROW_KEY_CODE ||\n keyCode == UP_ARROW_KEY_CODE;\n\n if (e.target === this.clearMultipleEl && keyCode === ENTER_KEY_CODE) {\n openDropdown = false;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n highlightedIndex = 0;\n if (keyCode !== ENTER_KEY_CODE) return;\n }\n\n if (openDropdown) {\n this.open = true;\n\n if (\n this.allowAddOption &&\n target === 'button' &&\n keyCode === ENTER_KEY_CODE\n ) {\n setTimeout(() => {\n this.addOptionInputEl?.focus();\n }, 100);\n } else {\n // scroll to highlighted option\n if (!this.multiple && this.value !== '') {\n visibleOptions[highlightedIndex].scrollIntoView({\n block: 'nearest',\n });\n }\n }\n }\n }\n switch (keyCode) {\n case 0:\n case 32:\n case ENTER_KEY_CODE: {\n // select highlighted option\n visibleOptions[highlightedIndex].highlighted = true;\n if (isListboxElOpened) {\n if (this.multiple) {\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n this._handleClick({\n detail: {\n value: visibleOptions[highlightedIndex].value,\n selected: visibleOptions[highlightedIndex].selected,\n },\n });\n } else {\n visibleOptions.forEach((e) => (e.selected = false));\n visibleOptions[highlightedIndex].selected = true;\n this.updateValue(visibleOptions[highlightedIndex].value, true);\n this.emitValue();\n\n this.open = false;\n this.assistiveText = `Selected ${visibleOptions[highlightedIndex].value}`;\n }\n }\n return;\n }\n case DOWN_ARROW_KEY_CODE: {\n let nextIndex =\n !highlightedEl && !selectedEl\n ? 0\n : highlightedIndex === visibleOptions.length - 1\n ? 0\n : highlightedIndex + 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === visibleOptions.length - 1 ? 0 : nextIndex + 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case UP_ARROW_KEY_CODE: {\n // go to previous option\n let nextIndex =\n highlightedIndex === 0\n ? visibleOptions.length - 1\n : highlightedIndex - 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === 0 ? visibleOptions.length - 1 : nextIndex - 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case ESCAPE_KEY_CODE: {\n this.open = false;\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n default: {\n return;\n }\n }\n }\n\n private handleClearMultiple(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // clear values\n if (this.multiple) {\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n } else {\n this.value = '';\n }\n\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n\n const event = new CustomEvent('on-clear-all', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private handleTagClear(tag: any) {\n if (this.readonly) return;\n // remove value\n this.updateValue(tag.value, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n\n private handleClear(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // reset search input text\n this.text = '';\n this.searchText = '';\n this.searchEl.value = '';\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // reveal all options\n this.options.map((option: any) => {\n option.style.display = 'block';\n });\n }\n\n // clear selection for single select\n if (!this.multiple) {\n this.value = '';\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n }\n\n private handleSearchClick(e: MouseEvent) {\n if (this.readonly) return;\n e.stopPropagation();\n this.open = true;\n if ((this.searchText ?? '').trim() === '') this.searchText = '';\n }\n\n private handleSearchKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl.focus();\n }\n e.stopPropagation();\n e.preventDefault();\n return;\n }\n\n e.stopPropagation();\n\n const ENTER_KEY_CODE = 13;\n const ESCAPE_KEY_CODE = 27;\n const option = this.options.find((option) => option.highlighted);\n const highlightedIndex = this.options.findIndex(\n (option) => option.highlighted\n );\n this.searchTextEntered = false;\n // select option\n if (e.keyCode === ENTER_KEY_CODE) {\n this.searchTextEntered = true;\n if (option) {\n if (this.prevSearchKeydownIndex !== highlightedIndex) {\n if (this.multiple) {\n option.selected = !option.selected;\n } else {\n this.options.forEach((e) => (e.selected = false));\n option.selected = true;\n this.open = false;\n }\n this.updateValue(option.value, option.selected);\n }\n\n if (option.selected) {\n this.assistiveText = `Selected ${option.innerHTML}`;\n this.prevSearchKeydownIndex = highlightedIndex;\n } else {\n this.assistiveText = `Deselected ${option.innerHTML}`;\n }\n } else {\n this.assistiveText = 'No item matched.';\n }\n }\n\n // close listbox\n if (e.keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n this.buttonEl.focus();\n }\n }\n\n private handleSearchInput(e: any) {\n if (this.readonly) return;\n\n const value = e.target.value;\n this.searchText = value;\n this.open = true;\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // hide items that don't match\n this.options.map((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n if (searchText.toLowerCase().includes(value.toLowerCase())) {\n option.style.display = 'block';\n } else {\n option.style.display = 'none';\n }\n });\n } else {\n // find matches\n const options = this.options.filter((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n return searchText.toLowerCase().startsWith(value.toLowerCase());\n });\n\n // reset options highlighted state\n this.options.forEach((option) => (option.highlighted = false));\n\n // option highlight and scroll\n if (value !== '' && options.length) {\n options[0].highlighted = true;\n options[0].scrollIntoView({ block: 'nearest' });\n if (this.searchTextEntered) this.assistiveText = 'Option Matched';\n }\n }\n }\n\n private _updateSelectedOptions() {\n // set selected state for each option\n this.options.forEach((option: any) => {\n if (this.multiple) {\n option.selected = this.value.includes(option.value);\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleClick(e: any) {\n if (this.readonly) return;\n\n if (e.detail.value === 'selectAll') {\n this.selectAllChecked = e.detail.selected;\n\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n if (e.detail.selected) {\n this.value = this.options\n .filter(\n (option) => !option.disabled || (option.disabled && option.selected)\n )\n .map((option) => option.value);\n this.assistiveText = 'Selected all items.';\n } else {\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n this.assistiveText = 'Deselected all items.';\n }\n\n this._validate(true, false);\n } else {\n this.updateValue(e.detail.value, e.detail.selected);\n this.assistiveText = e.detail.selected\n ? `Selected ${e.detail.value}`\n : `Deselected ${e.detail.value}`;\n }\n\n this._updateSelectedOptions();\n\n if (!this.multiple) {\n this.open = false;\n }\n\n // emit selected value\n this.emitValue();\n }\n\n private _handleBlur(e: any) {\n const relatedTarget = e.detail.origEvent.relatedTarget;\n\n if (\n !relatedTarget ||\n (relatedTarget?.localName !== 'kyn-dropdown-option' &&\n relatedTarget?.localName !== 'kyn-enhanced-dropdown-option' &&\n relatedTarget.localName !== 'kyn-dropdown')\n ) {\n this.open = false;\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this._onConnected();\n\n document.addEventListener('click', this._onDocumentClick);\n\n this.addEventListener('on-click', this._onChildClick);\n this.addEventListener('on-remove-option', this._onChildRemove);\n this.addEventListener('on-blur', this._onChildBlur);\n }\n\n override disconnectedCallback() {\n this._onDisconnected();\n\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-click', this._onChildClick);\n this.removeEventListener('on-remove-option', this._onChildRemove);\n this.removeEventListener('on-blur', this._onChildBlur);\n\n super.disconnectedCallback();\n }\n\n private updateValue(value: string, selected = false) {\n if (this.readonly) return;\n\n // set value\n if (this.multiple) {\n const values =\n this.value === '' ? [] : JSON.parse(JSON.stringify(this.value));\n\n // update array\n if (selected) {\n values.push(value);\n } else {\n const index = values.indexOf(value);\n values.splice(index, 1);\n }\n\n this.value = values;\n } else {\n this.value = value;\n }\n\n this._validate(true, false);\n\n // reset focus\n if (!this.multiple) {\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n }\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // set validity flags\n const Validity = {\n customError: this.invalidText !== '',\n valueMissing:\n this.required &&\n !this.readonly &&\n (!this.value ||\n (this.multiple && !this.value.length) ||\n (!this.multiple && this.value === '')),\n };\n\n // set validationMessage\n const InternalMsg =\n this.required && !this.value.length ? 'Please fill out this field.' : '';\n const ValidationMessage =\n this.invalidText !== '' ? this.invalidText : InternalMsg;\n\n const validationAnchor = this.buttonEl || this.listboxEl;\n\n if (validationAnchor) {\n this._internals.setValidity(\n Validity,\n ValidationMessage,\n validationAnchor\n );\n } else {\n this._internals.setValidity(Validity, ValidationMessage);\n }\n\n if (interacted) {\n this._internalValidationMsg = InternalMsg;\n }\n\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n private emitValue() {\n const event = new CustomEvent('on-change', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private _emitSearch() {\n const event = new CustomEvent('on-search', {\n detail: {\n searchText: this.searchText,\n },\n });\n this.dispatchEvent(event);\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n override updated(changedProps: PropertyValues) {\n super.updated(changedProps);\n\n if (changedProps.has('readonly')) {\n this.clearMultipleEl?.classList.toggle('is-readonly', this.readonly);\n this.clearMultipleEl?.toggleAttribute('data-readonly', this.readonly);\n }\n\n if (changedProps.has('kind')) {\n this.dispatchEvent(\n new CustomEvent('kind-changed', {\n detail: this.kind,\n bubbles: true,\n composed: true,\n })\n );\n\n this.classList.toggle('ai-connected', this.kind === 'ai');\n }\n\n const root = this.shadowRoot;\n if (!root) return;\n\n if (changedProps.has('open')) {\n const slot = root.querySelector<HTMLSlotElement>('slot[name=\"anchor\"]');\n const assigned = slot?.assignedElements({ flatten: true }) as\n | HTMLElement[]\n | undefined;\n const btn = assigned?.find(\n (el) => !el.querySelector('.clear-multiple-icon')\n );\n const icon = btn?.querySelector<HTMLElement>('span[slot=\"icon\"]');\n if (icon) {\n icon.style.transition = 'transform 0.2s ease-in-out';\n icon.style.transform = this.open ? 'rotate(180deg)' : 'rotate(0deg)';\n }\n }\n\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n this._updateOptions();\n\n const childrenSlot: any =\n root.querySelector<HTMLSlotElement>('slot#children');\n const options = childrenSlot\n .assignedElements()\n .filter((o: any): o is HTMLElement => !o.disabled);\n const selected = options.filter((o: any) => o.selected);\n\n this.selectAllChecked = selected.length === options.length;\n this.selectAllIndeterminate =\n selected.length > 0 && selected.length < options.length;\n\n this._updateTags();\n this._updateSelectedText();\n }\n\n if (changedProps.has('open') || changedProps.has('openDirection')) {\n if (this.open) {\n this.options.forEach((o) => (o.highlighted = false));\n\n if (!this.searchable && this.listboxEl) {\n this.listboxEl.focus({ preventScroll: true });\n this.assistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n }\n }\n\n if (this.openDirection === 'up') {\n this._openUpwards = true;\n } else if (this.openDirection === 'down') {\n this._openUpwards = false;\n } else if (this.open) {\n const rect = this.buttonEl.getBoundingClientRect();\n this._openUpwards = rect.top > window.innerHeight * 0.6;\n }\n\n if (this.open && !this.multiple) {\n const firstSelected = this.options.find((o) => o.selected);\n firstSelected?.scrollIntoView({ block: 'nearest' });\n }\n }\n\n if (changedProps.has('multiple')) {\n this.options.forEach((opt) => (opt.multiple = this.multiple));\n }\n\n if (changedProps.has('searchText') && this.searchEl) {\n this.searchEl.value = this.searchText;\n }\n\n if (\n changedProps.has('multiple') ||\n changedProps.has('allowAddOption') ||\n changedProps.has('readonly')\n ) {\n this.updateChildOptions();\n }\n\n if (changedProps.has('open') && this.open && !this.searchable) {\n this.listboxEl?.focus({ preventScroll: true });\n }\n }\n\n private get hasSearch(): boolean {\n return (this.searchText ?? '').trim().length > 0;\n }\n\n // add selected options to Tags array\n private _updateTags() {\n if (this.multiple) {\n const Options: any = Array.from(\n this.querySelectorAll(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n const Tags: Array<object> = [];\n\n if (Options) {\n Options.forEach((option: any) => {\n if (option.selected) {\n let text = option.textContent;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n text = titleSlot.textContent.trim();\n } else {\n text = option.displayText || option.value;\n }\n } else {\n text = option.textContent.trim();\n }\n\n Tags.push({\n value: option.value,\n text: text,\n disabled: option.disabled,\n });\n }\n });\n\n this._tags = Tags;\n }\n }\n }\n\n private _updateOptions() {\n const Options: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n Options.forEach((option: any) => {\n // set option multiple state\n option.multiple = this.multiple;\n\n if (this.multiple) {\n const Selected = this.value.includes(option.value);\n // set option selected state\n option.selected = Selected;\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleInputNewOption(e: Event) {\n const target = e.target as HTMLInputElement;\n this.newOptionValue = target.value;\n }\n\n private _handleRemoveOption() {\n this.assistiveText = 'MY option removed ';\n setTimeout(() => {\n this.open = false;\n this.buttonEl.focus();\n }, 100);\n }\n\n private _updateSelectedText() {\n // update selected option text\n const AllOptions: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n if (!this.multiple) {\n if (AllOptions.length && this.value !== '') {\n const option = AllOptions.find(\n (option: any) => option.value === this.value\n );\n if (option) {\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n this.text = titleSlot.textContent.trim();\n } else {\n this.text = option.displayText || this.value;\n }\n } else {\n this.text = option.textContent.trim();\n }\n } else {\n this.text = '';\n console.warn(`No dropdown option found with value: ${this.value}`);\n }\n }\n\n if (this.searchable && this.text) {\n this.searchText = this.text === this.placeholder ? '' : this.text;\n this.searchEl.value = this.searchText;\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-dropdown': Dropdown;\n }\n}\n"],"names":["_defaultTextStrings","title","selectedOptions","requiredText","errorText","clearAll","clear","addItem","add","KEY","Dropdown","customElement","FormMixin","LitElement","_classThis","_classSuper","_Dropdown_label_accessor_storage","set","this","__runInitializers","_label_initializers","_Dropdown_size_accessor_storage","_label_extraInitializers","_size_initializers","_Dropdown_kind_accessor_storage","_size_extraInitializers","_kind_initializers","_Dropdown_inline_accessor_storage","_kind_extraInitializers","_inline_initializers","_Dropdown_caption_accessor_storage","_inline_extraInitializers","_caption_initializers","_Dropdown_placeholder_accessor_storage","_caption_extraInitializers","_placeholder_initializers","_Dropdown_open_accessor_storage","_placeholder_extraInitializers","_open_initializers","_Dropdown_searchable_accessor_storage","_open_extraInitializers","_searchable_initializers","_Dropdown_enhanced_accessor_storage","_searchable_extraInitializers","_enhanced_initializers","_Dropdown_readonly_accessor_storage","_enhanced_extraInitializers","_readonly_initializers","_Dropdown_filterSearch_accessor_storage","_readonly_extraInitializers","_filterSearch_initializers","_Dropdown_multiple_accessor_storage","_filterSearch_extraInitializers","_multiple_initializers","_Dropdown_required_accessor_storage","_multiple_extraInitializers","_required_initializers","_Dropdown_hideLabel_accessor_storage","_required_extraInitializers","_hideLabel_initializers","_Dropdown_disabled_accessor_storage","_hideLabel_extraInitializers","_disabled_initializers","_Dropdown_hideTags_accessor_storage","_disabled_extraInitializers","_hideTags_initializers","_Dropdown_selectAll_accessor_storage","_hideTags_extraInitializers","_selectAll_initializers","_Dropdown_selectAllText_accessor_storage","_selectAll_extraInitializers","_selectAllText_initializers","_Dropdown_menuMinWidth_accessor_storage","_selectAllText_extraInitializers","_menuMinWidth_initializers","_Dropdown_openDirection_accessor_storage","_menuMinWidth_extraInitializers","_openDirection_initializers","_Dropdown_selectAllChecked_accessor_storage","_openDirection_extraInitializers","_selectAllChecked_initializers","_Dropdown_selectAllIndeterminate_accessor_storage","_selectAllChecked_extraInitializers","_selectAllIndeterminate_initializers","_Dropdown_textStrings_accessor_storage","_selectAllIndeterminate_extraInitializers","_textStrings_initializers","_Dropdown_allowAddOption_accessor_storage","_textStrings_extraInitializers","_allowAddOption_initializers","_Dropdown__textStrings_accessor_storage","_allowAddOption_extraInitializers","__textStrings_initializers","_Dropdown_newOptionValue_accessor_storage","__textStrings_extraInitializers","_newOptionValue_initializers","_Dropdown_text_accessor_storage","_newOptionValue_extraInitializers","_text_initializers","_Dropdown_searchText_accessor_storage","_text_extraInitializers","_searchText_initializers","_Dropdown_assistiveText_accessor_storage","_searchText_extraInitializers","_assistiveText_initializers","_Dropdown_searchEl_accessor_storage","_assistiveText_extraInitializers","_searchEl_initializers","_Dropdown_buttonEl_accessor_storage","_searchEl_extraInitializers","_buttonEl_initializers","_Dropdown_listboxEl_accessor_storage","_buttonEl_extraInitializers","_listboxEl_initializers","_Dropdown_clearMultipleEl_accessor_storage","_listboxEl_extraInitializers","_clearMultipleEl_initializers","_Dropdown_addOptionInputEl_accessor_storage","_clearMultipleEl_extraInitializers","_addOptionInputEl_initializers","_Dropdown__openUpwards_accessor_storage","_addOptionInputEl_extraInitializers","__openUpwards_initializers","_Dropdown__tags_accessor_storage","__openUpwards_extraInitializers","__tags_initializers","searchTextEntered","__tags_extraInitializers","prevSearchKeydownIndex","_onDocumentClick","e","_handleClickOut","_onChildClick","_handleClick","_onChildRemove","_e","_handleRemoveOption","_onChildBlur","_handleBlur","label","__classPrivateFieldGet","value","__classPrivateFieldSet","size","kind","inline","caption","placeholder","open","searchable","enhanced","readonly","filterSearch","multiple","required","hideLabel","disabled","hideTags","selectAll","selectAllText","menuMinWidth","openDirection","selectAllChecked","selectAllIndeterminate","textStrings","allowAddOption","_textStrings","newOptionValue","text","searchText","assistiveText","options","Array","from","querySelectorAll","filter","opt","hasAttribute","searchEl","buttonEl","listboxEl","clearMultipleEl","addOptionInputEl","_openUpwards","_tags","render","mainDropdownClasses","dropdown","html","classMap","name","_a","wrapper","handleAnchorClick","handleAnchorKeydown","select","_isInvalid","preventDefault","stopPropagation","length","handleClearMultiple","unsafeSVG","clearIcon","handleSearchKeydown","handleSearchInput","handleSearchClick","downIcon","upwards","handleListKeydown","handleListBlur","_handleListFocus","_handleInputNewOption","_onAddOptionInputKeydown","_onAddOptionInputFocus","_handleAddOption","handleSlotChange","hasSearch","handleClear","renderHelperContent","key","focus","handleKeyboard","canOpen","isInOptions","composedPath","call","some","t","classList","contains","_c","_b","target","closest","handleClick","handleButtonKeydown","includes","v","trim","dispatchEvent","CustomEvent","detail","nothing","map","tag","handleTagClear","errorIcon","invalidText","_internalValidationMsg","firstUpdated","updateChildOptions","_updateOptions","_updateSelectedText","shadowRoot","querySelector","assignedElements","flatten","forEach","option","tagName","keyCode","visibleOptions","style","display","firstEnabled","find","o","highlighted","tabIndex","scrollIntoView","block","relatedTarget","SPACEBAR_KEY_CODE","ENTER_KEY_CODE","highlightedEl","selectedEl","selected","highlightedIndex","indexOf","nextIndex","guard","_d","_f","isListboxElOpened","openDropdown","setTimeout","updateValue","emitValue","DisabledSelectedOptions","_validate","_updateSelectedOptions","event","_emitSearch","findIndex","innerHTML","titleSlot","textContent","displayText","toLowerCase","startsWith","origEvent","localName","connectedCallback","super","_onConnected","document","addEventListener","disconnectedCallback","_onDisconnected","removeEventListener","values","JSON","parse","stringify","push","index","splice","interacted","report","Validity","customError","valueMissing","InternalMsg","ValidationMessage","validationAnchor","_internals","setValidity","reportValidity","willUpdate","changedProps","has","deepmerge","updated","toggle","toggleAttribute","bubbles","composed","root","slot","assigned","btn","el","icon","transition","transform","_onUpdated","_updateTags","preventScroll","rect","getBoundingClientRect","top","window","innerHeight","firstSelected","Options","Tags","Selected","AllOptions","console","warn","_label_decorators","property","type","String","_size_decorators","attribute","_inline_decorators","Boolean","_caption_decorators","_placeholder_decorators","reflect","_searchable_decorators","_enhanced_decorators","_filterSearch_decorators","_multiple_decorators","_required_decorators","_hideLabel_decorators","_disabled_decorators","_hideTags_decorators","_selectAll_decorators","_selectAllText_decorators","_menuMinWidth_decorators","_openDirection_decorators","_selectAllChecked_decorators","_selectAllIndeterminate_decorators","_textStrings_decorators","Object","_allowAddOption_decorators","__textStrings_decorators","state","_newOptionValue_decorators","_text_decorators","_searchText_decorators","_assistiveText_decorators","query","__openUpwards_decorators","__tags_decorators","__esDecorate","static","private","access","obj","get","metadata","_metadata","_kind_decorators","_open_decorators","_readonly_decorators","_searchEl_decorators","_buttonEl_decorators","_listboxEl_decorators","_clearMultipleEl_decorators","_addOptionInputEl_decorators","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","DropdownScss"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown.js","sources":["../../../../src/components/reusable/dropdown/dropdown.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, PropertyValues, html, unsafeCSS } from 'lit';\nimport { customElement, property, state, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport DropdownScss from './dropdown.scss?inline';\nimport { FormMixin } from '../../../common/mixins/form-input';\nimport { deepmerge } from 'deepmerge-ts';\nimport { nothing } from 'lit';\n\nimport './dropdownOption';\nimport './enhancedDropdownOption';\nimport '../tag';\nimport '../button';\n\nimport { DropdownOption } from './dropdownOption';\nimport { EnhancedDropdownOption } from './enhancedDropdownOption';\n\nimport downIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport errorIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/error-filled.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nconst _defaultTextStrings = {\n title: 'Dropdown',\n selectedOptions: 'List of selected options',\n requiredText: 'Required',\n errorText: 'Error',\n clearAll: 'Clear all',\n clear: 'Clear',\n addItem: 'Add item...',\n add: 'Add',\n};\n\nconst KEY = {\n Enter: 'Enter',\n Escape: 'Escape',\n ArrowDown: 'ArrowDown',\n ArrowUp: 'ArrowUp',\n} as const;\n\n/**\n * Dropdown, single select.\n * @fires on-change - Captures the dropdown change event and emits the selected value and original event details. `detail:{ value: string/array }`\n * @fires on-search - Capture the search input event and emits the search text.`detail:{ searchText: string }`\n * @fires on-clear-all - Captures the the multi-select clear all button click event and emits the value. `detail:{ value: array }`\n * @fires on-add-option - Captures the add button click and emits the newly added option. `detail:{ value: string }`\n * @slot unnamed - Slot for dropdown options.\n * @slot tooltip - Slot for tooltip.\n * @slot anchor - Slot for custom dropdown anchor element. If not provided, defaults to standard input-style anchor.\n * @attr {string/array} [value=''/[]] - The selected value(s) of the input. For single select, it is a string. For multi-select, it is an array of strings.\n * @attr {string} [name=''] - The name of the input, used for form submission.\n * @attr {string} [invalidText=''] - The custom validation message when the input is invalid.\n */\n@customElement('kyn-dropdown')\nexport class Dropdown extends FormMixin(LitElement) {\n static override styles = unsafeCSS(DropdownScss);\n\n /** Label text. */\n @property({ type: String })\n accessor label = '';\n\n /** Dropdown size/height. \"sm\", \"md\", or \"lg\". */\n @property({ type: String })\n accessor size = 'md';\n\n /** Dropdown kind. */\n @property({ type: String, attribute: 'kind' })\n accessor kind: 'ai' | 'default' = 'default';\n\n /** Dropdown inline style type. */\n @property({ type: Boolean })\n accessor inline = false;\n\n /** Optional text beneath the input. */\n @property({ type: String })\n accessor caption = '';\n\n /** Dropdown placeholder. */\n @property({ type: String })\n accessor placeholder = '';\n\n /** Listbox/drawer open state. */\n @property({ type: Boolean, reflect: true })\n accessor open = false;\n\n /** Makes the dropdown searchable. */\n @property({ type: Boolean })\n accessor searchable = false;\n\n /** Makes the dropdown enhanced. */\n @property({ type: Boolean })\n accessor enhanced = false;\n\n /** Dropdown read-only state (focusable but not interactive). */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Searchable variant filters results. */\n @property({ type: Boolean })\n accessor filterSearch = false;\n\n /** Enabled multi-select functionality. */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Makes the dropdown required. */\n @property({ type: Boolean })\n accessor required = false;\n\n /** Visually hide the label. */\n @property({ type: Boolean })\n accessor hideLabel = false;\n\n /** Dropdown disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Hide the tags below multi-select. */\n @property({ type: Boolean })\n accessor hideTags = false;\n\n /** Adds a \"Select all\" option to the top of a multi-select dropdown. */\n @property({ type: Boolean })\n accessor selectAll = false;\n\n /** \"Select all\" text customization. */\n @property({ type: String })\n accessor selectAllText = 'Select all';\n\n /** Menu CSS min-width value. */\n @property({ type: String })\n accessor menuMinWidth = '120px';\n\n /** Controls direction that dropdown opens. */\n @property({ type: String })\n accessor openDirection: 'auto' | 'up' | 'down' = 'auto';\n\n /** Is \"Select All\" box checked.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllChecked = false;\n\n /** Is \"Select All\" indeterminate.\n * @internal\n */\n @property({ type: Boolean })\n accessor selectAllIndeterminate = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Enables the \"Add New Option\" feature. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /**\n * New dropdown option value.\n * @ignore\n */\n @state()\n accessor newOptionValue = '';\n\n /**\n * Selected option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text = '';\n\n /**\n * Search input value.\n */\n @property({ type: String })\n accessor searchText = '';\n\n /**\n * Assistive text for screen readers.\n * @ignore\n */\n @state()\n accessor assistiveText = 'Dropdown menu options.';\n\n /**\n * Queries any slotted options, default or enhanced.\n * @ignore\n */\n protected get options(): Array<DropdownOption | EnhancedDropdownOption> {\n return Array.from(\n this.querySelectorAll<DropdownOption | EnhancedDropdownOption>(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n }\n\n /**\n * Queries any slotted selected options.\n * @ignore\n */\n protected get selectedOptions(): Array<\n DropdownOption | EnhancedDropdownOption\n > {\n return this.options.filter(\n (opt): opt is DropdownOption | EnhancedDropdownOption =>\n opt.hasAttribute('selected')\n );\n }\n\n /**\n * Queries the .search DOM element.\n * @ignore\n */\n @query('.search')\n accessor searchEl!: HTMLInputElement;\n\n /**\n * Queries the .select DOM element.\n * @ignore\n */\n @query('.select')\n accessor buttonEl!: HTMLElement;\n\n /**\n * Queries the .options DOM element.\n * @ignore\n */\n @query('.options')\n accessor listboxEl!: HTMLElement;\n\n /**\n * Queries the .clear-multiple DOM element.\n * @ignore\n */\n @query('.clear-multiple')\n accessor clearMultipleEl!: HTMLElement;\n\n /**\n * Queries the .add-option-input DOM element.\n * @ignore\n */\n @query('.add-option-input')\n accessor addOptionInputEl!: HTMLInputElement;\n\n /**\n * Open drawer upwards.\n * @ignore\n */\n @state()\n accessor _openUpwards = false;\n\n /**\n * Tags value/text reference.\n * @ignore\n */\n @state()\n accessor _tags: Array<object> = [];\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n searchTextEntered: any = false;\n\n /** Toggles on clicking enter key in the search input.\n * @internal\n */\n prevSearchKeydownIndex = -1;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onChildClick = (e: Event) => this._handleClick(e as any);\n private _onChildRemove = (_e: Event) => this._handleRemoveOption();\n private _onChildBlur = (e: Event) => this._handleBlur(e as any);\n\n override render() {\n const mainDropdownClasses = {\n dropdown: true,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(mainDropdownClasses)}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n ?open=${this.open}\n ?inline=${this.inline}\n ?searchable=${this.searchable}\n >\n <label\n id=\"label-${this.name}\"\n class=\"label-text ${this.hideLabel || this.inline ? 'sr-only' : ''}\"\n for=${this.name}\n >\n ${this.required\n ? html`<abbr\n class=\"required\"\n title=${this._textStrings.requiredText}\n role=\"img\"\n aria-label=${this._textStrings?.requiredText || 'Required'}\n >*</abbr\n >`\n : null}\n ${this.label}\n <slot name=\"tooltip\"></slot>\n </label>\n\n <div\n class=${classMap({\n wrapper: true,\n open: this.open,\n })}\n >\n <div\n class=\"custom\"\n @click=${(e: MouseEvent) => this.handleAnchorClick(e)}\n @keydown=${(e: KeyboardEvent) => this.handleAnchorKeydown(e)}\n >\n <slot name=\"anchor\">\n <div\n class=\"${classMap({\n select: true,\n 'is-readonly': !this.disabled && this.readonly,\n multiple: this.multiple,\n 'input-custom': true,\n 'size--sm': this.size === 'sm',\n 'size--lg': this.size === 'lg',\n inline: this.inline,\n })}\"\n aria-labelledby=\"label-${this.name}\"\n aria-expanded=${this.open}\n aria-controls=\"options\"\n role=\"combobox\"\n id=${this.name}\n name=${this.name}\n title=${this._textStrings.title}\n ?required=${this.required}\n ?disabled=${this.disabled}\n ?invalid=${this._isInvalid}\n tabindex=${this.disabled ? '' : this.searchable ? '-1' : '0'}\n @mousedown=${(e: MouseEvent) => {\n if (!this.searchable && !this.readonly) e.preventDefault();\n }}\n aria-readonly=${this.readonly}\n @blur=${(e: any) => e.stopPropagation()}\n >\n ${this.multiple && this.value.length\n ? html`\n <button\n class=${classMap({\n 'clear-multiple': true,\n })}\n aria-label=\"${this.value\n .length} items selected. Clear selections\"\n ?disabled=${this.disabled || this.readonly}\n title=${this._textStrings.clear}\n @click=${(e: Event) => this.handleClearMultiple(e)}\n >\n ${this.value.length}\n <span style=\"display:flex;\" class=\"clear-multiple-icon\">\n ${unsafeSVG(clearIcon)}\n </span>\n </button>\n `\n : null}\n ${this.searchable\n ? html`\n <input\n class=\"search\"\n type=\"text\"\n placeholder=${this.placeholder}\n value=${this.searchText}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n aria-disabled=${this.disabled}\n @keydown=${(e: any) => this.handleSearchKeydown(e)}\n @input=${(e: any) => this.handleSearchInput(e)}\n @blur=${(e: any) => e.stopPropagation()}\n @click=${(e: any) => this.handleSearchClick(e)}\n />\n `\n : html`\n <span\n class=\"${classMap({\n 'placeholder-text': this.text === '',\n })}\"\n >\n ${this.multiple\n ? this.placeholder\n : this.value === ''\n ? this.placeholder\n : this.text}\n </span>\n `}\n <span class=\"arrow-icon\">${unsafeSVG(downIcon)}</span>\n </div>\n </slot>\n\n <div\n id=\"options\"\n class=${classMap({\n options: true,\n open: this.open,\n upwards: this._openUpwards,\n })}\n style=\"min-width: ${this.menuMinWidth};\"\n aria-hidden=${!this.open}\n @keydown=${this.handleListKeydown}\n @blur=${this.handleListBlur}\n @focus=${this._handleListFocus}\n >\n ${this.allowAddOption\n ? html`\n <div class=\"add-option\">\n <input\n class=\"add-option-input\"\n type=\"text\"\n placeholder=${this._textStrings.addItem}\n .value=${this.newOptionValue}\n aria-label=\"Add new option\"\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n @input=${this._handleInputNewOption}\n @keydown=${this._onAddOptionInputKeydown}\n @focus=${this._onAddOptionInputFocus}\n />\n <kyn-button\n type=\"button\"\n size=\"small\"\n kind=\"secondary\"\n ?disabled=${this.disabled}\n @on-click=${this._handleAddOption}\n >\n ${this._textStrings.add}\n </kyn-button>\n </div>\n `\n : null}\n\n <div\n role=\"listbox\"\n aria-labelledby=\"label-${this.name}\"\n class=${classMap({\n 'dropdown-listbox': true,\n 'ai-connected': this.kind === 'ai',\n })}\n >\n ${this.multiple && this.selectAll\n ? html`\n ${this.enhanced\n ? html`\n <kyn-enhanced-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-enhanced-dropdown-option>\n `\n : html`\n <kyn-dropdown-option\n class=\"select-all\"\n value=\"selectAll\"\n multiple\n ?selected=${this.selectAllChecked}\n ?indeterminate=${this.selectAllIndeterminate}\n ?disabled=${this.disabled}\n >\n ${this.selectAllText}\n </kyn-dropdown-option>\n `}\n `\n : null}\n\n <slot\n id=\"children\"\n @slotchange=${() => this.handleSlotChange()}\n ></slot>\n </div>\n </div>\n </div>\n ${this.hasSearch && this.open\n ? html`\n <kyn-button\n ?disabled=${this.disabled || this.readonly}\n class=\"clear-button dropdown-clear\"\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n description=${this._textStrings.clearAll}\n @click=${(e: Event) => this.handleClear(e)}\n >\n <span style=\"display:flex;\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n ${this.renderHelperContent()}\n </div>\n `;\n }\n\n private _onAddOptionInputKeydown(e: KeyboardEvent) {\n if (this.readonly) return;\n\n e.stopPropagation();\n switch (e.key) {\n case KEY.Enter:\n this._handleAddOption();\n break;\n case KEY.Escape:\n this.newOptionValue = '';\n this.open = false;\n this.buttonEl.focus();\n break;\n case KEY.ArrowDown:\n this.handleKeyboard(e, 40, 'addOption');\n break;\n case KEY.ArrowUp:\n this.handleKeyboard(e, 38, 'addOption');\n break;\n }\n }\n\n private _onAddOptionInputFocus() {\n this.assistiveText = 'Add new option input';\n }\n\n private canOpen(): boolean {\n return !this.disabled && !this.readonly;\n }\n\n private handleAnchorClick(e: MouseEvent) {\n if (!this.canOpen()) return;\n\n const path = (e.composedPath?.() || []) as Array<EventTarget>;\n const isInOptions =\n path.some((t) => (t as HTMLElement)?.classList?.contains('options')) ||\n (e.target as HTMLElement)?.closest?.(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option, .add-option'\n );\n\n if (isInOptions) return;\n\n this.handleClick();\n }\n\n private handleAnchorKeydown(e: KeyboardEvent) {\n if (!this.canOpen()) {\n const openKeys = [' ', 'Enter', 'ArrowDown', 'ArrowUp'];\n if (openKeys.includes(e.key)) e.preventDefault();\n return;\n }\n\n this.handleButtonKeydown(\n e as unknown as KeyboardEvent & { keyCode: number }\n );\n }\n\n private _handleAddOption() {\n if (this.readonly) return;\n\n const v = this.newOptionValue.trim();\n if (!v) return;\n this.dispatchEvent(\n new CustomEvent('on-add-option', { detail: { value: v } })\n );\n this.newOptionValue = '';\n }\n\n private renderHelperContent() {\n return html`\n ${\n this.multiple && !this.hideTags && this._tags.length\n ? html`\n <kyn-tag-group\n ?filter=${this.disabled || this.readonly ? false : true}\n role=\"list\"\n aria-label=${this._textStrings.selectedOptions}\n data-readonly=${this.readonly ? '' : nothing}\n >\n ${this._tags.map((tag: any) => {\n return html`\n <kyn-tag\n role=\"listitem\"\n tagColor=${this.kind === 'ai' ? 'ai' : 'default'}\n label=${tag.text}\n ?disabled=${this.disabled ||\n tag.disabled ||\n this.readonly}\n @on-close=${() => this.handleTagClear(tag)}\n ></kyn-tag>\n `;\n })}\n </kyn-tag-group>\n `\n : null\n }\n ${\n this.caption !== ''\n ? html`\n <div class=\"caption\" aria-disabled=${this.disabled}>\n ${this.caption}\n </div>\n `\n : null\n }\n ${\n this._isInvalid\n ? html`\n <div class=\"error\">\n <span\n class=\"error-icon\"\n role=\"img\"\n title=${this._textStrings.errorText}\n aria-label=${this._textStrings.errorText}\n >${unsafeSVG(errorIcon)}</span\n >\n ${this.invalidText || this._internalValidationMsg}\n </div>\n `\n : null\n }\n\n <div\n class=\"assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\"\n >\n ${this.assistiveText}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // set a default placeholder if none provided\n if (this.placeholder === '') {\n if (this.searchable) {\n this.placeholder = 'Search';\n } else {\n if (this.multiple) {\n this.placeholder = 'Select items';\n } else {\n this.placeholder = 'Select an option';\n }\n }\n }\n }\n\n private handleSlotChange() {\n this.updateChildOptions();\n this._updateOptions();\n this._updateSelectedText();\n }\n\n private updateChildOptions() {\n const slot = this.shadowRoot?.querySelector('#children') as HTMLSlotElement;\n const options = slot.assignedElements({ flatten: true }) as HTMLElement[];\n\n options.forEach((option) => {\n const tag = option.tagName;\n if (\n tag === 'KYN-DROPDOWN-OPTION' ||\n tag === 'KYN-ENHANCED-DROPDOWN-OPTION'\n ) {\n (option as any).allowAddOption = this.allowAddOption;\n (option as any).multiple = this.multiple;\n (option as any).readonly = this.readonly;\n }\n });\n }\n\n private handleClick() {\n if (!this.canOpen()) return;\n\n this.open = !this.open;\n if (this.searchable) this.searchEl.focus();\n else this.buttonEl.focus();\n }\n\n private handleButtonKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n this.handleKeyboard(e, e.keyCode, 'button');\n }\n\n private handleListKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n e.preventDefault();\n this.open = false;\n this.buttonEl?.focus();\n }\n return;\n }\n\n const TAB_KEY_CODE = 9;\n\n if (e.keyCode !== TAB_KEY_CODE) {\n e.preventDefault();\n }\n\n this.handleKeyboard(e, e.keyCode, 'list');\n }\n\n private _handleListFocus() {\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n\n const firstEnabled = visibleOptions.find((o: any) => !o.disabled) as any;\n if (!firstEnabled) return;\n\n visibleOptions.forEach((o: any) => (o.highlighted = false));\n\n if (!('tabIndex' in firstEnabled) || firstEnabled.tabIndex < 0) {\n firstEnabled.tabIndex = 0;\n }\n firstEnabled.focus();\n firstEnabled.scrollIntoView({ block: 'nearest' });\n this.assistiveText = firstEnabled.text || 'Option';\n }\n\n private handleListBlur(e: FocusEvent): void {\n if (this.multiple) {\n return;\n }\n\n this.options.forEach((o) => (o.highlighted = false));\n const target = e.relatedTarget as HTMLElement | null;\n\n if (\n target &&\n (target.closest('kyn-dropdown-option') ||\n target.closest('kyn-enhanced-dropdown-option') ||\n target.classList.contains('search') ||\n target.closest('.add-option'))\n ) {\n return;\n }\n\n this.open = false;\n this.assistiveText = 'Dropdown menu options.';\n }\n\n private handleKeyboard(e: any, keyCode: number, target: string) {\n const SPACEBAR_KEY_CODE = [0, 32];\n const ENTER_KEY_CODE = 13;\n const DOWN_ARROW_KEY_CODE = 40;\n const UP_ARROW_KEY_CODE = 38;\n const ESCAPE_KEY_CODE = 27;\n\n // get highlighted element + index and selected element\n const selectAllOptions = Array.from(\n this.shadowRoot?.querySelectorAll('.select-all') || []\n ) as any[];\n const filteredOptions = this.options.filter(\n (option: any) => option.style.display !== 'none'\n );\n const visibleOptions = [...selectAllOptions, ...filteredOptions] as any[];\n // visibleOptions.forEach((e) => (e.tabIndex = 0));\n\n const highlightedEl = visibleOptions.find(\n (option: any) => option.highlighted\n );\n const selectedEl = visibleOptions.find((option: any) => option.selected);\n let highlightedIndex = highlightedEl\n ? visibleOptions.indexOf(highlightedEl)\n : selectedEl\n ? visibleOptions.indexOf(selectedEl)\n : 0;\n\n if (SPACEBAR_KEY_CODE.includes(keyCode)) {\n e.preventDefault();\n }\n\n if (this.readonly) {\n if (keyCode === DOWN_ARROW_KEY_CODE || keyCode === UP_ARROW_KEY_CODE) {\n e.preventDefault();\n let nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (highlightedIndex + 1) % visibleOptions.length\n : (highlightedIndex - 1 + visibleOptions.length) %\n visibleOptions.length;\n\n let guard = 0;\n while (\n visibleOptions[nextIndex]?.disabled &&\n guard++ < visibleOptions.length\n ) {\n nextIndex =\n keyCode === DOWN_ARROW_KEY_CODE\n ? (nextIndex + 1) % visibleOptions.length\n : (nextIndex - 1 + visibleOptions.length) % visibleOptions.length;\n }\n\n if (visibleOptions[nextIndex]) {\n visibleOptions[highlightedIndex] &&\n (visibleOptions[highlightedIndex].highlighted = false);\n visibleOptions[nextIndex].focus();\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView?.({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text || 'Option';\n }\n return;\n }\n\n if (SPACEBAR_KEY_CODE.includes(keyCode) || keyCode === ENTER_KEY_CODE) {\n e.preventDefault();\n return;\n }\n\n if (keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n (this.searchable ? this.searchEl : this.buttonEl)?.focus();\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n\n return;\n }\n\n const isListboxElOpened = this.open;\n // open the listbox\n if (target === 'button' || target === 'addOption') {\n let openDropdown =\n SPACEBAR_KEY_CODE.includes(keyCode) ||\n keyCode === ENTER_KEY_CODE ||\n keyCode == DOWN_ARROW_KEY_CODE ||\n keyCode == UP_ARROW_KEY_CODE;\n\n if (e.target === this.clearMultipleEl && keyCode === ENTER_KEY_CODE) {\n openDropdown = false;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n highlightedIndex = 0;\n if (keyCode !== ENTER_KEY_CODE) return;\n }\n\n if (openDropdown) {\n this.open = true;\n\n if (\n this.allowAddOption &&\n target === 'button' &&\n keyCode === ENTER_KEY_CODE\n ) {\n setTimeout(() => {\n this.addOptionInputEl?.focus();\n }, 100);\n } else {\n // scroll to highlighted option\n if (!this.multiple && this.value !== '') {\n visibleOptions[highlightedIndex].scrollIntoView({\n block: 'nearest',\n });\n }\n }\n }\n }\n switch (keyCode) {\n case 0:\n case 32:\n case ENTER_KEY_CODE: {\n // select highlighted option\n visibleOptions[highlightedIndex].highlighted = true;\n if (isListboxElOpened) {\n if (this.multiple) {\n visibleOptions[highlightedIndex].selected =\n !visibleOptions[highlightedIndex].selected;\n this._handleClick({\n detail: {\n value: visibleOptions[highlightedIndex].value,\n selected: visibleOptions[highlightedIndex].selected,\n },\n });\n } else {\n visibleOptions.forEach((e) => (e.selected = false));\n visibleOptions[highlightedIndex].selected = true;\n this.updateValue(visibleOptions[highlightedIndex].value, true);\n this.emitValue();\n\n this.open = false;\n this.assistiveText = `Selected ${visibleOptions[highlightedIndex].value}`;\n }\n }\n return;\n }\n case DOWN_ARROW_KEY_CODE: {\n let nextIndex =\n !highlightedEl && !selectedEl\n ? 0\n : highlightedIndex === visibleOptions.length - 1\n ? 0\n : highlightedIndex + 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === visibleOptions.length - 1 ? 0 : nextIndex + 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case UP_ARROW_KEY_CODE: {\n // go to previous option\n let nextIndex =\n highlightedIndex === 0\n ? visibleOptions.length - 1\n : highlightedIndex - 1;\n\n // skip disabled options\n if (visibleOptions[nextIndex].disabled) {\n nextIndex =\n nextIndex === 0 ? visibleOptions.length - 1 : nextIndex - 1;\n }\n\n visibleOptions[nextIndex].focus();\n visibleOptions[highlightedIndex].tabIndex = -1;\n visibleOptions[nextIndex].tabIndex = 0;\n visibleOptions[highlightedIndex].highlighted = false;\n visibleOptions[nextIndex].highlighted = true;\n visibleOptions[nextIndex].scrollIntoView({ block: 'nearest' });\n this.assistiveText = visibleOptions[nextIndex].text;\n return;\n }\n case ESCAPE_KEY_CODE: {\n this.open = false;\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n this.assistiveText = 'Dropdown menu options.';\n return;\n }\n default: {\n return;\n }\n }\n }\n\n private handleClearMultiple(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // clear values\n if (this.multiple) {\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n } else {\n this.value = '';\n }\n\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n\n const event = new CustomEvent('on-clear-all', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private handleTagClear(tag: any) {\n if (this.readonly) return;\n // remove value\n this.updateValue(tag.value, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n\n private handleClear(e: any) {\n if (this.readonly) return;\n\n e.stopPropagation();\n\n // reset search input text\n this.text = '';\n this.searchText = '';\n this.searchEl.value = '';\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // reveal all options\n this.options.map((option: any) => {\n option.style.display = 'block';\n });\n }\n\n // clear selection for single select\n if (!this.multiple) {\n this.value = '';\n this._validate(true, false);\n this._updateSelectedOptions();\n this.emitValue();\n }\n }\n\n private handleSearchClick(e: MouseEvent) {\n if (this.readonly) return;\n e.stopPropagation();\n this.open = true;\n if ((this.searchText ?? '').trim() === '') this.searchText = '';\n }\n\n private handleSearchKeydown(e: any) {\n if (this.readonly) {\n if (e.key === 'Escape') {\n this.open = false;\n this.buttonEl.focus();\n }\n e.stopPropagation();\n e.preventDefault();\n return;\n }\n\n e.stopPropagation();\n\n const ENTER_KEY_CODE = 13;\n const ESCAPE_KEY_CODE = 27;\n const option = this.options.find((option) => option.highlighted);\n const highlightedIndex = this.options.findIndex(\n (option) => option.highlighted\n );\n this.searchTextEntered = false;\n // select option\n if (e.keyCode === ENTER_KEY_CODE) {\n this.searchTextEntered = true;\n if (option) {\n if (this.prevSearchKeydownIndex !== highlightedIndex) {\n if (this.multiple) {\n option.selected = !option.selected;\n } else {\n this.options.forEach((e) => (e.selected = false));\n option.selected = true;\n this.open = false;\n }\n this.updateValue(option.value, option.selected);\n }\n\n if (option.selected) {\n this.assistiveText = `Selected ${option.innerHTML}`;\n this.prevSearchKeydownIndex = highlightedIndex;\n } else {\n this.assistiveText = `Deselected ${option.innerHTML}`;\n }\n } else {\n this.assistiveText = 'No item matched.';\n }\n }\n\n // close listbox\n if (e.keyCode === ESCAPE_KEY_CODE) {\n this.open = false;\n this.buttonEl.focus();\n }\n }\n\n private handleSearchInput(e: any) {\n if (this.readonly) return;\n\n const value = e.target.value;\n this.searchText = value;\n this.open = true;\n\n this._emitSearch();\n\n if (this.filterSearch) {\n // hide items that don't match\n this.options.map((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n if (searchText.toLowerCase().includes(value.toLowerCase())) {\n option.style.display = 'block';\n } else {\n option.style.display = 'none';\n }\n });\n } else {\n // find matches\n const options = this.options.filter((option: any) => {\n let searchText = option.text;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n searchText = titleSlot.textContent.trim();\n } else {\n searchText = option.displayText || option.value;\n }\n }\n\n return searchText.toLowerCase().startsWith(value.toLowerCase());\n });\n\n // reset options highlighted state\n this.options.forEach((option) => (option.highlighted = false));\n\n // option highlight and scroll\n if (value !== '' && options.length) {\n options[0].highlighted = true;\n options[0].scrollIntoView({ block: 'nearest' });\n if (this.searchTextEntered) this.assistiveText = 'Option Matched';\n }\n }\n }\n\n private _updateSelectedOptions() {\n // set selected state for each option\n this.options.forEach((option: any) => {\n if (this.multiple) {\n option.selected = this.value.includes(option.value);\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleClick(e: any) {\n if (this.readonly) return;\n\n if (e.detail.value === 'selectAll') {\n this.selectAllChecked = e.detail.selected;\n\n const Slot: any = this.shadowRoot?.querySelector('slot#children');\n const Options: Array<any> = Slot.assignedElements();\n const DisabledSelectedOptions: Array<any> = Options.filter(\n (option: any) => option.selected && option.disabled\n ).map((option: any) => option.value);\n\n if (e.detail.selected) {\n this.value = this.options\n .filter(\n (option) => !option.disabled || (option.disabled && option.selected)\n )\n .map((option) => option.value);\n this.assistiveText = 'Selected all items.';\n } else {\n this.value = DisabledSelectedOptions.length\n ? DisabledSelectedOptions\n : [];\n this.assistiveText = 'Deselected all items.';\n }\n\n this._validate(true, false);\n } else {\n this.updateValue(e.detail.value, e.detail.selected);\n this.assistiveText = e.detail.selected\n ? `Selected ${e.detail.value}`\n : `Deselected ${e.detail.value}`;\n }\n\n this._updateSelectedOptions();\n\n if (!this.multiple) {\n this.open = false;\n }\n\n // emit selected value\n this.emitValue();\n }\n\n private _handleBlur(e: any) {\n const relatedTarget = e.detail.origEvent.relatedTarget;\n\n if (\n !relatedTarget ||\n (relatedTarget?.localName !== 'kyn-dropdown-option' &&\n relatedTarget?.localName !== 'kyn-enhanced-dropdown-option' &&\n relatedTarget.localName !== 'kyn-dropdown')\n ) {\n this.open = false;\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this._onConnected();\n\n document.addEventListener('click', this._onDocumentClick);\n\n this.addEventListener('on-click', this._onChildClick);\n this.addEventListener('on-remove-option', this._onChildRemove);\n this.addEventListener('on-blur', this._onChildBlur);\n }\n\n override disconnectedCallback() {\n this._onDisconnected();\n\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-click', this._onChildClick);\n this.removeEventListener('on-remove-option', this._onChildRemove);\n this.removeEventListener('on-blur', this._onChildBlur);\n\n super.disconnectedCallback();\n }\n\n private updateValue(value: string, selected = false) {\n if (this.readonly) return;\n\n // set value\n if (this.multiple) {\n const values =\n this.value === '' ? [] : JSON.parse(JSON.stringify(this.value));\n\n // update array\n if (selected) {\n values.push(value);\n } else {\n const index = values.indexOf(value);\n values.splice(index, 1);\n }\n\n this.value = values;\n } else {\n this.value = value;\n }\n\n this._validate(true, false);\n\n // reset focus\n if (!this.multiple) {\n if (this.searchable) {\n this.searchEl.focus();\n } else {\n this.buttonEl.focus();\n }\n }\n }\n\n private _validate(interacted: Boolean, report: Boolean) {\n // set validity flags\n const Validity = {\n customError: this.invalidText !== '',\n valueMissing:\n this.required &&\n !this.readonly &&\n (!this.value ||\n (this.multiple && !this.value.length) ||\n (!this.multiple && this.value === '')),\n };\n\n // set validationMessage\n const InternalMsg =\n this.required && !this.value.length ? 'Please fill out this field.' : '';\n const ValidationMessage =\n this.invalidText !== '' ? this.invalidText : InternalMsg;\n\n const validationAnchor = this.buttonEl || this.listboxEl;\n\n if (validationAnchor) {\n this._internals.setValidity(\n Validity,\n ValidationMessage,\n validationAnchor\n );\n } else {\n this._internals.setValidity(Validity, ValidationMessage);\n }\n\n if (interacted) {\n this._internalValidationMsg = InternalMsg;\n }\n\n if (report) {\n this._internals.reportValidity();\n }\n }\n\n private emitValue() {\n const event = new CustomEvent('on-change', {\n detail: {\n value: this.value,\n },\n });\n this.dispatchEvent(event);\n }\n\n private _emitSearch() {\n const event = new CustomEvent('on-search', {\n detail: {\n searchText: this.searchText,\n },\n });\n this.dispatchEvent(event);\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n override updated(changedProps: PropertyValues) {\n super.updated(changedProps);\n\n if (changedProps.has('readonly')) {\n this.clearMultipleEl?.classList.toggle('is-readonly', this.readonly);\n this.clearMultipleEl?.toggleAttribute('data-readonly', this.readonly);\n }\n\n if (changedProps.has('kind')) {\n this.dispatchEvent(\n new CustomEvent('kind-changed', {\n detail: this.kind,\n bubbles: true,\n composed: true,\n })\n );\n\n this.classList.toggle('ai-connected', this.kind === 'ai');\n }\n\n const root = this.shadowRoot;\n if (!root) return;\n\n if (changedProps.has('open')) {\n const slot = root.querySelector<HTMLSlotElement>('slot[name=\"anchor\"]');\n const assigned = slot?.assignedElements({ flatten: true }) as\n | HTMLElement[]\n | undefined;\n const btn = assigned?.find(\n (el) => !el.querySelector('.clear-multiple-icon')\n );\n const icon = btn?.querySelector<HTMLElement>('span[slot=\"icon\"]');\n if (icon) {\n icon.style.transition = 'transform 0.2s ease-in-out';\n icon.style.transform = this.open ? 'rotate(180deg)' : 'rotate(0deg)';\n }\n }\n\n this._onUpdated(changedProps);\n\n if (changedProps.has('value')) {\n this._updateOptions();\n\n const childrenSlot: any =\n root.querySelector<HTMLSlotElement>('slot#children');\n const options = childrenSlot\n .assignedElements()\n .filter((o: any): o is HTMLElement => !o.disabled);\n const selected = options.filter((o: any) => o.selected);\n\n this.selectAllChecked = selected.length === options.length;\n this.selectAllIndeterminate =\n selected.length > 0 && selected.length < options.length;\n\n this._updateTags();\n this._updateSelectedText();\n }\n\n if (changedProps.has('open') || changedProps.has('openDirection')) {\n if (this.open) {\n this.options.forEach((o) => (o.highlighted = false));\n\n if (!this.searchable && this.listboxEl) {\n this.listboxEl.focus({ preventScroll: true });\n this.assistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n }\n }\n\n if (this.openDirection === 'up') {\n this._openUpwards = true;\n } else if (this.openDirection === 'down') {\n this._openUpwards = false;\n } else if (this.open) {\n const rect = this.buttonEl.getBoundingClientRect();\n this._openUpwards = rect.top > window.innerHeight * 0.6;\n }\n\n if (this.open && !this.multiple) {\n const firstSelected = this.options.find((o) => o.selected);\n firstSelected?.scrollIntoView({ block: 'nearest' });\n }\n }\n\n if (changedProps.has('multiple')) {\n this.options.forEach((opt) => (opt.multiple = this.multiple));\n }\n\n if (changedProps.has('searchText') && this.searchEl) {\n this.searchEl.value = this.searchText;\n }\n\n if (\n changedProps.has('multiple') ||\n changedProps.has('allowAddOption') ||\n changedProps.has('readonly')\n ) {\n this.updateChildOptions();\n }\n\n if (changedProps.has('open') && this.open && !this.searchable) {\n this.listboxEl?.focus({ preventScroll: true });\n }\n }\n\n private get hasSearch(): boolean {\n return (this.searchText ?? '').trim().length > 0;\n }\n\n // add selected options to Tags array\n private _updateTags() {\n if (this.multiple) {\n const Options: any = Array.from(\n this.querySelectorAll(\n 'kyn-dropdown-option, kyn-enhanced-dropdown-option'\n )\n );\n const Tags: Array<object> = [];\n\n if (Options) {\n Options.forEach((option: any) => {\n if (option.selected) {\n let text = option.textContent;\n\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n text = titleSlot.textContent.trim();\n } else {\n text = option.displayText || option.value;\n }\n } else {\n text = option.textContent.trim();\n }\n\n Tags.push({\n value: option.value,\n text: text,\n disabled: option.disabled,\n });\n }\n });\n\n this._tags = Tags;\n }\n }\n }\n\n private _updateOptions() {\n const Options: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n Options.forEach((option: any) => {\n // set option multiple state\n option.multiple = this.multiple;\n\n if (this.multiple) {\n const Selected = this.value.includes(option.value);\n // set option selected state\n option.selected = Selected;\n } else {\n option.selected = this.value === option.value;\n }\n });\n }\n\n private _handleInputNewOption(e: Event) {\n const target = e.target as HTMLInputElement;\n this.newOptionValue = target.value;\n }\n\n private _handleRemoveOption() {\n this.assistiveText = 'MY option removed ';\n setTimeout(() => {\n this.open = false;\n this.buttonEl.focus();\n }, 100);\n }\n\n private _updateSelectedText() {\n // update selected option text\n const AllOptions: any = Array.from(\n this.querySelectorAll('kyn-dropdown-option, kyn-enhanced-dropdown-option')\n );\n\n if (!this.multiple) {\n if (AllOptions.length && this.value !== '') {\n const option = AllOptions.find(\n (option: any) => option.value === this.value\n );\n if (option) {\n if (option.tagName === 'KYN-ENHANCED-DROPDOWN-OPTION') {\n const titleSlot = option.querySelector('[slot=\"title\"]');\n if (titleSlot && titleSlot.textContent.trim()) {\n this.text = titleSlot.textContent.trim();\n } else {\n this.text = option.displayText || this.value;\n }\n } else {\n this.text = option.textContent.trim();\n }\n } else {\n this.text = '';\n console.warn(`No dropdown option found with value: ${this.value}`);\n }\n }\n\n if (this.searchable && this.text) {\n this.searchText = this.text === this.placeholder ? '' : this.text;\n this.searchEl.value = this.searchText;\n }\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-dropdown': Dropdown;\n }\n}\n"],"names":["_defaultTextStrings","title","selectedOptions","requiredText","errorText","clearAll","clear","addItem","add","KEY","Dropdown","customElement","FormMixin","LitElement","_classThis","_classSuper","_Dropdown_label_accessor_storage","set","this","__runInitializers","_label_initializers","_Dropdown_size_accessor_storage","_label_extraInitializers","_size_initializers","_Dropdown_kind_accessor_storage","_size_extraInitializers","_kind_initializers","_Dropdown_inline_accessor_storage","_kind_extraInitializers","_inline_initializers","_Dropdown_caption_accessor_storage","_inline_extraInitializers","_caption_initializers","_Dropdown_placeholder_accessor_storage","_caption_extraInitializers","_placeholder_initializers","_Dropdown_open_accessor_storage","_placeholder_extraInitializers","_open_initializers","_Dropdown_searchable_accessor_storage","_open_extraInitializers","_searchable_initializers","_Dropdown_enhanced_accessor_storage","_searchable_extraInitializers","_enhanced_initializers","_Dropdown_readonly_accessor_storage","_enhanced_extraInitializers","_readonly_initializers","_Dropdown_filterSearch_accessor_storage","_readonly_extraInitializers","_filterSearch_initializers","_Dropdown_multiple_accessor_storage","_filterSearch_extraInitializers","_multiple_initializers","_Dropdown_required_accessor_storage","_multiple_extraInitializers","_required_initializers","_Dropdown_hideLabel_accessor_storage","_required_extraInitializers","_hideLabel_initializers","_Dropdown_disabled_accessor_storage","_hideLabel_extraInitializers","_disabled_initializers","_Dropdown_hideTags_accessor_storage","_disabled_extraInitializers","_hideTags_initializers","_Dropdown_selectAll_accessor_storage","_hideTags_extraInitializers","_selectAll_initializers","_Dropdown_selectAllText_accessor_storage","_selectAll_extraInitializers","_selectAllText_initializers","_Dropdown_menuMinWidth_accessor_storage","_selectAllText_extraInitializers","_menuMinWidth_initializers","_Dropdown_openDirection_accessor_storage","_menuMinWidth_extraInitializers","_openDirection_initializers","_Dropdown_selectAllChecked_accessor_storage","_openDirection_extraInitializers","_selectAllChecked_initializers","_Dropdown_selectAllIndeterminate_accessor_storage","_selectAllChecked_extraInitializers","_selectAllIndeterminate_initializers","_Dropdown_textStrings_accessor_storage","_selectAllIndeterminate_extraInitializers","_textStrings_initializers","_Dropdown_allowAddOption_accessor_storage","_textStrings_extraInitializers","_allowAddOption_initializers","_Dropdown__textStrings_accessor_storage","_allowAddOption_extraInitializers","__textStrings_initializers","_Dropdown_newOptionValue_accessor_storage","__textStrings_extraInitializers","_newOptionValue_initializers","_Dropdown_text_accessor_storage","_newOptionValue_extraInitializers","_text_initializers","_Dropdown_searchText_accessor_storage","_text_extraInitializers","_searchText_initializers","_Dropdown_assistiveText_accessor_storage","_searchText_extraInitializers","_assistiveText_initializers","_Dropdown_searchEl_accessor_storage","_assistiveText_extraInitializers","_searchEl_initializers","_Dropdown_buttonEl_accessor_storage","_searchEl_extraInitializers","_buttonEl_initializers","_Dropdown_listboxEl_accessor_storage","_buttonEl_extraInitializers","_listboxEl_initializers","_Dropdown_clearMultipleEl_accessor_storage","_listboxEl_extraInitializers","_clearMultipleEl_initializers","_Dropdown_addOptionInputEl_accessor_storage","_clearMultipleEl_extraInitializers","_addOptionInputEl_initializers","_Dropdown__openUpwards_accessor_storage","_addOptionInputEl_extraInitializers","__openUpwards_initializers","_Dropdown__tags_accessor_storage","__openUpwards_extraInitializers","__tags_initializers","searchTextEntered","__tags_extraInitializers","prevSearchKeydownIndex","_onDocumentClick","e","_handleClickOut","_onChildClick","_handleClick","_onChildRemove","_e","_handleRemoveOption","_onChildBlur","_handleBlur","label","__classPrivateFieldGet","value","__classPrivateFieldSet","size","kind","inline","caption","placeholder","open","searchable","enhanced","readonly","filterSearch","multiple","required","hideLabel","disabled","hideTags","selectAll","selectAllText","menuMinWidth","openDirection","selectAllChecked","selectAllIndeterminate","textStrings","allowAddOption","_textStrings","newOptionValue","text","searchText","assistiveText","options","Array","from","querySelectorAll","filter","opt","hasAttribute","searchEl","buttonEl","listboxEl","clearMultipleEl","addOptionInputEl","_openUpwards","_tags","render","mainDropdownClasses","dropdown","html","classMap","name","_a","wrapper","handleAnchorClick","handleAnchorKeydown","select","_isInvalid","preventDefault","stopPropagation","length","handleClearMultiple","unsafeSVG","clearIcon","handleSearchKeydown","handleSearchInput","handleSearchClick","downIcon","upwards","handleListKeydown","handleListBlur","_handleListFocus","_handleInputNewOption","_onAddOptionInputKeydown","_onAddOptionInputFocus","_handleAddOption","handleSlotChange","hasSearch","handleClear","renderHelperContent","key","focus","handleKeyboard","canOpen","isInOptions","composedPath","call","some","t","classList","contains","_c","_b","target","closest","handleClick","handleButtonKeydown","includes","v","trim","dispatchEvent","CustomEvent","detail","nothing","map","tag","handleTagClear","errorIcon","invalidText","_internalValidationMsg","firstUpdated","updateChildOptions","_updateOptions","_updateSelectedText","shadowRoot","querySelector","assignedElements","flatten","forEach","option","tagName","keyCode","visibleOptions","style","display","firstEnabled","find","o","highlighted","tabIndex","scrollIntoView","block","relatedTarget","SPACEBAR_KEY_CODE","ENTER_KEY_CODE","highlightedEl","selectedEl","selected","highlightedIndex","indexOf","nextIndex","guard","_d","_f","isListboxElOpened","openDropdown","setTimeout","updateValue","emitValue","DisabledSelectedOptions","_validate","_updateSelectedOptions","event","_emitSearch","findIndex","innerHTML","titleSlot","textContent","displayText","toLowerCase","startsWith","origEvent","localName","connectedCallback","super","_onConnected","document","addEventListener","disconnectedCallback","_onDisconnected","removeEventListener","values","JSON","parse","stringify","push","index","splice","interacted","report","Validity","customError","valueMissing","InternalMsg","ValidationMessage","validationAnchor","_internals","setValidity","reportValidity","willUpdate","changedProps","has","deepmerge","updated","toggle","toggleAttribute","bubbles","composed","root","slot","assigned","btn","el","icon","transition","transform","_onUpdated","_updateTags","preventScroll","rect","getBoundingClientRect","top","window","innerHeight","firstSelected","Options","Tags","Selected","AllOptions","console","warn","_label_decorators","property","type","String","_size_decorators","attribute","_inline_decorators","Boolean","_caption_decorators","_placeholder_decorators","reflect","_searchable_decorators","_enhanced_decorators","_filterSearch_decorators","_multiple_decorators","_required_decorators","_hideLabel_decorators","_disabled_decorators","_hideTags_decorators","_selectAll_decorators","_selectAllText_decorators","_menuMinWidth_decorators","_openDirection_decorators","_selectAllChecked_decorators","_selectAllIndeterminate_decorators","_textStrings_decorators","Object","_allowAddOption_decorators","__textStrings_decorators","state","_newOptionValue_decorators","_text_decorators","_searchText_decorators","_assistiveText_decorators","query","__openUpwards_decorators","__tags_decorators","__esDecorate","static","private","access","obj","get","metadata","_metadata","_kind_decorators","_open_decorators","_readonly_decorators","_searchEl_decorators","_buttonEl_decorators","_listboxEl_decorators","_clearMultipleEl_decorators","_addOptionInputEl_decorators","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","DropdownScss"],"mappings":"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"}
@@ -62,8 +62,12 @@ export declare class EnhancedDropdownOption extends LitElement {
62
62
  accessor kind: 'ai' | 'default';
63
63
  render(): import("lit-html").TemplateResult<1>;
64
64
  firstUpdated(): void;
65
- private onIconSlotChange;
66
65
  willUpdate(changed: Map<string, unknown>): void;
66
+ focus(options?: FocusOptions): void;
67
+ private onKeyDown;
68
+ private moveFocus;
69
+ private moveToEdge;
70
+ private onIconSlotChange;
67
71
  private get iconSlot();
68
72
  private onTitleSlotChange;
69
73
  private onClick;
@@ -1 +1 @@
1
- {"version":3,"file":"enhancedDropdownOption.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/enhancedDropdownOption.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;AAIlD,OAAO,aAAa,CAAC;AACrB,OAAO,WAAW,CAAC;AAOnB;;;;;;;;;;GAUG;AACH,qBACa,sBAAuB,SAAQ,UAAU;IACpD,OAAgB,MAAM,0BAAyC;IAE/D,oBAAoB;IAEpB,QAAQ,CAAC,KAAK,SAAM;IAEpB;;OAEG;IAEH,QAAQ,CAAC,QAAQ,UAAS;IAE1B,6BAA6B;IAE7B,QAAQ,CAAC,QAAQ,UAAS;IAE1B,+EAA+E;IAE/E,QAAQ,CAAC,QAAQ,UAAS;IAE1B,mDAAmD;IAEnD,QAAQ,CAAC,cAAc,UAAS;IAEhC;;;OAGG;IAEH,QAAQ,CAAC,WAAW,UAAS;IAE7B;;OAEG;IAEH,QAAQ,CAAC,QAAQ,UAAS;IAE1B,wBAAwB;IAExB,QAAQ,CAAC,SAAS,UAAS;IAE3B,oEAAoE;IAEpE,QAAQ,CAAC,aAAa,UAAS;IAE/B,sDAAsD;IACtD,SACkB,IAAI,SAAY;IAElC,4CAA4C;IAC5C,SACkB,YAAY,SAAY;IAE1C;;;OAGG;IAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAM;IAExB;;;OAGG;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAM;IAE/B;;;OAGG;IAEH,QAAQ,CAAC,OAAO,UAAS;IAEzB,6CAA6C;IAE7C,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAa;IAEnC,MAAM;IAkFN,YAAY;IAcrB,OAAO,CAAC,gBAAgB;IAIf,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAMjD,OAAO,KAAK,QAAQ,GAInB;IAED,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,MAAM;CASf;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,8BAA8B,EAAE,sBAAsB,CAAC;KACxD;CACF"}
1
+ {"version":3,"file":"enhancedDropdownOption.d.ts","sourceRoot":"","sources":["../../../../src/components/reusable/dropdown/enhancedDropdownOption.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;AAIlD,OAAO,aAAa,CAAC;AACrB,OAAO,WAAW,CAAC;AAOnB;;;;;;;;;;GAUG;AACH,qBACa,sBAAuB,SAAQ,UAAU;IACpD,OAAgB,MAAM,0BAAyC;IAE/D,oBAAoB;IAEpB,QAAQ,CAAC,KAAK,SAAM;IAEpB;;OAEG;IAEH,QAAQ,CAAC,QAAQ,UAAS;IAE1B,6BAA6B;IAE7B,QAAQ,CAAC,QAAQ,UAAS;IAE1B,+EAA+E;IAE/E,QAAQ,CAAC,QAAQ,UAAS;IAE1B,mDAAmD;IAEnD,QAAQ,CAAC,cAAc,UAAS;IAEhC;;;OAGG;IAEH,QAAQ,CAAC,WAAW,UAAS;IAE7B;;OAEG;IAEH,QAAQ,CAAC,QAAQ,UAAS;IAE1B,wBAAwB;IAExB,QAAQ,CAAC,SAAS,UAAS;IAE3B,oEAAoE;IAEpE,QAAQ,CAAC,aAAa,UAAS;IAE/B,sDAAsD;IACtD,SACkB,IAAI,SAAY;IAElC,4CAA4C;IAC5C,SACkB,YAAY,SAAW;IAEzC;;;OAGG;IAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAM;IAExB;;;OAGG;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAM;IAE/B;;;OAGG;IAEH,QAAQ,CAAC,OAAO,UAAS;IAEzB,6CAA6C;IAE7C,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAa;IAEnC,MAAM;IA2FN,YAAY;IAcZ,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAaxC,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY;IAMrC,OAAO,CAAC,SAAS;IAkCjB,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,KAAK,QAAQ,GAInB;IAED,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,MAAM;CASf;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,8BAA8B,EAAE,sBAAsB,CAAC;KACxD;CACF"}
@@ -342,7 +342,6 @@ dialog.ai-connected.gradient-bkg {
342
342
  border: none;
343
343
  transition: background-color 150ms ease-out;
344
344
  min-height: 74px;
345
- border: 1px solid transparent;
346
345
  }
347
346
  .enhanced-option.ai-connected {
348
347
  background: var(--kd-color-background-menu-state-ai-default);
@@ -540,17 +539,22 @@ dialog.ai-connected.gradient-bkg {
540
539
 
541
540
  .enhanced-option[multiple] .content {
542
541
  align-items: flex-start;
543
- }`;let g=(()=>{var l,g,k,y,f,x,w,z,$,S,j,M,W,I,C;let E,O,T,B,A,P,N,R,D,U,q,F,G,L,_,H,J,K=[c("kyn-enhanced-dropdown-option")],Q=[],V=h,X=[],Y=[],Z=[],ee=[],te=[],ne=[],oe=[],ie=[],ae=[],de=[],re=[],le=[],se=[],ce=[],me=[],ue=[],he=[],ve=[],pe=[],be=[],ge=[],ke=[],ye=[],fe=[],xe=[],we=[],ze=[],$e=[],Se=[],je=[];return O=class extends V{get value(){return o(this,l,"f")}set value(e){i(this,l,e,"f")}get selected(){return o(this,g,"f")}set selected(e){i(this,g,e,"f")}get disabled(){return o(this,k,"f")}set disabled(e){i(this,k,e,"f")}get readonly(){return o(this,y,"f")}set readonly(e){i(this,y,e,"f")}get allowAddOption(){return o(this,f,"f")}set allowAddOption(e){i(this,f,e,"f")}get highlighted(){return o(this,x,"f")}set highlighted(e){i(this,x,e,"f")}get multiple(){return o(this,w,"f")}set multiple(e){i(this,w,e,"f")}get removable(){return o(this,z,"f")}set removable(e){i(this,z,e,"f")}get indeterminate(){return o(this,$,"f")}set indeterminate(e){i(this,$,e,"f")}get role(){return o(this,S,"f")}set role(e){i(this,S,e,"f")}get ariaSelected(){return o(this,j,"f")}set ariaSelected(e){i(this,j,e,"f")}get text(){return o(this,M,"f")}set text(e){i(this,M,e,"f")}get displayText(){return o(this,W,"f")}set displayText(e){i(this,W,e,"f")}get hasIcon(){return o(this,I,"f")}set hasIcon(e){i(this,I,e,"f")}get kind(){return o(this,C,"f")}set kind(e){i(this,C,e,"f")}render(){const e={"enhanced-option":!0,"menu-item":!0,"option-is-readonly":this.readonly,"ai-connected":"ai"===this.kind};return d`
542
+ }`;let g=(()=>{var l,g,k,y,f,x,w,z,S,$,E,j,I,M,W;let T,A,C,D,O,B,P,R,q,F,N,U,K,L,G,H,_,J=[c("kyn-enhanced-dropdown-option")],Q=[],V=h,X=[],Y=[],Z=[],ee=[],te=[],ne=[],oe=[],ie=[],ae=[],de=[],re=[],le=[],se=[],ce=[],me=[],ue=[],he=[],ve=[],pe=[],be=[],ge=[],ke=[],ye=[],fe=[],xe=[],we=[],ze=[],Se=[],$e=[],Ee=[];return A=class extends V{get value(){return o(this,l,"f")}set value(e){i(this,l,e,"f")}get selected(){return o(this,g,"f")}set selected(e){i(this,g,e,"f")}get disabled(){return o(this,k,"f")}set disabled(e){i(this,k,e,"f")}get readonly(){return o(this,y,"f")}set readonly(e){i(this,y,e,"f")}get allowAddOption(){return o(this,f,"f")}set allowAddOption(e){i(this,f,e,"f")}get highlighted(){return o(this,x,"f")}set highlighted(e){i(this,x,e,"f")}get multiple(){return o(this,w,"f")}set multiple(e){i(this,w,e,"f")}get removable(){return o(this,z,"f")}set removable(e){i(this,z,e,"f")}get indeterminate(){return o(this,S,"f")}set indeterminate(e){i(this,S,e,"f")}get role(){return o(this,$,"f")}set role(e){i(this,$,e,"f")}get ariaSelected(){return o(this,E,"f")}set ariaSelected(e){i(this,E,e,"f")}get text(){return o(this,j,"f")}set text(e){i(this,j,e,"f")}get displayText(){return o(this,I,"f")}set displayText(e){i(this,I,e,"f")}get hasIcon(){return o(this,M,"f")}set hasIcon(e){i(this,M,e,"f")}get kind(){return o(this,W,"f")}set kind(e){i(this,W,e,"f")}render(){const e={"enhanced-option":!0,"menu-item":!0,"option-is-readonly":this.readonly,"ai-connected":"ai"===this.kind};return d`
544
543
  <div
545
544
  class=${a(e)}
545
+ role="option"
546
+ aria-selected=${this.selected?"true":"false"}
547
+ aria-disabled=${this.disabled||this.readonly?"true":"false"}
546
548
  ?highlighted=${this.highlighted}
547
549
  ?selected=${this.selected}
548
550
  ?disabled=${this.disabled}
549
551
  ?readonly=${!this.disabled&&this.readonly}
550
- aria-disabled=${this.disabled||this.readonly?"true":"false"}
551
552
  title=${this.text}
552
- @pointerup=${this.onClick}
553
- @blur=${this.onBlur}
553
+ tabindex=${this.disabled||this.readonly?-1:0}
554
+ @mousedown=${e=>{this.readonly&&e.preventDefault()}}
555
+ @pointerup=${e=>this.onClick(e)}
556
+ @blur=${e=>this.onBlur(e)}
557
+ @keydown=${e=>this.onKeyDown(e)}
554
558
  >
555
559
  ${this.multiple?d`
556
560
  <kyn-checkbox
@@ -597,11 +601,13 @@ dialog.ai-connected.gradient-bkg {
597
601
  ?disabled=${this.disabled}
598
602
  @click=${this.onRemove}
599
603
  @mousedown=${e=>e.stopPropagation()}
604
+ @keydown=${e=>e.stopPropagation()}
605
+ @focus=${e=>e.stopPropagation()}
600
606
  >
601
607
  <span slot="icon">${r(p)}</span>
602
608
  </kyn-button>
603
609
  `:null}
604
610
  </div>
605
611
  </div>
606
- `}firstUpdated(){this.hasIcon=this.iconSlot.assignedNodes({flatten:!0}).length>0;const e=this.closest("kyn-dropdown");e&&(this.kind=e.kind,e.addEventListener("kind-changed",(e=>{this.kind=e.detail})))}onIconSlotChange(){this.hasIcon=this.iconSlot.assignedNodes({flatten:!0}).length>0}willUpdate(e){e.has("selected")&&(this.ariaSelected=this.selected.toString())}get iconSlot(){return this.shadowRoot.querySelector('slot[name="icon"]')}onTitleSlotChange(e){const t=e.target.assignedNodes({flatten:!0}).map((e=>{var t,n;return null!==(n=null===(t=e.textContent)||void 0===t?void 0:t.trim())&&void 0!==n?n:""})).join(" ");this.displayText=t,this.text=t}onClick(e){this.disabled||this.readonly?e.stopPropagation():(this.selected=!this.multiple||!this.selected,this.dispatchEvent(new CustomEvent("on-click",{bubbles:!0,composed:!0,detail:{selected:this.selected,value:this.value,origEvent:e}})))}onRemove(e){e.stopPropagation(),this.dispatchEvent(new CustomEvent("on-remove-option",{bubbles:!0,composed:!0,detail:{value:this.value}}))}onBlur(e){this.dispatchEvent(new CustomEvent("on-blur",{bubbles:!0,composed:!0,detail:{origEvent:e}}))}constructor(){super(...arguments),l.set(this,n(this,X,"")),g.set(this,(n(this,Y),n(this,Z,!1))),k.set(this,(n(this,ee),n(this,te,!1))),y.set(this,(n(this,ne),n(this,oe,!1))),f.set(this,(n(this,ie),n(this,ae,!1))),x.set(this,(n(this,de),n(this,re,!1))),w.set(this,(n(this,le),n(this,se,!1))),z.set(this,(n(this,ce),n(this,me,!1))),$.set(this,(n(this,ue),n(this,he,!1))),S.set(this,(n(this,ve),n(this,pe,"option"))),j.set(this,(n(this,be),n(this,ge,"option"))),M.set(this,(n(this,ke),n(this,ye,""))),W.set(this,(n(this,fe),n(this,xe,""))),I.set(this,(n(this,we),n(this,ze,!1))),C.set(this,(n(this,$e),n(this,Se,"default"))),n(this,je)}},l=new WeakMap,g=new WeakMap,k=new WeakMap,y=new WeakMap,f=new WeakMap,x=new WeakMap,w=new WeakMap,z=new WeakMap,$=new WeakMap,S=new WeakMap,j=new WeakMap,M=new WeakMap,W=new WeakMap,I=new WeakMap,C=new WeakMap,e(O,"EnhancedDropdownOption"),(()=>{var e;const n="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=V[Symbol.metadata])&&void 0!==e?e:null):void 0;T=[u({type:String})],B=[u({type:Boolean,reflect:!0})],A=[u({type:Boolean})],P=[u({type:Boolean,reflect:!0})],N=[u({type:Boolean})],R=[s()],D=[u({type:Boolean})],U=[u({type:Boolean})],q=[u({type:Boolean,reflect:!0})],F=[u({type:String,reflect:!0})],G=[u({type:String,reflect:!0,attribute:"aria-selected"})],L=[s()],_=[s()],H=[s()],J=[s()],t(O,null,T,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:e=>"value"in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:n},X,Y),t(O,null,B,{kind:"accessor",name:"selected",static:!1,private:!1,access:{has:e=>"selected"in e,get:e=>e.selected,set:(e,t)=>{e.selected=t}},metadata:n},Z,ee),t(O,null,A,{kind:"accessor",name:"disabled",static:!1,private:!1,access:{has:e=>"disabled"in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:n},te,ne),t(O,null,P,{kind:"accessor",name:"readonly",static:!1,private:!1,access:{has:e=>"readonly"in e,get:e=>e.readonly,set:(e,t)=>{e.readonly=t}},metadata:n},oe,ie),t(O,null,N,{kind:"accessor",name:"allowAddOption",static:!1,private:!1,access:{has:e=>"allowAddOption"in e,get:e=>e.allowAddOption,set:(e,t)=>{e.allowAddOption=t}},metadata:n},ae,de),t(O,null,R,{kind:"accessor",name:"highlighted",static:!1,private:!1,access:{has:e=>"highlighted"in e,get:e=>e.highlighted,set:(e,t)=>{e.highlighted=t}},metadata:n},re,le),t(O,null,D,{kind:"accessor",name:"multiple",static:!1,private:!1,access:{has:e=>"multiple"in e,get:e=>e.multiple,set:(e,t)=>{e.multiple=t}},metadata:n},se,ce),t(O,null,U,{kind:"accessor",name:"removable",static:!1,private:!1,access:{has:e=>"removable"in e,get:e=>e.removable,set:(e,t)=>{e.removable=t}},metadata:n},me,ue),t(O,null,q,{kind:"accessor",name:"indeterminate",static:!1,private:!1,access:{has:e=>"indeterminate"in e,get:e=>e.indeterminate,set:(e,t)=>{e.indeterminate=t}},metadata:n},he,ve),t(O,null,F,{kind:"accessor",name:"role",static:!1,private:!1,access:{has:e=>"role"in e,get:e=>e.role,set:(e,t)=>{e.role=t}},metadata:n},pe,be),t(O,null,G,{kind:"accessor",name:"ariaSelected",static:!1,private:!1,access:{has:e=>"ariaSelected"in e,get:e=>e.ariaSelected,set:(e,t)=>{e.ariaSelected=t}},metadata:n},ge,ke),t(O,null,L,{kind:"accessor",name:"text",static:!1,private:!1,access:{has:e=>"text"in e,get:e=>e.text,set:(e,t)=>{e.text=t}},metadata:n},ye,fe),t(O,null,_,{kind:"accessor",name:"displayText",static:!1,private:!1,access:{has:e=>"displayText"in e,get:e=>e.displayText,set:(e,t)=>{e.displayText=t}},metadata:n},xe,we),t(O,null,H,{kind:"accessor",name:"hasIcon",static:!1,private:!1,access:{has:e=>"hasIcon"in e,get:e=>e.hasIcon,set:(e,t)=>{e.hasIcon=t}},metadata:n},ze,$e),t(O,null,J,{kind:"accessor",name:"kind",static:!1,private:!1,access:{has:e=>"kind"in e,get:e=>e.kind,set:(e,t)=>{e.kind=t}},metadata:n},Se,je),t(null,E={value:O},K,{kind:"class",name:O.name,metadata:n},null,Q),O=E.value,n&&Object.defineProperty(O,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:n})})(),O.styles=m(b),n(O,Q),O})();export{g as EnhancedDropdownOption};
612
+ `}firstUpdated(){this.hasIcon=this.iconSlot.assignedNodes({flatten:!0}).length>0;const e=this.closest("kyn-dropdown");e&&(this.kind=e.kind,e.addEventListener("kind-changed",(e=>{this.kind=e.detail})))}willUpdate(e){var t;if(e.has("selected")&&(this.ariaSelected=this.selected.toString()),e.has("disabled")||e.has("readonly")){const e=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector(".menu-item");e&&(e.tabIndex=this.disabled||this.readonly?-1:0)}}focus(e){var t,n;null===(n=null===(t=this.shadowRoot)||void 0===t?void 0:t.querySelector(".menu-item"))||void 0===n||n.focus(e)}onKeyDown(e){if(e.stopPropagation(),!this.disabled&&!this.readonly)switch(e.key){case"Enter":case" ":e.preventDefault(),this.onClick(e);break;case"ArrowDown":e.preventDefault(),this.moveFocus(1);break;case"ArrowUp":e.preventDefault(),this.moveFocus(-1);break;case"Home":e.preventDefault(),this.moveToEdge("start");break;case"End":e.preventDefault(),this.moveToEdge("end")}}moveFocus(e){var t;let n=e>0?this.nextElementSibling:this.previousElementSibling;for(;n;){const o=n.tagName.toLowerCase();if("kyn-enhanced-dropdown-option"===o||"kyn-dropdown-option"===o){const e=n;if(!e.disabled&&!e.readonly){const n=null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector(".menu-item");null==n||n.focus();break}}n=e>0?n.nextElementSibling:n.previousElementSibling}}moveToEdge(e){var t;const n=this.parentElement;if(!n)return;const o=n.querySelectorAll("kyn-enhanced-dropdown-option, kyn-dropdown-option"),i=Array.from(o),a="start"===e?i[0]:i[i.length-1];if(a&&!a.disabled&&!a.readonly){const e=null===(t=a.shadowRoot)||void 0===t?void 0:t.querySelector(".menu-item");null==e||e.focus()}}onIconSlotChange(){this.hasIcon=this.iconSlot.assignedNodes({flatten:!0}).length>0}get iconSlot(){return this.shadowRoot.querySelector('slot[name="icon"]')}onTitleSlotChange(e){const t=e.target.assignedNodes({flatten:!0}).map((e=>{var t,n;return null!==(n=null===(t=e.textContent)||void 0===t?void 0:t.trim())&&void 0!==n?n:""})).join(" ");this.displayText=t,this.text=t}onClick(e){this.disabled||this.readonly?e.stopPropagation():(this.selected=!this.multiple||!this.selected,this.dispatchEvent(new CustomEvent("on-click",{bubbles:!0,composed:!0,detail:{selected:this.selected,value:this.value,origEvent:e}})))}onRemove(e){e.stopPropagation(),this.dispatchEvent(new CustomEvent("on-remove-option",{bubbles:!0,composed:!0,detail:{value:this.value}}))}onBlur(e){this.dispatchEvent(new CustomEvent("on-blur",{bubbles:!0,composed:!0,detail:{origEvent:e}}))}constructor(){super(...arguments),l.set(this,n(this,X,"")),g.set(this,(n(this,Y),n(this,Z,!1))),k.set(this,(n(this,ee),n(this,te,!1))),y.set(this,(n(this,ne),n(this,oe,!1))),f.set(this,(n(this,ie),n(this,ae,!1))),x.set(this,(n(this,de),n(this,re,!1))),w.set(this,(n(this,le),n(this,se,!1))),z.set(this,(n(this,ce),n(this,me,!1))),S.set(this,(n(this,ue),n(this,he,!1))),$.set(this,(n(this,ve),n(this,pe,"option"))),E.set(this,(n(this,be),n(this,ge,"false"))),j.set(this,(n(this,ke),n(this,ye,""))),I.set(this,(n(this,fe),n(this,xe,""))),M.set(this,(n(this,we),n(this,ze,!1))),W.set(this,(n(this,Se),n(this,$e,"default"))),n(this,Ee)}},l=new WeakMap,g=new WeakMap,k=new WeakMap,y=new WeakMap,f=new WeakMap,x=new WeakMap,w=new WeakMap,z=new WeakMap,S=new WeakMap,$=new WeakMap,E=new WeakMap,j=new WeakMap,I=new WeakMap,M=new WeakMap,W=new WeakMap,e(A,"EnhancedDropdownOption"),(()=>{var e;const n="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=V[Symbol.metadata])&&void 0!==e?e:null):void 0;C=[u({type:String})],D=[u({type:Boolean,reflect:!0})],O=[u({type:Boolean})],B=[u({type:Boolean,reflect:!0})],P=[u({type:Boolean})],R=[s()],q=[u({type:Boolean})],F=[u({type:Boolean})],N=[u({type:Boolean,reflect:!0})],U=[u({type:String,reflect:!0})],K=[u({type:String,reflect:!0,attribute:"aria-selected"})],L=[s()],G=[s()],H=[s()],_=[s()],t(A,null,C,{kind:"accessor",name:"value",static:!1,private:!1,access:{has:e=>"value"in e,get:e=>e.value,set:(e,t)=>{e.value=t}},metadata:n},X,Y),t(A,null,D,{kind:"accessor",name:"selected",static:!1,private:!1,access:{has:e=>"selected"in e,get:e=>e.selected,set:(e,t)=>{e.selected=t}},metadata:n},Z,ee),t(A,null,O,{kind:"accessor",name:"disabled",static:!1,private:!1,access:{has:e=>"disabled"in e,get:e=>e.disabled,set:(e,t)=>{e.disabled=t}},metadata:n},te,ne),t(A,null,B,{kind:"accessor",name:"readonly",static:!1,private:!1,access:{has:e=>"readonly"in e,get:e=>e.readonly,set:(e,t)=>{e.readonly=t}},metadata:n},oe,ie),t(A,null,P,{kind:"accessor",name:"allowAddOption",static:!1,private:!1,access:{has:e=>"allowAddOption"in e,get:e=>e.allowAddOption,set:(e,t)=>{e.allowAddOption=t}},metadata:n},ae,de),t(A,null,R,{kind:"accessor",name:"highlighted",static:!1,private:!1,access:{has:e=>"highlighted"in e,get:e=>e.highlighted,set:(e,t)=>{e.highlighted=t}},metadata:n},re,le),t(A,null,q,{kind:"accessor",name:"multiple",static:!1,private:!1,access:{has:e=>"multiple"in e,get:e=>e.multiple,set:(e,t)=>{e.multiple=t}},metadata:n},se,ce),t(A,null,F,{kind:"accessor",name:"removable",static:!1,private:!1,access:{has:e=>"removable"in e,get:e=>e.removable,set:(e,t)=>{e.removable=t}},metadata:n},me,ue),t(A,null,N,{kind:"accessor",name:"indeterminate",static:!1,private:!1,access:{has:e=>"indeterminate"in e,get:e=>e.indeterminate,set:(e,t)=>{e.indeterminate=t}},metadata:n},he,ve),t(A,null,U,{kind:"accessor",name:"role",static:!1,private:!1,access:{has:e=>"role"in e,get:e=>e.role,set:(e,t)=>{e.role=t}},metadata:n},pe,be),t(A,null,K,{kind:"accessor",name:"ariaSelected",static:!1,private:!1,access:{has:e=>"ariaSelected"in e,get:e=>e.ariaSelected,set:(e,t)=>{e.ariaSelected=t}},metadata:n},ge,ke),t(A,null,L,{kind:"accessor",name:"text",static:!1,private:!1,access:{has:e=>"text"in e,get:e=>e.text,set:(e,t)=>{e.text=t}},metadata:n},ye,fe),t(A,null,G,{kind:"accessor",name:"displayText",static:!1,private:!1,access:{has:e=>"displayText"in e,get:e=>e.displayText,set:(e,t)=>{e.displayText=t}},metadata:n},xe,we),t(A,null,H,{kind:"accessor",name:"hasIcon",static:!1,private:!1,access:{has:e=>"hasIcon"in e,get:e=>e.hasIcon,set:(e,t)=>{e.hasIcon=t}},metadata:n},ze,Se),t(A,null,_,{kind:"accessor",name:"kind",static:!1,private:!1,access:{has:e=>"kind"in e,get:e=>e.kind,set:(e,t)=>{e.kind=t}},metadata:n},$e,Ee),t(null,T={value:A},J,{kind:"class",name:A.name,metadata:n},null,Q),A=T.value,n&&Object.defineProperty(A,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:n})})(),A.styles=m(b),n(A,Q),A})();export{g as EnhancedDropdownOption};
607
613
  //# sourceMappingURL=enhancedDropdownOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enhancedDropdownOption.js","sources":["../../../../src/components/reusable/dropdown/enhancedDropdownOption.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport '../checkbox';\nimport '../button';\n\nimport checkIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/check.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nimport EnhancedDropdownOptionScss from './enhancedDropdownOption.scss?inline';\n\n/**\n * Enhanced Dropdown option with rich content support.\n * @fires on-click - Emits the option details to the parent dropdown. `detail:{ selected: boolean, value: string, origEvent: PointerEvent }`\n * @fires on-remove-option - Emits the option that is removed. `detail:{ selected: boolean, value: string, origEvent: PointerEvent }`\n * @slot icon - Slot for option icon. Icon size should be 16px only.\n * @slot title - Slot for option title text.\n * @slot tag - Slot for inline tag appended to title.\n * @slot description - Slot for option description text.\n * @slot optionType - Slot for option type label.\n * @slot unnamed - Fallback slot for simple text content.\n */\n@customElement('kyn-enhanced-dropdown-option')\nexport class EnhancedDropdownOption extends LitElement {\n static override styles = unsafeCSS(EnhancedDropdownOptionScss);\n\n /** Option value. */\n @property({ type: String })\n accessor value = '';\n\n /** Internal text strings.\n * @internal\n */\n @property({ type: Boolean, reflect: true })\n accessor selected = false;\n\n /** Option disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Readonly state (from parent). Option stays focusable but not selectable. */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Allow Add Option state, derived from parent. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /**\n * Option highlighted state for keyboard navigation, automatically derived.\n * @ignore\n */\n @state()\n accessor highlighted = false;\n\n /** Multi-select state, derived from parent.\n * @ignore\n */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Removable option. */\n @property({ type: Boolean })\n accessor removable = false;\n\n /** Determines whether the checkbox is in an indeterminate state. */\n @property({ type: Boolean, reflect: true })\n accessor indeterminate = false;\n\n /** ARIA role for the option, defaults to 'option'. */\n @property({ type: String, reflect: true })\n override accessor role = 'option';\n\n /** ARIA selected must mirror `selected`. */\n @property({ type: String, reflect: true, attribute: 'aria-selected' })\n override accessor ariaSelected = 'option';\n\n /**\n * Option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text: any = '';\n\n /**\n * Title text for display purposes, automatically derived.\n * @ignore\n */\n @state()\n accessor displayText: any = '';\n\n /**\n * Whether the icon slot has content.\n * @ignore\n */\n @state()\n accessor hasIcon = false;\n\n /** Kind of the item, derived from parent. */\n @state()\n accessor kind: 'ai' | 'default' = 'default';\n\n override render() {\n const classes = {\n 'enhanced-option': true,\n 'menu-item': true,\n 'option-is-readonly': this.readonly,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(classes)}\n ?highlighted=${this.highlighted}\n ?selected=${this.selected}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n aria-disabled=${this.disabled || this.readonly ? 'true' : 'false'}\n title=${this.text}\n @pointerup=${this.onClick}\n @blur=${this.onBlur}\n >\n ${this.multiple\n ? html`\n <kyn-checkbox\n .checked=${this.selected}\n .indeterminate=${this.indeterminate}\n ?disabled=${this.disabled}\n notFocusable\n value=${this.value}\n ></kyn-checkbox>\n `\n : null}\n\n <div class=\"content\">\n <div\n class=\"menu-item-inner-el icon-container\"\n style=${this.hasIcon ? '' : 'display:none'}\n >\n <slot name=\"icon\" @slotchange=${this.onIconSlotChange}></slot>\n </div>\n\n <div class=\"menu-item-inner-el text\">\n <div class=\"title-content\">\n <slot name=\"title\" @slotchange=${this.onTitleSlotChange}></slot>\n ${!this.selected\n ? html`<span class=\"tag-container\"\n ><slot name=\"tag\"></slot\n ></span>`\n : null}\n </div>\n <div class=\"description-container\">\n <slot name=\"description\"></slot>\n </div>\n <div class=\"option-type-container\">\n <slot name=\"optionType\"></slot>\n </div>\n </div>\n </div>\n\n <div class=\"status-icons\">\n ${!this.multiple && this.selected\n ? html`<span class=\"menu-item-inner-el check-icon\"\n >${unsafeSVG(checkIcon)}</span\n >`\n : this.allowAddOption && this.removable\n ? html`\n <kyn-button\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n aria-label=\"Delete ${this.value}\"\n ?disabled=${this.disabled}\n @click=${this.onRemove}\n @mousedown=${(e: Event) => e.stopPropagation()}\n >\n <span slot=\"icon\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // derive whether icon slot has content\n this.hasIcon = this.iconSlot.assignedNodes({ flatten: true }).length > 0;\n\n // sync kind from parent and listen for changes\n const parent = this.closest('kyn-dropdown') as any;\n if (parent) {\n this.kind = parent.kind;\n parent.addEventListener('kind-changed', (e: Event) => {\n this.kind = (e as CustomEvent<'ai' | 'default'>).detail;\n });\n }\n }\n\n private onIconSlotChange() {\n this.hasIcon = this.iconSlot.assignedNodes({ flatten: true }).length > 0;\n }\n\n override willUpdate(changed: Map<string, unknown>) {\n if (changed.has('selected')) {\n this.ariaSelected = this.selected.toString();\n }\n }\n\n private get iconSlot(): HTMLSlotElement {\n return this.shadowRoot!.querySelector(\n 'slot[name=\"icon\"]'\n )! as HTMLSlotElement;\n }\n\n private onTitleSlotChange(e: Event) {\n const titleText = (e.target as HTMLSlotElement)\n .assignedNodes({ flatten: true })\n .map((n) => n.textContent?.trim() ?? '')\n .join(' ');\n this.displayText = titleText;\n this.text = titleText;\n }\n\n private onClick(e: PointerEvent) {\n if (this.disabled || this.readonly) {\n e.stopPropagation();\n return;\n }\n this.selected = this.multiple ? !this.selected : true;\n this.dispatchEvent(\n new CustomEvent('on-click', {\n bubbles: true,\n composed: true,\n detail: { selected: this.selected, value: this.value, origEvent: e },\n })\n );\n }\n\n private onRemove(e: Event) {\n e.stopPropagation();\n this.dispatchEvent(\n new CustomEvent('on-remove-option', {\n bubbles: true,\n composed: true,\n detail: { value: this.value },\n })\n );\n }\n\n private onBlur(e: FocusEvent) {\n this.dispatchEvent(\n new CustomEvent('on-blur', {\n bubbles: true,\n composed: true,\n detail: { origEvent: e },\n })\n );\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-enhanced-dropdown-option': EnhancedDropdownOption;\n }\n}\n"],"names":["EnhancedDropdownOption","customElement","LitElement","_classThis","_classSuper","value","__classPrivateFieldGet","this","_EnhancedDropdownOption_value_accessor_storage","__classPrivateFieldSet","selected","_EnhancedDropdownOption_selected_accessor_storage","disabled","_EnhancedDropdownOption_disabled_accessor_storage","readonly","_EnhancedDropdownOption_readonly_accessor_storage","allowAddOption","_EnhancedDropdownOption_allowAddOption_accessor_storage","highlighted","_EnhancedDropdownOption_highlighted_accessor_storage","multiple","_EnhancedDropdownOption_multiple_accessor_storage","removable","_EnhancedDropdownOption_removable_accessor_storage","indeterminate","_EnhancedDropdownOption_indeterminate_accessor_storage","role","_EnhancedDropdownOption_role_accessor_storage","ariaSelected","_EnhancedDropdownOption_ariaSelected_accessor_storage","text","_EnhancedDropdownOption_text_accessor_storage","displayText","_EnhancedDropdownOption_displayText_accessor_storage","hasIcon","_EnhancedDropdownOption_hasIcon_accessor_storage","kind","_EnhancedDropdownOption_kind_accessor_storage","render","classes","html","classMap","onClick","onBlur","onIconSlotChange","onTitleSlotChange","unsafeSVG","checkIcon","onRemove","e","stopPropagation","clearIcon","firstUpdated","iconSlot","assignedNodes","flatten","length","parent","closest","addEventListener","detail","willUpdate","changed","has","toString","shadowRoot","querySelector","titleText","target","map","n","_a","_b","textContent","trim","join","dispatchEvent","CustomEvent","bubbles","composed","origEvent","set","__runInitializers","_value_initializers","_value_extraInitializers","_selected_initializers","_selected_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_allowAddOption_initializers","_allowAddOption_extraInitializers","_highlighted_initializers","_highlighted_extraInitializers","_multiple_initializers","_multiple_extraInitializers","_removable_initializers","_removable_extraInitializers","_indeterminate_initializers","_indeterminate_extraInitializers","_role_initializers","_role_extraInitializers","_ariaSelected_initializers","_ariaSelected_extraInitializers","_text_initializers","_text_extraInitializers","_displayText_initializers","_displayText_extraInitializers","_hasIcon_initializers","_hasIcon_extraInitializers","_kind_initializers","_value_decorators","property","type","String","Boolean","reflect","_disabled_decorators","_allowAddOption_decorators","_highlighted_decorators","state","_multiple_decorators","_removable_decorators","_ariaSelected_decorators","attribute","_text_decorators","_displayText_decorators","_hasIcon_decorators","_kind_decorators","__esDecorate","name","static","private","access","obj","get","metadata","_metadata","_selected_decorators","_readonly_decorators","_indeterminate_decorators","_role_decorators","_kind_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","EnhancedDropdownOptionScss"],"mappings":"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"}
1
+ {"version":3,"file":"enhancedDropdownOption.js","sources":["../../../../src/components/reusable/dropdown/enhancedDropdownOption.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\n\nimport '../checkbox';\nimport '../button';\n\nimport checkIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/check.svg';\nimport clearIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/close-simple.svg';\n\nimport EnhancedDropdownOptionScss from './enhancedDropdownOption.scss?inline';\n\n/**\n * Enhanced Dropdown option with rich content support.\n * @fires on-click - Emits the option details to the parent dropdown. `detail:{ selected: boolean, value: string, origEvent: PointerEvent }`\n * @fires on-remove-option - Emits the option that is removed. `detail:{ selected: boolean, value: string, origEvent: PointerEvent }`\n * @slot icon - Slot for option icon. Icon size should be 16px only.\n * @slot title - Slot for option title text.\n * @slot tag - Slot for inline tag appended to title.\n * @slot description - Slot for option description text.\n * @slot optionType - Slot for option type label.\n * @slot unnamed - Fallback slot for simple text content.\n */\n@customElement('kyn-enhanced-dropdown-option')\nexport class EnhancedDropdownOption extends LitElement {\n static override styles = unsafeCSS(EnhancedDropdownOptionScss);\n\n /** Option value. */\n @property({ type: String })\n accessor value = '';\n\n /** Internal text strings.\n * @internal\n */\n @property({ type: Boolean, reflect: true })\n accessor selected = false;\n\n /** Option disabled state. */\n @property({ type: Boolean })\n accessor disabled = false;\n\n /** Readonly state (from parent). Option stays focusable but not selectable. */\n @property({ type: Boolean, reflect: true })\n accessor readonly = false;\n\n /** Allow Add Option state, derived from parent. */\n @property({ type: Boolean })\n accessor allowAddOption = false;\n\n /**\n * Option highlighted state for keyboard navigation, automatically derived.\n * @ignore\n */\n @state()\n accessor highlighted = false;\n\n /** Multi-select state, derived from parent.\n * @ignore\n */\n @property({ type: Boolean })\n accessor multiple = false;\n\n /** Removable option. */\n @property({ type: Boolean })\n accessor removable = false;\n\n /** Determines whether the checkbox is in an indeterminate state. */\n @property({ type: Boolean, reflect: true })\n accessor indeterminate = false;\n\n /** ARIA role for the option, defaults to 'option'. */\n @property({ type: String, reflect: true })\n override accessor role = 'option';\n\n /** ARIA selected must mirror `selected`. */\n @property({ type: String, reflect: true, attribute: 'aria-selected' })\n override accessor ariaSelected = 'false';\n\n /**\n * Option text, automatically derived.\n * @ignore\n */\n @state()\n accessor text: any = '';\n\n /**\n * Title text for display purposes, automatically derived.\n * @ignore\n */\n @state()\n accessor displayText: any = '';\n\n /**\n * Whether the icon slot has content.\n * @ignore\n */\n @state()\n accessor hasIcon = false;\n\n /** Kind of the item, derived from parent. */\n @state()\n accessor kind: 'ai' | 'default' = 'default';\n\n override render() {\n const classes = {\n 'enhanced-option': true,\n 'menu-item': true,\n 'option-is-readonly': this.readonly,\n 'ai-connected': this.kind === 'ai',\n };\n\n return html`\n <div\n class=${classMap(classes)}\n role=\"option\"\n aria-selected=${this.selected ? 'true' : 'false'}\n aria-disabled=${this.disabled || this.readonly ? 'true' : 'false'}\n ?highlighted=${this.highlighted}\n ?selected=${this.selected}\n ?disabled=${this.disabled}\n ?readonly=${!this.disabled && this.readonly}\n title=${this.text}\n tabindex=${this.disabled || this.readonly ? -1 : 0}\n @mousedown=${(e: MouseEvent) => {\n if (this.readonly) e.preventDefault();\n }}\n @pointerup=${(e: Event) => this.onClick(e as PointerEvent)}\n @blur=${(e: Event) => this.onBlur(e as FocusEvent)}\n @keydown=${(e: KeyboardEvent) => this.onKeyDown(e)}\n >\n ${this.multiple\n ? html`\n <kyn-checkbox\n .checked=${this.selected}\n .indeterminate=${this.indeterminate}\n ?disabled=${this.disabled}\n notFocusable\n value=${this.value}\n ></kyn-checkbox>\n `\n : null}\n\n <div class=\"content\">\n <div\n class=\"menu-item-inner-el icon-container\"\n style=${this.hasIcon ? '' : 'display:none'}\n >\n <slot name=\"icon\" @slotchange=${this.onIconSlotChange}></slot>\n </div>\n\n <div class=\"menu-item-inner-el text\">\n <div class=\"title-content\">\n <slot name=\"title\" @slotchange=${this.onTitleSlotChange}></slot>\n ${!this.selected\n ? html`<span class=\"tag-container\"\n ><slot name=\"tag\"></slot\n ></span>`\n : null}\n </div>\n <div class=\"description-container\">\n <slot name=\"description\"></slot>\n </div>\n <div class=\"option-type-container\">\n <slot name=\"optionType\"></slot>\n </div>\n </div>\n </div>\n\n <div class=\"status-icons\">\n ${!this.multiple && this.selected\n ? html`<span class=\"menu-item-inner-el check-icon\"\n >${unsafeSVG(checkIcon)}</span\n >`\n : this.allowAddOption && this.removable\n ? html`\n <kyn-button\n kind=${this.kind === 'ai' ? 'ghost-ai' : 'ghost'}\n size=\"small\"\n aria-label=\"Delete ${this.value}\"\n ?disabled=${this.disabled}\n @click=${this.onRemove}\n @mousedown=${(e: Event) => e.stopPropagation()}\n @keydown=${(e: KeyboardEvent) => e.stopPropagation()}\n @focus=${(e: FocusEvent) => e.stopPropagation()}\n >\n <span slot=\"icon\">${unsafeSVG(clearIcon)}</span>\n </kyn-button>\n `\n : null}\n </div>\n </div>\n `;\n }\n\n override firstUpdated() {\n // derive whether icon slot has content\n this.hasIcon = this.iconSlot.assignedNodes({ flatten: true }).length > 0;\n\n // sync kind from parent and listen for changes\n const parent = this.closest('kyn-dropdown') as any;\n if (parent) {\n this.kind = parent.kind;\n parent.addEventListener('kind-changed', (e: Event) => {\n this.kind = (e as CustomEvent<'ai' | 'default'>).detail;\n });\n }\n }\n\n override willUpdate(changed: Map<string, unknown>) {\n if (changed.has('selected')) {\n this.ariaSelected = this.selected.toString();\n }\n\n if (changed.has('disabled') || changed.has('readonly')) {\n const el = this.shadowRoot?.querySelector(\n '.menu-item'\n ) as HTMLElement | null;\n if (el) el.tabIndex = this.disabled || this.readonly ? -1 : 0;\n }\n }\n\n override focus(options?: FocusOptions) {\n (this.shadowRoot?.querySelector('.menu-item') as HTMLElement | null)?.focus(\n options\n );\n }\n\n private onKeyDown(e: KeyboardEvent) {\n e.stopPropagation();\n if (this.disabled || this.readonly) return;\n\n switch (e.key) {\n case 'Enter':\n case ' ': {\n e.preventDefault();\n this.onClick(e as any);\n break;\n }\n case 'ArrowDown': {\n e.preventDefault();\n this.moveFocus(1);\n break;\n }\n case 'ArrowUp': {\n e.preventDefault();\n this.moveFocus(-1);\n break;\n }\n case 'Home': {\n e.preventDefault();\n this.moveToEdge('start');\n break;\n }\n case 'End': {\n e.preventDefault();\n this.moveToEdge('end');\n break;\n }\n }\n }\n\n private moveFocus(delta: number) {\n let node: Element | null =\n delta > 0 ? this.nextElementSibling : this.previousElementSibling;\n while (node) {\n const tag = node.tagName.toLowerCase();\n if (\n tag === 'kyn-enhanced-dropdown-option' ||\n tag === 'kyn-dropdown-option'\n ) {\n const opt = node as any;\n if (!opt.disabled && !opt.readonly) {\n const target = opt.shadowRoot?.querySelector(\n '.menu-item'\n ) as HTMLElement | null;\n target?.focus();\n break;\n }\n }\n node = delta > 0 ? node.nextElementSibling : node.previousElementSibling;\n }\n }\n\n private moveToEdge(where: 'start' | 'end') {\n const parent = this.parentElement;\n if (!parent) return;\n const all = parent.querySelectorAll(\n 'kyn-enhanced-dropdown-option, kyn-dropdown-option'\n );\n const list = Array.from(all) as any[];\n const candidate = where === 'start' ? list[0] : list[list.length - 1];\n if (candidate && !candidate.disabled && !candidate.readonly) {\n const target = candidate.shadowRoot?.querySelector(\n '.menu-item'\n ) as HTMLElement | null;\n target?.focus();\n }\n }\n\n private onIconSlotChange() {\n this.hasIcon = this.iconSlot.assignedNodes({ flatten: true }).length > 0;\n }\n\n private get iconSlot(): HTMLSlotElement {\n return this.shadowRoot!.querySelector(\n 'slot[name=\"icon\"]'\n )! as HTMLSlotElement;\n }\n\n private onTitleSlotChange(e: Event) {\n const titleText = (e.target as HTMLSlotElement)\n .assignedNodes({ flatten: true })\n .map((n) => n.textContent?.trim() ?? '')\n .join(' ');\n this.displayText = titleText;\n this.text = titleText;\n }\n\n private onClick(e: PointerEvent) {\n if (this.disabled || this.readonly) {\n e.stopPropagation();\n return;\n }\n this.selected = this.multiple ? !this.selected : true;\n this.dispatchEvent(\n new CustomEvent('on-click', {\n bubbles: true,\n composed: true,\n detail: { selected: this.selected, value: this.value, origEvent: e },\n })\n );\n }\n\n private onRemove(e: Event) {\n e.stopPropagation();\n this.dispatchEvent(\n new CustomEvent('on-remove-option', {\n bubbles: true,\n composed: true,\n detail: { value: this.value },\n })\n );\n }\n\n private onBlur(e: FocusEvent) {\n this.dispatchEvent(\n new CustomEvent('on-blur', {\n bubbles: true,\n composed: true,\n detail: { origEvent: e },\n })\n );\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-enhanced-dropdown-option': EnhancedDropdownOption;\n }\n}\n"],"names":["EnhancedDropdownOption","customElement","LitElement","_classThis","_classSuper","value","__classPrivateFieldGet","this","_EnhancedDropdownOption_value_accessor_storage","__classPrivateFieldSet","selected","_EnhancedDropdownOption_selected_accessor_storage","disabled","_EnhancedDropdownOption_disabled_accessor_storage","readonly","_EnhancedDropdownOption_readonly_accessor_storage","allowAddOption","_EnhancedDropdownOption_allowAddOption_accessor_storage","highlighted","_EnhancedDropdownOption_highlighted_accessor_storage","multiple","_EnhancedDropdownOption_multiple_accessor_storage","removable","_EnhancedDropdownOption_removable_accessor_storage","indeterminate","_EnhancedDropdownOption_indeterminate_accessor_storage","role","_EnhancedDropdownOption_role_accessor_storage","ariaSelected","_EnhancedDropdownOption_ariaSelected_accessor_storage","text","_EnhancedDropdownOption_text_accessor_storage","displayText","_EnhancedDropdownOption_displayText_accessor_storage","hasIcon","_EnhancedDropdownOption_hasIcon_accessor_storage","kind","_EnhancedDropdownOption_kind_accessor_storage","render","classes","html","classMap","e","preventDefault","onClick","onBlur","onKeyDown","onIconSlotChange","onTitleSlotChange","unsafeSVG","checkIcon","onRemove","stopPropagation","clearIcon","firstUpdated","iconSlot","assignedNodes","flatten","length","parent","closest","addEventListener","detail","willUpdate","changed","has","toString","el","_a","shadowRoot","querySelector","tabIndex","focus","options","_b","key","moveFocus","moveToEdge","delta","node","nextElementSibling","previousElementSibling","tag","tagName","toLowerCase","opt","target","where","parentElement","all","querySelectorAll","list","Array","from","candidate","titleText","map","n","textContent","trim","join","dispatchEvent","CustomEvent","bubbles","composed","origEvent","set","__runInitializers","_value_initializers","_value_extraInitializers","_selected_initializers","_selected_extraInitializers","_disabled_initializers","_disabled_extraInitializers","_readonly_initializers","_readonly_extraInitializers","_allowAddOption_initializers","_allowAddOption_extraInitializers","_highlighted_initializers","_highlighted_extraInitializers","_multiple_initializers","_multiple_extraInitializers","_removable_initializers","_removable_extraInitializers","_indeterminate_initializers","_indeterminate_extraInitializers","_role_initializers","_role_extraInitializers","_ariaSelected_initializers","_ariaSelected_extraInitializers","_text_initializers","_text_extraInitializers","_displayText_initializers","_displayText_extraInitializers","_hasIcon_initializers","_hasIcon_extraInitializers","_kind_initializers","_value_decorators","property","type","String","Boolean","reflect","_disabled_decorators","_allowAddOption_decorators","_highlighted_decorators","state","_multiple_decorators","_removable_decorators","_ariaSelected_decorators","attribute","_text_decorators","_displayText_decorators","_hasIcon_decorators","_kind_decorators","__esDecorate","name","static","private","access","obj","get","metadata","_metadata","_selected_decorators","_readonly_decorators","_indeterminate_decorators","_role_decorators","_kind_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","EnhancedDropdownOptionScss"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -47,4 +47,5 @@ export { AISourcesFeedback } from './components/ai/sourcesFeedback';
47
47
  export { InlineConfirm } from './components/reusable/inlineConfirm';
48
48
  export { ColorInput } from './components/reusable/colorInput';
49
49
  export { MetaData } from './components/reusable/metaData';
50
+ export { Divider } from './components/reusable/divider';
50
51
  //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export{Header}from"./components/global/header/header.js";export{HeaderNav}from"./components/global/header/headerNav.js";export{HeaderLink}from"./components/global/header/headerLink.js";export{HeaderCategory}from"./components/global/header/headerCategory.js";export{HeaderDivider}from"./components/global/header/headerDivider.js";export{HeaderFlyouts}from"./components/global/header/headerFlyouts.js";export{HeaderFlyout}from"./components/global/header/headerFlyout.js";export{HeaderUserProfile}from"./components/global/header/headerUserProfile.js";export{HeaderPanelLink}from"./components/global/header/headerPanelLink.js";export{HeaderNotificationPanel}from"./components/global/header/headerNotificationPanel.js";export{LocalNav}from"./components/global/localNav/localNav.js";export{LocalNavLink}from"./components/global/localNav/localNavLink.js";export{LocalNavDivider}from"./components/global/localNav/localNavDivider.js";export{Footer}from"./components/global/footer/footer.js";export{UiShell}from"./components/global/uiShell/uiShell.js";export{RadioButton}from"./components/reusable/radioButton/radioButton.js";export{RadioButtonGroup}from"./components/reusable/radioButton/radioButtonGroup.js";export{Checkbox}from"./components/reusable/checkbox/checkbox.js";export{CheckboxGroup}from"./components/reusable/checkbox/checkboxGroup.js";export{CheckboxSubgroup}from"./components/reusable/checkbox/checkboxSubgroup.js";export{TextInput}from"./components/reusable/textInput/textInput.js";export{TextArea}from"./components/reusable/textArea/textArea.js";export{Avatar}from"./components/reusable/avatar/avatar.js";export{ToggleButton}from"./components/reusable/toggleButton/toggleButton.js";export{Dropdown}from"./components/reusable/dropdown/dropdown.js";export{DropdownOption}from"./components/reusable/dropdown/dropdownOption.js";export{DropdownCategory}from"./components/reusable/dropdown/dropdownCategory.js";import"./components/reusable/dropdown/enhancedDropdownOption.js";export{DatePicker}from"./components/reusable/datePicker/datepicker.js";export{DateRangePicker}from"./components/reusable/daterangepicker/daterangepicker.js";export{TimePicker}from"./components/reusable/timepicker/timepicker.js";export{ProgressBar}from"./components/reusable/progressBar/progressBar.js";export{BlockCodeView}from"./components/reusable/blockCodeView/blockCodeView.js";export{InlineCodeView}from"./components/reusable/inlineCodeView/inlineCodeView.js";export{Breadcrumbs}from"./components/reusable/breadcrumbs/breadcrumbs.js";export{T as Table}from"./table-HAX1Y1Hk.js";export{TableCell}from"./components/reusable/table/table-cell.js";export{TableRow}from"./components/reusable/table/table-row.js";export{TableBody}from"./components/reusable/table/table-body.js";export{TableHead}from"./components/reusable/table/table-head.js";export{TableHeader}from"./components/reusable/table/table-header.js";export{TableFoot}from"./components/reusable/table/table-foot.js";export{TableFooter}from"./components/reusable/table/table-footer.js";export{TableLegend}from"./components/reusable/table/table-legend.js";export{TableLegendItem}from"./components/reusable/table/table-legend-item.js";export{TableToolbar}from"./components/reusable/table/table-toolbar.js";export{TableContainer}from"./components/reusable/table/table-container.js";export{TableHeaderRow}from"./components/reusable/table/table-header-row.js";export{TableExpandedRow}from"./components/reusable/table/table-expanded-row.js";import"./components/reusable/table/table.skeleton.js";export{Pagination}from"./components/reusable/pagination/Pagination.js";import"./components/reusable/pagination/pagination-items-range.js";import"./components/reusable/pagination/pagination-page-size-dropdown.js";import"./components/reusable/pagination/pagination-navigation-buttons.js";import"./components/reusable/pagination/pagination.skeleton.js";export{OverflowMenu}from"./components/reusable/overflowMenu/overflowMenu.js";export{OverflowMenuItem}from"./components/reusable/overflowMenu/overflowMenuItem.js";export{Tabs}from"./components/reusable/tabs/tabs.js";export{Tab}from"./components/reusable/tabs/tab.js";export{TabPanel}from"./components/reusable/tabs/tabPanel.js";export{Modal}from"./components/reusable/modal/modal.js";export{Tooltip}from"./components/reusable/tooltip/tooltip.js";export{Tag}from"./components/reusable/tag/tag.js";export{TagGroup}from"./components/reusable/tag/tagGroup.js";import"./components/reusable/tag/tag.skeleton.js";export{GlobalFilter}from"./components/reusable/globalFilter/globalFilter.js";export{SideDrawer}from"./components/reusable/sideDrawer/sideDrawer.js";export{PageTitle}from"./components/reusable/pagetitle/pageTitle.js";export{Notification}from"./components/reusable/notification/notification.js";export{NotificationContainer}from"./components/reusable/notification/notificationContainer.js";export{Widget}from"./components/reusable/widget/widget.js";export{WidgetDragHandle}from"./components/reusable/widget/widgetDragHandle.js";export{WidgetGridstack}from"./components/reusable/widget/widgetGridstack.js";export{Search}from"./components/reusable/search/search.js";export{Loader}from"./components/reusable/loaders/loader.js";export{LoaderInline}from"./components/reusable/loaders/inline.js";export{Skeleton}from"./components/reusable/loaders/skeleton.js";export{NumberInput}from"./components/reusable/numberInput/numberInput.js";export{SliderInput}from"./components/reusable/sliderInput/sliderInput.js";export{Popover}from"./components/reusable/popover/popover.js";export{createOptionsArray,debounce,stringToReactHtml}from"./common/helpers/helpers.js";export{Config,WidgetConstraints,WidgetSizes}from"./common/helpers/gridstack.js";export{SwiperConfig}from"./common/helpers/swiper.js";export{Stepper}from"./components/reusable/stepper/stepper.js";export{StepperItem}from"./components/reusable/stepper/stepperItem.js";export{StepperItemChild}from"./components/reusable/stepper/stepperItemChild.js";export{Button}from"./components/reusable/button/button.js";export{Link}from"./components/reusable/link/link.js";export{Accordion}from"./components/reusable/accordion/accordion.js";export{AccordionItem}from"./components/reusable/accordion/accordionItem.js";export{Card}from"./components/reusable/card/card.js";import"./components/reusable/card/vitalCard.skeleton.js";import"./components/reusable/card/informationalCard.skeleton.js";export{SplitButton}from"./components/reusable/splitButton/splitButton.js";export{SplitButtonOption}from"./components/reusable/splitButton/splitButtonOption.js";export{FloatingContainer}from"./components/reusable/floatingContainer/floatingContainer.js";export{AISourcesFeedback}from"./components/ai/sourcesFeedback/aiSourcesFeedback.js";export{InlineConfirm}from"./components/reusable/inlineConfirm/inlineConfirm.js";export{ColorInput}from"./components/reusable/colorInput/colorInput.js";export{MetaData}from"./components/reusable/metaData/metaData.js";import"./vendor/tslib-Ac8XvvSX.js";import"./vendor/@lit/reactive-element-f91Vet7N.js";import"./vendor/lit-html-fDTfWwFR.js";import"./vendor/lit-element-DxLLCKb1.js";import"./vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"./vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"./vendor/deepmerge-ts-OFb5ej8y.js";import"./common/mixins/form-input.js";import"./common/helpers/flatpickr.js";import"./vendor/flatpickr-D1_FkiHZ.js";import"./common/flatpickrLangs.js";import"./common/helpers/flatpickrOverlayPosition.js";import"./shidoka-flatpickr-theme-DOQOMmsp.js";import"./vendor/prismjs-1mvJofm2.js";import"./vendor/@lit/context-nxMZ2CIX.js";import"./components/reusable/table/table-context.js";import"./components/reusable/table/defs.js";import"./pagination-Cd-D1Aov.js";import"./tag-DT_gMEAT.js";import"./components/reusable/badge/badge.js";import"./vendor/query-selector-shadow-dom-D9NRI6Ow.js";import"./vendor/gridstack-D_3XX7W5.js";import"./vendor/lottie-web-t-JWAnz9.js";import"./inline-CS33Oojd.js";import"./vendor/@floating-ui/dom-DatHEGLh.js";import"./vendor/@floating-ui/core-Psgh4TGO.js";import"./vendor/@floating-ui/utils-CqAU-KUi.js";import"./common/helpers/popoverHelper.js";import"./components/reusable/button/defs.js";import"./components/reusable/link/defs.js";import"./cardSample-Co5dXCZy.js";import"./components/reusable/splitButton/defs.js";
1
+ export{Header}from"./components/global/header/header.js";export{HeaderNav}from"./components/global/header/headerNav.js";export{HeaderLink}from"./components/global/header/headerLink.js";export{HeaderCategory}from"./components/global/header/headerCategory.js";export{HeaderDivider}from"./components/global/header/headerDivider.js";export{HeaderFlyouts}from"./components/global/header/headerFlyouts.js";export{HeaderFlyout}from"./components/global/header/headerFlyout.js";export{HeaderUserProfile}from"./components/global/header/headerUserProfile.js";export{HeaderPanelLink}from"./components/global/header/headerPanelLink.js";export{HeaderNotificationPanel}from"./components/global/header/headerNotificationPanel.js";export{LocalNav}from"./components/global/localNav/localNav.js";export{LocalNavLink}from"./components/global/localNav/localNavLink.js";export{LocalNavDivider}from"./components/global/localNav/localNavDivider.js";export{Footer}from"./components/global/footer/footer.js";export{UiShell}from"./components/global/uiShell/uiShell.js";export{RadioButton}from"./components/reusable/radioButton/radioButton.js";export{RadioButtonGroup}from"./components/reusable/radioButton/radioButtonGroup.js";export{Checkbox}from"./components/reusable/checkbox/checkbox.js";export{CheckboxGroup}from"./components/reusable/checkbox/checkboxGroup.js";export{CheckboxSubgroup}from"./components/reusable/checkbox/checkboxSubgroup.js";export{TextInput}from"./components/reusable/textInput/textInput.js";export{TextArea}from"./components/reusable/textArea/textArea.js";export{Avatar}from"./components/reusable/avatar/avatar.js";export{ToggleButton}from"./components/reusable/toggleButton/toggleButton.js";export{Dropdown}from"./components/reusable/dropdown/dropdown.js";export{DropdownOption}from"./components/reusable/dropdown/dropdownOption.js";export{DropdownCategory}from"./components/reusable/dropdown/dropdownCategory.js";import"./components/reusable/dropdown/enhancedDropdownOption.js";export{DatePicker}from"./components/reusable/datePicker/datepicker.js";export{DateRangePicker}from"./components/reusable/daterangepicker/daterangepicker.js";export{TimePicker}from"./components/reusable/timepicker/timepicker.js";export{ProgressBar}from"./components/reusable/progressBar/progressBar.js";export{BlockCodeView}from"./components/reusable/blockCodeView/blockCodeView.js";export{InlineCodeView}from"./components/reusable/inlineCodeView/inlineCodeView.js";export{Breadcrumbs}from"./components/reusable/breadcrumbs/breadcrumbs.js";export{T as Table}from"./table-HAX1Y1Hk.js";export{TableCell}from"./components/reusable/table/table-cell.js";export{TableRow}from"./components/reusable/table/table-row.js";export{TableBody}from"./components/reusable/table/table-body.js";export{TableHead}from"./components/reusable/table/table-head.js";export{TableHeader}from"./components/reusable/table/table-header.js";export{TableFoot}from"./components/reusable/table/table-foot.js";export{TableFooter}from"./components/reusable/table/table-footer.js";export{TableLegend}from"./components/reusable/table/table-legend.js";export{TableLegendItem}from"./components/reusable/table/table-legend-item.js";export{TableToolbar}from"./components/reusable/table/table-toolbar.js";export{TableContainer}from"./components/reusable/table/table-container.js";export{TableHeaderRow}from"./components/reusable/table/table-header-row.js";export{TableExpandedRow}from"./components/reusable/table/table-expanded-row.js";import"./components/reusable/table/table.skeleton.js";export{Pagination}from"./components/reusable/pagination/Pagination.js";import"./components/reusable/pagination/pagination-items-range.js";import"./components/reusable/pagination/pagination-page-size-dropdown.js";import"./components/reusable/pagination/pagination-navigation-buttons.js";import"./components/reusable/pagination/pagination.skeleton.js";export{OverflowMenu}from"./components/reusable/overflowMenu/overflowMenu.js";export{OverflowMenuItem}from"./components/reusable/overflowMenu/overflowMenuItem.js";export{Tabs}from"./components/reusable/tabs/tabs.js";export{Tab}from"./components/reusable/tabs/tab.js";export{TabPanel}from"./components/reusable/tabs/tabPanel.js";export{Modal}from"./components/reusable/modal/modal.js";export{Tooltip}from"./components/reusable/tooltip/tooltip.js";export{Tag}from"./components/reusable/tag/tag.js";export{TagGroup}from"./components/reusable/tag/tagGroup.js";import"./components/reusable/tag/tag.skeleton.js";export{GlobalFilter}from"./components/reusable/globalFilter/globalFilter.js";export{SideDrawer}from"./components/reusable/sideDrawer/sideDrawer.js";export{PageTitle}from"./components/reusable/pagetitle/pageTitle.js";export{Notification}from"./components/reusable/notification/notification.js";export{NotificationContainer}from"./components/reusable/notification/notificationContainer.js";export{Widget}from"./components/reusable/widget/widget.js";export{WidgetDragHandle}from"./components/reusable/widget/widgetDragHandle.js";export{WidgetGridstack}from"./components/reusable/widget/widgetGridstack.js";export{Search}from"./components/reusable/search/search.js";export{Loader}from"./components/reusable/loaders/loader.js";export{LoaderInline}from"./components/reusable/loaders/inline.js";export{Skeleton}from"./components/reusable/loaders/skeleton.js";export{NumberInput}from"./components/reusable/numberInput/numberInput.js";export{SliderInput}from"./components/reusable/sliderInput/sliderInput.js";export{Popover}from"./components/reusable/popover/popover.js";export{createOptionsArray,debounce,stringToReactHtml}from"./common/helpers/helpers.js";export{Config,WidgetConstraints,WidgetSizes}from"./common/helpers/gridstack.js";export{SwiperConfig}from"./common/helpers/swiper.js";export{Stepper}from"./components/reusable/stepper/stepper.js";export{StepperItem}from"./components/reusable/stepper/stepperItem.js";export{StepperItemChild}from"./components/reusable/stepper/stepperItemChild.js";export{Button}from"./components/reusable/button/button.js";export{Link}from"./components/reusable/link/link.js";export{Accordion}from"./components/reusable/accordion/accordion.js";export{AccordionItem}from"./components/reusable/accordion/accordionItem.js";export{Card}from"./components/reusable/card/card.js";import"./components/reusable/card/vitalCard.skeleton.js";import"./components/reusable/card/informationalCard.skeleton.js";export{SplitButton}from"./components/reusable/splitButton/splitButton.js";export{SplitButtonOption}from"./components/reusable/splitButton/splitButtonOption.js";export{FloatingContainer}from"./components/reusable/floatingContainer/floatingContainer.js";export{AISourcesFeedback}from"./components/ai/sourcesFeedback/aiSourcesFeedback.js";export{InlineConfirm}from"./components/reusable/inlineConfirm/inlineConfirm.js";export{ColorInput}from"./components/reusable/colorInput/colorInput.js";export{MetaData}from"./components/reusable/metaData/metaData.js";export{Divider}from"./components/reusable/divider/divider.js";import"./vendor/tslib-Ac8XvvSX.js";import"./vendor/@lit/reactive-element-f91Vet7N.js";import"./vendor/lit-html-fDTfWwFR.js";import"./vendor/lit-element-DxLLCKb1.js";import"./vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"./vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"./vendor/deepmerge-ts-OFb5ej8y.js";import"./common/mixins/form-input.js";import"./common/helpers/flatpickr.js";import"./vendor/flatpickr-D1_FkiHZ.js";import"./common/flatpickrLangs.js";import"./common/helpers/flatpickrOverlayPosition.js";import"./shidoka-flatpickr-theme-DOQOMmsp.js";import"./vendor/prismjs-1mvJofm2.js";import"./vendor/@lit/context-nxMZ2CIX.js";import"./components/reusable/table/table-context.js";import"./components/reusable/table/defs.js";import"./pagination-Cd-D1Aov.js";import"./tag-DT_gMEAT.js";import"./components/reusable/badge/badge.js";import"./vendor/query-selector-shadow-dom-D9NRI6Ow.js";import"./vendor/gridstack-D_3XX7W5.js";import"./vendor/lottie-web-t-JWAnz9.js";import"./inline-CS33Oojd.js";import"./vendor/@floating-ui/dom-DatHEGLh.js";import"./vendor/@floating-ui/core-Psgh4TGO.js";import"./vendor/@floating-ui/utils-CqAU-KUi.js";import"./common/helpers/popoverHelper.js";import"./components/reusable/button/defs.js";import"./components/reusable/link/defs.js";import"./cardSample-Co5dXCZy.js";import"./components/reusable/splitButton/defs.js";
2
2
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kyndryl-design-system/shidoka-applications",
3
- "version": "2.65.6",
3
+ "version": "2.66.0",
4
4
  "description": "Shidoka Web Components for Applications",
5
5
  "license": "MIT",
6
6
  "main": "index.js",