{"version":3,"file":"js/component-productCarouselComponent.chunk.js","mappings":"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","sources":["webpack:///./assets/common/src/scripts/base/baseComponent.ts","webpack:///./assets/common/src/scripts/components/productCarouselComponent.ts"],"sourcesContent":["import Bean from 'bean';\nimport deepFreeze from '../utilities/freeze';\nimport CommonInterface from './commonInterface';\nexport default class BaseComponent extends CommonInterface {\n /**\n *\n * constructor\n *\n * @param {Element} element\n */\n constructor(element) {\n super();\n this._componentElement = element;\n this._componentElement.setAttribute('data-component-init', 'true');\n this._checkMessages();\n }\n /**\n * @returns {HTMLElement}\n */\n get $el() {\n return this._componentElement;\n }\n get $options() {\n const compOptions = {};\n const options = Object.assign({}, this.$el.dataset);\n const optionsEntires = Object.keys(options).filter((entry) => entry.includes('option'));\n optionsEntires.forEach((entry) => {\n const cleanEntry = BaseComponent.cleanOptionKey(entry);\n let optionValue;\n if (options[entry].includes('{') && options[entry].includes('}')) {\n optionValue = JSON.parse(options[entry].replace(/'/g, '\"'));\n }\n else {\n optionValue = BaseComponent.convertType(options[entry]);\n }\n compOptions[cleanEntry] = optionValue;\n });\n return deepFreeze(compOptions);\n }\n get COMPONENT_NAME() {\n return this.__proto__.constructor.name;\n }\n static convertType(option) {\n let optionReturn;\n switch (option) {\n case 'false':\n optionReturn = false;\n break;\n case 'true':\n optionReturn = true;\n break;\n case 'null':\n optionReturn = null;\n break;\n default:\n optionReturn = option;\n break;\n }\n return optionReturn;\n }\n static cleanOptionKey(key) {\n const str = key.replace('option', '');\n return `${str.charAt(0).toLocaleLowerCase()}${str.slice(1)}`;\n }\n /**\n *\n * $on\n *\n * @param {String} events\n * @param {Function} cb\n * @param {Element} [element = this.$el]\n * @param {Array|String|Element} [elements = null]\n */\n $on(events, cb, element = this.$el, elements = null) {\n if (!element || !events || !cb)\n return;\n if (!elements) {\n Bean.on(element, events, (e) => {\n if (e)\n e.stopPropagation();\n cb(e);\n });\n }\n else {\n Bean.on(element, events, elements, (e) => {\n if (e)\n e.stopPropagation();\n cb(e);\n });\n }\n }\n /**\n *\n * $one\n *\n * @param {String} events\n * @param {Function} cb\n * @param {Element} [element = this.$el]\n */\n $one(events, cb, element = this.$el) {\n Bean.one(element, events, cb);\n }\n /**\n *\n * $off\n *\n * @param {String} events\n * @param {Element} [element = this.$el]\n */\n $off(events, element = this.$el) {\n Bean.off(element, events);\n }\n /**\n *\n * $fire\n *\n * @param {String} events\n * @param {Element} [element = this.$el]\n */\n $fire(events, element = this.$el) {\n Bean.fire(element, events);\n }\n}\n","import analytics from '@utils/analytics';\nimport Swiper, { A11y, Navigation, Mousewheel } from 'swiper';\nimport BaseComponent from '../base/baseComponent';\nSwiper.use([A11y, Navigation, Mousewheel]);\nexport default class ProductCarouselComponent extends BaseComponent {\n constructor(element) {\n super(element);\n // carousel arrow next/prev not announced by SR and not tabbable with keyboard [OE-13874]\n this.arrowButtonDisabledA11y = () => {\n document.addEventListener('keydown', function (event) {\n if (event.key === 'Tab') {\n const carouselArrow = document.querySelectorAll('.carousel-container__navigation-button');\n carouselArrow.forEach((el) => {\n el.setAttribute('tabindex', '-1');\n });\n }\n });\n };\n this.initSlider();\n this.arrowButtonDisabledA11y();\n }\n initSlider() {\n var _a;\n const { editorialComponents } = window;\n const products = (_a = editorialComponents[this.$options.uuid]) === null || _a === void 0 ? void 0 : _a.products.map((p) => (Object.assign(Object.assign({}, p), { analyticsAttributes: Object.assign(Object.assign({}, p.analyticsAttributes), { list: `recommended_${this.$options.type}` }) })));\n if (!products && !this.$options.isEditorial)\n return;\n if (products) {\n analytics.productImpressions(products, 0);\n }\n // wait for react app to load\n const intervalid = setInterval(() => {\n const recoCarousels = this.$el.querySelectorAll('[data-react=\"recommendationscarousel-app\"]');\n const recoCarouselsCategory = this.$el.querySelectorAll('.recommendationscarousel');\n if (recoCarousels.length > 0) {\n let recoLoaded = 0;\n recoCarousels.forEach((el) => {\n if (el.classList.contains('products-loaded')) {\n recoLoaded++;\n }\n });\n if (recoLoaded == recoCarousels.length) {\n clearTimeout(intervalid);\n }\n else {\n return;\n }\n }\n else {\n this.$el.classList.remove('skeleton-loading');\n clearTimeout(intervalid);\n }\n (recoCarousels.length > 0 ? recoCarousels : [this.$el]).forEach((container) => {\n var _a;\n const mainSlider = container.querySelector('.swiper-container');\n if ((recoCarouselsCategory.length > 0 || recoCarousels.length > 0) && mainSlider.childElementCount <= 1) {\n return;\n }\n // const prevButton = container.querySelector('.swiper-button-prev');\n // const nextButton = container.querySelector('.swiper-button-next');\n container.addEventListener('mousemove', ({ pageX }) => {\n const percentage = (pageX / container.offsetWidth) * 100;\n if (percentage < 25) {\n container.classList.add('show-left-arrow');\n container.classList.remove('show-right-arrow');\n }\n else if (percentage > 75) {\n container.classList.add('show-right-arrow');\n container.classList.remove('show-left-arrow');\n }\n else {\n container.classList.remove('show-right-arrow');\n container.classList.remove('show-left-arrow');\n }\n });\n container.addEventListener('mouseleave', () => {\n container.classList.remove('show-right-arrow');\n container.classList.remove('show-left-arrow');\n });\n const slider = new Swiper(mainSlider, {\n grabCursor: true,\n slidesPerView: this.$options.mobileExtraSmallTiles\n ? this.$options.smallTiles || this.$options.mobileOnlySmallTiles\n ? 1.8\n : 1.7\n : this.$options.smallTiles || this.$options.mobileOnlySmallTiles\n ? 1.1\n : 1,\n // slidesPerView: this.$options.smallTiles || this.$options.mobileOnlySmallTiles ? 1.8 : 1.7,\n slidesPerGroup: 1,\n speed: 1000,\n spaceBetween: this.$options.internalGutter ? 4 : 0,\n threshold: 10,\n watchSlidesProgress: true,\n navigation: {\n nextEl: '.swiper-button-next',\n prevEl: '.swiper-button-prev',\n },\n mousewheel: {\n forceToAxis: true,\n thresholdDelta: 20,\n },\n breakpoints: {\n 1200: {\n slidesPerView: this.$options.smallTiles ? 4.1 : this.$options.biggerSlide ? 3 : 4,\n slidesPerGroup: 1,\n },\n 600: {\n slidesPerView: this.$options.smallTiles ? 3.1 : 3,\n slidesPerGroup: 1,\n },\n },\n a11y: {\n slideRole: 'listitem',\n slideLabelMessage: '',\n enabled: true,\n prevSlideMessage: this.$options.prevslidemessage,\n nextSlideMessage: this.$options.nextslidemessage,\n firstSlideMessage: this.$options.firstslidemessage,\n lastSlideMessage: this.$options.lastslidemessage,\n paginationBulletMessage: (_a = this.$options.paginationbulletmessage) === null || _a === void 0 ? void 0 : _a.replace('INDEX_NUMBER', '{{index}}'),\n },\n });\n // prevButton.addEventListener('click', () => {\n // slider.slideTo(slider.activeIndex - (window.isDesktop() ? (this.$options.biggerSlide ? 3 : 4) : 1));\n // });\n // nextButton.addEventListener('click', () => {\n // slider.slideTo(slider.activeIndex + (window.isDesktop() ? (this.$options.biggerSlide ? 3 : 4) : 1));\n // });\n window.swiperContainers[this.$options.uuid + container.dataset.id] = slider;\n });\n (recoCarouselsCategory.length > 0 ? recoCarouselsCategory : [this.$el]).forEach((container) => {\n var _a;\n const mainSlider = container.querySelector('.swiper-container');\n if ((recoCarouselsCategory.length > 0 || recoCarousels.length > 0) && mainSlider.childElementCount <= 1) {\n return;\n }\n // const prevButton = container.querySelector('.swiper-button-prev');\n // const nextButton = container.querySelector('.swiper-button-next');\n container.addEventListener('mousemove', ({ pageX }) => {\n const percentage = (pageX / container.offsetWidth) * 100;\n if (percentage < 25) {\n container.classList.add('show-left-arrow');\n container.classList.remove('show-right-arrow');\n }\n else if (percentage > 75) {\n container.classList.add('show-right-arrow');\n container.classList.remove('show-left-arrow');\n }\n else {\n container.classList.remove('show-right-arrow');\n container.classList.remove('show-left-arrow');\n }\n });\n container.addEventListener('mouseleave', () => {\n container.classList.remove('show-right-arrow');\n container.classList.remove('show-left-arrow');\n });\n const slider = new Swiper(mainSlider, {\n grabCursor: true,\n slidesPerView: this.$options.mobileExtraSmallTiles\n ? this.$options.smallTiles || this.$options.mobileOnlySmallTiles\n ? 1.8\n : 1.7\n : this.$options.smallTiles || this.$options.mobileOnlySmallTiles\n ? 1.1\n : 1,\n slidesPerGroup: 1,\n speed: 1000,\n spaceBetween: this.$options.internalGutter ? 4 : 0,\n threshold: 10,\n watchSlidesProgress: true,\n navigation: {\n nextEl: '.swiper-button-next',\n prevEl: '.swiper-button-prev',\n },\n breakpoints: {\n 1200: {\n slidesPerView: this.$options.smallTiles ? 4.1 : this.$options.biggerSlide ? 3 : 4,\n slidesPerGroup: 1,\n },\n 600: {\n slidesPerView: this.$options.smallTiles ? 3.1 : 3,\n slidesPerGroup: 1,\n },\n },\n a11y: {\n slideRole: 'listitem',\n slideLabelMessage: '',\n enabled: true,\n prevSlideMessage: this.$options.prevslidemessage,\n nextSlideMessage: this.$options.nextslidemessage,\n firstSlideMessage: this.$options.firstslidemessage,\n lastSlideMessage: this.$options.lastslidemessage,\n paginationBulletMessage: (_a = this.$options.paginationbulletmessage) === null || _a === void 0 ? void 0 : _a.replace('INDEX_NUMBER', '{{index}}'),\n },\n });\n // prevButton.addEventListener('click', () => {\n // slider.slideTo(slider.activeIndex - (window.isDesktop() ? (this.$options.biggerSlide ? 3 : 4) : 1));\n // });\n // nextButton.addEventListener('click', () => {\n // slider.slideTo(slider.activeIndex + (window.isDesktop() ? (this.$options.biggerSlide ? 3 : 4) : 1));\n // });\n window.swiperContainers[this.$options.uuid + container.dataset.id] = slider;\n });\n }, 500);\n if (this.$options.tabswitch) {\n const switches = this.$el.querySelectorAll('button[data-switch]');\n const handleSwitchClick = (e) => {\n var _a, _b, _c, _d;\n switches.forEach((el) => el.classList.remove('active'));\n e.currentTarget.classList.add('active');\n this.$el.querySelectorAll('.recommendationscarousel').forEach((el) => el.classList.add('product-carousel__is-hidden'));\n this.$el.querySelector(`[data-id=\"${(_a = e.currentTarget.dataset) === null || _a === void 0 ? void 0 : _a.switch}\"]`).classList.remove('product-carousel__is-hidden');\n this.$el.querySelector(`[data-id=\"${(_b = e.currentTarget.dataset) === null || _b === void 0 ? void 0 : _b.switch}\"]`).classList.remove('d-none');\n (_d = window.swiperContainers[this.$options.uuid + ((_c = e.currentTarget.dataset) === null || _c === void 0 ? void 0 : _c.switch)]) === null || _d === void 0 ? void 0 : _d.update();\n };\n switches.forEach((el) => el.addEventListener('click', handleSwitchClick));\n }\n }\n}\n"],"names":["BaseComponent","constructor","element","super","this","_componentElement","setAttribute","_checkMessages","$el","$options","compOptions","options","Object","assign","dataset","keys","filter","entry","includes","forEach","cleanEntry","cleanOptionKey","optionValue","JSON","parse","replace","convertType","COMPONENT_NAME","__proto__","name","static","option","optionReturn","key","str","charAt","toLocaleLowerCase","slice","$on","events","cb","elements","e","stopPropagation","$one","$off","$fire","ProductCarouselComponent","arrowButtonDisabledA11y","document","addEventListener","event","querySelectorAll","el","initSlider","_a","editorialComponents","window","products","uuid","map","p","analyticsAttributes","list","type","isEditorial","intervalid","setInterval","recoCarousels","recoCarouselsCategory","length","recoLoaded","classList","contains","clearTimeout","remove","container","mainSlider","querySelector","childElementCount","pageX","percentage","offsetWidth","add","slider","grabCursor","slidesPerView","mobileExtraSmallTiles","smallTiles","mobileOnlySmallTiles","slidesPerGroup","speed","spaceBetween","internalGutter","threshold","watchSlidesProgress","navigation","nextEl","prevEl","mousewheel","forceToAxis","thresholdDelta","breakpoints","biggerSlide","a11y","slideRole","slideLabelMessage","enabled","prevSlideMessage","prevslidemessage","nextSlideMessage","nextslidemessage","firstSlideMessage","firstslidemessage","lastSlideMessage","lastslidemessage","paginationBulletMessage","paginationbulletmessage","swiperContainers","id","tabswitch","switches","handleSwitchClick","_b","_c","_d","currentTarget","switch","update"],"sourceRoot":""}