<html><head></head><body>{"version":3,"file":"imagesCarousel-CcOr907e.js","sources":["../../src/scripts/modules/imagesCarousel.ts"],"sourcesContent":["import { Component } from '@verndale/core';\r\nimport Swiper from 'swiper';\r\nimport { Navigation, Keyboard, Pagination, Controller, A11y } from 'swiper/modules';\r\nimport 'swiper/css/bundle';\r\n\r\nclass ImagesCarousel extends Component {\r\n  private separator: string;\r\n  public imagesCarousel: Swiper | null;\r\n\r\n  constructor(el: HTMLElement) {\r\n    super(el);\r\n    this.imagesCarousel = null;\r\n    this.separator = this.el.dataset.separator || '';\r\n    Swiper.use([Navigation, Keyboard, Pagination, Controller, A11y]);\r\n    this.initSwiper();\r\n  }\r\n\r\n  setupDefaults() {\r\n    this.dom = {\r\n      el: this.el,\r\n      swiperContainer: this.el.querySelector<htmlelement>('.swiper'),\r\n      swiperWrapper: this.el.querySelector<htmlelement>('.swiper-wrapper'),\r\n      swiperItems: this.el.querySelectorAll<htmlelement>('.swiper-slide'),\r\n      pagination: this.el.querySelector<htmlelement>('.images-carousel__slider-pagination'),\r\n      prevButton: this.el.querySelector<htmlelement>('.btn-previous-slide'),\r\n      nextButton: this.el.querySelector<htmlelement>('.btn-next-slide'),\r\n      controlsContainer: this.el.querySelector<htmlelement>(\r\n        '.images-carousel__slider-controls-container'\r\n      ),\r\n      captions: this.el.querySelectorAll<htmlelement>('.images-carousel__slide-caption')\r\n    };\r\n  }\r\n\r\n  addListeners() {\r\n    window.addEventListener('resize', this.initSwiper.bind(this));\r\n  }\r\n\r\n  initSwiper() {\r\n    if (\r\n      this.imagesCarousel &amp;&amp;\r\n      this.imagesCarousel.destroy &amp;&amp;\r\n      typeof this.imagesCarousel.destroy === 'function'\r\n    )\r\n      this.imagesCarousel.destroy();\r\n\r\n    this.imagesCarousel = new Swiper(this.dom.swiperContainer as HTMLElement, {\r\n      pagination: {\r\n        el: this.dom.pagination as HTMLElement,\r\n        type: 'custom',\r\n        renderCustom: (_self, current, total) =&gt; {\r\n          return `${current} ${this.separator} ${total}`;\r\n        }\r\n      },\r\n      on: {\r\n        init: () =&gt; {\r\n          if ((this.dom.captions as NodeList).length &gt; 0) {\r\n            let maxCaptionHeight = 0;\r\n            (this.dom.captions as NodeList).forEach(caption =&gt; {\r\n              const captionHeight = (caption as HTMLElement).offsetHeight;\r\n              if (captionHeight &gt; maxCaptionHeight) {\r\n                maxCaptionHeight = captionHeight;\r\n              }\r\n            });\r\n            (this.dom.controlsContainer as HTMLElement).style.setProperty(\r\n              '--caption-height',\r\n              `${maxCaptionHeight - 1}px`\r\n            );\r\n            (this.dom.swiperWrapper as HTMLElement).style.height = 'fit-content';\r\n          } else {\r\n            (this.dom.controlsContainer as HTMLElement).style.setProperty('--caption-height', '0');\r\n          }\r\n        }\r\n      },\r\n      a11y: {\r\n        enabled: true,\r\n        prevSlideMessage: 'Previous slide',\r\n        nextSlideMessage: 'Next slide'\r\n      },\r\n      navigation: {\r\n        nextEl: this.dom.nextButton as HTMLElement,\r\n        prevEl: this.dom.prevButton as HTMLElement\r\n      },\r\n      autoHeight: true,\r\n      slidesPerView: 1,\r\n      loop: true\r\n    });\r\n  }\r\n}\r\n\r\nexport default ImagesCarousel;\r\n"],"names":["ImagesCarousel","Component","el","__publicField","Swiper","Navigation","Keyboard","Pagination","Controller","A11y","_self","current","total","maxCaptionHeight","caption","captionHeight"],"mappings":"gZAKA,MAAMA,UAAuBC,CAAU,CAIrC,YAAYC,EAAiB,CAC3B,MAAMA,CAAE,EAJFC,EAAA,kBACDA,EAAA,uBAIL,KAAK,eAAiB,KACtB,KAAK,UAAY,KAAK,GAAG,QAAQ,WAAa,GAC9CC,EAAO,IAAI,CAACC,EAAYC,EAAUC,EAAYC,EAAYC,CAAI,CAAC,EAC/D,KAAK,WAAW,CAAA,CAGlB,eAAgB,CACd,KAAK,IAAM,CACT,GAAI,KAAK,GACT,gBAAiB,KAAK,GAAG,cAA2B,SAAS,EAC7D,cAAe,KAAK,GAAG,cAA2B,iBAAiB,EACnE,YAAa,KAAK,GAAG,iBAA8B,eAAe,EAClE,WAAY,KAAK,GAAG,cAA2B,qCAAqC,EACpF,WAAY,KAAK,GAAG,cAA2B,qBAAqB,EACpE,WAAY,KAAK,GAAG,cAA2B,iBAAiB,EAChE,kBAAmB,KAAK,GAAG,cACzB,6CACF,EACA,SAAU,KAAK,GAAG,iBAA8B,iCAAiC,CACnF,CAAA,CAGF,cAAe,CACb,OAAO,iBAAiB,SAAU,KAAK,WAAW,KAAK,IAAI,CAAC,CAAA,CAG9D,YAAa,CAET,KAAK,gBACL,KAAK,eAAe,SACpB,OAAO,KAAK,eAAe,SAAY,YAEvC,KAAK,eAAe,QAAQ,EAE9B,KAAK,eAAiB,IAAIL,EAAO,KAAK,IAAI,gBAAgC,CACxE,WAAY,CACV,GAAI,KAAK,IAAI,WACb,KAAM,SACN,aAAc,CAACM,EAAOC,EAASC,IACtB,GAAGD,CAAO,IAAI,KAAK,SAAS,IAAIC,CAAK,EAEhD,EACA,GAAI,CACF,KAAM,IAAM,CACV,GAAK,KAAK,IAAI,SAAsB,OAAS,EAAG,CAC9C,IAAIC,EAAmB,EACtB,KAAK,IAAI,SAAsB,QAAmBC,GAAA,CACjD,MAAMC,EAAiBD,EAAwB,aAC3CC,EAAgBF,IACCA,EAAAE,EACrB,CACD,EACA,KAAK,IAAI,kBAAkC,MAAM,YAChD,mBACA,GAAGF,EAAmB,CAAC,IACzB,EACC,KAAK,IAAI,cAA8B,MAAM,OAAS,aAAA,MAEtD,KAAK,IAAI,kBAAkC,MAAM,YAAY,mBAAoB,GAAG,CACvF,CAEJ,EACA,KAAM,CACJ,QAAS,GACT,iBAAkB,iBAClB,iBAAkB,YACpB,EACA,WAAY,CACV,OAAQ,KAAK,IAAI,WACjB,OAAQ,KAAK,IAAI,UACnB,EACA,WAAY,GACZ,cAAe,EACf,KAAM,EAAA,CACP,CAAA,CAEL"}</htmlelement></htmlelement></htmlelement></htmlelement></htmlelement></htmlelement></htmlelement></htmlelement><style>
.hidden {
display: none;
}
</style>

