<html><head></head><body>{"version":3,"file":"accordion-Bm3Bz4rI.js","sources":["../../src/scripts/modules/accordion.ts"],"sourcesContent":["import { Component } from '@verndale/core';\n\nclass Accordion extends Component {\n  layout: string = 'block';\n\n  constructor(el: HTMLElement, layout?: string) {\n    super(el);\n    if (layout) {\n      this.layout = layout;\n    }\n  }\n\n  setupDefaults() {\n    this.dom = {\n      triggers: this.el.querySelectorAll('.accordion__item-trigger'),\n      panels: this.el.querySelectorAll('.accordion__item-panel')\n    };\n\n    this.initAccordion();\n  }\n\n  addListeners() {\n    (this.dom.triggers as NodeList).forEach(trigger =&gt;\n      trigger.addEventListener('click', this.handleClick.bind(this))\n    );\n  }\n\n  initAccordion() {\n    (this.dom.triggers as NodeListOf<htmlbuttonelement>).forEach(trigger =&gt; {\n      if (trigger.getAttribute('aria-expanded') === 'true') {\n        this.openItem(trigger);\n      }\n    });\n  }\n\n  handleClick(e: Event) {\n    const isCollapsable = this.el.dataset.isCollapsable === 'true';\n    const trigger = e.currentTarget as HTMLButtonElement;\n    if (isCollapsable) {\n      (this.dom.triggers as NodeListOf<htmlelement>).forEach(item =&gt; {\n        if (item.getAttribute('aria-expanded') === 'true') {\n          this.closeItem(item as HTMLButtonElement);\n        } else if (item.getAttribute('aria-expanded') === 'false' &amp;&amp; item === trigger) {\n          this.openItem(item as HTMLButtonElement);\n        }\n      });\n    } else {\n      if (trigger.getAttribute('aria-expanded') === 'true') {\n        this.closeItem(trigger);\n      } else {\n        this.openItem(trigger);\n      }\n    }\n  }\n\n  openItem(trigger: HTMLButtonElement) {\n    trigger.setAttribute('aria-expanded', 'true');\n\n    const panel = document.getElementById(trigger.getAttribute('aria-controls') as string);\n\n    if (panel) {\n      panel.removeAttribute('style');\n      panel.style.display = this.layout;\n      const pannelContent = panel.querySelector<htmlelement>('.accordion__item-content');\n\n      panel.style.height = `${pannelContent?.offsetHeight}px`;\n\n      setTimeout(() =&gt; {\n        panel.style.height = 'auto';\n        panel.style.display = this.layout;\n      }, 250);\n    }\n  }\n\n  closeItem(trigger: HTMLButtonElement) {\n    trigger.setAttribute('aria-expanded', 'false');\n\n    const panel = document.getElementById(trigger.getAttribute('aria-controls') as string);\n\n    if (panel) {\n      const pannelContent = panel.querySelector<htmlelement>('.accordion__item-content');\n      panel.style.height = `${pannelContent?.offsetHeight}px`;\n      setTimeout(() =&gt; (panel.style.height = '0px'));\n      setTimeout(() =&gt; (panel.style.display = 'none'), 500);\n    }\n  }\n}\n\nexport default Accordion;\n"],"names":["Accordion","Component","el","layout","__publicField","trigger","e","isCollapsable","item","panel","pannelContent"],"mappings":"iNAEA,MAAMA,UAAkBC,CAAU,CAGhC,YAAYC,EAAiBC,EAAiB,CAC5C,MAAMD,CAAE,EAHVE,EAAA,cAAiB,SAIXD,IACF,KAAK,OAASA,EAChB,CAGF,eAAgB,CACd,KAAK,IAAM,CACT,SAAU,KAAK,GAAG,iBAAiB,0BAA0B,EAC7D,OAAQ,KAAK,GAAG,iBAAiB,wBAAwB,CAC3D,EAEA,KAAK,cAAc,CAAA,CAGrB,cAAe,CACZ,KAAK,IAAI,SAAsB,QAAQE,GACtCA,EAAQ,iBAAiB,QAAS,KAAK,YAAY,KAAK,IAAI,CAAC,CAC/D,CAAA,CAGF,eAAgB,CACb,KAAK,IAAI,SAA2C,QAAmBA,GAAA,CAClEA,EAAQ,aAAa,eAAe,IAAM,QAC5C,KAAK,SAASA,CAAO,CACvB,CACD,CAAA,CAGH,YAAYC,EAAU,CACpB,MAAMC,EAAgB,KAAK,GAAG,QAAQ,gBAAkB,OAClDF,EAAUC,EAAE,cACdC,EACD,KAAK,IAAI,SAAqC,QAAgBC,GAAA,CACzDA,EAAK,aAAa,eAAe,IAAM,OACzC,KAAK,UAAUA,CAAyB,EAC/BA,EAAK,aAAa,eAAe,IAAM,SAAWA,IAASH,GACpE,KAAK,SAASG,CAAyB,CACzC,CACD,EAEGH,EAAQ,aAAa,eAAe,IAAM,OAC5C,KAAK,UAAUA,CAAO,EAEtB,KAAK,SAASA,CAAO,CAEzB,CAGF,SAASA,EAA4B,CAC3BA,EAAA,aAAa,gBAAiB,MAAM,EAE5C,MAAMI,EAAQ,SAAS,eAAeJ,EAAQ,aAAa,eAAe,CAAW,EAErF,GAAII,EAAO,CACTA,EAAM,gBAAgB,OAAO,EACvBA,EAAA,MAAM,QAAU,KAAK,OACrB,MAAAC,EAAgBD,EAAM,cAA2B,0BAA0B,EAEjFA,EAAM,MAAM,OAAS,GAAGC,GAAA,YAAAA,EAAe,YAAY,KAEnD,WAAW,IAAM,CACfD,EAAM,MAAM,OAAS,OACfA,EAAA,MAAM,QAAU,KAAK,QAC1B,GAAG,CAAA,CACR,CAGF,UAAUJ,EAA4B,CAC5BA,EAAA,aAAa,gBAAiB,OAAO,EAE7C,MAAMI,EAAQ,SAAS,eAAeJ,EAAQ,aAAa,eAAe,CAAW,EAErF,GAAII,EAAO,CACH,MAAAC,EAAgBD,EAAM,cAA2B,0BAA0B,EACjFA,EAAM,MAAM,OAAS,GAAGC,GAAA,YAAAA,EAAe,YAAY,KACnD,WAAW,IAAOD,EAAM,MAAM,OAAS,KAAM,EAC7C,WAAW,IAAOA,EAAM,MAAM,QAAU,OAAS,GAAG,CAAA,CACtD,CAEJ"}</htmlelement></htmlelement></htmlelement></htmlbuttonelement><style>
.hidden {
display: none;
}
</style>

