@cbpds/web-components
Version:
Web components for the CBP Design System.
5 lines • 1.47 kB
JavaScript
/*!
* CPB Design System web components - built with Stencil
*/
import{p as t,H as c,h as o,c as i}from"./p-9caf8482.js";import{s}from"./p-9c1b2f31.js";const e=":root{--cbp-accordion-gap:var(--cbp-space-3x)}cbp-accordion{display:flex;flex-direction:column;gap:var(--cbp-accordion-gap)}";const n=e;const a=t(class t extends c{constructor(){super();this.__registerHost();this.multiple=undefined;this.context=undefined;this.sx={}}init(){this.items=Array.from(this.host.querySelectorAll("cbp-accordion-item"));this.items.forEach((t=>{t.addEventListener("accordionItemClick",(t=>{this.accordionActionHandler(t)}))}))}accordionActionHandler({detail:{host:t,open:c}}){if(!this.multiple&&c){this.host.querySelectorAll("cbp-accordion-item").forEach((c=>{if(c!==t){c.open=false}}))}}componentWillLoad(){if(typeof this.sx=="string"){this.sx=JSON.parse(this.sx)||{}}s(this.host,Object.assign({},this.sx))}componentDidLoad(){this.init()}render(){return o(i,{key:"5acc53f5aff32b43633a3af9baebdb7484c15205"},o("slot",{key:"2e09b474600d1daf11e278b3d8360d6324bbabc4"}))}get host(){return this}static get style(){return n}},[4,"cbp-accordion",{multiple:[4],context:[513],sx:[8]}]);function r(){if(typeof customElements==="undefined"){return}const t=["cbp-accordion"];t.forEach((t=>{switch(t){case"cbp-accordion":if(!customElements.get(t)){customElements.define(t,a)}break}}))}const d=a;const p=r;export{d as CbpAccordion,p as defineCustomElement};
//# sourceMappingURL=cbp-accordion.js.map