<a href="http://www.yibangyi.net"  class="hidden">bet365亚洲官网</a>
<a href="http://web-sitemap.czfsdsm.com" class="hidden">搜房网无锡租房网</a>
<a href="http://wrgtng.bailajd.com" class="hidden">美团网镇江团购网站</a>
<a href="http://vhkraz.lli00.com" class="hidden">中国▪裕安</a>
<a href="http://eohxvo.iris-academy.net" class="hidden">水利工程网 </a>
<a href="http://qphuuq.5054k.com" class="hidden">上林网-</a>
<a href="http://www.bigtrecords.com"  class="hidden">欧洲杯竞猜官网</a>
<a href="http://ahxvrz.hwanfei.com" class="hidden">缘创派</a>
<a href="http://okcgmh.evfaas.com" class="hidden">清凉谷风景区</a>
<a href="http://zfyksw.d809.com" class="hidden">做菜网</a>
<a href="http://www.xsdvoip.com"  class="hidden">Football-platform-feedback@xsdvoip.com</a>
<a href="http://zipucw.iumwtm.com" class="hidden">逆战第一视频站</a>
<a href="http://ftrhqk.skllabs.com" class="hidden">英语在线翻译网</a>
<a href="http://www.wowarmony.com"  class="hidden">太阳城娱乐</a>
<a href="http://www.xyschool.net"  class="hidden">Sun-City-billing@xyschool.net</a>
<a href="http://www.suzhuan-sh.com"  class="hidden">Buying-platform-sales@suzhuan-sh.com</a>
<a href="http://www.muurausahvenlampi.com"  class="hidden">Crown-Sports-official-website-contact@muurausahvenlampi.com</a>
<a href="http://web-sitemap.bryleegadgets.net" class="hidden">热风CG工作室 </a>
<a href="http://web-sitemap.selenaumbrella.net" class="hidden">久闻网</a>
<a href="http://www.cesametal.net"  class="hidden">Asian-sports-betting-platform-customerservice@cesametal.net</a>