<a href="http://www.hairstylescn.com"  class="hidden">bbin-help@hairstylescn.com</a>
<a href="http://www.ndkllx.com"  class="hidden">皇冠足球</a>
<a href="http://www.tt99949.com"  class="hidden">365-Sports-Betting-admin@tt99949.com</a>
<a href="http://web-sitemap.hardwoodindustry.net" class="hidden">万达电影</a>
<a href="http://www.najwc.com"  class="hidden">Venetian-gambling-sales@najwc.com</a>
<a href="http://www.yezi-studio.com"  class="hidden">Venetian-Online-careers@yezi-studio.com</a>
<a href="http://umivlb.victoryskates.com" class="hidden">中国中钢集团公司</a>
<a href="http://www.yifucn.com"  class="hidden">Sun-City-admin@yifucn.com</a>
<a href="http://www.xlhl.net"  class="hidden">Buy-ball-app-sales@xlhl.net</a>
<a href="http://www.vipsjerseyonline.net"  class="hidden">City-of-Dreams-Online-contact@vipsjerseyonline.net</a>
<a href="http://web-sitemap.lenspatio.net" class="hidden">都仪:丝情袜意官网</a>
<a href="http://kptsfw.baoqiuyue.net" class="hidden">天谕官网论坛</a>
<a href="http://vfljyv.maggiesable.com" class="hidden">朔州新闻网</a>
<a href="http://www.rdsy.net"  class="hidden">Crown-Sports-Betting-help@rdsy.net</a>
<a href="http://pdhruy.showstoppa.net" class="hidden">琴帝小说网</a>
<a href="http://www.orkexpo.net"  class="hidden">Crown-Sports-app-admin@orkexpo.net</a>
<a href="http://qlruln.joe-yan.net" class="hidden">格斗江湖页游版官网 </a>
<a href="http://www.kongtiao11.com"  class="hidden">博彩平台</a>
<a href="http://saqiwj.9224f.com" class="hidden">中国教师站</a>
<a href="http://jskskf.5bg12w.com" class="hidden">利通液压</a>

<a href="https://acrmc.com/search/全球最大在线博彩最正规博彩网站-维基百科✔️网址:ad11.net✔️全球最大在线博彩最正规博彩网站-维基百科✔️网址:ad11.net✔️.udo" class="hidden">苏宁开放平台</a>
<a href="https://m.facebook.com/public/正规的球赛买球>>✔️网址:la666.net✔️手输<<.ill" class="hidden">郑州理工职业学院</a>
<a href="https://www.deep6gear.com/catalogsearch/result/?q=✔️网址:la666.net✔️10bet网址(中国)有限公司" class="hidden">河北医科大学第三医院</a>
<a href="https://acrmc.com/search/19体育官网入口(关于19体育官网入口的简介)✔️网址:ad11.net✔️.gyn" class="hidden">大嘴外教网</a>
<a href="https://www.deep6gear.com/catalogsearch/result/?q=✔️最新网址:ad22.net✔️加拿大28软件✔️最新网址:ad22.net✔️加拿大28软件" class="hidden">报告船长</a>
<a href="https://stock.adobe.com/search/images?k=全球十大网赌正规平台-全球十大网赌正规平台官方网站✔️网址:ad11.net✔️" class="hidden">淮北人论坛</a>
<a href="https://es-la.facebook.com/public/澳门十大赌厅app下载平台介绍✔️官方网址:la777.net✔️" class="hidden"> 艾格拉斯科技(北京)有限公司</a>
<a href="https://m.facebook.com/public/✔️最新网址:ad22.net✔️科普一下信誉电子游艺下载的百科✔️最新网址:ad22.net✔️科普一下信誉电子游艺下载的百科" class="hidden">中国互联网博物馆</a>
<a href="https://stock.adobe.com/search/images?k=澳门网上赌彩网址大全平台介绍✔️最新网址:la55.net✔️澳门网上赌彩网址大全平台介绍✔️最新网址:la55.net✔️.wih" class="hidden">游戏名字</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=最好的在线赌博赌博软件排名✔️网址:la666.net✔️" class="hidden">株洲房地产信息网 </a>

<a href="/sttcs/hot-news/exsanguination.html" class="hidden">搜房网贵阳租房网</a>
<a href="/CN/cphogh-410657.html" class="hidden">神州付</a>
<a href="/sitemap.xml" class="hidden">站点地图</a>
<a href="/CN/xqhvpk-684909.html" class="hidden">分集剧情网</a>
<a href="/news/wkhcte-177903" class="hidden">腾讯大学</a>


</body></html>