{"version":3,"sources":["webpack:///./src/feature/content-swipe/content-swipe.js"],"names":["ContentSwipe","element","initDomCache","el","log","numberOfPages","querySelectorAll","length","config","getAttribute","JSON","parse","swiperConfig","spaceBetween","undefined","parseInt","grabCursor","slidesPerView","pagination","clickable","autoplay","breakpoints","768","480","initEvents","this","swiper","destroyed","activateSwipe","removeSwipe","Swiper","dom","swiperContainer","destroy","BaseFeature"],"mappings":"y9BAIMA,E,YACL,WAAYC,GAAS,O,4FAAA,UACpB,wBAAMA,KAEDC,eAEL,EAAKC,GAAKF,EAEV,EAAKG,IAAI,UAPW,OAoBpB,EAAKC,cAAgB,EAAKF,GAAGG,iBAAiB,uBAAuBC,QAAU,EAG/E,EAAKC,OAAS,EAAKL,GAAGM,aAAa,eACnC,EAAKD,OAASE,KAAKC,MAAM,EAAKH,QAK9B,EAAKI,aAAe,CAEnBC,kBAA2CC,IAA7B,EAAKN,OAAOK,aAA6BE,SAAS,EAAKP,OAAOK,cACzE,GACHG,YAAY,EACZC,cAAe,EAAKT,OAAOS,cAAgBF,SAAS,EAAKP,OAAOS,eAAiB,EAKjFC,WAAY,CACXf,GAAI,qBACJgB,WAAW,GAEZC,WAAU,EAAKZ,OAAOY,UAAW,EAAKZ,OAAOY,SAC7CC,YAAa,EAAKb,OAAOa,YAAc,EAAKb,OAAOa,YAnCzB,CAC1BC,IAAK,CACJL,cAAe,EACfJ,aAAc,IAEfU,IAAK,CACJN,cAAe,EACfJ,aAAc,MA8BhB,EAAKW,aA9Ce,E,0SAmDCV,IAAhBW,KAAKC,SAAkD,IAA1BD,KAAKC,OAAOC,YAAuBF,KAAKpB,cAAgB,EACzFoB,KAAKG,gBAELH,KAAKI,gB,sCAKNJ,KAAKC,OAAS,IAAII,IAAOL,KAAKM,IAAIC,gBAAiBP,KAAKb,gB,yCAIpCE,IAAhBW,KAAKC,QAAsBD,KAAKC,OAAOO,SAAQ,GAAM,Q,oCAhEhCC,GAoEZlC","file":"16-6fd018d9.pkg.js","sourcesContent":["/* eslint-disable radix */\r\nimport Swiper from 'swiper';\r\nimport BaseFeature from '../../foundation/base/base';\r\n\r\nclass ContentSwipe extends BaseFeature {\r\n\tconstructor(element) {\r\n\t\tsuper(element);\r\n\r\n\t\tthis.initDomCache();\r\n\r\n\t\tthis.el = element;\r\n\r\n\t\tthis.log('Swiper');\r\n\r\n\t\tconst DefaultBreakpoints = {\r\n\t\t\t768: {\r\n\t\t\t\tslidesPerView: 2,\r\n\t\t\t\tspaceBetween: 20,\r\n\t\t\t},\r\n\t\t\t480: {\r\n\t\t\t\tslidesPerView: 1,\r\n\t\t\t\tspaceBetween: 20,\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.numberOfPages = this.el.querySelectorAll('[data-swiper-slide]').length || 0;\r\n\r\n\t\t// Here we can import values from Sitecore through the data-config attribute\r\n\t\tthis.config = this.el.getAttribute('data-config');\r\n\t\tthis.config = JSON.parse(this.config);\r\n\r\n\t\t// Swiper configuration\r\n\t\t// Do you need to enhance? go to api: https://idangero.us/swiper/api/\r\n\r\n\t\tthis.swiperConfig = {\r\n\t\t\t// Example of data-config use. If not present we set a default\r\n\t\t\tspaceBetween: this.config.spaceBetween !== undefined ? parseInt(this.config.spaceBetween)\r\n\t\t\t\t: 30,\r\n\t\t\tgrabCursor: true,\r\n\t\t\tslidesPerView: this.config.slidesPerView ? parseInt(this.config.slidesPerView) : 1,\r\n\t\t\t/* navigation: {\r\n\t\t\t\tnextEl: '[swiper-button-next]',\r\n\t\t\t\tprevEl: '[swiper-button-prev]',\r\n\t\t\t}, */\r\n\t\t\tpagination: {\r\n\t\t\t\tel: '.swiper-pagination',\r\n\t\t\t\tclickable: true\r\n\t\t\t},\r\n\t\t\tautoplay: this.config.autoplay ? this.config.autoplay : false,\r\n\t\t\tbreakpoints: this.config.breakpoints ? this.config.breakpoints : DefaultBreakpoints\r\n\t\t};\r\n\t\tthis.initEvents();\r\n\t}\r\n\r\n\r\n\tinitEvents() {\r\n\t\tif ((this.swiper === undefined || this.swiper.destroyed === true) && this.numberOfPages > 1) {\r\n\t\t\tthis.activateSwipe();\r\n\t\t} else {\r\n\t\t\tthis.removeSwipe();\r\n\t\t}\r\n\t}\r\n\r\n\tactivateSwipe() {\r\n\t\tthis.swiper = new Swiper(this.dom.swiperContainer, this.swiperConfig);\r\n\t}\r\n\r\n\tremoveSwipe() {\r\n\t\tif (this.swiper !== undefined) this.swiper.destroy(true, true);\r\n\t}\r\n}\r\n\r\nexport default ContentSwipe;\r\n"],"sourceRoot":""}