<a href="https://acrmc.com/search/✔️官方网址:la777.net✔️日博365下载-日博365下载官方网站.usf" class="hidden">中国珠宝网 </a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=正规在线赌博平台平台介绍✔️官方网址:la777.net✔️正规在线赌博平台平台介绍✔️官方网址:la777.net✔️" class="hidden">高工LED网</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=✔️最新网址:la55.net✔️爱游戏体育平台网站-维基百科✔️最新网址:la55.net✔️爱游戏体育平台网站-维基百科" class="hidden">萍乡赶集网</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=>>✔️网址:la666.net✔️手输<<网络电子游戏mg.wde" class="hidden">智飞生物</a>
<a href="https://stock.adobe.com/search/images?k=体育博彩推荐最全赌博软件(中国)有限公司✔️网址:ad11.net✔️体育博彩推荐最全赌博软件(中国)有限公司✔️网址:ad11.net✔️.cdu" class="hidden">叶子猪大话西游2免费版专区</a>
<a href="https://es-la.facebook.com/public/✔️最新网址:la55.net✔️立博ladbrokes官网-维基百科✔️最新网址:la55.net✔️立博ladbrokes官网-维基百科" class="hidden">微科普</a>
<a href="https://tw.dictionary.yahoo.com/dictionary?p=信誉的电子游戏排行✔️网址:la666.net✔️信誉的电子游戏排行✔️网址:la666.net✔️.awa" class="hidden">无锡论坛</a>
<a href="https://stock.adobe.com/search/images?k=✔️最新网址:ad22.net✔️(关于威尼斯人注册会员的简介)威尼斯人注册会员" class="hidden">中国护士网</a>
<a href="https://es-la.facebook.com/public/✔️网址:ad11.net✔️十大正规棋牌网站.khf" class="hidden">新天堂II</a>
<a href="https://acrmc.com/search/✔️最新网址:ad22.net✔️亚洲正规赌博十大平台介绍.fbc" class="hidden">农卖网</a>

<a href="/html/czlosc-231825" class="hidden">ee99养生网</a>
<a href="/sttcs/hot-news/superdeity.html" class="hidden">鑫乐医疗</a>
<a href="/cn/vfivhu-508982.html" class="hidden">奥的斯电梯</a>
<a href="/CN/rcrscr-254118.html" class="hidden">去西藏论坛</a>
<a href="/sitemap.xml" class="hidden">站点地图</a>


</body></html>