{"version":3,"sources":["components/product/detail/images/_lite/product-detail-images.js"],"names":["tagsNames","ProductDetailImages","Component","constructor","el","mainSwiperEl","$find","mainSwiper","mainSwiperConfig","slidesPerView","pagination","clickable","lazy","loadPrevNext","elementClass","watchOverflow","tags","forEach","name","init","constructMainSwiper","Swiper","goToVariantImage","id","slideIndex","Array","from","slides","findIndex","slide","dataset","variant","slideTo","updateTags","classList","add","tag","remove","onVariantChanged","EventBus","getInstance","addEventListener","e","detail"],"mappings":"aAAA,KAAMA,CAAAA,SAAS,CAAG,CAAC,gBAAD,CAAmB,YAAnB,CAAiC,QAAjC,CAA2C,SAA3C,CAAsD,SAAtD,CAAiE,WAAjE,CAA8E,oBAA9E,CAAoG,iBAApG,CAAlB,CACA,KAAMC,CAAAA,mBAAN,QAAkCC,CAAAA,SAAU,CAC3CC,WAAW,CAACC,EAAD,CAAK,CACf,MAAMA,EAAN,EACA,KAAKC,YAAL,CAAoB,KAAKC,KAAL,CAAW,oBAAX,CAApB,CACA,KAAKC,UAAL,CAAkB,IAAlB,CACA,KAAKC,gBAAL,CAAwB,CACvBC,aAAa,CAAE,CADQ,CAEvBC,UAAU,CAAE,CACXN,EAAE,CAAE,iCADO,CAEXO,SAAS,CAAE,IAFA,CAFW,CAMvBC,IAAI,CAAE,CACLC,YAAY,CAAE,IADT,CAELC,YAAY,CAAE,MAFT,CANiB,CAUvBC,aAAa,CAAE,IAVQ,CAAxB,CAYA,KAAKC,IAAL,CAAY,EAAZ,CACAhB,SAAS,CAACiB,OAAV,CAAkBC,IAAI,EAAI,CACzB,KAAKF,IAAL,CAAUE,IAAV,EAAkB,KAAKZ,KAAL,CAAW,OAASY,IAApB,CAClB,CAFD,EAGA,KAAKC,IAAL,EACA,CAEDC,mBAAmB,EAAG,CACrB,KAAKb,UAAL,CAAkB,GAAIc,CAAAA,MAAJ,CAAW,KAAKhB,YAAhB,CAA8B,KAAKG,gBAAnC,CAClB,CAEDc,gBAAgB,CAAC,CAACC,EAAD,CAAD,CAAO,CACtB,KAAMC,CAAAA,UAAU,CAAGC,KAAK,CAACC,IAAN,CAAW,KAAKnB,UAAL,CAAgBoB,MAA3B,EAAmCC,SAAnC,CAA6CC,KAAK,EAAI,CAACA,KAAK,CAACC,OAAN,CAAcC,OAAf,GAA2B,CAACR,EAAlF,CAAnB,CACA,KAAKhB,UAAL,CAAgByB,OAAhB,CAAwBR,UAAU,GAAK,CAAC,CAAhB,CAAoB,CAApB,CAAwBA,UAAhD,CACA,CAEDS,UAAU,CAACF,OAAD,CAAU,CACnB/B,SAAS,CAACiB,OAAV,CAAkBC,IAAI,EAAI,CACzB,GAAI,KAAKF,IAAL,CAAUE,IAAV,CAAJ,CAAqB,CACpB,KAAKF,IAAL,CAAUE,IAAV,EAAgBgB,SAAhB,CAA0BC,GAA1B,CAA8B,UAA9B,CACA,CACD,CAJD,EAKAJ,OAAO,CAACf,IAAR,CAAaC,OAAb,CAAqBmB,GAAG,EAAI,CAC1B,GAAI,KAAKpB,IAAL,CAAUoB,GAAV,CAAJ,CAAoB,CACnB,KAAKpB,IAAL,CAAUoB,GAAV,EAAeF,SAAf,CAAyBG,MAAzB,CAAgC,UAAhC,CACA,CACD,CAJF,CAMA,CAEDC,gBAAgB,CAACP,OAAD,CAAU,CACzB,KAAKE,UAAL,CAAgBF,OAAhB,EACA,KAAKT,gBAAL,CAAsBS,OAAtB,CACA,CAEDZ,IAAI,EAAG,CACN,KAAKd,YAAL,EAAqB,KAAKe,mBAAL,EAArB,CACAmB,QAAQ,CAACC,WAAT,GAAuBC,gBAAvB,CAAwC,uBAAxC,CAAiEC,CAAC,EAAI,KAAKJ,gBAAL,CAAsBI,CAAC,CAACC,MAAxB,CAAtE,CACA,CAvD0C","sourcesContent":["const tagsNames = ['tagRecommended', 'discounted', 'tagNew', 'tagSale', 'tagUsed', 'tagAction', 'tagFreeStorePickup', 'tagFreeDelivery'];\r\nclass ProductDetailImages extends Component {\r\n\tconstructor(el) {\r\n\t\tsuper(el);\r\n\t\tthis.mainSwiperEl = this.$find('[data-swiper-main]');\r\n\t\tthis.mainSwiper = null;\r\n\t\tthis.mainSwiperConfig = {\r\n\t\t\tslidesPerView: 1,\r\n\t\t\tpagination: {\r\n\t\t\t\tel: '.ProductDetailImages-pagination',\r\n\t\t\t\tclickable: true\r\n\t\t\t},\r\n\t\t\tlazy: {\r\n\t\t\t\tloadPrevNext: true,\r\n\t\t\t\telementClass: 'lazy'\r\n\t\t\t},\r\n\t\t\twatchOverflow: true\r\n\t\t};\r\n\t\tthis.tags = {};\r\n\t\ttagsNames.forEach(name => {\r\n\t\t\tthis.tags[name] = this.$find('.is-' + name);\r\n\t\t});\r\n\t\tthis.init();\r\n\t}\r\n\r\n\tconstructMainSwiper() {\r\n\t\tthis.mainSwiper = new Swiper(this.mainSwiperEl, this.mainSwiperConfig);\r\n\t}\r\n\r\n\tgoToVariantImage({id}) {\r\n\t\tconst slideIndex = Array.from(this.mainSwiper.slides).findIndex(slide => +slide.dataset.variant === +id);\r\n\t\tthis.mainSwiper.slideTo(slideIndex === -1 ? 0 : slideIndex);\r\n\t}\r\n\r\n\tupdateTags(variant) {\r\n\t\ttagsNames.forEach(name => {\r\n\t\t\tif (this.tags[name]) {\r\n\t\t\t\tthis.tags[name].classList.add('u-hidden');\r\n\t\t\t}\r\n\t\t});\r\n\t\tvariant.tags.forEach(tag => {\r\n\t\t\t\tif (this.tags[tag]) {\r\n\t\t\t\t\tthis.tags[tag].classList.remove('u-hidden');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\tonVariantChanged(variant) {\r\n\t\tthis.updateTags(variant);\r\n\t\tthis.goToVariantImage(variant);\r\n\t}\r\n\r\n\tinit() {\r\n\t\tthis.mainSwiperEl && this.constructMainSwiper();\r\n\t\tEventBus.getInstance().addEventListener('productVariantChanged', e => this.onVariantChanged(e.detail));\r\n\t}\r\n}\r\n"],"file":"product-detail-images.min.js"}