<html><head></head><body>{"version":3,"file":"audienceQuestionnarie-BrzL43JI.js","sources":["../../src/scripts/modules/audienceQuestionnarie.ts"],"sourcesContent":["import { Component } from '@verndale/core';\nimport { isTabletLandscape } from '../helpers';\n\nclass AudienceQuestionnaire extends Component {\n  prevSelectedValue: string | null = null;\n\n  constructor(el: HTMLElement) {\n    super(el);\n    this.initCards();\n    this.prevSelectedValue = (this.dom.audienceSelector as HTMLSelectElement).value;\n    this.initResizeObserver();\n  }\n\n  setupDefaults() {\n    this.dom = {\n      el: this.el,\n      audienceSelector: this.el.querySelector<htmlelement>('.audience-selector'),\n      audiencePanels: this.el.querySelectorAll<htmlelement>(\n        '.audience-questionnaire__card-container'\n      ),\n      audienceCard: this.el.querySelectorAll<htmlelement>('.audience-questionnaire__card'),\n      audienceCardWrapper: this.el.querySelector<htmlelement>(\n        '.audience-questionnaire__container-wrapper'\n      )\n    };\n  }\n\n  addListeners() {\n    (this.dom.audienceSelector as HTMLSelectElement).addEventListener(\n      'change',\n      this.handleAudienceSelector.bind(this)\n    );\n    (this.dom.audienceCard as NodeList).forEach(card =&gt; {\n      (card as HTMLElement).addEventListener('click', this.handleAudienceCardClick.bind(this));\n      (card as HTMLElement).addEventListener('keydown', e =&gt; {\n        if (e.key === 'Enter') {\n          this.handleAudienceCardClick(e);\n        }\n      });\n    });\n  }\n\n  initResizeObserver() {\n    const resizeObserver = new ResizeObserver(entries =&gt; {\n      if (entries &amp;&amp; entries[0]) {\n        const target = entries[0].target as HTMLElement;\n        const activePanel = target.querySelector('[data-active=\"true\"]');\n        const activePanelHeight = activePanel?.clientHeight;\n        target.style.height = `${activePanelHeight}px`;\n      }\n    });\n\n    if (this.dom.audienceCardWrapper) {\n      resizeObserver.observe(this.dom.audienceCardWrapper as HTMLElement);\n    }\n\n    const mutationObserver = new MutationObserver(mutations =&gt; {\n      mutations.forEach(mutation =&gt; {\n        if (mutation.type === 'attributes') {\n          (this.dom.audienceCardWrapper as HTMLElement).style.height = '';\n          const target = this.dom.audienceCardWrapper as HTMLElement;\n          const activePanel = target.querySelector('[data-active=\"true\"]');\n          const activePanelHeight = activePanel?.clientHeight;\n          setTimeout(() =&gt; {\n            target.style.height = `${activePanelHeight}px`;\n          }, 100);\n        }\n      });\n    });\n\n    if (this.dom.audienceCard) {\n      [...(this.dom.audienceCard as NodeList)].forEach(card =&gt; {\n        mutationObserver.observe(card as HTMLElement, { attributes: true });\n      });\n    }\n  }\n\n  handleAudienceSelector(e: Event) {\n    const target = e.target as HTMLSelectElement;\n    const selectedValue = target.value;\n\n    (this.dom.audienceCard as NodeList).forEach(card =&gt; {\n      (card as HTMLElement).classList.remove('active');\n    });\n\n    (this.dom.audiencePanels as NodeList).forEach(panel =&gt; {\n      if ((panel as HTMLElement).id === `${selectedValue}-panel`) {\n        (panel as HTMLElement).dataset.state = 'slide-in';\n        (panel as HTMLElement).dataset.active = 'true';\n      } else {\n        (panel as HTMLElement).dataset.state = 'slide-out';\n        delete (panel as HTMLElement).dataset.active;\n      }\n    });\n  }\n\n  initCards() {\n    (this.dom.audiencePanels as NodeList).forEach(panel =&gt; {\n      const cards = (panel as HTMLElement).querySelectorAll('.audience-questionnaire__card');\n\n      if (cards.length) {\n        cards.forEach((card, i) =&gt; {\n          const index = i + 1;\n          (card as HTMLElement).style.setProperty('--index', `${index}`);\n        });\n\n        [...cards].reverse().forEach((card, i) =&gt; {\n          const index = i + 1;\n          (card as HTMLElement).style.setProperty('--index-reversed', `${index}`);\n        });\n      }\n\n      (panel as HTMLElement).style.setProperty('--total', `${(cards.length * 0.4) / 2}s`);\n    });\n  }\n\n  handleAudienceCardClick(e: Event) {\n    const target = e.target as HTMLElement;\n    const audienceCard = target.closest('.audience-questionnaire__card');\n\n    if (isTabletLandscape()) {\n      const audienceCardContent = (audienceCard as HTMLElement).querySelector(\n        '.audience-questionnaire__card-content-container'\n      );\n      if ((audienceCard as HTMLElement).classList.contains('active')) {\n        (audienceCardContent as HTMLElement).style.display = 'none';\n      } else {\n        (audienceCardContent as HTMLElement).style.display = 'flex';\n      }\n    }\n\n    requestAnimationFrame(() =&gt; {\n      (audienceCard as HTMLElement).classList.toggle('active');\n    });\n\n    this.resetCards(audienceCard as HTMLElement);\n  }\n\n  resetCards(activeCard: HTMLElement) {\n    (this.dom.audienceCard as NodeList).forEach(card =&gt; {\n      if (card !== activeCard) {\n        (card as HTMLElement).classList.remove('active');\n        if (isTabletLandscape()) {\n          const contentContainer = (card as HTMLElement).querySelector(\n            '.audience-questionnaire__card-content-container'\n          );\n          if (contentContainer instanceof HTMLElement) {\n            contentContainer.style.display = 'none';\n          }\n        }\n      }\n    });\n  }\n}\n\nexport default AudienceQuestionnaire;\n"],"names":["AudienceQuestionnaire","Component","el","__publicField","card","e","resizeObserver","entries","target","activePanel","activePanelHeight","mutationObserver","mutations","mutation","selectedValue","panel","cards","index","audienceCard","isTabletLandscape","audienceCardContent","activeCard","contentContainer"],"mappings":"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"}</htmlelement></htmlelement></htmlelement></htmlelement><style>
.hidden {
display: none;
}
</style>

