{"version":3,"file":"cardBrowser.4b6dfe8884fbf4151a6e.js","mappings":"mKAAA,IAA4B,EAA5B,GAA4B,EAA5B,UAA4B,k8BAEPA,EAAW,WAC9B,WAAYC,IAHc,4FAGV,SACdC,KAAKD,GAAKA,EACVC,KAAKC,SAAW,KAChBD,KAAKE,QAAU,EAAIH,EAAGI,qBAAqB,MAC3CH,KAAKI,MACP,CAR0B,UA+CzB,OA/CyB,EAQzB,GARyB,EAQzB,8BAED,SAAgBC,GACd,IAAMC,EAAgBN,KAAKE,QAAQK,MAAMF,EAAOG,YAAaH,EAAOG,YAAcH,EAAOI,OAAOC,gBAChGV,KAAKE,QAAQS,SAAQ,SAACC,GAAM,OAAKA,EAAOC,aAAa,YAAa,EAAE,IACpEP,EAAcK,SAAQ,SAACC,GAAM,OAAKA,EAAOC,aAAa,WAAY,EAAE,GACtE,GAAC,kBAED,WAAO,WACLb,KAAKC,SAAW,IAAIa,EAAAA,QAAOd,KAAKD,GAAI,CAClCgB,MAAM,EACNC,cAAe,EACfN,eAAgB,EAChBO,aAAc,GACdC,WAAY,gCACZC,WAAY,gCACZC,YAAa,CAEX,IAAK,CACHJ,cAAe,EACfN,eAAgB,GAGlB,KAAM,CACJM,cAAe,EACfN,eAAgB,IAGpBW,WAAY,8BACZC,qBAAqB,EACrBC,aAAc,0BACdC,WAAY,wBACZC,YAAa,yBACbC,kBAAmB,iCACnBC,kBAAmB,UACnBC,OAAQ,SAACvB,GAAM,OAAK,EAAKwB,gBAAgBxB,EAAO,EAChDyB,cAAe,SAACzB,GAAM,OAAK,EAAKwB,gBAAgBxB,EAAO,EACvD0B,mBAAoB,SAAC1B,GAAM,OAAK,EAAKwB,gBAAgBxB,EAAO,GAEhE,MA/C0B,8EA+CzB,EA7C6B,GA6C7B,W","sources":["webpack://jcb.com/./src/js/components/cardBrowser.js"],"sourcesContent":["import Swiper from 'swiper';\r\n\r\nexport default class cardBrowser {\r\n constructor(el) {\r\n this.el = el;\r\n this.carousel = null;\r\n this.buttons = [...el.getElementsByTagName('a')];\r\n this.init();\r\n }\r\n\r\n tabIndexHandler(swiper) {\r\n const activeButtons = this.buttons.slice(swiper.activeIndex, swiper.activeIndex + swiper.params.slidesPerGroup);\r\n this.buttons.forEach((button) => button.setAttribute('tabindex', -1));\r\n activeButtons.forEach((button) => button.setAttribute('tabindex', 0));\r\n }\r\n\r\n init() {\r\n this.carousel = new Swiper(this.el, {\r\n a11y: true,\r\n slidesPerView: 3,\r\n slidesPerGroup: 3,\r\n spaceBetween: 20,\r\n nextButton: '.c-card-browser__button--next',\r\n prevButton: '.c-card-browser__button--prev',\r\n breakpoints: {\r\n // when window width is <= 767px\r\n 767: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n },\r\n // when window width is <= 1199px\r\n 1199: {\r\n slidesPerView: 2,\r\n slidesPerGroup: 2,\r\n },\r\n }, \r\n pagination: '.c-card-browser__pagination',\r\n paginationClickable: true, \r\n wrapperClass: 'c-card-browser__wrapper',\r\n slideClass: 'c-card-browser__slide',\r\n bulletClass: 'c-card-browser__bullet',\r\n bulletActiveClass: 'c-card-browser__bullet--active',\r\n notificationClass: 'sr-only',\r\n onInit: (swiper) => this.tabIndexHandler(swiper),\r\n onAfterResize: (swiper) => this.tabIndexHandler(swiper),\r\n onSlideChangeStart: (swiper) => this.tabIndexHandler(swiper),\r\n });\r\n }\r\n}\r\n"],"names":["cardBrowser","el","this","carousel","buttons","getElementsByTagName","init","swiper","activeButtons","slice","activeIndex","params","slidesPerGroup","forEach","button","setAttribute","Swiper","a11y","slidesPerView","spaceBetween","nextButton","prevButton","breakpoints","pagination","paginationClickable","wrapperClass","slideClass","bulletClass","bulletActiveClass","notificationClass","onInit","tabIndexHandler","onAfterResize","onSlideChangeStart"],"sourceRoot":""}