@kyndryl-design-system/shidoka-applications 2.68.3 → 2.68.5
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.
- package/components/global/header/header.js +3 -3
- package/components/global/header/headerFlyouts.d.ts +0 -5
- package/components/global/header/headerFlyouts.d.ts.map +1 -1
- package/components/global/header/headerFlyouts.js +3 -3
- package/components/global/header/headerFlyouts.js.map +1 -1
- package/components/global/header/headerLink.js +1 -1
- package/components/global/header/headerLink.js.map +1 -1
- package/components/global/header/index.js +1 -1
- package/components/global/localNav/index.js +1 -1
- package/components/global/localNav/localNav.d.ts +8 -0
- package/components/global/localNav/localNav.d.ts.map +1 -1
- package/components/global/localNav/localNav.js +9 -6
- package/components/global/localNav/localNav.js.map +1 -1
- package/components/reusable/widget/index.js +1 -1
- package/components/reusable/widget/widgetGridstack.js +3 -3
- package/index.js +1 -1
- package/package.json +1 -1
- package/vendor/query-selector-shadow-dom-Bcu6VFLW.js +2 -0
- package/vendor/{query-selector-shadow-dom-D9NRI6Ow.js.map → query-selector-shadow-dom-Bcu6VFLW.js.map} +1 -1
- package/vendor/query-selector-shadow-dom-D9NRI6Ow.js +0 -2
|
@@ -252,7 +252,7 @@ import{_ as e,a as t,b as i,c as a,d as o}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
252
252
|
transform: translateY(8px);
|
|
253
253
|
}
|
|
254
254
|
.header.scrolled {
|
|
255
|
-
transform:
|
|
255
|
+
transform: translateY(0);
|
|
256
256
|
}
|
|
257
257
|
}
|
|
258
258
|
.header.left-slotted {
|
|
@@ -353,7 +353,7 @@ import{_ as e,a as t,b as i,c as a,d as o}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
353
353
|
background: none;
|
|
354
354
|
padding: 0 8px;
|
|
355
355
|
margin: 0 2px;
|
|
356
|
-
}`;let b=(()=>{var n,b,x,y,_,w,E,z;let O,S,T,C,L,U,j,$,M,W,
|
|
356
|
+
}`;let b=(()=>{var n,b,x,y,_,w,E,z;let O,S,T,C,L,U,j,$,M,W,Y=[s("kyn-header")],F=[],N=u,R=[],q=[],H=[],P=[],A=[],B=[],D=[],G=[],I=[],J=[],K=[],Q=[],V=[],X=[],Z=[],ee=[];return S=class extends N{constructor(){super(...arguments),n.set(this,i(this,R,"/")),b.set(this,(i(this,q),i(this,H,""))),x.set(this,(i(this,P),i(this,A,void 0))),y.set(this,(i(this,B),i(this,D,void 0))),_.set(this,(i(this,G),i(this,I,void 0))),w.set(this,(i(this,J),i(this,K,!1))),E.set(this,(i(this,Q),i(this,V,!1))),z.set(this,(i(this,X),i(this,Z,void 0))),this._debounceScroll=(i(this,ee),v((()=>{this._handleScroll()})))}get rootUrl(){return a(this,n,"f")}set rootUrl(e){o(this,n,e,"f")}get appTitle(){return a(this,b,"f")}set appTitle(e){o(this,b,e,"f")}get navEls(){return a(this,x,"f")}set navEls(e){o(this,x,e,"f")}get assignedElements(){return a(this,y,"f")}set assignedElements(e){o(this,y,e,"f")}get leftEls(){return a(this,_,"f")}set leftEls(e){o(this,_,e,"f")}get _navOpen(){return a(this,w,"f")}set _navOpen(e){o(this,w,e,"f")}get _flyoutsOpen(){return a(this,E,"f")}set _flyoutsOpen(e){o(this,E,e,"f")}get _headerEl(){return a(this,z,"f")}set _headerEl(e){o(this,z,e,"f")}render(){const e={header:!0,"left-slotted":this.leftEls.length,"child-open":this._navOpen||this._flyoutsOpen};return p`
|
|
357
357
|
<header class="${m(e)}">
|
|
358
358
|
<slot name="left" @slotchange=${this.handleSlotChange}></slot>
|
|
359
359
|
|
|
@@ -380,5 +380,5 @@ import{_ as e,a as t,b as i,c as a,d as o}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
380
380
|
</header>
|
|
381
381
|
|
|
382
382
|
<div class="overlay"></div>
|
|
383
|
-
`}handleSlotChange(){this.requestUpdate()}handleRootLinkClick(e){const t=new CustomEvent("on-root-link-click",{detail:{origEvent:e}});this.dispatchEvent(t)}_handleNavToggle(e){this._navOpen=e.detail.open}_handleFlyoutsToggle(e){this._flyoutsOpen=e.detail.open||e.detail.childrenOpen}_handleScroll(){window.scrollY>0?this._headerEl.classList.add("scrolled"):this._headerEl.classList.remove("scrolled")}firstUpdated(){this._handleScroll()}connectedCallback(){super.connectedCallback(),document.addEventListener("on-nav-toggle",(e=>this._handleNavToggle(e))),document.addEventListener("on-flyouts-toggle",(e=>this._handleFlyoutsToggle(e))),window.addEventListener("scroll",this._debounceScroll)}disconnectedCallback(){document.removeEventListener("on-nav-toggle",(e=>this._handleNavToggle(e))),document.removeEventListener("on-flyouts-toggle",(e=>this._handleFlyoutsToggle(e))),window.removeEventListener("scroll",this._debounceScroll),super.disconnectedCallback()}},n=new WeakMap,b=new WeakMap,x=new WeakMap,y=new WeakMap,_=new WeakMap,w=new WeakMap,E=new WeakMap,z=new WeakMap,e(S,"Header"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=
|
|
383
|
+
`}handleSlotChange(){this.requestUpdate()}handleRootLinkClick(e){const t=new CustomEvent("on-root-link-click",{detail:{origEvent:e}});this.dispatchEvent(t)}_handleNavToggle(e){this._navOpen=e.detail.open}_handleFlyoutsToggle(e){this._flyoutsOpen=e.detail.open||e.detail.childrenOpen}_handleScroll(){window.scrollY>0?this._headerEl.classList.add("scrolled"):this._headerEl.classList.remove("scrolled")}firstUpdated(){this._handleScroll()}connectedCallback(){super.connectedCallback(),document.addEventListener("on-nav-toggle",(e=>this._handleNavToggle(e))),document.addEventListener("on-flyouts-toggle",(e=>this._handleFlyoutsToggle(e))),window.addEventListener("scroll",this._debounceScroll)}disconnectedCallback(){document.removeEventListener("on-nav-toggle",(e=>this._handleNavToggle(e))),document.removeEventListener("on-flyouts-toggle",(e=>this._handleFlyoutsToggle(e))),window.removeEventListener("scroll",this._debounceScroll),super.disconnectedCallback()}},n=new WeakMap,b=new WeakMap,x=new WeakMap,y=new WeakMap,_=new WeakMap,w=new WeakMap,E=new WeakMap,z=new WeakMap,e(S,"Header"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=N[Symbol.metadata])&&void 0!==e?e:null):void 0;T=[d({type:String})],C=[d({type:String})],L=[c({selector:"kyn-header-nav"})],U=[c()],j=[c({slot:"left"})],$=[r()],M=[r()],W=[h("header")],t(S,null,T,{kind:"accessor",name:"rootUrl",static:!1,private:!1,access:{has:e=>"rootUrl"in e,get:e=>e.rootUrl,set:(e,t)=>{e.rootUrl=t}},metadata:i},R,q),t(S,null,C,{kind:"accessor",name:"appTitle",static:!1,private:!1,access:{has:e=>"appTitle"in e,get:e=>e.appTitle,set:(e,t)=>{e.appTitle=t}},metadata:i},H,P),t(S,null,L,{kind:"accessor",name:"navEls",static:!1,private:!1,access:{has:e=>"navEls"in e,get:e=>e.navEls,set:(e,t)=>{e.navEls=t}},metadata:i},A,B),t(S,null,U,{kind:"accessor",name:"assignedElements",static:!1,private:!1,access:{has:e=>"assignedElements"in e,get:e=>e.assignedElements,set:(e,t)=>{e.assignedElements=t}},metadata:i},D,G),t(S,null,j,{kind:"accessor",name:"leftEls",static:!1,private:!1,access:{has:e=>"leftEls"in e,get:e=>e.leftEls,set:(e,t)=>{e.leftEls=t}},metadata:i},I,J),t(S,null,$,{kind:"accessor",name:"_navOpen",static:!1,private:!1,access:{has:e=>"_navOpen"in e,get:e=>e._navOpen,set:(e,t)=>{e._navOpen=t}},metadata:i},K,Q),t(S,null,M,{kind:"accessor",name:"_flyoutsOpen",static:!1,private:!1,access:{has:e=>"_flyoutsOpen"in e,get:e=>e._flyoutsOpen,set:(e,t)=>{e._flyoutsOpen=t}},metadata:i},V,X),t(S,null,W,{kind:"accessor",name:"_headerEl",static:!1,private:!1,access:{has:e=>"_headerEl"in e,get:e=>e._headerEl,set:(e,t)=>{e._headerEl=t}},metadata:i},Z,ee),t(null,O={value:S},Y,{kind:"class",name:S.name,metadata:i},null,F),S=O.value,i&&Object.defineProperty(S,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),S.styles=l(f),i(S,F),S})();export{b as Header};
|
|
384
384
|
//# sourceMappingURL=header.js.map
|
|
@@ -6,11 +6,6 @@ import { LitElement } from 'lit';
|
|
|
6
6
|
export declare class HeaderFlyouts extends LitElement {
|
|
7
7
|
static styles: import("lit").CSSResult;
|
|
8
8
|
accessor open: boolean;
|
|
9
|
-
/**
|
|
10
|
-
* Queries any slotted header-flyout.
|
|
11
|
-
* @ignore
|
|
12
|
-
*/
|
|
13
|
-
accessor _slottedFlyouts: Array<any>;
|
|
14
9
|
render(): import("lit-html").TemplateResult<1>;
|
|
15
10
|
private _toggleOpen;
|
|
16
11
|
private _handleClickOut;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headerFlyouts.d.ts","sourceRoot":"","sources":["../../../../src/components/global/header/headerFlyouts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"headerFlyouts.d.ts","sourceRoot":"","sources":["../../../../src/components/global/header/headerFlyouts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;AAOlD;;;GAGG;AACH,qBACa,aAAc,SAAQ,UAAU;IAC3C,OAAgB,MAAM,0BAAgC;IAItD,QAAQ,CAAC,IAAI,UAAS;IAEb,MAAM;IAmBf,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,kBAAkB;IAcjB,UAAU,CAAC,YAAY,EAAE,GAAG;IAM5B,iBAAiB;IASjB,oBAAoB;CAQ9B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,aAAa,CAAC;KACrC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as e,a as t,b as o,c as i,d as n}from"../../../vendor/tslib-Ac8XvvSX.js";import{o as r,x as a}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as l,t as
|
|
1
|
+
import{_ as e,a as t,b as o,c as i,d as n}from"../../../vendor/tslib-Ac8XvvSX.js";import{o as r,x as a}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as l,t as d,r as s,n as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{i as u}from"../../../vendor/lit-element-DxLLCKb1.js";import{q as m}from"../../../vendor/query-selector-shadow-dom-Bcu6VFLW.js";import{o as p}from"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";var v=l`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -276,7 +276,7 @@ import{_ as e,a as t,b as o,c as i,d as n}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
276
276
|
z-index: initial;
|
|
277
277
|
padding: 0;
|
|
278
278
|
}
|
|
279
|
-
}`;let g=(()=>{var l
|
|
279
|
+
}`;let g=(()=>{var l;let g,h,k,b=[d("kyn-header-flyouts")],f=[],y=u,x=[],w=[];return h=class extends y{get open(){return i(this,l,"f")}set open(e){n(this,l,e,"f")}render(){return a`
|
|
280
280
|
<div class="header-flyouts menu ${this.open?"open":""}">
|
|
281
281
|
<button
|
|
282
282
|
class="btn interactive"
|
|
@@ -291,5 +291,5 @@ import{_ as e,a as t,b as o,c as i,d as n}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
291
291
|
<slot></slot>
|
|
292
292
|
</div>
|
|
293
293
|
</div>
|
|
294
|
-
`}_toggleOpen(){this.open=!this.open}_handleClickOut(e){e.composedPath().includes(this)||(this.open=!1)}_handleFlyoutToggle(){this._emitFlyoutsToggle()}_emitFlyoutsToggle(){const e=new CustomEvent("on-flyouts-toggle",{composed:!0,bubbles:!0,detail:{open:this.open,childrenOpen:
|
|
294
|
+
`}_toggleOpen(){this.open=!this.open}_handleClickOut(e){e.composedPath().includes(this)||(this.open=!1)}_handleFlyoutToggle(){this._emitFlyoutsToggle()}_emitFlyoutsToggle(){const e=m("kyn-header-flyout",this),t=new CustomEvent("on-flyouts-toggle",{composed:!0,bubbles:!0,detail:{open:this.open,childrenOpen:e.some((e=>e.open))}});this.dispatchEvent(t)}willUpdate(e){e.has("open")&&this._emitFlyoutsToggle()}connectedCallback(){super.connectedCallback(),document.addEventListener("click",(e=>this._handleClickOut(e))),document.addEventListener("on-flyout-toggle",(()=>this._handleFlyoutToggle()))}disconnectedCallback(){document.removeEventListener("click",(e=>this._handleClickOut(e))),document.removeEventListener("on-flyout-toggle",(()=>this._handleFlyoutToggle())),super.disconnectedCallback()}constructor(){super(...arguments),l.set(this,o(this,x,!1)),o(this,w)}},l=new WeakMap,e(h,"HeaderFlyouts"),(()=>{var e;const o="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=y[Symbol.metadata])&&void 0!==e?e:null):void 0;k=[c({type:Boolean})],t(h,null,k,{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:o},x,w),t(null,g={value:h},b,{kind:"class",name:h.name,metadata:o},null,f),h=g.value,o&&Object.defineProperty(h,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:o})})(),h.styles=s(v),o(h,f),h})();export{g as HeaderFlyouts};
|
|
295
295
|
//# sourceMappingURL=headerFlyouts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headerFlyouts.js","sources":["../../../../src/components/global/header/headerFlyouts.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {
|
|
1
|
+
{"version":3,"file":"headerFlyouts.js","sources":["../../../../src/components/global/header/headerFlyouts.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { querySelectorAllDeep } from 'query-selector-shadow-dom';\nimport HeaderFlyoutsScss from './headerFlyouts.scss?inline';\n\nimport overflowIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/overflow.svg';\n\n/**\n * Container for header-flyout components.\n * @slot unnamed - Slot for header-flyout components.\n */\n@customElement('kyn-header-flyouts')\nexport class HeaderFlyouts extends LitElement {\n static override styles = unsafeCSS(HeaderFlyoutsScss);\n\n /* Menu open state (small breakpoint). */\n @property({ type: Boolean })\n accessor open = false;\n\n override render() {\n return html`\n <div class=\"header-flyouts menu ${this.open ? 'open' : ''}\">\n <button\n class=\"btn interactive\"\n aria-label=\"Toggle Menu\"\n title=\"Toggle Menu\"\n @click=${() => this._toggleOpen()}\n >\n <span class=\"overflow-icon\">${unsafeSVG(overflowIcon)}</span>\n </button>\n\n <div class=\"menu__content\">\n <slot></slot>\n </div>\n </div>\n `;\n }\n\n private _toggleOpen() {\n this.open = !this.open;\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n }\n }\n\n private _handleFlyoutToggle() {\n this._emitFlyoutsToggle();\n }\n\n private _emitFlyoutsToggle() {\n const Flyouts: Array<any> = querySelectorAllDeep('kyn-header-flyout', this);\n\n const event = new CustomEvent('on-flyouts-toggle', {\n composed: true,\n bubbles: true,\n detail: {\n open: this.open,\n childrenOpen: Flyouts.some((flyout: any) => flyout.open),\n },\n });\n this.dispatchEvent(event);\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('open')) {\n this._emitFlyoutsToggle();\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n\n document.addEventListener('click', (e) => this._handleClickOut(e));\n document.addEventListener('on-flyout-toggle', () =>\n this._handleFlyoutToggle()\n );\n }\n\n override disconnectedCallback() {\n document.removeEventListener('click', (e) => this._handleClickOut(e));\n document.removeEventListener('on-flyout-toggle', () =>\n this._handleFlyoutToggle()\n );\n\n super.disconnectedCallback();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-header-flyouts': HeaderFlyouts;\n }\n}\n"],"names":["HeaderFlyouts","customElement","LitElement","_classThis","_classSuper","open","__classPrivateFieldGet","this","_HeaderFlyouts_open_accessor_storage","value","__classPrivateFieldSet","render","html","_toggleOpen","unsafeSVG","overflowIcon","_handleClickOut","e","composedPath","includes","_handleFlyoutToggle","_emitFlyoutsToggle","Flyouts","querySelectorAllDeep","event","CustomEvent","composed","bubbles","detail","childrenOpen","some","flyout","dispatchEvent","willUpdate","changedProps","has","connectedCallback","super","document","addEventListener","disconnectedCallback","removeEventListener","set","__runInitializers","_open_initializers","_open_decorators","property","type","Boolean","__esDecorate","kind","name","static","private","access","obj","get","metadata","_metadata","_open_extraInitializers","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","HeaderFlyoutsScss"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAaaA,EAAa,yBADzBC,EAAc,8BACoBC,mBAARC,EAAA,cAAQC,EAKjC,QAASC,GAAI,OAAAC,EAAAC,KAAAC,EAAA,IAAA,CAAb,QAASH,CAAII,GAAAC,EAAAH,KAAAC,EAAAC,EAAA,IAAA,CAEJ,MAAAE,GACP,OAAOC,CAAI;wCACyBL,KAAKF,KAAO,OAAS;;;;;mBAK1C,IAAME,KAAKM;;wCAEUC,EAAUC;;;;;;;MAUxC,WAAAF,GACNN,KAAKF,MAAQE,KAAKF,KAGZ,eAAAW,CAAgBC,GACjBA,EAAEC,eAAeC,SAASZ,QAC7BA,KAAKF,MAAO,GAIR,mBAAAe,GACNb,KAAKc,qBAGC,kBAAAA,GACN,MAAMC,EAAsBC,EAAqB,oBAAqBhB,MAEhEiB,EAAQ,IAAIC,YAAY,oBAAqB,CACjDC,UAAU,EACVC,SAAS,EACTC,OAAQ,CACNvB,KAAME,KAAKF,KACXwB,aAAcP,EAAQQ,MAAMC,GAAgBA,EAAO1B,UAGvDE,KAAKyB,cAAcR,GAGZ,UAAAS,CAAWC,GACdA,EAAaC,IAAI,SACnB5B,KAAKc,qBAIA,iBAAAe,GACPC,MAAMD,oBAENE,SAASC,iBAAiB,SAAUtB,GAAMV,KAAKS,gBAAgBC,KAC/DqB,SAASC,iBAAiB,oBAAoB,IAC5ChC,KAAKa,wBAIA,oBAAAoB,GACPF,SAASG,oBAAoB,SAAUxB,GAAMV,KAAKS,gBAAgBC,KAClEqB,SAASG,oBAAoB,oBAAoB,IAC/ClC,KAAKa,wBAGPiB,MAAMG,yDAtEChC,EAAAkC,IAAAnC,KAAAoC,EAAApC,KAAAqC,GAAO,yLADfC,EAAA,CAAAC,EAAS,CAAEC,KAAMC,WAClBC,EAAA9C,EAAA,KAAA0C,EAAA,CAAAK,KAAA,WAAAC,KAAA,OAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnB,IAAAoB,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAASlD,KAAIqC,IAAA,CAAAa,EAAA9C,KAAA8C,EAAJlD,KAAII,CAAA,GAAAgD,SAAAC,GAAAd,EAAAe,GALfV,EAAA,KAAAW,EAAA,CAAAnD,MAAAN,GAAA0D,EAAA,CAAAX,KAAA,QAAAC,KAAAhD,EAAAgD,KAAAM,SAAAC,GAAA,KAAAI,iHACkB3D,EAAA4D,OAASC,EAAUC,GADxBtB,EAAAxC,EAAA2D,MAAa"}
|
|
@@ -460,5 +460,5 @@ kyn-text-input {
|
|
|
460
460
|
<slot name="links" @slotchange=${this._handleLinksSlotChange}></slot>
|
|
461
461
|
</div>
|
|
462
462
|
</div>
|
|
463
|
-
`}_handleSearch(e){this._searchTerm=e.detail.value.toLowerCase(),this._searchFilter()}_searchFilter(){this.querySelectorAll(":scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link").forEach((e=>{var t,i;const a=null===(i=null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("slot"))||void 0===i?void 0:i.assignedNodes({flatten:!0});let n="";for(let e=0;e<a.length;e++)n+=a[e].textContent.trim();n.toLowerCase().includes(this._searchTerm)?e.style.display="block":e.style.display="none"})),this._positionMenu()}_handleBack(){this.open=!1}_handleLinksSlotChange(){this.requestUpdate()}handlePointerEnter(e){"mouse"===e.pointerType&&this.slottedEls.length&&(clearTimeout(this._leaveTimer),this._enterTimer=setTimeout((()=>{this.open=!0}),150))}handlePointerLeave(e){"mouse"===e.pointerType&&this.slottedEls.length&&""===this._searchTerm&&(clearTimeout(this._enterTimer),this._leaveTimer=setTimeout((()=>{this.open=!1}),150))}handleClick(e){let t=!1;this.slottedEls.length&&(t=!0,e.preventDefault(),this.open=!this.open);const i=new CustomEvent("on-click",{detail:{origEvent:e,defaultPrevented:t}});this.dispatchEvent(i)}handleClickOut(e){e.composedPath().includes(this)||(this.open=!1,this._searchTerm="",this._searchFilter())}determineLevel(){const e=this.parentNode,t=e.parentNode;"KYN-HEADER-LINK"===e.nodeName?this.level=e.level+1:"KYN-HEADER-CATEGORY"===e.nodeName&&"KYN-HEADER-LINK"===t.nodeName?this.level=t.level+1:window.innerWidth<672&&"KYN-HEADER-FLYOUT"===e.nodeName?this.level=2:this.level=1}_positionMenu(){var e,t;const i=this.getBoundingClientRect(),a=null===(t=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector(".menu__content"))||void 0===t?void 0:t.getBoundingClientRect(),n=i.top+i.height/2,r=a.height/2,o=n+r>window.innerHeight?n-r-(n+r-window.innerHeight):n-r;this.menuPosition={top:o<
|
|
463
|
+
`}_handleSearch(e){this._searchTerm=e.detail.value.toLowerCase(),this._searchFilter()}_searchFilter(){this.querySelectorAll(":scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link").forEach((e=>{var t,i;const a=null===(i=null===(t=e.shadowRoot)||void 0===t?void 0:t.querySelector("slot"))||void 0===i?void 0:i.assignedNodes({flatten:!0});let n="";for(let e=0;e<a.length;e++)n+=a[e].textContent.trim();n.toLowerCase().includes(this._searchTerm)?e.style.display="block":e.style.display="none"})),this._positionMenu()}_handleBack(){this.open=!1}_handleLinksSlotChange(){this.requestUpdate()}handlePointerEnter(e){"mouse"===e.pointerType&&this.slottedEls.length&&(clearTimeout(this._leaveTimer),this._enterTimer=setTimeout((()=>{this.open=!0}),150))}handlePointerLeave(e){"mouse"===e.pointerType&&this.slottedEls.length&&""===this._searchTerm&&(clearTimeout(this._enterTimer),this._leaveTimer=setTimeout((()=>{this.open=!1}),150))}handleClick(e){let t=!1;this.slottedEls.length&&(t=!0,e.preventDefault(),this.open=!this.open);const i=new CustomEvent("on-click",{detail:{origEvent:e,defaultPrevented:t}});this.dispatchEvent(i)}handleClickOut(e){e.composedPath().includes(this)||(this.open=!1,this._searchTerm="",this._searchFilter())}determineLevel(){const e=this.parentNode,t=e.parentNode;"KYN-HEADER-LINK"===e.nodeName?this.level=e.level+1:"KYN-HEADER-CATEGORY"===e.nodeName&&"KYN-HEADER-LINK"===t.nodeName?this.level=t.level+1:window.innerWidth<672&&"KYN-HEADER-FLYOUT"===e.nodeName?this.level=2:this.level=1}_positionMenu(){var e,t;const i=this.getBoundingClientRect(),a=null===(t=null===(e=this.shadowRoot)||void 0===e?void 0:e.querySelector(".menu__content"))||void 0===t?void 0:t.getBoundingClientRect(),n=i.top+i.height/2,r=a.height/2,o=n+r>window.innerHeight?n-r-(n+r-window.innerHeight)-16:n-r;this.menuPosition={top:o<64?64:o,left:i.right+8}}firstUpdated(){this.determineLevel()}willUpdate(e){e.has("open")&&this.open&&this._positionMenu()}connectedCallback(){super.connectedCallback(),document.addEventListener("click",(e=>this.handleClickOut(e))),null===window||void 0===window||window.addEventListener("resize",this._debounceResize)}disconnectedCallback(){document.removeEventListener("click",(e=>this.handleClickOut(e))),null===window||void 0===window||window.removeEventListener("resize",this._debounceResize),super.disconnectedCallback()}},l=new WeakMap,y=new WeakMap,x=new WeakMap,w=new WeakMap,_=new WeakMap,T=new WeakMap,z=new WeakMap,E=new WeakMap,L=new WeakMap,$=new WeakMap,P=new WeakMap,C=new WeakMap,M=new WeakMap,S=new WeakMap,W=new WeakMap,e(A,"HeaderLink"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=Z[Symbol.metadata])&&void 0!==e?e:null):void 0;N=[m({type:Boolean})],R=[m({type:String})],B=[m({type:String})],H=[m({type:String})],O=[m({type:Boolean})],Y=[d()],K=[m({type:Boolean})],q=[m({type:String})],D=[m({type:Number})],F=[m({type:String})],I=[m({type:Boolean})],U=[d()],X=[u({slot:"links"})],G=[d()],J=[d()],t(A,null,N,{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},ee,te),t(A,null,R,{kind:"accessor",name:"href",static:!1,private:!1,access:{has:e=>"href"in e,get:e=>e.href,set:(e,t)=>{e.href=t}},metadata:i},ie,ae),t(A,null,B,{kind:"accessor",name:"target",static:!1,private:!1,access:{has:e=>"target"in e,get:e=>e.target,set:(e,t)=>{e.target=t}},metadata:i},ne,re),t(A,null,H,{kind:"accessor",name:"rel",static:!1,private:!1,access:{has:e=>"rel"in e,get:e=>e.rel,set:(e,t)=>{e.rel=t}},metadata:i},oe,se),t(A,null,O,{kind:"accessor",name:"isActive",static:!1,private:!1,access:{has:e=>"isActive"in e,get:e=>e.isActive,set:(e,t)=>{e.isActive=t}},metadata:i},le,de),t(A,null,Y,{kind:"accessor",name:"level",static:!1,private:!1,access:{has:e=>"level"in e,get:e=>e.level,set:(e,t)=>{e.level=t}},metadata:i},ce,he),t(A,null,K,{kind:"accessor",name:"divider",static:!1,private:!1,access:{has:e=>"divider"in e,get:e=>e.divider,set:(e,t)=>{e.divider=t}},metadata:i},me,ue),t(A,null,q,{kind:"accessor",name:"searchLabel",static:!1,private:!1,access:{has:e=>"searchLabel"in e,get:e=>e.searchLabel,set:(e,t)=>{e.searchLabel=t}},metadata:i},ve,pe),t(A,null,D,{kind:"accessor",name:"searchThreshold",static:!1,private:!1,access:{has:e=>"searchThreshold"in e,get:e=>e.searchThreshold,set:(e,t)=>{e.searchThreshold=t}},metadata:i},ke,ge),t(A,null,F,{kind:"accessor",name:"backText",static:!1,private:!1,access:{has:e=>"backText"in e,get:e=>e.backText,set:(e,t)=>{e.backText=t}},metadata:i},fe,be),t(A,null,I,{kind:"accessor",name:"leftPadding",static:!1,private:!1,access:{has:e=>"leftPadding"in e,get:e=>e.leftPadding,set:(e,t)=>{e.leftPadding=t}},metadata:i},ye,xe),t(A,null,U,{kind:"accessor",name:"_searchTerm",static:!1,private:!1,access:{has:e=>"_searchTerm"in e,get:e=>e._searchTerm,set:(e,t)=>{e._searchTerm=t}},metadata:i},we,_e),t(A,null,X,{kind:"accessor",name:"slottedEls",static:!1,private:!1,access:{has:e=>"slottedEls"in e,get:e=>e.slottedEls,set:(e,t)=>{e.slottedEls=t}},metadata:i},Te,ze),t(A,null,G,{kind:"accessor",name:"_leaveTimer",static:!1,private:!1,access:{has:e=>"_leaveTimer"in e,get:e=>e._leaveTimer,set:(e,t)=>{e._leaveTimer=t}},metadata:i},Ee,Le),t(A,null,J,{kind:"accessor",name:"menuPosition",static:!1,private:!1,access:{has:e=>"menuPosition"in e,get:e=>e.menuPosition,set:(e,t)=>{e.menuPosition=t}},metadata:i},$e,Pe),t(null,j={value:A},Q,{kind:"class",name:A.name,metadata:i},null,V),A=j.value,i&&Object.defineProperty(A,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),A.styles=h(b),i(A,V),A})();export{y as HeaderLink};
|
|
464
464
|
//# sourceMappingURL=headerLink.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headerLink.js","sources":["../../../../src/components/global/header/headerLink.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { debounce } from '../../../common/helpers/helpers';\nimport HeaderLinkScss from './headerLink.scss?inline';\nimport '../../reusable/textInput';\nimport arrowIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-right.svg';\nimport backIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/arrow-left.svg';\nimport searchIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/search.svg';\n\n/**\n * Component for navigation links within the Header.\n * @fires on-click - Captures the click event and emits the original event details. `detail:{ origEvent: Event ,defaultPrevented: boolean}`\n * @slot unnamed - Slot for link text/content.\n * @slot links - Slot for sublinks (up to two levels).\n * @slot icon - Slot for icon.\n */\n@customElement('kyn-header-link')\nexport class HeaderLink extends LitElement {\n static override styles = unsafeCSS(HeaderLinkScss);\n\n /** Link open state. */\n @property({ type: Boolean })\n accessor open = false;\n\n /** Link url. */\n @property({ type: String })\n accessor href = '';\n\n /** Defines a target attribute for where to load the URL. Possible options include \"_self\" (default), \"_blank\", \"_parent\", \"_top\" */\n @property({ type: String })\n accessor target = '_self' as const;\n\n /** Defines a relationship between a linked resource and the document. An empty string (default) means no particular relationship */\n @property({ type: String })\n accessor rel = '';\n\n /** Link active state, for example when URL path matches link href. */\n @property({ type: Boolean })\n accessor isActive = false;\n\n /** Link level, supports two levels.\n * @ignore\n */\n @state()\n accessor level = 1;\n\n /** DEPRECATED. Adds a 1px shadow to the bottom of the link. */\n @property({ type: Boolean })\n accessor divider = false;\n\n /** Label for sub-menu link search input, which is visible with > 5 sub-links. */\n @property({ type: String })\n accessor searchLabel = 'Search';\n\n /** Number of child links required to show search input. */\n @property({ type: Number })\n accessor searchThreshold = 6;\n\n /** Text for mobile \"Back\" button. */\n @property({ type: String })\n accessor backText = 'Back';\n\n /** Add left padding when icon is not provided to align text with links that do have icons. */\n @property({ type: Boolean })\n accessor leftPadding = false;\n\n /** Text for mobile \"Back\" button. */\n @state()\n accessor _searchTerm = '';\n\n /**\n * Queries any slotted HTML elements.\n * @ignore\n */\n @queryAssignedElements({ slot: 'links' })\n accessor slottedEls!: Array<HTMLElement>;\n\n /** Timeout function to delay flyout open.\n * @internal\n */\n _enterTimer: any;\n\n /** Timeout function to delay flyout close.\n * @internal\n */\n @state()\n accessor _leaveTimer: any;\n\n /** Menu positioning\n * @internal\n */\n @state()\n accessor menuPosition: any = {};\n\n override render() {\n const classes = {\n menu: this.slottedEls.length,\n [`level--${this.level}`]: true,\n divider: this.divider,\n open: this.open,\n };\n\n const linkClasses = {\n 'nav-link': true,\n active: this.isActive,\n interactive: this.level == 1,\n 'padding-left': this.leftPadding,\n };\n\n const menuClasses = {\n menu__content: true,\n slotted: this.slottedEls.length,\n };\n\n const Links = this.querySelectorAll(\n ':scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link'\n );\n\n return html`\n <div\n class=\"${classMap(classes)}\"\n @pointerleave=${(e: PointerEvent) => this.handlePointerLeave(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <a\n target=${this.target}\n rel=${this.rel}\n href=${this.href}\n class=${classMap(linkClasses)}\n @click=${(e: Event) => this.handleClick(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <slot></slot>\n\n ${this.slottedEls.length\n ? html` <span class=\"arrow\">${unsafeSVG(arrowIcon)}</span> `\n : null}\n </a>\n\n <div\n class=${classMap(menuClasses)}\n style=${`top: ${this.menuPosition.top}px; left: ${this.menuPosition.left}px;`}\n >\n <button class=\"go-back\" @click=${() => this._handleBack()}>\n <span>${unsafeSVG(backIcon)}</span>\n ${this.backText}\n </button>\n\n ${Links.length >= this.searchThreshold\n ? html`\n <kyn-text-input\n hideLabel\n size=\"sm\"\n type=\"search\"\n label=${this.searchLabel}\n placeholder=${this.searchLabel}\n value=${this._searchTerm}\n @on-input=${(e: Event) => this._handleSearch(e)}\n >\n <span slot=\"icon\" class=\"search-icon\">\n ${unsafeSVG(searchIcon)}\n </span>\n ${this.searchLabel}\n </kyn-text-input>\n `\n : null}\n\n <slot name=\"links\" @slotchange=${this._handleLinksSlotChange}></slot>\n </div>\n </div>\n `;\n }\n\n private _handleSearch(e: any) {\n this._searchTerm = e.detail.value.toLowerCase();\n this._searchFilter();\n }\n\n private _searchFilter() {\n const Links: any = this.querySelectorAll(\n ':scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link'\n );\n\n Links.forEach((link: any) => {\n // get link text\n const nodes: any = link.shadowRoot?.querySelector('slot')?.assignedNodes({\n flatten: true,\n });\n let linkText = '';\n for (let i = 0; i < nodes.length; i++) {\n linkText += nodes[i].textContent.trim();\n }\n\n if (linkText.toLowerCase().includes(this._searchTerm)) {\n link.style.display = 'block';\n } else {\n link.style.display = 'none';\n }\n });\n\n this._positionMenu();\n }\n\n private _handleBack() {\n this.open = false;\n }\n\n private _handleLinksSlotChange() {\n this.requestUpdate();\n }\n\n private handlePointerEnter(e: PointerEvent) {\n if (e.pointerType === 'mouse' && this.slottedEls.length) {\n clearTimeout(this._leaveTimer);\n\n this._enterTimer = setTimeout(() => {\n this.open = true;\n }, 150);\n }\n }\n\n private handlePointerLeave(e: PointerEvent) {\n if (\n e.pointerType === 'mouse' &&\n this.slottedEls.length &&\n this._searchTerm === ''\n ) {\n clearTimeout(this._enterTimer);\n\n this._leaveTimer = setTimeout(() => {\n this.open = false;\n }, 150);\n }\n }\n\n private handleClick(e: Event) {\n let preventDefault = false;\n\n if (this.slottedEls.length) {\n preventDefault = true;\n e.preventDefault();\n this.open = !this.open;\n }\n\n const event = new CustomEvent('on-click', {\n detail: { origEvent: e, defaultPrevented: preventDefault },\n });\n this.dispatchEvent(event);\n }\n\n private handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n this._searchTerm = '';\n this._searchFilter();\n }\n }\n\n private determineLevel() {\n const ParentNode: any = this.parentNode;\n const GrandparentNode: any = ParentNode.parentNode;\n\n if (ParentNode.nodeName === 'KYN-HEADER-LINK') {\n this.level = ParentNode.level + 1;\n } else if (\n ParentNode.nodeName === 'KYN-HEADER-CATEGORY' &&\n GrandparentNode.nodeName === 'KYN-HEADER-LINK'\n ) {\n this.level = GrandparentNode.level + 1;\n } else {\n if (\n window.innerWidth < 672 &&\n ParentNode.nodeName === 'KYN-HEADER-FLYOUT'\n ) {\n this.level = 2;\n } else {\n this.level = 1;\n }\n }\n }\n\n private _positionMenu() {\n // determine submenu positioning\n const LinkBounds: any = this.getBoundingClientRect();\n const MenuBounds: any = this.shadowRoot\n ?.querySelector('.menu__content')\n ?.getBoundingClientRect();\n const Padding = 8;\n const HeaderHeight = 56;\n\n const LinkHalf = LinkBounds.top + LinkBounds.height / 2;\n const MenuHalf = MenuBounds.height / 2;\n\n const Top =\n LinkHalf + MenuHalf > window.innerHeight\n ? LinkHalf - MenuHalf - (LinkHalf + MenuHalf - window.innerHeight)\n : LinkHalf - MenuHalf;\n\n this.menuPosition = {\n top: Top < HeaderHeight ? HeaderHeight : Top,\n left: LinkBounds.right + Padding,\n };\n }\n\n /** @internal */\n private _debounceResize = debounce(() => {\n this.determineLevel();\n });\n\n override firstUpdated() {\n this.determineLevel();\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('open') && this.open) {\n this._positionMenu();\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n\n document.addEventListener('click', (e) => this.handleClickOut(e));\n\n window?.addEventListener('resize', this._debounceResize);\n }\n\n override disconnectedCallback() {\n document.removeEventListener('click', (e) => this.handleClickOut(e));\n\n window?.removeEventListener('resize', this._debounceResize);\n\n super.disconnectedCallback();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-header-link': HeaderLink;\n }\n}\n"],"names":["HeaderLink","customElement","LitElement","_classThis","_classSuper","_HeaderLink_open_accessor_storage","set","this","__runInitializers","_open_initializers","_HeaderLink_href_accessor_storage","_open_extraInitializers","_href_initializers","_HeaderLink_target_accessor_storage","_href_extraInitializers","_target_initializers","_HeaderLink_rel_accessor_storage","_target_extraInitializers","_rel_initializers","_HeaderLink_isActive_accessor_storage","_rel_extraInitializers","_isActive_initializers","_HeaderLink_level_accessor_storage","_isActive_extraInitializers","_level_initializers","_HeaderLink_divider_accessor_storage","_level_extraInitializers","_divider_initializers","_HeaderLink_searchLabel_accessor_storage","_divider_extraInitializers","_searchLabel_initializers","_HeaderLink_searchThreshold_accessor_storage","_searchLabel_extraInitializers","_searchThreshold_initializers","_HeaderLink_backText_accessor_storage","_searchThreshold_extraInitializers","_backText_initializers","_HeaderLink_leftPadding_accessor_storage","_backText_extraInitializers","_leftPadding_initializers","_HeaderLink__searchTerm_accessor_storage","_leftPadding_extraInitializers","__searchTerm_initializers","_HeaderLink_slottedEls_accessor_storage","__searchTerm_extraInitializers","_slottedEls_initializers","_enterTimer","_slottedEls_extraInitializers","_HeaderLink__leaveTimer_accessor_storage","__leaveTimer_initializers","_HeaderLink_menuPosition_accessor_storage","__leaveTimer_extraInitializers","_menuPosition_initializers","_debounceResize","_menuPosition_extraInitializers","debounce","determineLevel","open","__classPrivateFieldGet","value","__classPrivateFieldSet","href","target","rel","isActive","level","divider","searchLabel","searchThreshold","backText","leftPadding","_searchTerm","slottedEls","_leaveTimer","menuPosition","render","classes","menu","length","linkClasses","active","interactive","menuClasses","menu__content","slotted","Links","querySelectorAll","html","classMap","e","handlePointerLeave","handlePointerEnter","handleClick","unsafeSVG","arrowIcon","top","left","_handleBack","backIcon","_handleSearch","searchIcon","_handleLinksSlotChange","detail","toLowerCase","_searchFilter","forEach","link","nodes","_b","_a","shadowRoot","querySelector","assignedNodes","flatten","linkText","i","textContent","trim","includes","style","display","_positionMenu","requestUpdate","pointerType","clearTimeout","setTimeout","preventDefault","event","CustomEvent","origEvent","defaultPrevented","dispatchEvent","handleClickOut","composedPath","ParentNode","parentNode","GrandparentNode","nodeName","window","innerWidth","LinkBounds","getBoundingClientRect","MenuBounds","LinkHalf","height","MenuHalf","Top","innerHeight","right","firstUpdated","willUpdate","changedProps","has","connectedCallback","super","document","addEventListener","disconnectedCallback","removeEventListener","_open_decorators","property","type","Boolean","_href_decorators","String","_target_decorators","_rel_decorators","_isActive_decorators","_level_decorators","state","_divider_decorators","_searchLabel_decorators","_searchThreshold_decorators","Number","_backText_decorators","_leftPadding_decorators","__searchTerm_decorators","_slottedEls_decorators","queryAssignedElements","slot","__leaveTimer_decorators","_menuPosition_decorators","__esDecorate","kind","name","static","private","access","obj","get","metadata","_metadata","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","HeaderLinkScss"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwBaA,EAAU,iFADtBC,EAAc,2BACiBC,6LAARC,EAAA,cAAQC,oCAKrBC,EAAAC,IAAAC,KAAAC,EAAAD,KAAAE,IAAO,IAIPC,EAAAJ,IAAAC,MAAAC,EAAAD,KAAAI,IAAAH,EAAAD,KAAAK,GAAO,MAIPC,EAAAP,IAAAC,MAAAC,EAAAD,KAAAO,IAAAN,EAAAD,KAAAQ,GAAS,WAITC,EAAAV,IAAAC,MAAAC,EAAAD,KAAAU,IAAAT,EAAAD,KAAAW,GAAM,MAINC,EAAAb,IAAAC,MAAAC,EAAAD,KAAAa,IAAAZ,EAAAD,KAAAc,IAAW,KAMXC,EAAAhB,IAAAC,MAAAC,EAAAD,KAAAgB,IAAAf,EAAAD,KAAAiB,GAAQ,KAIRC,EAAAnB,IAAAC,MAAAC,EAAAD,KAAAmB,IAAAlB,EAAAD,KAAAoB,IAAU,KAIVC,EAAAtB,IAAAC,MAAAC,EAAAD,KAAAsB,IAAArB,EAAAD,KAAAuB,GAAc,YAIdC,EAAAzB,IAAAC,MAAAC,EAAAD,KAAAyB,IAAAxB,EAAAD,KAAA0B,GAAkB,KAIlBC,EAAA5B,IAAAC,MAAAC,EAAAD,KAAA4B,IAAA3B,EAAAD,KAAA6B,GAAW,UAIXC,EAAA/B,IAAAC,MAAAC,EAAAD,KAAA+B,IAAA9B,EAAAD,KAAAgC,IAAc,KAIdC,EAAAlC,IAAAC,MAAAC,EAAAD,KAAAkC,IAAAjC,EAAAD,KAAAmC,GAAc,MAOdC,EAAArC,IAAAC,MAAAC,EAAAD,KAAAqC,IAAApC,EAAAD,KAAAsC,QAAA,KAKTtC,KAAAuC,YAAWtC,EAAAD,KAAAwC,IAMFC,EAAA1C,IAAAC,KAAAC,EAAAD,KAAA0C,QAAA,IAMAC,EAAA5C,IAAAC,MAAAC,EAAAD,KAAA4C,IAAA3C,EAAAD,KAAA6C,GAAoB,CAAA,KAqNrB7C,KAAA8C,iBAAe7C,EAAAD,KAAA+C,IAAGC,GAAS,KACjChD,KAAKiD,gBAAgB,KA5RvB,QAASC,GAAI,OAAAC,EAAAnD,KAAAF,EAAA,IAAA,CAAb,QAASoD,CAAIE,GAAAC,EAAArD,KAAAF,EAAAsD,EAAA,IAAA,CAIb,QAASE,GAAI,OAAAH,EAAAnD,KAAAG,EAAA,IAAA,CAAb,QAASmD,CAAIF,GAAAC,EAAArD,KAAAG,EAAAiD,EAAA,IAAA,CAIb,UAASG,GAAM,OAAAJ,EAAAnD,KAAAM,EAAA,IAAA,CAAf,UAASiD,CAAMH,GAAAC,EAAArD,KAAAM,EAAA8C,EAAA,IAAA,CAIf,OAASI,GAAG,OAAAL,EAAAnD,KAAAS,EAAA,IAAA,CAAZ,OAAS+C,CAAGJ,GAAAC,EAAArD,KAAAS,EAAA2C,EAAA,IAAA,CAIZ,YAASK,GAAQ,OAAAN,EAAAnD,KAAAY,EAAA,IAAA,CAAjB,YAAS6C,CAAQL,GAAAC,EAAArD,KAAAY,EAAAwC,EAAA,IAAA,CAMjB,SAASM,GAAK,OAAAP,EAAAnD,KAAAe,EAAA,IAAA,CAAd,SAAS2C,CAAKN,GAAAC,EAAArD,KAAAe,EAAAqC,EAAA,IAAA,CAId,WAASO,GAAO,OAAAR,EAAAnD,KAAAkB,EAAA,IAAA,CAAhB,WAASyC,CAAOP,GAAAC,EAAArD,KAAAkB,EAAAkC,EAAA,IAAA,CAIhB,eAASQ,GAAW,OAAAT,EAAAnD,KAAAqB,EAAA,IAAA,CAApB,eAASuC,CAAWR,GAAAC,EAAArD,KAAAqB,EAAA+B,EAAA,IAAA,CAIpB,mBAASS,GAAe,OAAAV,EAAAnD,KAAAwB,EAAA,IAAA,CAAxB,mBAASqC,CAAeT,GAAAC,EAAArD,KAAAwB,EAAA4B,EAAA,IAAA,CAIxB,YAASU,GAAQ,OAAAX,EAAAnD,KAAA2B,EAAA,IAAA,CAAjB,YAASmC,CAAQV,GAAAC,EAAArD,KAAA2B,EAAAyB,EAAA,IAAA,CAIjB,eAASW,GAAW,OAAAZ,EAAAnD,KAAA8B,EAAA,IAAA,CAApB,eAASiC,CAAWX,GAAAC,EAAArD,KAAA8B,EAAAsB,EAAA,IAAA,CAIpB,eAASY,GAAW,OAAAb,EAAAnD,KAAAiC,EAAA,IAAA,CAApB,eAAS+B,CAAWZ,GAAAC,EAAArD,KAAAiC,EAAAmB,EAAA,IAAA,CAOpB,cAASa,GAAU,OAAAd,EAAAnD,KAAAoC,EAAA,IAAA,CAAnB,cAAS6B,CAAUb,GAAAC,EAAArD,KAAAoC,EAAAgB,EAAA,IAAA,CAWnB,eAASc,GAAW,OAAAf,EAAAnD,KAAAyC,EAAA,IAAA,CAApB,eAASyB,CAAWd,GAAAC,EAAArD,KAAAyC,EAAAW,EAAA,IAAA,CAMpB,gBAASe,GAAY,OAAAhB,EAAAnD,KAAA2C,EAAA,IAAA,CAArB,gBAASwB,CAAYf,GAAAC,EAAArD,KAAA2C,EAAAS,EAAA,IAAA,CAEZ,MAAAgB,GACP,MAAMC,EAAU,CACdC,KAAMtE,KAAKiE,WAAWM,OACtB,CAAC,UAAUvE,KAAK0D,UAAU,EAC1BC,QAAS3D,KAAK2D,QACdT,KAAMlD,KAAKkD,MAGPsB,EAAc,CAClB,YAAY,EACZC,OAAQzE,KAAKyD,SACbiB,YAA2B,GAAd1E,KAAK0D,MAClB,eAAgB1D,KAAK+D,aAGjBY,EAAc,CAClBC,eAAe,EACfC,QAAS7E,KAAKiE,WAAWM,QAGrBO,EAAQ9E,KAAK+E,iBACjB,4EAGF,OAAOC,CAAI;;iBAEEC,EAASZ;wBACDa,GAAoBlF,KAAKmF,mBAAmBD;wBAC5CA,GAAoBlF,KAAKoF,mBAAmBF;;;mBAGlDlF,KAAKuD;gBACRvD,KAAKwD;iBACJxD,KAAKsD;kBACJ2B,EAAST;mBACPU,GAAalF,KAAKqF,YAAYH;0BACvBA,GAAoBlF,KAAKoF,mBAAmBF;;;;YAI3DlF,KAAKiE,WAAWM,OACdS,CAAI,wBAAwBM,EAAUC,aACtC;;;;kBAIIN,EAASN;kBACT,QAAQ3E,KAAKmE,aAAaqB,gBAAgBxF,KAAKmE,aAAasB;;2CAEnC,IAAMzF,KAAK0F;oBAClCJ,EAAUK;cAChB3F,KAAK8D;;;YAGPgB,EAAMP,QAAUvE,KAAK6D,gBACnBmB,CAAI;;;;;0BAKQhF,KAAK4D;gCACC5D,KAAK4D;0BACX5D,KAAKgE;8BACAkB,GAAalF,KAAK4F,cAAcV;;;sBAGzCI,EAAUO;;oBAEZ7F,KAAK4D;;gBAGX;;2CAE6B5D,KAAK8F;;;MAMtC,aAAAF,CAAcV,GACpBlF,KAAKgE,YAAckB,EAAEa,OAAO3C,MAAM4C,cAClChG,KAAKiG,gBAGC,aAAAA,GACajG,KAAK+E,iBACtB,4EAGImB,SAASC,YAEb,MAAMC,EAAmD,QAAtCC,EAAe,QAAfC,EAAAH,EAAKI,kBAAU,IAAAD,OAAA,EAAAA,EAAEE,cAAc,eAAO,IAAAH,OAAA,EAAAA,EAAEI,cAAc,CACvEC,SAAS,IAEX,IAAIC,EAAW,GACf,IAAK,IAAIC,EAAI,EAAGA,EAAIR,EAAM7B,OAAQqC,IAChCD,GAAYP,EAAMQ,GAAGC,YAAYC,OAG/BH,EAASX,cAAce,SAAS/G,KAAKgE,aACvCmC,EAAKa,MAAMC,QAAU,QAErBd,EAAKa,MAAMC,QAAU,UAIzBjH,KAAKkH,gBAGC,WAAAxB,GACN1F,KAAKkD,MAAO,EAGN,sBAAA4C,GACN9F,KAAKmH,gBAGC,kBAAA/B,CAAmBF,GACH,UAAlBA,EAAEkC,aAA2BpH,KAAKiE,WAAWM,SAC/C8C,aAAarH,KAAKkE,aAElBlE,KAAKuC,YAAc+E,YAAW,KAC5BtH,KAAKkD,MAAO,CAAI,GACf,MAIC,kBAAAiC,CAAmBD,GAEL,UAAlBA,EAAEkC,aACFpH,KAAKiE,WAAWM,QACK,KAArBvE,KAAKgE,cAELqD,aAAarH,KAAKuC,aAElBvC,KAAKkE,YAAcoD,YAAW,KAC5BtH,KAAKkD,MAAO,CAAK,GAChB,MAIC,WAAAmC,CAAYH,GAClB,IAAIqC,GAAiB,EAEjBvH,KAAKiE,WAAWM,SAClBgD,GAAiB,EACjBrC,EAAEqC,iBACFvH,KAAKkD,MAAQlD,KAAKkD,MAGpB,MAAMsE,EAAQ,IAAIC,YAAY,WAAY,CACxC1B,OAAQ,CAAE2B,UAAWxC,EAAGyC,iBAAkBJ,KAE5CvH,KAAK4H,cAAcJ,GAGb,cAAAK,CAAe3C,GAChBA,EAAE4C,eAAef,SAAS/G,QAC7BA,KAAKkD,MAAO,EACZlD,KAAKgE,YAAc,GACnBhE,KAAKiG,iBAID,cAAAhD,GACN,MAAM8E,EAAkB/H,KAAKgI,WACvBC,EAAuBF,EAAWC,WAEZ,oBAAxBD,EAAWG,SACblI,KAAK0D,MAAQqE,EAAWrE,MAAQ,EAER,wBAAxBqE,EAAWG,UACkB,oBAA7BD,EAAgBC,SAEhBlI,KAAK0D,MAAQuE,EAAgBvE,MAAQ,EAGnCyE,OAAOC,WAAa,KACI,sBAAxBL,EAAWG,SAEXlI,KAAK0D,MAAQ,EAEb1D,KAAK0D,MAAQ,EAKX,aAAAwD,WAEN,MAAMmB,EAAkBrI,KAAKsI,wBACvBC,EAC6B,QADXlC,EAAe,QAAfC,EAAAtG,KAAKuG,kBAAU,IAAAD,OAAA,EAAAA,EACnCE,cAAc,yBAAiB,IAAAH,OAAA,EAAAA,EAC/BiC,wBAIEE,EAAWH,EAAW7C,IAAM6C,EAAWI,OAAS,EAChDC,EAAWH,EAAWE,OAAS,EAE/BE,EACJH,EAAWE,EAAWP,OAAOS,YACzBJ,EAAWE,GAAYF,EAAWE,EAAWP,OAAOS,aACpDJ,EAAWE,EAEjB1I,KAAKmE,aAAe,CAClBqB,IAAKmD,EAXc,MAWsBA,EACzClD,KAAM4C,EAAWQ,MAbH,GAsBT,YAAAC,GACP9I,KAAKiD,iBAGE,UAAA8F,CAAWC,GACdA,EAAaC,IAAI,SAAWjJ,KAAKkD,MACnClD,KAAKkH,gBAIA,iBAAAgC,GACPC,MAAMD,oBAENE,SAASC,iBAAiB,SAAUnE,GAAMlF,KAAK6H,eAAe3C,KAExD,OAANiD,aAAM,IAANA,QAAAA,OAAQkB,iBAAiB,SAAUrJ,KAAK8C,iBAGjC,oBAAAwG,GACPF,SAASG,oBAAoB,SAAUrE,GAAMlF,KAAK6H,eAAe3C,KAE3D,OAANiD,aAAM,IAANA,QAAAA,OAAQoB,oBAAoB,SAAUvJ,KAAK8C,iBAE3CqG,MAAMG,mYAvTPE,EAAA,CAAAC,EAAS,CAAEC,KAAMC,WAIjBC,EAAA,CAAAH,EAAS,CAAEC,KAAMG,UAIjBC,EAAA,CAAAL,EAAS,CAAEC,KAAMG,UAIjBE,EAAA,CAAAN,EAAS,CAAEC,KAAMG,UAIjBG,EAAA,CAAAP,EAAS,CAAEC,KAAMC,WAMjBM,EAAA,CAAAC,KAIAC,EAAA,CAAAV,EAAS,CAAEC,KAAMC,WAIjBS,EAAA,CAAAX,EAAS,CAAEC,KAAMG,UAIjBQ,EAAA,CAAAZ,EAAS,CAAEC,KAAMY,UAIjBC,EAAA,CAAAd,EAAS,CAAEC,KAAMG,UAIjBW,EAAA,CAAAf,EAAS,CAAEC,KAAMC,WAIjBc,EAAA,CAAAP,KAOAQ,EAAA,CAAAC,EAAsB,CAAEC,KAAM,WAW9BC,EAAA,CAAAX,KAMAY,EAAA,CAAAZ,KArEDa,EAAAnL,EAAA,KAAA4J,EAAA,CAAAwB,KAAA,WAAAC,KAAA,OAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAASnI,KAAInD,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAJnI,KAAIE,CAAA,GAAAmI,SAAAC,GAAAtL,GAAAE,IAIb2K,EAAAnL,EAAA,KAAAgK,EAAA,CAAAoB,KAAA,WAAAC,KAAA,OAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,SAAAA,EAAAC,IAAAD,GAAAA,EAAS/H,KAAIvD,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAJ/H,KAAIF,CAAA,GAAAmI,SAAAC,GAAAnL,GAAAE,IAIbwK,EAAAnL,EAAA,KAAAkK,EAAA,CAAAkB,KAAA,WAAAC,KAAA,SAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,WAAAA,EAAAC,IAAAD,GAAAA,EAAS9H,OAAMxD,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAN9H,OAAMH,CAAA,GAAAmI,SAAAC,GAAAhL,GAAAE,IAIfqK,EAAAnL,EAAA,KAAAmK,EAAA,CAAAiB,KAAA,WAAAC,KAAA,MAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,QAAAA,EAAAC,IAAAD,GAAAA,EAAS7H,IAAGzD,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAH7H,IAAGJ,CAAA,GAAAmI,SAAAC,GAAA7K,GAAAE,IAIZkK,EAAAnL,EAAA,KAAAoK,EAAA,CAAAgB,KAAA,WAAAC,KAAA,WAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAAS5H,SAAQ1D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAR5H,SAAQL,CAAA,GAAAmI,SAAAC,GAAA1K,GAAAE,IAMjB+J,EAAAnL,EAAA,KAAAqK,EAAA,CAAAe,KAAA,WAAAC,KAAA,QAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,UAAAA,EAAAC,IAAAD,GAAAA,EAAS3H,MAAK3D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAL3H,MAAKN,CAAA,GAAAmI,SAAAC,GAAAvK,GAAAE,IAId4J,EAAAnL,EAAA,KAAAuK,EAAA,CAAAa,KAAA,WAAAC,KAAA,UAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,YAAAA,EAAAC,IAAAD,GAAAA,EAAS1H,QAAO5D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAP1H,QAAOP,CAAA,GAAAmI,SAAAC,GAAApK,GAAAE,IAIhByJ,EAAAnL,EAAA,KAAAwK,EAAA,CAAAY,KAAA,WAAAC,KAAA,cAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAASzH,YAAW7D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAXzH,YAAWR,CAAA,GAAAmI,SAAAC,GAAAjK,GAAAE,IAIpBsJ,EAAAnL,EAAA,KAAAyK,EAAA,CAAAW,KAAA,WAAAC,KAAA,kBAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,oBAAAA,EAAAC,IAAAD,GAAAA,EAASxH,gBAAe9D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAfxH,gBAAeT,CAAA,GAAAmI,SAAAC,GAAA9J,GAAAE,IAIxBmJ,EAAAnL,EAAA,KAAA2K,EAAA,CAAAS,KAAA,WAAAC,KAAA,WAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,aAAAA,EAAAC,IAAAD,GAAAA,EAASvH,SAAQ/D,IAAA,CAAAsL,EAAAjI,KAAAiI,EAARvH,SAAQV,CAAA,GAAAmI,SAAAC,GAAA3J,GAAAE,IAIjBgJ,EAAAnL,EAAA,KAAA4K,EAAA,CAAAQ,KAAA,WAAAC,KAAA,cAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAAStH,YAAWhE,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAXtH,YAAWX,CAAA,GAAAmI,SAAAC,GAAAxJ,GAAAE,IAIpB6I,EAAAnL,EAAA,KAAA6K,EAAA,CAAAO,KAAA,WAAAC,KAAA,cAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAASrH,YAAWjE,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAXrH,YAAWZ,CAAA,GAAAmI,SAAAC,GAAArJ,GAAAE,IAOpB0I,EAAAnL,EAAA,KAAA8K,EAAA,CAAAM,KAAA,WAAAC,KAAA,aAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,eAAAA,EAAAC,IAAAD,GAAAA,EAASpH,WAAUlE,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAVpH,WAAUb,CAAA,GAAAmI,SAAAC,GAAAlJ,GAAAE,IAWnBuI,EAAAnL,EAAA,KAAAiL,EAAA,CAAAG,KAAA,WAAAC,KAAA,cAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,gBAAAA,EAAAC,IAAAD,GAAAA,EAASnH,YAAWnE,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAXnH,YAAWd,CAAA,GAAAmI,SAAAC,GAAA9I,GAAAE,IAMpBmI,EAAAnL,EAAA,KAAAkL,EAAA,CAAAE,KAAA,WAAAC,KAAA,eAAAC,QAAA,EAAAC,SAAA,EAAAC,OAAA,CAAAnC,IAAAoC,GAAA,iBAAAA,EAAAC,IAAAD,GAAAA,EAASlH,aAAYpE,IAAA,CAAAsL,EAAAjI,KAAAiI,EAAZlH,aAAYf,CAAA,GAAAmI,SAAAC,GAAA3I,GAAAE,IA3EvBgI,EAAA,KAAAU,EAAA,CAAArI,MAAAxD,GAAA8L,EAAA,CAAAV,KAAA,QAAAC,KAAArL,EAAAqL,KAAAM,SAAAC,GAAA,KAAAG,iHACkB/L,EAAAgM,OAASC,EAAUC,GADxB7L,EAAAL,EAAA+L,MAAU"}
|
|
1
|
+
{"version":3,"file":"headerLink.js","sources":["../../../../src/components/global/header/headerLink.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { debounce } from '../../../common/helpers/helpers';\nimport HeaderLinkScss from './headerLink.scss?inline';\nimport '../../reusable/textInput';\nimport arrowIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-right.svg';\nimport backIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/arrow-left.svg';\nimport searchIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/search.svg';\n\n/**\n * Component for navigation links within the Header.\n * @fires on-click - Captures the click event and emits the original event details. `detail:{ origEvent: Event ,defaultPrevented: boolean}`\n * @slot unnamed - Slot for link text/content.\n * @slot links - Slot for sublinks (up to two levels).\n * @slot icon - Slot for icon.\n */\n@customElement('kyn-header-link')\nexport class HeaderLink extends LitElement {\n static override styles = unsafeCSS(HeaderLinkScss);\n\n /** Link open state. */\n @property({ type: Boolean })\n accessor open = false;\n\n /** Link url. */\n @property({ type: String })\n accessor href = '';\n\n /** Defines a target attribute for where to load the URL. Possible options include \"_self\" (default), \"_blank\", \"_parent\", \"_top\" */\n @property({ type: String })\n accessor target = '_self' as const;\n\n /** Defines a relationship between a linked resource and the document. An empty string (default) means no particular relationship */\n @property({ type: String })\n accessor rel = '';\n\n /** Link active state, for example when URL path matches link href. */\n @property({ type: Boolean })\n accessor isActive = false;\n\n /** Link level, supports two levels.\n * @ignore\n */\n @state()\n accessor level = 1;\n\n /** DEPRECATED. Adds a 1px shadow to the bottom of the link. */\n @property({ type: Boolean })\n accessor divider = false;\n\n /** Label for sub-menu link search input, which is visible with > 5 sub-links. */\n @property({ type: String })\n accessor searchLabel = 'Search';\n\n /** Number of child links required to show search input. */\n @property({ type: Number })\n accessor searchThreshold = 6;\n\n /** Text for mobile \"Back\" button. */\n @property({ type: String })\n accessor backText = 'Back';\n\n /** Add left padding when icon is not provided to align text with links that do have icons. */\n @property({ type: Boolean })\n accessor leftPadding = false;\n\n /** Text for mobile \"Back\" button. */\n @state()\n accessor _searchTerm = '';\n\n /**\n * Queries any slotted HTML elements.\n * @ignore\n */\n @queryAssignedElements({ slot: 'links' })\n accessor slottedEls!: Array<HTMLElement>;\n\n /** Timeout function to delay flyout open.\n * @internal\n */\n _enterTimer: any;\n\n /** Timeout function to delay flyout close.\n * @internal\n */\n @state()\n accessor _leaveTimer: any;\n\n /** Menu positioning\n * @internal\n */\n @state()\n accessor menuPosition: any = {};\n\n override render() {\n const classes = {\n menu: this.slottedEls.length,\n [`level--${this.level}`]: true,\n divider: this.divider,\n open: this.open,\n };\n\n const linkClasses = {\n 'nav-link': true,\n active: this.isActive,\n interactive: this.level == 1,\n 'padding-left': this.leftPadding,\n };\n\n const menuClasses = {\n menu__content: true,\n slotted: this.slottedEls.length,\n };\n\n const Links = this.querySelectorAll(\n ':scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link'\n );\n\n return html`\n <div\n class=\"${classMap(classes)}\"\n @pointerleave=${(e: PointerEvent) => this.handlePointerLeave(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <a\n target=${this.target}\n rel=${this.rel}\n href=${this.href}\n class=${classMap(linkClasses)}\n @click=${(e: Event) => this.handleClick(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <slot></slot>\n\n ${this.slottedEls.length\n ? html` <span class=\"arrow\">${unsafeSVG(arrowIcon)}</span> `\n : null}\n </a>\n\n <div\n class=${classMap(menuClasses)}\n style=${`top: ${this.menuPosition.top}px; left: ${this.menuPosition.left}px;`}\n >\n <button class=\"go-back\" @click=${() => this._handleBack()}>\n <span>${unsafeSVG(backIcon)}</span>\n ${this.backText}\n </button>\n\n ${Links.length >= this.searchThreshold\n ? html`\n <kyn-text-input\n hideLabel\n size=\"sm\"\n type=\"search\"\n label=${this.searchLabel}\n placeholder=${this.searchLabel}\n value=${this._searchTerm}\n @on-input=${(e: Event) => this._handleSearch(e)}\n >\n <span slot=\"icon\" class=\"search-icon\">\n ${unsafeSVG(searchIcon)}\n </span>\n ${this.searchLabel}\n </kyn-text-input>\n `\n : null}\n\n <slot name=\"links\" @slotchange=${this._handleLinksSlotChange}></slot>\n </div>\n </div>\n `;\n }\n\n private _handleSearch(e: any) {\n this._searchTerm = e.detail.value.toLowerCase();\n this._searchFilter();\n }\n\n private _searchFilter() {\n const Links: any = this.querySelectorAll(\n ':scope > kyn-header-link, :scope > kyn-header-category > kyn-header-link'\n );\n\n Links.forEach((link: any) => {\n // get link text\n const nodes: any = link.shadowRoot?.querySelector('slot')?.assignedNodes({\n flatten: true,\n });\n let linkText = '';\n for (let i = 0; i < nodes.length; i++) {\n linkText += nodes[i].textContent.trim();\n }\n\n if (linkText.toLowerCase().includes(this._searchTerm)) {\n link.style.display = 'block';\n } else {\n link.style.display = 'none';\n }\n });\n\n this._positionMenu();\n }\n\n private _handleBack() {\n this.open = false;\n }\n\n private _handleLinksSlotChange() {\n this.requestUpdate();\n }\n\n private handlePointerEnter(e: PointerEvent) {\n if (e.pointerType === 'mouse' && this.slottedEls.length) {\n clearTimeout(this._leaveTimer);\n\n this._enterTimer = setTimeout(() => {\n this.open = true;\n }, 150);\n }\n }\n\n private handlePointerLeave(e: PointerEvent) {\n if (\n e.pointerType === 'mouse' &&\n this.slottedEls.length &&\n this._searchTerm === ''\n ) {\n clearTimeout(this._enterTimer);\n\n this._leaveTimer = setTimeout(() => {\n this.open = false;\n }, 150);\n }\n }\n\n private handleClick(e: Event) {\n let preventDefault = false;\n\n if (this.slottedEls.length) {\n preventDefault = true;\n e.preventDefault();\n this.open = !this.open;\n }\n\n const event = new CustomEvent('on-click', {\n detail: { origEvent: e, defaultPrevented: preventDefault },\n });\n this.dispatchEvent(event);\n }\n\n private handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this.open = false;\n this._searchTerm = '';\n this._searchFilter();\n }\n }\n\n private determineLevel() {\n const ParentNode: any = this.parentNode;\n const GrandparentNode: any = ParentNode.parentNode;\n\n if (ParentNode.nodeName === 'KYN-HEADER-LINK') {\n this.level = ParentNode.level + 1;\n } else if (\n ParentNode.nodeName === 'KYN-HEADER-CATEGORY' &&\n GrandparentNode.nodeName === 'KYN-HEADER-LINK'\n ) {\n this.level = GrandparentNode.level + 1;\n } else {\n if (\n window.innerWidth < 672 &&\n ParentNode.nodeName === 'KYN-HEADER-FLYOUT'\n ) {\n this.level = 2;\n } else {\n this.level = 1;\n }\n }\n }\n\n private _positionMenu() {\n // determine submenu positioning\n const LinkBounds: any = this.getBoundingClientRect();\n const MenuBounds: any = this.shadowRoot\n ?.querySelector('.menu__content')\n ?.getBoundingClientRect();\n const Padding = 8;\n const HeaderHeight = 64;\n\n const LinkHalf = LinkBounds.top + LinkBounds.height / 2;\n const MenuHalf = MenuBounds.height / 2;\n\n const Top =\n LinkHalf + MenuHalf > window.innerHeight\n ? LinkHalf - MenuHalf - (LinkHalf + MenuHalf - window.innerHeight) - 16\n : LinkHalf - MenuHalf;\n\n this.menuPosition = {\n top: Top < HeaderHeight ? HeaderHeight : Top,\n left: LinkBounds.right + Padding,\n };\n }\n\n /** @internal */\n private _debounceResize = debounce(() => {\n this.determineLevel();\n });\n\n override firstUpdated() {\n this.determineLevel();\n }\n\n override willUpdate(changedProps: any) {\n if (changedProps.has('open') && this.open) {\n this._positionMenu();\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n\n document.addEventListener('click', (e) => this.handleClickOut(e));\n\n window?.addEventListener('resize', this._debounceResize);\n }\n\n override disconnectedCallback() {\n document.removeEventListener('click', (e) => this.handleClickOut(e));\n\n window?.removeEventListener('resize', this._debounceResize);\n\n super.disconnectedCallback();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-header-link': HeaderLink;\n }\n}\n"],"names":["HeaderLink","customElement","LitElement","_classThis","_classSuper","_HeaderLink_open_accessor_storage","set","this","__runInitializers","_open_initializers","_HeaderLink_href_accessor_storage","_open_extraInitializers","_href_initializers","_HeaderLink_target_accessor_storage","_href_extraInitializers","_target_initializers","_HeaderLink_rel_accessor_storage","_target_extraInitializers","_rel_initializers","_HeaderLink_isActive_accessor_storage","_rel_extraInitializers","_isActive_initializers","_HeaderLink_level_accessor_storage","_isActive_extraInitializers","_level_initializers","_HeaderLink_divider_accessor_storage","_level_extraInitializers","_divider_initializers","_HeaderLink_searchLabel_accessor_storage","_divider_extraInitializers","_searchLabel_initializers","_HeaderLink_searchThreshold_accessor_storage","_searchLabel_extraInitializers","_searchThreshold_initializers","_HeaderLink_backText_accessor_storage","_searchThreshold_extraInitializers","_backText_initializers","_HeaderLink_leftPadding_accessor_storage","_backText_extraInitializers","_leftPadding_initializers","_HeaderLink__searchTerm_accessor_storage","_leftPadding_extraInitializers","__searchTerm_initializers","_HeaderLink_slottedEls_accessor_storage","__searchTerm_extraInitializers","_slottedEls_initializers","_enterTimer","_slottedEls_extraInitializers","_HeaderLink__leaveTimer_accessor_storage","__leaveTimer_initializers","_HeaderLink_menuPosition_accessor_storage","__leaveTimer_extraInitializers","_menuPosition_initializers","_debounceResize","_menuPosition_extraInitializers","debounce","determineLevel","open","__classPrivateFieldGet","value","__classPrivateFieldSet","href","target","rel","isActive","level","divider","searchLabel","searchThreshold","backText","leftPadding","_searchTerm","slottedEls","_leaveTimer","menuPosition","render","classes","menu","length","linkClasses","active","interactive","menuClasses","menu__content","slotted","Links","querySelectorAll","html","classMap","e","handlePointerLeave","handlePointerEnter","handleClick","unsafeSVG","arrowIcon","top","left","_handleBack","backIcon","_handleSearch","searchIcon","_handleLinksSlotChange","detail","toLowerCase","_searchFilter","forEach","link","nodes","_b","_a","shadowRoot","querySelector","assignedNodes","flatten","linkText","i","textContent","trim","includes","style","display","_positionMenu","requestUpdate","pointerType","clearTimeout","setTimeout","preventDefault","event","CustomEvent","origEvent","defaultPrevented","dispatchEvent","handleClickOut","composedPath","ParentNode","parentNode","GrandparentNode","nodeName","window","innerWidth","LinkBounds","getBoundingClientRect","MenuBounds","LinkHalf","height","MenuHalf","Top","innerHeight","right","firstUpdated","willUpdate","changedProps","has","connectedCallback","super","document","addEventListener","disconnectedCallback","removeEventListener","_open_decorators","property","type","Boolean","_href_decorators","String","_target_decorators","_rel_decorators","_isActive_decorators","_level_decorators","state","_divider_decorators","_searchLabel_decorators","_searchThreshold_decorators","Number","_backText_decorators","_leftPadding_decorators","__searchTerm_decorators","_slottedEls_decorators","queryAssignedElements","slot","__leaveTimer_decorators","_menuPosition_decorators","__esDecorate","kind","name","static","private","access","obj","get","metadata","_metadata","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","HeaderLinkScss"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{Header}from"./header.js";export{HeaderNav}from"./headerNav.js";export{HeaderLink}from"./headerLink.js";export{HeaderCategory}from"./headerCategory.js";export{HeaderDivider}from"./headerDivider.js";export{HeaderFlyouts}from"./headerFlyouts.js";export{HeaderFlyout}from"./headerFlyout.js";export{HeaderUserProfile}from"./headerUserProfile.js";export{HeaderPanelLink}from"./headerPanelLink.js";export{HeaderNotificationPanel}from"./headerNotificationPanel.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"../../../common/helpers/helpers.js";import"../../../vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../reusable/textInput/textInput.js";import"../../../vendor/deepmerge-ts-OFb5ej8y.js";import"../../reusable/button/button.js";import"../../reusable/button/defs.js";import"../../../common/mixins/form-input.js";import"../../reusable/link/link.js";import"../../reusable/link/defs.js";
|
|
1
|
+
export{Header}from"./header.js";export{HeaderNav}from"./headerNav.js";export{HeaderLink}from"./headerLink.js";export{HeaderCategory}from"./headerCategory.js";export{HeaderDivider}from"./headerDivider.js";export{HeaderFlyouts}from"./headerFlyouts.js";export{HeaderFlyout}from"./headerFlyout.js";export{HeaderUserProfile}from"./headerUserProfile.js";export{HeaderPanelLink}from"./headerPanelLink.js";export{HeaderNotificationPanel}from"./headerNotificationPanel.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"../../../common/helpers/helpers.js";import"../../../vendor/@kyndryl-design-system/shidoka-foundation-7uii0Jz8.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../reusable/textInput/textInput.js";import"../../../vendor/deepmerge-ts-OFb5ej8y.js";import"../../reusable/button/button.js";import"../../reusable/button/defs.js";import"../../../common/mixins/form-input.js";import"../../../vendor/query-selector-shadow-dom-Bcu6VFLW.js";import"../../reusable/link/link.js";import"../../reusable/link/defs.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{LocalNav}from"./localNav.js";export{LocalNavLink}from"./localNavLink.js";export{LocalNavDivider}from"./localNavDivider.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../vendor/deepmerge-ts-OFb5ej8y.js";import"
|
|
1
|
+
export{LocalNav}from"./localNav.js";export{LocalNavLink}from"./localNavLink.js";export{LocalNavDivider}from"./localNavDivider.js";import"../../../vendor/tslib-Ac8XvvSX.js";import"../../../vendor/lit-html-fDTfWwFR.js";import"../../../vendor/@lit/reactive-element-f91Vet7N.js";import"../../../vendor/lit-element-DxLLCKb1.js";import"../../../vendor/deepmerge-ts-OFb5ej8y.js";import"../../../common/helpers/helpers.js";import"../../reusable/button/button.js";import"../../reusable/button/defs.js";import"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -56,6 +56,8 @@ export declare class LocalNav extends LitElement {
|
|
|
56
56
|
* @internal
|
|
57
57
|
*/
|
|
58
58
|
accessor _leaveTimer: number | null;
|
|
59
|
+
/** @internal */
|
|
60
|
+
accessor _navEl: HTMLElement;
|
|
59
61
|
private _onDocumentClick;
|
|
60
62
|
private _onLinkActive;
|
|
61
63
|
render(): import("lit-html").TemplateResult<1>;
|
|
@@ -68,6 +70,12 @@ export declare class LocalNav extends LitElement {
|
|
|
68
70
|
private _handleLinkActive;
|
|
69
71
|
willUpdate(changedProps: Map<string | number | symbol, unknown>): void;
|
|
70
72
|
private _handleClickOut;
|
|
73
|
+
/** Morph header on scroll.
|
|
74
|
+
* @internal */
|
|
75
|
+
private _handleScroll;
|
|
76
|
+
/** @internal */
|
|
77
|
+
private _debounceScroll;
|
|
78
|
+
firstUpdated(): void;
|
|
71
79
|
connectedCallback(): void;
|
|
72
80
|
disconnectedCallback(): void;
|
|
73
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localNav.d.ts","sourceRoot":"","sources":["../../../../src/components/global/localNav/localNav.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"localNav.d.ts","sourceRoot":"","sources":["../../../../src/components/global/localNav/localNav.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAmB,MAAM,KAAK,CAAC;AAYlD,OAAO,uBAAuB,CAAC;AAe/B;;;;;GAKG;AACH,qBACa,QAAS,SAAQ,UAAU;IACtC,OAAgB,MAAM,0BAA2B;IAEjD,8BAA8B;IAE9B,QAAQ,CAAC,MAAM,UAAS;IAExB,iCAAiC;IAEjC,QAAQ,CAAC,WAAW;;;;;;MAAuB;IAE3C;;OAEG;IAEH,QAAQ,CAAC,YAAY;;;;;;MAAuB;IAE5C;;OAEG;IAEH,QAAQ,CAAC,SAAS,UAAS;IAE3B;;OAEG;IAEH,QAAQ,CAAC,eAAe,UAAS;IAEjC;;OAEG;IAEH,QAAQ,CAAC,eAAe,EAAG,MAAM,CAAC;IAElC;;OAEG;IAEH,QAAQ,CAAC,SAAS,EAAG,WAAW,EAAE,CAAC;IAEnC;;OAEG;IAEH,QAAQ,CAAC,SAAS,EAAG,WAAW,EAAE,CAAC;IAEnC;;OAEG;IACH,OAAO,CAAC,WAAW,CAAuB;IAE1C;;OAEG;IAEH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE3C,gBAAgB;IAEhB,QAAQ,CAAC,MAAM,EAAG,WAAW,CAAC;IAE9B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,aAAa,CACwC;IAEpD,MAAM;IAiDf,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,iBAAiB;IAIhB,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC;IAcxE,OAAO,CAAC,eAAe;IAMvB;mBACe;IACf,OAAO,CAAC,aAAa;IAQrB,gBAAgB;IAChB,OAAO,CAAC,eAAe,CAEpB;IAEM,YAAY;IAIZ,iBAAiB;IAQjB,oBAAoB;CAO9B;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,QAAQ,CAAC;KAC3B;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as e,a as t,b as i,c as n,d as a}from"../../../vendor/tslib-Ac8XvvSX.js";import{e as s,o,x as d}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as
|
|
1
|
+
import{_ as e,a as t,b as i,c as n,d as a}from"../../../vendor/tslib-Ac8XvvSX.js";import{e as s,o,x as d}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as l,a as r,t as c,r as h,n as p,o as v,e as m}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{i as g}from"../../../vendor/lit-element-DxLLCKb1.js";import{d as u}from"../../../vendor/deepmerge-ts-OFb5ej8y.js";import{debounce as k}from"../../../common/helpers/helpers.js";import"../../reusable/button/button.js";import{h as x,p as b}from"../../../vendor/@kyndryl-design-system/shidoka-icons-DALQfz_R.js";import"../../reusable/button/defs.js";var _=l`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -68,9 +68,12 @@ nav {
|
|
|
68
68
|
bottom: 8px;
|
|
69
69
|
padding-top: 8px;
|
|
70
70
|
border-radius: 8px;
|
|
71
|
-
transition: width 300ms ease-in-out, border-color 300ms ease-out;
|
|
71
|
+
transition: width 300ms ease-in-out, border-color 300ms ease-out, inset 150ms ease-out;
|
|
72
72
|
width: var(--kd-local-nav-width);
|
|
73
73
|
}
|
|
74
|
+
nav.scrolled {
|
|
75
|
+
top: calc(var(--kd-local-nav-offset-top) - 8px);
|
|
76
|
+
}
|
|
74
77
|
nav.pinned {
|
|
75
78
|
box-shadow: none;
|
|
76
79
|
}
|
|
@@ -240,7 +243,7 @@ slot[name=search]::slotted(*) {
|
|
|
240
243
|
}
|
|
241
244
|
.pinned .pin-icon {
|
|
242
245
|
transform: rotate(180deg);
|
|
243
|
-
}`;const
|
|
246
|
+
}`;const f={pin:"Pin",unpin:"Unpin",toggleMenu:"Toggle Menu",collapse:"Collapse",menu:"Menu"};let y=(()=>{var l,y,w,E,S,T,L,z,M,C;let j,$,W,P,A,N,O,U,D,q,B,Y,F=[c("kyn-local-nav")],G=[],H=g,I=[],J=[],K=[],Q=[],R=[],V=[],X=[],Z=[],ee=[],te=[],ie=[],ne=[],ae=[],se=[],oe=[],de=[],le=[],re=[],ce=[],he=[];return $=class extends H{constructor(){super(...arguments),l.set(this,i(this,I,!1)),y.set(this,(i(this,J),i(this,K,f))),w.set(this,(i(this,Q),i(this,R,f))),E.set(this,(i(this,V),i(this,X,!1))),S.set(this,(i(this,Z),i(this,ee,!1))),T.set(this,(i(this,te),i(this,ie,void 0))),L.set(this,(i(this,ne),i(this,ae,void 0))),z.set(this,(i(this,se),i(this,oe,void 0))),this._enterTimer=(i(this,de),null),M.set(this,i(this,le,null)),C.set(this,(i(this,re),i(this,ce,void 0))),this._onDocumentClick=(i(this,he),e=>this._handleClickOut(e)),this._onLinkActive=e=>this._handleLinkActive(e),this._debounceScroll=k((()=>{this._handleScroll()}))}get pinned(){return n(this,l,"f")}set pinned(e){a(this,l,e,"f")}get textStrings(){return n(this,y,"f")}set textStrings(e){a(this,y,e,"f")}get _textStrings(){return n(this,w,"f")}set _textStrings(e){a(this,w,e,"f")}get _expanded(){return n(this,E,"f")}set _expanded(e){a(this,E,e,"f")}get _mobileExpanded(){return n(this,S,"f")}set _mobileExpanded(e){a(this,S,e,"f")}get _activeLinkText(){return n(this,T,"f")}set _activeLinkText(e){a(this,T,e,"f")}get _navLinks(){return n(this,L,"f")}set _navLinks(e){a(this,L,e,"f")}get _dividers(){return n(this,z,"f")}set _dividers(e){a(this,z,e,"f")}get _leaveTimer(){return n(this,M,"f")}set _leaveTimer(e){a(this,M,e,"f")}get _navEl(){return n(this,C,"f")}set _navEl(e){a(this,C,e,"f")}render(){return d`
|
|
244
247
|
<nav
|
|
245
248
|
class=${s({"nav--expanded":this._expanded||this.pinned,"nav--expanded-mobile":this._mobileExpanded,pinned:this.pinned})}
|
|
246
249
|
@pointerleave=${e=>this.handlePointerLeave(e)}
|
|
@@ -253,7 +256,7 @@ slot[name=search]::slotted(*) {
|
|
|
253
256
|
@click=${this._handleMobileNavToggle}
|
|
254
257
|
>
|
|
255
258
|
${this._mobileExpanded?this._textStrings.collapse:this._activeLinkText||this._textStrings.menu}
|
|
256
|
-
${o(
|
|
259
|
+
${o(x)}
|
|
257
260
|
</button>
|
|
258
261
|
|
|
259
262
|
<div class="search">
|
|
@@ -271,11 +274,11 @@ slot[name=search]::slotted(*) {
|
|
|
271
274
|
description=${this.pinned?this._textStrings.unpin:this._textStrings.pin}
|
|
272
275
|
@on-click=${e=>this._handleNavToggle(e)}
|
|
273
276
|
>
|
|
274
|
-
<span class="pin-icon" slot="icon"> ${o(
|
|
277
|
+
<span class="pin-icon" slot="icon"> ${o(b)} </span>
|
|
275
278
|
</kyn-button>
|
|
276
279
|
</div>
|
|
277
280
|
</nav>
|
|
278
281
|
|
|
279
282
|
<div class="overlay ${this.pinned?"pinned":""}"></div>
|
|
280
|
-
`}_handleNavToggle(e){this.pinned=!this.pinned;const t=new CustomEvent("on-toggle",{detail:{pinned:this.pinned,origEvent:e}});this.dispatchEvent(t)}_handleMobileNavToggle(){this._mobileExpanded=!this._mobileExpanded}handlePointerEnter(e){"mouse"===e.pointerType&&(null!==this._leaveTimer&&clearTimeout(this._leaveTimer),this._enterTimer=window.setTimeout((()=>{this._expanded=!0}),150))}handlePointerLeave(e){"mouse"===e.pointerType&&(null!==this._enterTimer&&clearTimeout(this._enterTimer),this._leaveTimer=window.setTimeout((()=>{this._expanded=!1}),150))}_updateChildren(){var e,t;(null!==(e=this._navLinks)&&void 0!==e?e:[]).forEach((e=>{e._navExpanded=this._expanded||this.pinned,e._navExpandedMobile=this._mobileExpanded})),(null!==(t=this._dividers)&&void 0!==t?t:[]).forEach((e=>{e._navExpanded=this._expanded||this.pinned||this._mobileExpanded}))}handleSlotChange(){this._updateChildren(),this.requestUpdate()}_handleLinkActive(e){this._activeLinkText=e.detail.text}willUpdate(e){(e.has("_expanded")||e.has("pinned")||e.has("_mobileExpanded"))&&this._updateChildren(),e.has("textStrings")&&(this._textStrings=
|
|
283
|
+
`}_handleNavToggle(e){this.pinned=!this.pinned;const t=new CustomEvent("on-toggle",{detail:{pinned:this.pinned,origEvent:e}});this.dispatchEvent(t)}_handleMobileNavToggle(){this._mobileExpanded=!this._mobileExpanded}handlePointerEnter(e){"mouse"===e.pointerType&&(null!==this._leaveTimer&&clearTimeout(this._leaveTimer),this._enterTimer=window.setTimeout((()=>{this._expanded=!0}),150))}handlePointerLeave(e){"mouse"===e.pointerType&&(null!==this._enterTimer&&clearTimeout(this._enterTimer),this._leaveTimer=window.setTimeout((()=>{this._expanded=!1}),150))}_updateChildren(){var e,t;(null!==(e=this._navLinks)&&void 0!==e?e:[]).forEach((e=>{e._navExpanded=this._expanded||this.pinned,e._navExpandedMobile=this._mobileExpanded})),(null!==(t=this._dividers)&&void 0!==t?t:[]).forEach((e=>{e._navExpanded=this._expanded||this.pinned||this._mobileExpanded}))}handleSlotChange(){this._updateChildren(),this.requestUpdate()}_handleLinkActive(e){this._activeLinkText=e.detail.text}willUpdate(e){(e.has("_expanded")||e.has("pinned")||e.has("_mobileExpanded"))&&this._updateChildren(),e.has("textStrings")&&(this._textStrings=u(f,this.textStrings))}_handleClickOut(e){e.composedPath().includes(this)||(this._expanded=!1)}_handleScroll(){window.scrollY>0?this._navEl.classList.add("scrolled"):this._navEl.classList.remove("scrolled")}firstUpdated(){this._handleScroll()}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this._onDocumentClick),this.addEventListener("on-link-active",this._onLinkActive),window.addEventListener("scroll",this._debounceScroll)}disconnectedCallback(){document.removeEventListener("click",this._onDocumentClick),this.removeEventListener("on-link-active",this._onLinkActive),window.removeEventListener("scroll",this._debounceScroll),super.disconnectedCallback()}},l=new WeakMap,y=new WeakMap,w=new WeakMap,E=new WeakMap,S=new WeakMap,T=new WeakMap,L=new WeakMap,z=new WeakMap,M=new WeakMap,C=new WeakMap,e($,"LocalNav"),(()=>{var e;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(e=H[Symbol.metadata])&&void 0!==e?e:null):void 0;W=[p({type:Boolean})],P=[p({type:Object})],A=[r()],N=[r()],O=[r()],U=[r()],D=[v({selector:"kyn-local-nav-link"})],q=[v({selector:"kyn-local-nav-divider"})],B=[r()],Y=[m("nav")],t($,null,W,{kind:"accessor",name:"pinned",static:!1,private:!1,access:{has:e=>"pinned"in e,get:e=>e.pinned,set:(e,t)=>{e.pinned=t}},metadata:i},I,J),t($,null,P,{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},K,Q),t($,null,A,{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},R,V),t($,null,N,{kind:"accessor",name:"_expanded",static:!1,private:!1,access:{has:e=>"_expanded"in e,get:e=>e._expanded,set:(e,t)=>{e._expanded=t}},metadata:i},X,Z),t($,null,O,{kind:"accessor",name:"_mobileExpanded",static:!1,private:!1,access:{has:e=>"_mobileExpanded"in e,get:e=>e._mobileExpanded,set:(e,t)=>{e._mobileExpanded=t}},metadata:i},ee,te),t($,null,U,{kind:"accessor",name:"_activeLinkText",static:!1,private:!1,access:{has:e=>"_activeLinkText"in e,get:e=>e._activeLinkText,set:(e,t)=>{e._activeLinkText=t}},metadata:i},ie,ne),t($,null,D,{kind:"accessor",name:"_navLinks",static:!1,private:!1,access:{has:e=>"_navLinks"in e,get:e=>e._navLinks,set:(e,t)=>{e._navLinks=t}},metadata:i},ae,se),t($,null,q,{kind:"accessor",name:"_dividers",static:!1,private:!1,access:{has:e=>"_dividers"in e,get:e=>e._dividers,set:(e,t)=>{e._dividers=t}},metadata:i},oe,de),t($,null,B,{kind:"accessor",name:"_leaveTimer",static:!1,private:!1,access:{has:e=>"_leaveTimer"in e,get:e=>e._leaveTimer,set:(e,t)=>{e._leaveTimer=t}},metadata:i},le,re),t($,null,Y,{kind:"accessor",name:"_navEl",static:!1,private:!1,access:{has:e=>"_navEl"in e,get:e=>e._navEl,set:(e,t)=>{e._navEl=t}},metadata:i},ce,he),t(null,j={value:$},F,{kind:"class",name:$.name,metadata:i},null,G),$=j.value,i&&Object.defineProperty($,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),$.styles=h(_),i($,G),$})();export{y as LocalNav};
|
|
281
284
|
//# sourceMappingURL=localNav.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localNav.js","sources":["../../../../src/components/global/localNav/localNav.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { deepmerge } from 'deepmerge-ts';\n\nimport '../../reusable/button';\n\nimport LocalNavScss from './localNav.scss?inline';\n\nimport arrowIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport pinIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/side-drawer-out.svg';\n\nconst _defaultTextStrings = {\n pin: 'Pin',\n unpin: 'Unpin',\n toggleMenu: 'Toggle Menu',\n collapse: 'Collapse',\n menu: 'Menu',\n};\n\n/**\n * The global Side Navigation component.\n * @slot unnamed - The default slot, for local nav links.\n * @slot search - Slot for a search input\n * @fires on-toggle - Captures the click event and emits the pinned state and original event details. `detail:{ pinned: boolean, origEvent: Event }`\n */\n@customElement('kyn-local-nav')\nexport class LocalNav extends LitElement {\n static override styles = unsafeCSS(LocalNavScss);\n\n /** Local nav pinned state. */\n @property({ type: Boolean })\n accessor pinned = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /** Local nav desktop expanded state.\n * @internal\n */\n @state()\n accessor _expanded = false;\n\n /** Local nav mobile expanded state.\n * @internal\n */\n @state()\n accessor _mobileExpanded = false;\n\n /** Active Link text.\n * @internal\n */\n @state()\n accessor _activeLinkText!: string;\n\n /** Queries top-level slotted links.\n * @internal\n */\n @queryAssignedElements({ selector: 'kyn-local-nav-link' })\n accessor _navLinks!: HTMLElement[];\n\n /** Queries top-level slotted dividers.\n * @internal\n */\n @queryAssignedElements({ selector: 'kyn-local-nav-divider' })\n accessor _dividers!: HTMLElement[];\n\n /** Timeout function to delay flyout open.\n * @internal\n */\n private _enterTimer: number | null = null;\n\n /** Timeout function to delay flyout close.\n * @internal\n */\n @state()\n accessor _leaveTimer: number | null = null;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onLinkActive = (e: Event) =>\n this._handleLinkActive(e as CustomEvent<{ text: string }>);\n\n override render() {\n return html`\n <nav\n class=${classMap({\n 'nav--expanded': this._expanded || this.pinned,\n 'nav--expanded-mobile': this._mobileExpanded,\n pinned: this.pinned,\n })}\n @pointerleave=${(e: PointerEvent) => this.handlePointerLeave(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <button\n class=\"mobile-toggle\"\n title=${this._textStrings.toggleMenu}\n aria-label=${this._textStrings.toggleMenu}\n @click=${this._handleMobileNavToggle}\n >\n ${this._mobileExpanded\n ? this._textStrings.collapse\n : this._activeLinkText || this._textStrings.menu}\n ${unsafeSVG(arrowIcon)}\n </button>\n\n <div class=\"search\">\n <slot name=\"search\"></slot>\n </div>\n\n <div class=\"links\">\n <slot @slotchange=${this.handleSlotChange}></slot>\n </div>\n\n <div class=\"toggle-container\">\n <kyn-button\n kind=\"ghost\"\n size=\"small\"\n description=${this.pinned\n ? this._textStrings.unpin\n : this._textStrings.pin}\n @on-click=${(e: Event) => this._handleNavToggle(e)}\n >\n <span class=\"pin-icon\" slot=\"icon\"> ${unsafeSVG(pinIcon)} </span>\n </kyn-button>\n </div>\n </nav>\n\n <div class=\"overlay ${this.pinned ? 'pinned' : ''}\"></div>\n `;\n }\n\n private _handleNavToggle(e: Event) {\n this.pinned = !this.pinned;\n\n const event = new CustomEvent('on-toggle', {\n detail: { pinned: this.pinned, origEvent: e },\n });\n this.dispatchEvent(event);\n }\n\n private _handleMobileNavToggle() {\n this._mobileExpanded = !this._mobileExpanded;\n }\n\n private handlePointerEnter(e: PointerEvent) {\n if (e.pointerType === 'mouse') {\n if (this._leaveTimer !== null) clearTimeout(this._leaveTimer);\n\n this._enterTimer = window.setTimeout(() => {\n this._expanded = true;\n }, 150);\n }\n }\n\n private handlePointerLeave(e: PointerEvent) {\n if (e.pointerType === 'mouse') {\n if (this._enterTimer !== null) clearTimeout(this._enterTimer);\n\n this._leaveTimer = window.setTimeout(() => {\n this._expanded = false;\n }, 150);\n }\n }\n\n private _updateChildren() {\n (this._navLinks ?? []).forEach((link: HTMLElement) => {\n (link as any)._navExpanded = this._expanded || this.pinned;\n (link as any)._navExpandedMobile = this._mobileExpanded;\n });\n\n (this._dividers ?? []).forEach((divider: HTMLElement) => {\n (divider as any)._navExpanded =\n this._expanded || this.pinned || this._mobileExpanded;\n });\n }\n\n private handleSlotChange() {\n this._updateChildren();\n this.requestUpdate();\n }\n\n private _handleLinkActive(e: CustomEvent<{ text: string }>) {\n this._activeLinkText = e.detail.text;\n }\n\n override willUpdate(changedProps: Map<string | number | symbol, unknown>) {\n if (\n changedProps.has('_expanded') ||\n changedProps.has('pinned') ||\n changedProps.has('_mobileExpanded')\n ) {\n this._updateChildren();\n }\n\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this._expanded = false;\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n document.addEventListener('click', this._onDocumentClick);\n this.addEventListener('on-link-active', this._onLinkActive);\n }\n\n override disconnectedCallback() {\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-link-active', this._onLinkActive);\n super.disconnectedCallback();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-local-nav': LocalNav;\n }\n}\n"],"names":["_defaultTextStrings","pin","unpin","toggleMenu","collapse","menu","LocalNav","customElement","LitElement","_classThis","_classSuper","_LocalNav_pinned_accessor_storage","set","this","__runInitializers","_pinned_initializers","_LocalNav_textStrings_accessor_storage","_pinned_extraInitializers","_textStrings_initializers","_LocalNav__textStrings_accessor_storage","_textStrings_extraInitializers","__textStrings_initializers","_LocalNav__expanded_accessor_storage","__textStrings_extraInitializers","__expanded_initializers","_LocalNav__mobileExpanded_accessor_storage","__expanded_extraInitializers","__mobileExpanded_initializers","_LocalNav__activeLinkText_accessor_storage","__mobileExpanded_extraInitializers","__activeLinkText_initializers","_LocalNav__navLinks_accessor_storage","__activeLinkText_extraInitializers","__navLinks_initializers","_LocalNav__dividers_accessor_storage","__navLinks_extraInitializers","__dividers_initializers","_enterTimer","__dividers_extraInitializers","_LocalNav__leaveTimer_accessor_storage","__leaveTimer_initializers","_onDocumentClick","__leaveTimer_extraInitializers","e","_handleClickOut","_onLinkActive","_handleLinkActive","pinned","__classPrivateFieldGet","value","__classPrivateFieldSet","textStrings","_textStrings","_expanded","_mobileExpanded","_activeLinkText","_navLinks","_dividers","_leaveTimer","render","html","classMap","handlePointerLeave","handlePointerEnter","_handleMobileNavToggle","unsafeSVG","arrowIcon","handleSlotChange","_handleNavToggle","pinIcon","event","CustomEvent","detail","origEvent","dispatchEvent","pointerType","clearTimeout","window","setTimeout","_updateChildren","_a","forEach","link","_navExpanded","_navExpandedMobile","_b","divider","requestUpdate","text","willUpdate","changedProps","has","deepmerge","composedPath","includes","connectedCallback","super","document","addEventListener","disconnectedCallback","removeEventListener","_pinned_decorators","property","type","Boolean","_textStrings_decorators","Object","__textStrings_decorators","state","__expanded_decorators","__mobileExpanded_decorators","__activeLinkText_decorators","__navLinks_decorators","queryAssignedElements","selector","__dividers_decorators","__leaveTimer_decorators","__esDecorate","kind","name","static","private","access","obj","get","metadata","_metadata","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","LocalNavScss"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"localNav.js","sources":["../../../../src/components/global/localNav/localNav.ts"],"sourcesContent":["import { unsafeSVG } from 'lit-html/directives/unsafe-svg.js';\nimport { LitElement, html, unsafeCSS } from 'lit';\nimport {\n customElement,\n property,\n state,\n query,\n queryAssignedElements,\n} from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { deepmerge } from 'deepmerge-ts';\nimport { debounce } from '../../../common/helpers/helpers';\n\nimport '../../reusable/button';\n\nimport LocalNavScss from './localNav.scss?inline';\n\nimport arrowIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/16/chevron-down.svg';\nimport pinIcon from '@kyndryl-design-system/shidoka-icons/svg/monochrome/20/side-drawer-out.svg';\n\nconst _defaultTextStrings = {\n pin: 'Pin',\n unpin: 'Unpin',\n toggleMenu: 'Toggle Menu',\n collapse: 'Collapse',\n menu: 'Menu',\n};\n\n/**\n * The global Side Navigation component.\n * @slot unnamed - The default slot, for local nav links.\n * @slot search - Slot for a search input\n * @fires on-toggle - Captures the click event and emits the pinned state and original event details. `detail:{ pinned: boolean, origEvent: Event }`\n */\n@customElement('kyn-local-nav')\nexport class LocalNav extends LitElement {\n static override styles = unsafeCSS(LocalNavScss);\n\n /** Local nav pinned state. */\n @property({ type: Boolean })\n accessor pinned = false;\n\n /** Text string customization. */\n @property({ type: Object })\n accessor textStrings = _defaultTextStrings;\n\n /** Internal text strings.\n * @internal\n */\n @state()\n accessor _textStrings = _defaultTextStrings;\n\n /** Local nav desktop expanded state.\n * @internal\n */\n @state()\n accessor _expanded = false;\n\n /** Local nav mobile expanded state.\n * @internal\n */\n @state()\n accessor _mobileExpanded = false;\n\n /** Active Link text.\n * @internal\n */\n @state()\n accessor _activeLinkText!: string;\n\n /** Queries top-level slotted links.\n * @internal\n */\n @queryAssignedElements({ selector: 'kyn-local-nav-link' })\n accessor _navLinks!: HTMLElement[];\n\n /** Queries top-level slotted dividers.\n * @internal\n */\n @queryAssignedElements({ selector: 'kyn-local-nav-divider' })\n accessor _dividers!: HTMLElement[];\n\n /** Timeout function to delay flyout open.\n * @internal\n */\n private _enterTimer: number | null = null;\n\n /** Timeout function to delay flyout close.\n * @internal\n */\n @state()\n accessor _leaveTimer: number | null = null;\n\n /** @internal */\n @query('nav')\n accessor _navEl!: HTMLElement;\n\n private _onDocumentClick = (e: Event) => this._handleClickOut(e);\n private _onLinkActive = (e: Event) =>\n this._handleLinkActive(e as CustomEvent<{ text: string }>);\n\n override render() {\n return html`\n <nav\n class=${classMap({\n 'nav--expanded': this._expanded || this.pinned,\n 'nav--expanded-mobile': this._mobileExpanded,\n pinned: this.pinned,\n })}\n @pointerleave=${(e: PointerEvent) => this.handlePointerLeave(e)}\n @pointerenter=${(e: PointerEvent) => this.handlePointerEnter(e)}\n >\n <button\n class=\"mobile-toggle\"\n title=${this._textStrings.toggleMenu}\n aria-label=${this._textStrings.toggleMenu}\n @click=${this._handleMobileNavToggle}\n >\n ${this._mobileExpanded\n ? this._textStrings.collapse\n : this._activeLinkText || this._textStrings.menu}\n ${unsafeSVG(arrowIcon)}\n </button>\n\n <div class=\"search\">\n <slot name=\"search\"></slot>\n </div>\n\n <div class=\"links\">\n <slot @slotchange=${this.handleSlotChange}></slot>\n </div>\n\n <div class=\"toggle-container\">\n <kyn-button\n kind=\"ghost\"\n size=\"small\"\n description=${this.pinned\n ? this._textStrings.unpin\n : this._textStrings.pin}\n @on-click=${(e: Event) => this._handleNavToggle(e)}\n >\n <span class=\"pin-icon\" slot=\"icon\"> ${unsafeSVG(pinIcon)} </span>\n </kyn-button>\n </div>\n </nav>\n\n <div class=\"overlay ${this.pinned ? 'pinned' : ''}\"></div>\n `;\n }\n\n private _handleNavToggle(e: Event) {\n this.pinned = !this.pinned;\n\n const event = new CustomEvent('on-toggle', {\n detail: { pinned: this.pinned, origEvent: e },\n });\n this.dispatchEvent(event);\n }\n\n private _handleMobileNavToggle() {\n this._mobileExpanded = !this._mobileExpanded;\n }\n\n private handlePointerEnter(e: PointerEvent) {\n if (e.pointerType === 'mouse') {\n if (this._leaveTimer !== null) clearTimeout(this._leaveTimer);\n\n this._enterTimer = window.setTimeout(() => {\n this._expanded = true;\n }, 150);\n }\n }\n\n private handlePointerLeave(e: PointerEvent) {\n if (e.pointerType === 'mouse') {\n if (this._enterTimer !== null) clearTimeout(this._enterTimer);\n\n this._leaveTimer = window.setTimeout(() => {\n this._expanded = false;\n }, 150);\n }\n }\n\n private _updateChildren() {\n (this._navLinks ?? []).forEach((link: HTMLElement) => {\n (link as any)._navExpanded = this._expanded || this.pinned;\n (link as any)._navExpandedMobile = this._mobileExpanded;\n });\n\n (this._dividers ?? []).forEach((divider: HTMLElement) => {\n (divider as any)._navExpanded =\n this._expanded || this.pinned || this._mobileExpanded;\n });\n }\n\n private handleSlotChange() {\n this._updateChildren();\n this.requestUpdate();\n }\n\n private _handleLinkActive(e: CustomEvent<{ text: string }>) {\n this._activeLinkText = e.detail.text;\n }\n\n override willUpdate(changedProps: Map<string | number | symbol, unknown>) {\n if (\n changedProps.has('_expanded') ||\n changedProps.has('pinned') ||\n changedProps.has('_mobileExpanded')\n ) {\n this._updateChildren();\n }\n\n if (changedProps.has('textStrings')) {\n this._textStrings = deepmerge(_defaultTextStrings, this.textStrings);\n }\n }\n\n private _handleClickOut(e: Event) {\n if (!e.composedPath().includes(this)) {\n this._expanded = false;\n }\n }\n\n /** Morph header on scroll.\n * @internal */\n private _handleScroll() {\n if (window.scrollY > 0) {\n this._navEl.classList.add('scrolled');\n } else {\n this._navEl.classList.remove('scrolled');\n }\n }\n\n /** @internal */\n private _debounceScroll = debounce(() => {\n this._handleScroll();\n });\n\n override firstUpdated() {\n this._handleScroll();\n }\n\n override connectedCallback() {\n super.connectedCallback();\n\n document.addEventListener('click', this._onDocumentClick);\n this.addEventListener('on-link-active', this._onLinkActive);\n window.addEventListener('scroll', this._debounceScroll);\n }\n\n override disconnectedCallback() {\n document.removeEventListener('click', this._onDocumentClick);\n this.removeEventListener('on-link-active', this._onLinkActive);\n window.removeEventListener('scroll', this._debounceScroll);\n\n super.disconnectedCallback();\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'kyn-local-nav': LocalNav;\n }\n}\n"],"names":["_defaultTextStrings","pin","unpin","toggleMenu","collapse","menu","LocalNav","customElement","LitElement","_classThis","_classSuper","_LocalNav_pinned_accessor_storage","set","this","__runInitializers","_pinned_initializers","_LocalNav_textStrings_accessor_storage","_pinned_extraInitializers","_textStrings_initializers","_LocalNav__textStrings_accessor_storage","_textStrings_extraInitializers","__textStrings_initializers","_LocalNav__expanded_accessor_storage","__textStrings_extraInitializers","__expanded_initializers","_LocalNav__mobileExpanded_accessor_storage","__expanded_extraInitializers","__mobileExpanded_initializers","_LocalNav__activeLinkText_accessor_storage","__mobileExpanded_extraInitializers","__activeLinkText_initializers","_LocalNav__navLinks_accessor_storage","__activeLinkText_extraInitializers","__navLinks_initializers","_LocalNav__dividers_accessor_storage","__navLinks_extraInitializers","__dividers_initializers","_enterTimer","__dividers_extraInitializers","_LocalNav__leaveTimer_accessor_storage","__leaveTimer_initializers","_LocalNav__navEl_accessor_storage","__leaveTimer_extraInitializers","__navEl_initializers","_onDocumentClick","__navEl_extraInitializers","e","_handleClickOut","_onLinkActive","_handleLinkActive","_debounceScroll","debounce","_handleScroll","pinned","__classPrivateFieldGet","value","__classPrivateFieldSet","textStrings","_textStrings","_expanded","_mobileExpanded","_activeLinkText","_navLinks","_dividers","_leaveTimer","_navEl","render","html","classMap","handlePointerLeave","handlePointerEnter","_handleMobileNavToggle","unsafeSVG","arrowIcon","handleSlotChange","_handleNavToggle","pinIcon","event","CustomEvent","detail","origEvent","dispatchEvent","pointerType","clearTimeout","window","setTimeout","_updateChildren","_a","forEach","link","_navExpanded","_navExpandedMobile","_b","divider","requestUpdate","text","willUpdate","changedProps","has","deepmerge","composedPath","includes","scrollY","classList","add","remove","firstUpdated","connectedCallback","super","document","addEventListener","disconnectedCallback","removeEventListener","_pinned_decorators","property","type","Boolean","_textStrings_decorators","Object","__textStrings_decorators","state","__expanded_decorators","__mobileExpanded_decorators","__activeLinkText_decorators","__navLinks_decorators","queryAssignedElements","selector","__dividers_decorators","__leaveTimer_decorators","query","__esDecorate","kind","name","static","private","access","obj","get","metadata","_metadata","__navEl_decorators","_classDescriptor","_classDecorators","_classExtraInitializers","styles","unsafeCSS","LocalNavScss"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{Widget}from"./widget.js";export{WidgetDragHandle}from"./widgetDragHandle.js";export{WidgetGridstack}from"./widgetGridstack.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-icons-DALQfz_R.js";import"../badge/badge.js";import"../../../vendor/query-selector-shadow-dom-
|
|
1
|
+
export{Widget}from"./widget.js";export{WidgetDragHandle}from"./widgetDragHandle.js";export{WidgetGridstack}from"./widgetGridstack.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-icons-DALQfz_R.js";import"../badge/badge.js";import"../../../vendor/query-selector-shadow-dom-Bcu6VFLW.js";import"../../../common/helpers/helpers.js";import"../../../common/helpers/gridstack.js";import"../../../vendor/gridstack-D_3XX7W5.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as o,t as n,r as d,n as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{x as g}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as h}from"../../../vendor/lit-element-DxLLCKb1.js";import{
|
|
1
|
+
import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js";import{i as r,a as o,t as n,r as d,n as c}from"../../../vendor/@lit/reactive-element-f91Vet7N.js";import{x as g}from"../../../vendor/lit-html-fDTfWwFR.js";import{i as h}from"../../../vendor/lit-element-DxLLCKb1.js";import{a as l}from"../../../vendor/query-selector-shadow-dom-Bcu6VFLW.js";import{debounce as p}from"../../../common/helpers/helpers.js";import{GetConfig as m}from"../../../common/helpers/gridstack.js";import{G as k}from"../../../vendor/gridstack-D_3XX7W5.js";var u=r`*,
|
|
2
2
|
*::before,
|
|
3
3
|
*::after {
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -22,9 +22,9 @@ import{_ as t,a as e,b as i,c as a,d as s}from"../../../vendor/tslib-Ac8XvvSX.js
|
|
|
22
22
|
.grid-wrapper.compact {
|
|
23
23
|
margin: -8px;
|
|
24
24
|
}
|
|
25
|
-
}`;let f=(()=>{var r,f,b,w,v,y,_,C;let W,S,j,M,D,x,E,z,L,B,
|
|
25
|
+
}`;let f=(()=>{var r,f,b,w,v,y,_,C;let W,S,j,M,D,x,E,z,L,B,A=[n("kyn-widget-gridstack")],G=[],O=h,q=[],R=[],P=[],U=[],H=[],V=[],$=[],F=[],I=[],J=[],K=[],N=[],Q=[],T=[],X=[],Y=[];return S=class extends O{constructor(){super(...arguments),r.set(this,i(this,q,{})),f.set(this,(i(this,R),i(this,P,void 0))),b.set(this,(i(this,U),i(this,H,void 0))),w.set(this,(i(this,V),i(this,$,k))),v.set(this,(i(this,F),i(this,I,void 0))),y.set(this,(i(this,J),i(this,K,!1))),_.set(this,(i(this,N),i(this,Q,!1))),C.set(this,(i(this,T),i(this,X,""))),this._debounceResize=(i(this,Y),p((()=>{this._setBreakpoint(),this._setMargin()})))}get layout(){return a(this,r,"f")}set layout(t){s(this,r,t,"f")}get gridstackConfig(){return a(this,f,"f")}set gridstackConfig(t){s(this,f,t,"f")}get _gridstackConfig(){return a(this,b,"f")}set _gridstackConfig(t){s(this,b,t,"f")}get gridStack(){return a(this,w,"f")}set gridStack(t){s(this,w,t,"f")}get grid(){return a(this,v,"f")}set grid(t){s(this,v,t,"f")}get compact(){return a(this,y,"f")}set compact(t){s(this,y,t,"f")}get wholeWidgetDraggable(){return a(this,_,"f")}set wholeWidgetDraggable(t){s(this,_,t,"f")}get _breakpoint(){return a(this,C,"f")}set _breakpoint(t){s(this,C,t,"f")}render(){return g`
|
|
26
26
|
<div class="grid-wrapper ${this.compact?"compact":""}">
|
|
27
27
|
<slot></slot>
|
|
28
28
|
</div>
|
|
29
|
-
`}firstUpdated(){this._setBreakpoint()}willUpdate(t){(t.has("compact")||t.has("wholeWidgetDraggable"))&&(this._gridstackConfig=this.gridstackConfig||m(this.compact,this.wholeWidgetDraggable)),this.layout&&this._breakpoint&&(t.has("_breakpoint")||t.has("layout"))&&this._updateLayout()}_saveLayout(){let t=this.grid.save(!1);t=t.map((t=>({...t,w:t.w||t.minW,h:t.h||t.minH}))),this.layout[this._breakpoint]=t;const e=new CustomEvent("on-grid-save",{detail:{layout:this.layout}});this.dispatchEvent(e)}_initGridstack(){this.grid&&this.grid.destroy(!1);const t=this.querySelector(".grid-stack");this.grid=this.gridStack.init(this._gridstackConfig,t),this._setMargin(),this.grid.on("dragstart",(t=>{const e=t.target;l("kyn-widget",e).dragActive=!0})),this.grid.on("dragstop",(t=>{const e=t.target;l("kyn-widget",e).dragActive=!1,this._saveLayout()})),this.grid.on("resizestop",(()=>{this._saveLayout()}));const e=new CustomEvent("on-grid-init",{detail:{grid:this.grid,gridStack:this.gridStack}});this.dispatchEvent(e)}updated(t){(t.has("gridstackConfig")||t.has("_gridstackConfig"))&&this._initGridstack(),t.has("compact")&&this._updateWidgetsDensity()}_updateWidgetsDensity(){this.querySelectorAll("kyn-widget").forEach((t=>{t.compact=this.compact}))}_updateLayout(){const t=this.layout[this._breakpoint]||this.layout.max;this.grid&&(this.grid.load(t),this.grid.setAnimation(!0))}connectedCallback(){super.connectedCallback(),null===window||void 0===window||window.addEventListener("resize",this._debounceResize)}disconnectedCallback(){null===window||void 0===window||window.removeEventListener("resize",this._debounceResize),super.disconnectedCallback()}_setBreakpoint(){this._breakpoint=getComputedStyle(document.documentElement).getPropertyValue("--kd-current-breakpoint")}_setMargin(){this.gridstackConfig||this.compact||("sm"===this._breakpoint?this.grid.margin("8"):this.grid.margin("16"))}},r=new WeakMap,f=new WeakMap,b=new WeakMap,w=new WeakMap,v=new WeakMap,y=new WeakMap,_=new WeakMap,C=new WeakMap,t(S,"WidgetGridstack"),(()=>{var t;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(t=
|
|
29
|
+
`}firstUpdated(){this._setBreakpoint()}willUpdate(t){(t.has("compact")||t.has("wholeWidgetDraggable"))&&(this._gridstackConfig=this.gridstackConfig||m(this.compact,this.wholeWidgetDraggable)),this.layout&&this._breakpoint&&(t.has("_breakpoint")||t.has("layout"))&&this._updateLayout()}_saveLayout(){let t=this.grid.save(!1);t=t.map((t=>({...t,w:t.w||t.minW,h:t.h||t.minH}))),this.layout[this._breakpoint]=t;const e=new CustomEvent("on-grid-save",{detail:{layout:this.layout}});this.dispatchEvent(e)}_initGridstack(){this.grid&&this.grid.destroy(!1);const t=this.querySelector(".grid-stack");this.grid=this.gridStack.init(this._gridstackConfig,t),this._setMargin(),this.grid.on("dragstart",(t=>{const e=t.target;l("kyn-widget",e).dragActive=!0})),this.grid.on("dragstop",(t=>{const e=t.target;l("kyn-widget",e).dragActive=!1,this._saveLayout()})),this.grid.on("resizestop",(()=>{this._saveLayout()}));const e=new CustomEvent("on-grid-init",{detail:{grid:this.grid,gridStack:this.gridStack}});this.dispatchEvent(e)}updated(t){(t.has("gridstackConfig")||t.has("_gridstackConfig"))&&this._initGridstack(),t.has("compact")&&this._updateWidgetsDensity()}_updateWidgetsDensity(){this.querySelectorAll("kyn-widget").forEach((t=>{t.compact=this.compact}))}_updateLayout(){const t=this.layout[this._breakpoint]||this.layout.max;this.grid&&(this.grid.load(t),this.grid.setAnimation(!0))}connectedCallback(){super.connectedCallback(),null===window||void 0===window||window.addEventListener("resize",this._debounceResize)}disconnectedCallback(){null===window||void 0===window||window.removeEventListener("resize",this._debounceResize),super.disconnectedCallback()}_setBreakpoint(){this._breakpoint=getComputedStyle(document.documentElement).getPropertyValue("--kd-current-breakpoint")}_setMargin(){this.gridstackConfig||this.compact||("sm"===this._breakpoint?this.grid.margin("8"):this.grid.margin("16"))}},r=new WeakMap,f=new WeakMap,b=new WeakMap,w=new WeakMap,v=new WeakMap,y=new WeakMap,_=new WeakMap,C=new WeakMap,t(S,"WidgetGridstack"),(()=>{var t;const i="function"==typeof Symbol&&Symbol.metadata?Object.create(null!==(t=O[Symbol.metadata])&&void 0!==t?t:null):void 0;j=[c({type:Object})],M=[c({type:Object})],D=[o()],x=[c({attribute:!1})],E=[c({attribute:!1})],z=[c({type:Boolean})],L=[c({type:Boolean})],B=[o()],e(S,null,j,{kind:"accessor",name:"layout",static:!1,private:!1,access:{has:t=>"layout"in t,get:t=>t.layout,set:(t,e)=>{t.layout=e}},metadata:i},q,R),e(S,null,M,{kind:"accessor",name:"gridstackConfig",static:!1,private:!1,access:{has:t=>"gridstackConfig"in t,get:t=>t.gridstackConfig,set:(t,e)=>{t.gridstackConfig=e}},metadata:i},P,U),e(S,null,D,{kind:"accessor",name:"_gridstackConfig",static:!1,private:!1,access:{has:t=>"_gridstackConfig"in t,get:t=>t._gridstackConfig,set:(t,e)=>{t._gridstackConfig=e}},metadata:i},H,V),e(S,null,x,{kind:"accessor",name:"gridStack",static:!1,private:!1,access:{has:t=>"gridStack"in t,get:t=>t.gridStack,set:(t,e)=>{t.gridStack=e}},metadata:i},$,F),e(S,null,E,{kind:"accessor",name:"grid",static:!1,private:!1,access:{has:t=>"grid"in t,get:t=>t.grid,set:(t,e)=>{t.grid=e}},metadata:i},I,J),e(S,null,z,{kind:"accessor",name:"compact",static:!1,private:!1,access:{has:t=>"compact"in t,get:t=>t.compact,set:(t,e)=>{t.compact=e}},metadata:i},K,N),e(S,null,L,{kind:"accessor",name:"wholeWidgetDraggable",static:!1,private:!1,access:{has:t=>"wholeWidgetDraggable"in t,get:t=>t.wholeWidgetDraggable,set:(t,e)=>{t.wholeWidgetDraggable=e}},metadata:i},Q,T),e(S,null,B,{kind:"accessor",name:"_breakpoint",static:!1,private:!1,access:{has:t=>"_breakpoint"in t,get:t=>t._breakpoint,set:(t,e)=>{t._breakpoint=e}},metadata:i},X,Y),e(null,W={value:S},A,{kind:"class",name:S.name,metadata:i},null,G),S=W.value,i&&Object.defineProperty(S,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:i})})(),S.styles=d(u),i(S,G),S})();export{f as WidgetGridstack};
|
|
30
30
|
//# sourceMappingURL=widgetGridstack.js.map
|
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";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-D_ZtzGGD.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/
|
|
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/query-selector-shadow-dom-Bcu6VFLW.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-D_ZtzGGD.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/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
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function e(e,t=document,l=null){return n(e,!0,t,l)}function t(e,t=document,l=null){return n(e,!1,t,l)}function n(e,t,n,r=null){e=function(e){function t(){l&&(r.length>0&&/^[~+>]$/.test(r[r.length-1])&&r.push(" "),r.push(l))}var n,l,o,u,r=[],s=[0],h=0,c=/(?:[^\\]|(?:^|[^\\])(?:\\\\)+)$/,a=/^\s+$/,g=[/\s+|\/\*|["'>~+[(]/g,/\s+|\/\*|["'[\]()]/g,/\s+|\/\*|["'[\]()]/g,null,/\*\//g];for(e=e.trim();;){if(l="",(o=g[s[s.length-1]]).lastIndex=h,!(n=o.exec(e))){l=e.substr(h),t();break}if((u=h)<(h=o.lastIndex)-n[0].length&&(l=e.substring(u,h-n[0].length)),s[s.length-1]<3){if(t(),"["===n[0])s.push(1);else if("("===n[0])s.push(2);else if(/^["']$/.test(n[0]))s.push(3),g[3]=new RegExp(n[0],"g");else if("/*"===n[0])s.push(4);else if(/^[\])]$/.test(n[0])&&s.length>0)s.pop();else if(/^(?:\s+|[~+>])$/.test(n[0])&&(r.length>0&&!a.test(r[r.length-1])&&0===s[s.length-1]&&r.push(" "),1===s[s.length-1]&&5===r.length&&"="===r[2].charAt(r[2].length-1)&&(r[4]=" "+r[4]),a.test(n[0])))continue;r.push(n[0])}else r[r.length-1]+=l,c.test(r[r.length-1])&&(4===s[s.length-1]&&(r.length<2||a.test(r[r.length-2])?r.pop():r[r.length-1]=" ",n[0]=""),s.pop()),r[r.length-1]+=n[0]}return r.join("").trim()}(e);let s=n.querySelector(e);if(document.head.createShadowRoot||document.head.attachShadow){if(!t&&s)return s;return l(e,",").reduce(((e,s)=>{if(!t&&e)return e;const h=l(s.replace(/^\s+/g,"").replace(/\s*([>+~]+)\s*/g,"$1")," ").filter((e=>!!e)).map((e=>l(e,">"))),c=h.length-1,a=function(e=null,t,n=null){let l=[];if(n)l=n;else{const e=function(t){for(let n=0;n<t.length;n++){const o=t[n];l.push(o),o.shadowRoot&&e(o.shadowRoot.querySelectorAll("*"))}};t.shadowRoot&&e(t.shadowRoot.querySelectorAll("*")),e(t.querySelectorAll("*"))}return e?l.filter((t=>t.matches(e))):l}(h[c][h[c].length-1],n,r),g=function(e,t,n){return l=>{let r=t,s=l,h=!1;for(;s&&!o(s);){let t=!0;if(1===e[r].length)t=s.matches(e[r]);else{const l=[].concat(e[r]).reverse();let o=s;for(const e of l){if(!o||!o.matches(e)){t=!1;break}o=u(o,n)}}if(t&&0===r){h=!0;break}t&&r--,s=u(s,n)}return h}}(h,c,n);return t?e=e.concat(a.filter(g)):(e=a.find(g))||null}),t?[]:null)}return t?n.querySelectorAll(e):s}function l(e,t){return e.match(/\\?.|^$/g).reduce(((e,n)=>('"'!==n||e.sQuote?"'"!==n||e.quote?e.quote||e.sQuote||n!==t?e.a[e.a.length-1]+=n:e.a.push(""):(e.sQuote^=1,e.a[e.a.length-1]+=n):(e.quote^=1,e.a[e.a.length-1]+=n),e)),{a:[""]}).a}function o(e){return e.nodeType===Node.DOCUMENT_FRAGMENT_NODE||e.nodeType===Node.DOCUMENT_NODE}function u(e,t){const n=e.parentNode;return n&&n.host&&11===n.nodeType?n.host:n===t?null:n}export{t as a,e as q};
|
|
2
|
+
//# sourceMappingURL=query-selector-shadow-dom-Bcu6VFLW.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-selector-shadow-dom-D9NRI6Ow.js","sources":["../../node_modules/query-selector-shadow-dom/src/querySelectorDeep.js","../../node_modules/query-selector-shadow-dom/src/normalize.js"],"sourcesContent":["import { normalizeSelector } from './normalize';\n\n/**\n* Finds first matching elements on the page that may be in a shadow root using a complex selector of n-depth\n*\n* Don't have to specify all shadow roots to button, tree is travered to find the correct element\n*\n* Example querySelectorAllDeep('downloads-item:nth-child(4) #remove');\n*\n* Example should work on chrome://downloads outputting the remove button inside of a download card component\n*\n* Example find first active download link element querySelectorDeep('#downloads-list .is-active a[href^=\"https://\"]');\n*\n* Another example querySelectorAllDeep('#downloads-list div#title-area + a');\ne.g.\n*/\nexport function querySelectorAllDeep(selector, root = document, allElements = null) {\n return _querySelectorDeep(selector, true, root, allElements);\n}\n\nexport function querySelectorDeep(selector, root = document, allElements = null) {\n return _querySelectorDeep(selector, false, root, allElements);\n}\n\nfunction _querySelectorDeep(selector, findMany, root, allElements = null) {\n selector = normalizeSelector(selector);\n let lightElement = root.querySelector(selector);\n\n if (document.head.createShadowRoot || document.head.attachShadow) {\n // no need to do any special if selector matches something specific in light-dom\n if (!findMany && lightElement) {\n return lightElement;\n }\n\n // split on commas because those are a logical divide in the operation\n const selectionsToMake = splitByCharacterUnlessQuoted(selector, ',');\n\n return selectionsToMake.reduce((acc, minimalSelector) => {\n // if not finding many just reduce the first match\n if (!findMany && acc) {\n return acc;\n }\n // do best to support complex selectors and split the query\n const splitSelector = splitByCharacterUnlessQuoted(minimalSelector\n //remove white space at start of selector\n .replace(/^\\s+/g, '')\n .replace(/\\s*([>+~]+)\\s*/g, '$1'), ' ')\n // filter out entry white selectors\n .filter((entry) => !!entry)\n // convert \"a > b\" to [\"a\", \"b\"]\n .map((entry) => splitByCharacterUnlessQuoted(entry, '>'));\n\n const possibleElementsIndex = splitSelector.length - 1;\n const lastSplitPart = splitSelector[possibleElementsIndex][splitSelector[possibleElementsIndex].length - 1];\n const possibleElements = collectAllElementsDeep(lastSplitPart, root, allElements);\n const findElements = findMatchingElement(splitSelector, possibleElementsIndex, root);\n if (findMany) {\n acc = acc.concat(possibleElements.filter(findElements));\n return acc;\n } else {\n acc = possibleElements.find(findElements);\n return acc || null;\n }\n }, findMany ? [] : null);\n\n\n } else {\n if (!findMany) {\n return lightElement;\n } else {\n return root.querySelectorAll(selector);\n }\n }\n\n}\n\nfunction findMatchingElement(splitSelector, possibleElementsIndex, root) {\n return (element) => {\n let position = possibleElementsIndex;\n let parent = element;\n let foundElement = false;\n while (parent && !isDocumentNode(parent)) {\n let foundMatch = true;\n if (splitSelector[position].length === 1) {\n foundMatch = parent.matches(splitSelector[position]);\n } else {\n // selector is in the format \"a > b\"\n // make sure a few parents match in order\n const reversedParts = ([]).concat(splitSelector[position]).reverse();\n let newParent = parent;\n for (const part of reversedParts) {\n if (!newParent || !newParent.matches(part)) {\n foundMatch = false;\n break;\n }\n newParent = findParentOrHost(newParent, root);\n }\n }\n\n if (foundMatch && position === 0) {\n foundElement = true;\n break;\n }\n if (foundMatch) {\n position--;\n }\n parent = findParentOrHost(parent, root);\n }\n return foundElement;\n };\n\n}\n\nfunction splitByCharacterUnlessQuoted(selector, character) {\n return selector.match(/\\\\?.|^$/g).reduce((p, c) => {\n if (c === '\"' && !p.sQuote) {\n p.quote ^= 1;\n p.a[p.a.length - 1] += c;\n } else if (c === '\\'' && !p.quote) {\n p.sQuote ^= 1;\n p.a[p.a.length - 1] += c;\n\n } else if (!p.quote && !p.sQuote && c === character) {\n p.a.push('');\n } else {\n p.a[p.a.length - 1] += c;\n }\n return p;\n }, { a: [''] }).a;\n}\n\n/**\n * Checks if the node is a document node or not.\n * @param {Node} node\n * @returns {node is Document | DocumentFragment}\n */\nfunction isDocumentNode(node) {\n return node.nodeType === Node.DOCUMENT_FRAGMENT_NODE || node.nodeType === Node.DOCUMENT_NODE;\n}\n\nfunction findParentOrHost(element, root) {\n const parentNode = element.parentNode;\n return (parentNode && parentNode.host && parentNode.nodeType === 11) ? parentNode.host : parentNode === root ? null : parentNode;\n}\n\n/**\n * Finds all elements on the page, inclusive of those within shadow roots.\n * @param {string=} selector Simple selector to filter the elements by. e.g. 'a', 'div.main'\n * @return {!Array<string>} List of anchor hrefs.\n * @author ebidel@ (Eric Bidelman)\n * License Apache-2.0\n */\nexport function collectAllElementsDeep(selector = null, root, cachedElements = null) {\n let allElements = [];\n\n if (cachedElements) {\n allElements = cachedElements;\n } else {\n const findAllElements = function(nodes) {\n for (let i = 0; i < nodes.length; i++) {\n const el = nodes[i];\n allElements.push(el);\n // If the element has a shadow root, dig deeper.\n if (el.shadowRoot) {\n findAllElements(el.shadowRoot.querySelectorAll('*'));\n }\n }\n };\n if(root.shadowRoot) {\n findAllElements(root.shadowRoot.querySelectorAll('*'));\n }\n findAllElements(root.querySelectorAll('*'));\n }\n\n return selector ? allElements.filter(el => el.matches(selector)) : allElements;\t}\n\n","/* istanbul ignore file */\n\n\n// normalize-selector-rev-02.js\n/*\n author: kyle simpson (@getify)\n original source: https://gist.github.com/getify/9679380\n\n modified for tests by david kaye (@dfkaye)\n 21 march 2014\n\n rev-02 incorporate kyle's changes 3/2/42014\n*/\n\nexport function normalizeSelector(sel) {\n // save unmatched text, if any\n function saveUnmatched() {\n if (unmatched) {\n // whitespace needed after combinator?\n if (tokens.length > 0 && /^[~+>]$/.test(tokens[tokens.length - 1])) {\n tokens.push(\" \");\n }\n\n // save unmatched text\n tokens.push(unmatched);\n }\n }\n\n var tokens = [],\n match,\n unmatched,\n regex,\n state = [0],\n next_match_idx = 0,\n prev_match_idx,\n not_escaped_pattern = /(?:[^\\\\]|(?:^|[^\\\\])(?:\\\\\\\\)+)$/,\n whitespace_pattern = /^\\s+$/,\n state_patterns = [\n /\\s+|\\/\\*|[\"'>~+[(]/g, // general\n /\\s+|\\/\\*|[\"'[\\]()]/g, // [..] set\n /\\s+|\\/\\*|[\"'[\\]()]/g, // (..) set\n null, // string literal (placeholder)\n /\\*\\//g, // comment\n ];\n sel = sel.trim();\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n unmatched = \"\";\n\n regex = state_patterns[state[state.length - 1]];\n\n regex.lastIndex = next_match_idx;\n match = regex.exec(sel);\n\n // matched text to process?\n if (match) {\n prev_match_idx = next_match_idx;\n next_match_idx = regex.lastIndex;\n\n // collect the previous string chunk not matched before this token\n if (prev_match_idx < next_match_idx - match[0].length) {\n unmatched = sel.substring(\n prev_match_idx,\n next_match_idx - match[0].length\n );\n }\n\n // general, [ ] pair, ( ) pair?\n if (state[state.length - 1] < 3) {\n saveUnmatched();\n\n // starting a [ ] pair?\n if (match[0] === \"[\") {\n state.push(1);\n }\n // starting a ( ) pair?\n else if (match[0] === \"(\") {\n state.push(2);\n }\n // starting a string literal?\n else if (/^[\"']$/.test(match[0])) {\n state.push(3);\n state_patterns[3] = new RegExp(match[0], \"g\");\n }\n // starting a comment?\n else if (match[0] === \"/*\") {\n state.push(4);\n }\n // ending a [ ] or ( ) pair?\n else if (/^[\\])]$/.test(match[0]) && state.length > 0) {\n state.pop();\n }\n // handling whitespace or a combinator?\n else if (/^(?:\\s+|[~+>])$/.test(match[0])) {\n // need to insert whitespace before?\n if (\n tokens.length > 0 &&\n !whitespace_pattern.test(tokens[tokens.length - 1]) &&\n state[state.length - 1] === 0\n ) {\n // add normalized whitespace\n tokens.push(\" \");\n }\n\n // case-insensitive attribute selector CSS L4\n if (\n state[state.length - 1] === 1 &&\n tokens.length === 5 &&\n tokens[2].charAt(tokens[2].length - 1) === \"=\"\n ) {\n tokens[4] = \" \" + tokens[4];\n }\n\n // whitespace token we can skip?\n if (whitespace_pattern.test(match[0])) {\n continue;\n }\n }\n\n // save matched text\n tokens.push(match[0]);\n }\n // otherwise, string literal or comment\n else {\n // save unmatched text\n tokens[tokens.length - 1] += unmatched;\n\n // unescaped terminator to string literal or comment?\n if (not_escaped_pattern.test(tokens[tokens.length - 1])) {\n // comment terminator?\n if (state[state.length - 1] === 4) {\n // ok to drop comment?\n if (\n tokens.length < 2 ||\n whitespace_pattern.test(tokens[tokens.length - 2])\n ) {\n tokens.pop();\n }\n // otherwise, turn comment into whitespace\n else {\n tokens[tokens.length - 1] = \" \";\n }\n\n // handled already\n match[0] = \"\";\n }\n\n state.pop();\n }\n\n // append matched text to existing token\n tokens[tokens.length - 1] += match[0];\n }\n }\n // otherwise, end of processing (no more matches)\n else {\n unmatched = sel.substr(next_match_idx);\n saveUnmatched();\n\n break;\n }\n }\n\n return tokens.join(\"\").trim();\n}\n"],"names":["querySelectorDeep","selector","root","document","allElements","findMany","sel","saveUnmatched","unmatched","tokens","length","test","push","match","regex","prev_match_idx","state","next_match_idx","not_escaped_pattern","whitespace_pattern","state_patterns","trim","lastIndex","exec","substr","substring","RegExp","pop","charAt","join","normalizeSelector","lightElement","querySelector","head","createShadowRoot","attachShadow","splitByCharacterUnlessQuoted","reduce","acc","minimalSelector","splitSelector","replace","filter","entry","map","possibleElementsIndex","possibleElements","cachedElements","findAllElements","nodes","i","el","shadowRoot","querySelectorAll","matches","collectAllElementsDeep","findElements","element","position","parent","foundElement","isDocumentNode","foundMatch","reversedParts","concat","reverse","newParent","part","findParentOrHost","findMatchingElement","find","_querySelectorDeep","character","p","c","sQuote","quote","a","node","nodeType","Node","DOCUMENT_FRAGMENT_NODE","DOCUMENT_NODE","parentNode","host"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"query-selector-shadow-dom-Bcu6VFLW.js","sources":["../../node_modules/query-selector-shadow-dom/src/querySelectorDeep.js","../../node_modules/query-selector-shadow-dom/src/normalize.js"],"sourcesContent":["import { normalizeSelector } from './normalize';\n\n/**\n* Finds first matching elements on the page that may be in a shadow root using a complex selector of n-depth\n*\n* Don't have to specify all shadow roots to button, tree is travered to find the correct element\n*\n* Example querySelectorAllDeep('downloads-item:nth-child(4) #remove');\n*\n* Example should work on chrome://downloads outputting the remove button inside of a download card component\n*\n* Example find first active download link element querySelectorDeep('#downloads-list .is-active a[href^=\"https://\"]');\n*\n* Another example querySelectorAllDeep('#downloads-list div#title-area + a');\ne.g.\n*/\nexport function querySelectorAllDeep(selector, root = document, allElements = null) {\n return _querySelectorDeep(selector, true, root, allElements);\n}\n\nexport function querySelectorDeep(selector, root = document, allElements = null) {\n return _querySelectorDeep(selector, false, root, allElements);\n}\n\nfunction _querySelectorDeep(selector, findMany, root, allElements = null) {\n selector = normalizeSelector(selector);\n let lightElement = root.querySelector(selector);\n\n if (document.head.createShadowRoot || document.head.attachShadow) {\n // no need to do any special if selector matches something specific in light-dom\n if (!findMany && lightElement) {\n return lightElement;\n }\n\n // split on commas because those are a logical divide in the operation\n const selectionsToMake = splitByCharacterUnlessQuoted(selector, ',');\n\n return selectionsToMake.reduce((acc, minimalSelector) => {\n // if not finding many just reduce the first match\n if (!findMany && acc) {\n return acc;\n }\n // do best to support complex selectors and split the query\n const splitSelector = splitByCharacterUnlessQuoted(minimalSelector\n //remove white space at start of selector\n .replace(/^\\s+/g, '')\n .replace(/\\s*([>+~]+)\\s*/g, '$1'), ' ')\n // filter out entry white selectors\n .filter((entry) => !!entry)\n // convert \"a > b\" to [\"a\", \"b\"]\n .map((entry) => splitByCharacterUnlessQuoted(entry, '>'));\n\n const possibleElementsIndex = splitSelector.length - 1;\n const lastSplitPart = splitSelector[possibleElementsIndex][splitSelector[possibleElementsIndex].length - 1];\n const possibleElements = collectAllElementsDeep(lastSplitPart, root, allElements);\n const findElements = findMatchingElement(splitSelector, possibleElementsIndex, root);\n if (findMany) {\n acc = acc.concat(possibleElements.filter(findElements));\n return acc;\n } else {\n acc = possibleElements.find(findElements);\n return acc || null;\n }\n }, findMany ? [] : null);\n\n\n } else {\n if (!findMany) {\n return lightElement;\n } else {\n return root.querySelectorAll(selector);\n }\n }\n\n}\n\nfunction findMatchingElement(splitSelector, possibleElementsIndex, root) {\n return (element) => {\n let position = possibleElementsIndex;\n let parent = element;\n let foundElement = false;\n while (parent && !isDocumentNode(parent)) {\n let foundMatch = true;\n if (splitSelector[position].length === 1) {\n foundMatch = parent.matches(splitSelector[position]);\n } else {\n // selector is in the format \"a > b\"\n // make sure a few parents match in order\n const reversedParts = ([]).concat(splitSelector[position]).reverse();\n let newParent = parent;\n for (const part of reversedParts) {\n if (!newParent || !newParent.matches(part)) {\n foundMatch = false;\n break;\n }\n newParent = findParentOrHost(newParent, root);\n }\n }\n\n if (foundMatch && position === 0) {\n foundElement = true;\n break;\n }\n if (foundMatch) {\n position--;\n }\n parent = findParentOrHost(parent, root);\n }\n return foundElement;\n };\n\n}\n\nfunction splitByCharacterUnlessQuoted(selector, character) {\n return selector.match(/\\\\?.|^$/g).reduce((p, c) => {\n if (c === '\"' && !p.sQuote) {\n p.quote ^= 1;\n p.a[p.a.length - 1] += c;\n } else if (c === '\\'' && !p.quote) {\n p.sQuote ^= 1;\n p.a[p.a.length - 1] += c;\n\n } else if (!p.quote && !p.sQuote && c === character) {\n p.a.push('');\n } else {\n p.a[p.a.length - 1] += c;\n }\n return p;\n }, { a: [''] }).a;\n}\n\n/**\n * Checks if the node is a document node or not.\n * @param {Node} node\n * @returns {node is Document | DocumentFragment}\n */\nfunction isDocumentNode(node) {\n return node.nodeType === Node.DOCUMENT_FRAGMENT_NODE || node.nodeType === Node.DOCUMENT_NODE;\n}\n\nfunction findParentOrHost(element, root) {\n const parentNode = element.parentNode;\n return (parentNode && parentNode.host && parentNode.nodeType === 11) ? parentNode.host : parentNode === root ? null : parentNode;\n}\n\n/**\n * Finds all elements on the page, inclusive of those within shadow roots.\n * @param {string=} selector Simple selector to filter the elements by. e.g. 'a', 'div.main'\n * @return {!Array<string>} List of anchor hrefs.\n * @author ebidel@ (Eric Bidelman)\n * License Apache-2.0\n */\nexport function collectAllElementsDeep(selector = null, root, cachedElements = null) {\n let allElements = [];\n\n if (cachedElements) {\n allElements = cachedElements;\n } else {\n const findAllElements = function(nodes) {\n for (let i = 0; i < nodes.length; i++) {\n const el = nodes[i];\n allElements.push(el);\n // If the element has a shadow root, dig deeper.\n if (el.shadowRoot) {\n findAllElements(el.shadowRoot.querySelectorAll('*'));\n }\n }\n };\n if(root.shadowRoot) {\n findAllElements(root.shadowRoot.querySelectorAll('*'));\n }\n findAllElements(root.querySelectorAll('*'));\n }\n\n return selector ? allElements.filter(el => el.matches(selector)) : allElements;\t}\n\n","/* istanbul ignore file */\n\n\n// normalize-selector-rev-02.js\n/*\n author: kyle simpson (@getify)\n original source: https://gist.github.com/getify/9679380\n\n modified for tests by david kaye (@dfkaye)\n 21 march 2014\n\n rev-02 incorporate kyle's changes 3/2/42014\n*/\n\nexport function normalizeSelector(sel) {\n // save unmatched text, if any\n function saveUnmatched() {\n if (unmatched) {\n // whitespace needed after combinator?\n if (tokens.length > 0 && /^[~+>]$/.test(tokens[tokens.length - 1])) {\n tokens.push(\" \");\n }\n\n // save unmatched text\n tokens.push(unmatched);\n }\n }\n\n var tokens = [],\n match,\n unmatched,\n regex,\n state = [0],\n next_match_idx = 0,\n prev_match_idx,\n not_escaped_pattern = /(?:[^\\\\]|(?:^|[^\\\\])(?:\\\\\\\\)+)$/,\n whitespace_pattern = /^\\s+$/,\n state_patterns = [\n /\\s+|\\/\\*|[\"'>~+[(]/g, // general\n /\\s+|\\/\\*|[\"'[\\]()]/g, // [..] set\n /\\s+|\\/\\*|[\"'[\\]()]/g, // (..) set\n null, // string literal (placeholder)\n /\\*\\//g, // comment\n ];\n sel = sel.trim();\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n unmatched = \"\";\n\n regex = state_patterns[state[state.length - 1]];\n\n regex.lastIndex = next_match_idx;\n match = regex.exec(sel);\n\n // matched text to process?\n if (match) {\n prev_match_idx = next_match_idx;\n next_match_idx = regex.lastIndex;\n\n // collect the previous string chunk not matched before this token\n if (prev_match_idx < next_match_idx - match[0].length) {\n unmatched = sel.substring(\n prev_match_idx,\n next_match_idx - match[0].length\n );\n }\n\n // general, [ ] pair, ( ) pair?\n if (state[state.length - 1] < 3) {\n saveUnmatched();\n\n // starting a [ ] pair?\n if (match[0] === \"[\") {\n state.push(1);\n }\n // starting a ( ) pair?\n else if (match[0] === \"(\") {\n state.push(2);\n }\n // starting a string literal?\n else if (/^[\"']$/.test(match[0])) {\n state.push(3);\n state_patterns[3] = new RegExp(match[0], \"g\");\n }\n // starting a comment?\n else if (match[0] === \"/*\") {\n state.push(4);\n }\n // ending a [ ] or ( ) pair?\n else if (/^[\\])]$/.test(match[0]) && state.length > 0) {\n state.pop();\n }\n // handling whitespace or a combinator?\n else if (/^(?:\\s+|[~+>])$/.test(match[0])) {\n // need to insert whitespace before?\n if (\n tokens.length > 0 &&\n !whitespace_pattern.test(tokens[tokens.length - 1]) &&\n state[state.length - 1] === 0\n ) {\n // add normalized whitespace\n tokens.push(\" \");\n }\n\n // case-insensitive attribute selector CSS L4\n if (\n state[state.length - 1] === 1 &&\n tokens.length === 5 &&\n tokens[2].charAt(tokens[2].length - 1) === \"=\"\n ) {\n tokens[4] = \" \" + tokens[4];\n }\n\n // whitespace token we can skip?\n if (whitespace_pattern.test(match[0])) {\n continue;\n }\n }\n\n // save matched text\n tokens.push(match[0]);\n }\n // otherwise, string literal or comment\n else {\n // save unmatched text\n tokens[tokens.length - 1] += unmatched;\n\n // unescaped terminator to string literal or comment?\n if (not_escaped_pattern.test(tokens[tokens.length - 1])) {\n // comment terminator?\n if (state[state.length - 1] === 4) {\n // ok to drop comment?\n if (\n tokens.length < 2 ||\n whitespace_pattern.test(tokens[tokens.length - 2])\n ) {\n tokens.pop();\n }\n // otherwise, turn comment into whitespace\n else {\n tokens[tokens.length - 1] = \" \";\n }\n\n // handled already\n match[0] = \"\";\n }\n\n state.pop();\n }\n\n // append matched text to existing token\n tokens[tokens.length - 1] += match[0];\n }\n }\n // otherwise, end of processing (no more matches)\n else {\n unmatched = sel.substr(next_match_idx);\n saveUnmatched();\n\n break;\n }\n }\n\n return tokens.join(\"\").trim();\n}\n"],"names":["querySelectorAllDeep","selector","root","document","allElements","_querySelectorDeep","querySelectorDeep","findMany","sel","saveUnmatched","unmatched","tokens","length","test","push","match","regex","prev_match_idx","state","next_match_idx","not_escaped_pattern","whitespace_pattern","state_patterns","trim","lastIndex","exec","substr","substring","RegExp","pop","charAt","join","normalizeSelector","lightElement","querySelector","head","createShadowRoot","attachShadow","splitByCharacterUnlessQuoted","reduce","acc","minimalSelector","splitSelector","replace","filter","entry","map","possibleElementsIndex","possibleElements","cachedElements","findAllElements","nodes","i","el","shadowRoot","querySelectorAll","matches","collectAllElementsDeep","findElements","element","position","parent","foundElement","isDocumentNode","foundMatch","reversedParts","concat","reverse","newParent","part","findParentOrHost","findMatchingElement","find","character","p","c","sQuote","quote","a","node","nodeType","Node","DOCUMENT_FRAGMENT_NODE","DOCUMENT_NODE","parentNode","host"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
function e(e,o=document,s=null){return function(e,o,s,u=null){e=function(e){function t(){l&&(u.length>0&&/^[~+>]$/.test(u[u.length-1])&&u.push(" "),u.push(l))}var n,l,o,s,u=[],r=[0],h=0,c=/(?:[^\\]|(?:^|[^\\])(?:\\\\)+)$/,a=/^\s+$/,g=[/\s+|\/\*|["'>~+[(]/g,/\s+|\/\*|["'[\]()]/g,/\s+|\/\*|["'[\]()]/g,null,/\*\//g];for(e=e.trim();;){if(l="",(o=g[r[r.length-1]]).lastIndex=h,!(n=o.exec(e))){l=e.substr(h),t();break}if((s=h)<(h=o.lastIndex)-n[0].length&&(l=e.substring(s,h-n[0].length)),r[r.length-1]<3){if(t(),"["===n[0])r.push(1);else if("("===n[0])r.push(2);else if(/^["']$/.test(n[0]))r.push(3),g[3]=new RegExp(n[0],"g");else if("/*"===n[0])r.push(4);else if(/^[\])]$/.test(n[0])&&r.length>0)r.pop();else if(/^(?:\s+|[~+>])$/.test(n[0])&&(u.length>0&&!a.test(u[u.length-1])&&0===r[r.length-1]&&u.push(" "),1===r[r.length-1]&&5===u.length&&"="===u[2].charAt(u[2].length-1)&&(u[4]=" "+u[4]),a.test(n[0])))continue;u.push(n[0])}else u[u.length-1]+=l,c.test(u[u.length-1])&&(4===r[r.length-1]&&(u.length<2||a.test(u[u.length-2])?u.pop():u[u.length-1]=" ",n[0]=""),r.pop()),u[u.length-1]+=n[0]}return u.join("").trim()}(e);let r=s.querySelector(e);if(document.head.createShadowRoot||document.head.attachShadow){if(r)return r;return t(e,",").reduce(((e,o)=>{if(e)return e;const r=t(o.replace(/^\s+/g,"").replace(/\s*([>+~]+)\s*/g,"$1")," ").filter((e=>!!e)).map((e=>t(e,">"))),h=r.length-1,c=function(e=null,t,n=null){let l=[];if(n)l=n;else{const e=function(t){for(let n=0;n<t.length;n++){const o=t[n];l.push(o),o.shadowRoot&&e(o.shadowRoot.querySelectorAll("*"))}};t.shadowRoot&&e(t.shadowRoot.querySelectorAll("*")),e(t.querySelectorAll("*"))}return e?l.filter((t=>t.matches(e))):l}(r[h][r[h].length-1],s,u),a=function(e,t,o){return s=>{let u=t,r=s,h=!1;for(;r&&!n(r);){let t=!0;if(1===e[u].length)t=r.matches(e[u]);else{const n=[].concat(e[u]).reverse();let s=r;for(const e of n){if(!s||!s.matches(e)){t=!1;break}s=l(s,o)}}if(t&&0===u){h=!0;break}t&&u--,r=l(r,o)}return h}}(r,h,s);return(e=c.find(a))||null}),null)}return r}(e,0,o,s)}function t(e,t){return e.match(/\\?.|^$/g).reduce(((e,n)=>('"'!==n||e.sQuote?"'"!==n||e.quote?e.quote||e.sQuote||n!==t?e.a[e.a.length-1]+=n:e.a.push(""):(e.sQuote^=1,e.a[e.a.length-1]+=n):(e.quote^=1,e.a[e.a.length-1]+=n),e)),{a:[""]}).a}function n(e){return e.nodeType===Node.DOCUMENT_FRAGMENT_NODE||e.nodeType===Node.DOCUMENT_NODE}function l(e,t){const n=e.parentNode;return n&&n.host&&11===n.nodeType?n.host:n===t?null:n}export{e as q};
|
|
2
|
-
//# sourceMappingURL=query-selector-shadow-dom-D9NRI6Ow.js.map
|