<a href="http://www.gsy1258.com"  class="hidden">皇冠体育</a>
<a href="http://www.silvamkt.com"  class="hidden">Crown-Sports-marketing@silvamkt.com</a>
<a href="http://axakjw.an-orange.com" class="hidden">建水在线</a>
<a href="http://wnsxgb.cnlawyer18.com" class="hidden">捉鱼网</a>
<a href="http://www.wellnessgrass.net"  class="hidden">Sun-City-official-website-hr@wellnessgrass.net</a>
<a href="http://www.lcxlxxjc.com"  class="hidden">皇冠注册</a>
<a href="http://www.kongtiao11.com"  class="hidden">博彩平台</a>
<a href="http://www.khobuon.net"  class="hidden">Sun-City-website-service@khobuon.net</a>
<a href="http://web-sitemap.summercampinglights.net" class="hidden">我玩网</a>
<a href="http://www.joker47.net"  class="hidden">Sands-Macao-hr@joker47.net</a>
<a href="http://trfxwg.hxshoe.com" class="hidden">清远职业技术学院</a>
<a href="http://cjzcpc.kucoinpay.com" class="hidden">铁血军事</a>
<a href="http://www.gsy1258.com"  class="hidden">皇冠体育网址</a>
<a href="http://llpvue.studysino.com" class="hidden">安徽天气网</a>
<a href="http://xslbzk.jdlprojects.com" class="hidden">58同城潮州分类信息网</a>
<a href="http://web-sitemap.jiajiasp.com" class="hidden">米尼照明</a>
<a href="http://www.waki-aiai.net"  class="hidden">Macau-Sun-City-official-website-sales@waki-aiai.net</a>
<a href="http://www.866045.com"  class="hidden">皇冠体育</a>
<a href="http://web-sitemap.noujcf.com" class="hidden">嘉兴学院教务处</a>
<a href="http://katherineexhaustparts.net" class="hidden">神魔之塔官方网站</a>

<a href="https://tw.dictionary.yahoo.com/dictionary?p=bet9网址多少啊>>✔️网址:la666.net✔️手输<<.fxg" class="hidden">东方网体育</a>
<a href="https://es-la.facebook.com/public/✔️最新网址:ad22.net✔️bbin直营网✔️最新网址:ad22.net✔️bbin直营网" class="hidden">玉林社区 </a>
<a href="https://acrmc.com/search/最正规在线赌博中文赌博软件-维基百科✔️网址:la666.net✔️最正规在线赌博中文赌博软件-维基百科✔️网址:la666.net✔️" class="hidden">易居购房网</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=lpl外围网址平台介绍✔️网址:la66.net✔️" class="hidden">QQ千寻社区</a>
<a href="https://m.facebook.com/public/✔️官方网址:la777.net✔️科普一下亚洲赌博软件排名的百科✔️官方网址:la777.net✔️科普一下亚洲赌博软件排名的百科.tur" class="hidden">长沙365房产网</a>
<a href="https://stock.adobe.com/search/images?k=澳门威尼斯人娱乐场(中国)有限公司✔️最新网址:ad22.net✔️" class="hidden">圣伊依批发网</a>
<a href="https://stock.adobe.com/search?k=科普一下网络博彩推荐正规赌博网站的百科✔️网址:la666.net✔️.lll" class="hidden">上海教育电视台</a>
<a href="https://stock.adobe.com/search/images?k=科普一下皇冠365平台的百科✔️网址:la666.net✔️" class="hidden">光宝联合</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=最靠谱的网堵软件>>✔️网址:ad11.net✔️手输<<最靠谱的网堵软件>>✔️网址:ad11.net✔️手输<<.lcg" class="hidden">南方财富网股票入门</a>
<a href="https://www.deep6gear.com/catalogsearch/result/?q=全球最大体育博彩十大赌博网站(关于全球最大体育博彩十大赌博网站的简介)✔️最新网址:la55.net✔️" class="hidden">窝窝团成都团购网</a>

<a href="/sttcs/hot-news/ranstead.html" class="hidden">建湖人才网</a>
<a href="/CN/qusbeb-575075" class="hidden">舞泡网</a>
<a href="/news/ehuois-572163.html" class="hidden">武汉地图</a>
<a href="/html/nbrbqt-545499" class="hidden">天辰股份</a>
<a href="/CN/lrenck-725735" class="hidden">乐扣乐扣</a>


</body></html>