{"version":3,"file":"js/component-thronIntegrationComponent.chunk.js","mappings":"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","sources":["webpack:///./assets/common/src/scripts/base/baseComponent.ts","webpack:///./assets/common/src/scripts/components/thronIntegrationComponent.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 BaseComponent from '../base/baseComponent';\nconst THRON_DNAME = {\n ST: 'stoneisland-cdn.thron.com',\n MO: 'moncler-cdn.thron.com',\n};\nconst BRANDCONFIGS = {\n MO: {\n video: {\n clientId: 'moncler',\n sessId: 'ymo4nq',\n },\n audio: {\n clientId: 'moncler',\n sessId: 'ymo4nq',\n },\n },\n ST: {\n video: {\n sessId: 'ujzayc',\n clientId: 'stoneisland',\n },\n audio: {\n sessId: 'vxnhgf',\n clientId: 'stoneisland',\n waveColor: '#999999',\n waveProgressColor: '#000000',\n audioResponsive: false,\n },\n },\n};\nexport default class ThronIntegrationComponent extends BaseComponent {\n constructor(element, mediatype, options) {\n super(element);\n this.defaultOptions = {\n noSkin: true,\n mouseWheelZoom: false,\n autoplay: true,\n loop: true,\n muted: true,\n disableUserProfiling: true,\n ignoreUserBehavior: true,\n pauseOtherPlayers: false,\n };\n this.mediatype = mediatype || 'video';\n this.isFirstPlay = true;\n if (options) {\n options.onPauseCallback && (this.onPauseCallback = options.onPauseCallback);\n options.onPlayCallback && (this.onPlayCallback = options.onPlayCallback);\n options.onCompleteCallback && (this.onCompleteCallback = options.onCompleteCallback);\n options.onInitCallback && (this.onInitCallback = options.onInitCallback);\n options.onTimeUpdate && (this.onTimeUpdate = options.onTimeUpdate);\n }\n //@ts-ignore\n window.thronInitTracker = [];\n const scriptSrc = `https://${THRON_DNAME[window.brandId || 'MO']}/shared/ce/bootstrap/1/scripts/embeds-min.js`;\n const existingScript = document.querySelector(`script[src=\"${scriptSrc}\"]`);\n if (!existingScript) {\n const script = document.createElement('script');\n script.src = scriptSrc;\n document.head.appendChild(script);\n }\n this.initPlayerWhenAvailable(element);\n }\n initPlayerWhenAvailable(element) {\n const interval = setInterval(() => {\n //@ts-ignore\n if (window.THRONContentExperience) {\n clearInterval(interval);\n this.initPlayer(element);\n }\n }, 250);\n }\n match(max = null, min = null) {\n if (!max && !min) {\n return false;\n }\n let maxString = '';\n let minString = '';\n if (max) {\n //@ts-ignore\n maxString = `(max-width: ${parseFloat(window.mqObj[max]) - 1}px)${min ? ' and ' : ''}`;\n }\n if (min) {\n //@ts-ignore\n minString = `(min-width: ${window.mqObj[min]}px)`;\n }\n return window.matchMedia(`${maxString}${minString}`).matches;\n }\n initPlayer(playerEl) {\n let actualDisplayed = '';\n if (playerEl.dataset.optionMobileId !== null && playerEl.dataset.optionMobileId !== undefined) {\n this.sizeCheck(actualDisplayed, null, playerEl);\n }\n else {\n let id = playerEl.dataset.optionId;\n actualDisplayed = 'desktop';\n this.bindPlayer(id, actualDisplayed, null, playerEl);\n }\n }\n sizeCheck(actualDisplayed, player, playerEl) {\n let id;\n if (this.match(null, 'md') || window.matchMedia('(orientation: landscape)').matches) {\n id = playerEl.dataset.optionId;\n actualDisplayed = 'desktop';\n }\n else {\n actualDisplayed = 'mobile';\n if (playerEl.dataset.optionMobileId !== 'null') {\n id = playerEl.dataset.optionMobileId;\n }\n else {\n id = playerEl.dataset.optionId;\n }\n }\n this.bindPlayer(id, actualDisplayed, player, playerEl);\n }\n pauseVideo(pauseVideoElement, playerInstance) {\n var _a;\n (_a = this.pauseVideoElement) === null || _a === void 0 ? void 0 : _a.addEventListener('click', (e) => {\n e.preventDefault();\n if (pauseVideoElement.getAttribute('aria-pressed') === 'true') {\n this.pauseVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.play();\n }\n else {\n this.pauseVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.pause();\n }\n });\n }\n bindPlayer(id, actualDisplayed, player, playerEl) {\n let randomNumber = Math.floor(Math.random() * 10000000000000000);\n playerEl.id = 'thron_' + id + '_' + randomNumber;\n if (playerEl.dataset.optionBackground) {\n playerEl.classList.add('bg-mode');\n playerEl.parentElement.style.position = 'relative';\n }\n else {\n playerEl.style.height = 'inherit';\n }\n //BRAND OVERRIDE CONFIGS\n let brandOptions = BRANDCONFIGS[window.brandId || 'MO'][this.mediatype];\n let options = Object.assign(Object.assign(Object.assign(Object.assign({}, this.defaultOptions), { xcontentId: id }), brandOptions), this.$options);\n if (player) {\n player.destroy();\n }\n let dateStart = new Date();\n let hours = dateStart.getHours();\n let minutes = dateStart.getMinutes();\n let seconds = dateStart.getSeconds();\n let milliseconds = dateStart.getMilliseconds();\n let completeTimeStart = hours + 'h :' + minutes + 'm :' + seconds + 's :' + milliseconds + 'ms';\n //@ts-ignore\n player = window.THRONContentExperience('thron_' + id + '_' + randomNumber, options);\n this.playerInstance = player;\n player.on('pause', (playerInstance) => {\n var _a;\n (_a = this.pauseVideoElement) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-pressed', 'true');\n this.onPauseCallback && this.onPauseCallback();\n });\n this.onPlayCallback &&\n player.on('play', (playerInstance) => {\n this.onPlayCallback(this.isFirstPlay);\n this.isFirstPlay && (this.isFirstPlay = false);\n });\n if (this.onCompleteCallback && this.loopTimes) {\n const onCompleteFunction = (playerInstance) => {\n this.onCompleteCallback(playerInstance);\n this.loopTimes -= 1;\n if (!this.loopTimes) {\n player.off('complete', onCompleteFunction);\n }\n };\n player.on('complete', onCompleteFunction);\n }\n else if (this.onCompleteCallback) {\n player.on('complete', this.onCompleteCallback);\n }\n if (this.onInitCallback) {\n player.on('canPlay', (playerInstance) => {\n if (this.onInitCallback) {\n this.onInitCallback(playerInstance);\n }\n });\n }\n if (this.onTimeUpdate) {\n player.on('timeupdate', (playerInstance) => {\n this.onTimeUpdate(playerInstance);\n });\n }\n player.on('ready', (playerInstance) => {\n var _a, _b, _c, _d, _e, _f, _g;\n // console.info('thronplayer ready: ', playerInstance);\n let dateEnd = new Date();\n let hours = dateEnd.getHours();\n let minutes = dateEnd.getMinutes();\n let seconds = dateEnd.getSeconds();\n let milliseconds = dateEnd.getMilliseconds();\n let completeTimeEnd = hours + 'h :' + minutes + 'm :' + seconds + 's :' + milliseconds + 'ms';\n let timeDiff = dateEnd.getTime() - dateStart.getTime();\n //@ts-ignore\n window.thronInitTracker.push({ element: playerEl, timeBegin: completeTimeStart, timeEnd: completeTimeEnd, executionTime: timeDiff + 'ms' });\n const productVideo = playerEl.closest('.product-image--animate, .product-gallery');\n if (productVideo) {\n this.pauseVideoElement = productVideo.querySelector('[data-pause]');\n if (productVideo.contains(productVideo.querySelector('.swiper-container'))) {\n this.pauseVideoElement = playerEl.closest('.swiper-slide').querySelector('[data-pause]');\n }\n this.pauseVideo(this.pauseVideoElement, playerInstance);\n }\n const galleryVideo = playerEl.closest('.gallery-wrapper');\n if (galleryVideo) {\n this.pauseVideoElement = galleryVideo.querySelector('[data-pause]');\n if (galleryVideo.contains(galleryVideo.querySelector('.swiper-container'))) {\n this.pauseVideoElement = playerEl.closest('.swiper-slide').querySelector('[data-pause]');\n }\n this.pauseVideo(this.pauseVideoElement, playerInstance);\n }\n const hero = playerEl.closest('.hero__hero-column');\n if (hero) {\n this.pauseVideoElement = hero.querySelector('[data-pause]');\n this.pauseVideo(this.pauseVideoElement, playerInstance);\n const muteVideoElement = hero.querySelector('[data-mute]');\n muteVideoElement === null || muteVideoElement === void 0 ? void 0 : muteVideoElement.addEventListener('click', () => {\n if (muteVideoElement.getAttribute('aria-pressed') === 'true') {\n muteVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.volume(0);\n }\n else {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.volume(1);\n }\n });\n }\n const heroCarousel = playerEl.closest('.hero-carousel__main-wrapper');\n if (heroCarousel) {\n let slideIndex = (_a = playerEl.closest('.swiper-slide')) === null || _a === void 0 ? void 0 : _a.getAttribute('data-index');\n if (slideIndex) {\n // pause button\n this.pauseVideoElement = (_c = (_b = heroCarousel === null || heroCarousel === void 0 ? void 0 : heroCarousel.querySelector('.hero-carousel__slider-content')) === null || _b === void 0 ? void 0 : _b.querySelector('.swiper-slide[data-index=\"' + slideIndex + '\"]')) === null || _c === void 0 ? void 0 : _c.querySelector('.video-pause');\n (_d = this.pauseVideoElement) === null || _d === void 0 ? void 0 : _d.addEventListener('click', (e) => {\n if (this.pauseVideoElement.getAttribute('aria-pressed') === 'true') {\n this.pauseVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.play();\n }\n else {\n this.pauseVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.pause();\n }\n });\n // mute button [OE-16480]\n const muteVideoElement = (_f = (_e = heroCarousel === null || heroCarousel === void 0 ? void 0 : heroCarousel.querySelector('.hero-carousel__slider-content')) === null || _e === void 0 ? void 0 : _e.querySelector('.swiper-slide[data-index=\"' + slideIndex + '\"]')) === null || _f === void 0 ? void 0 : _f.querySelector('.btn--volume');\n muteVideoElement === null || muteVideoElement === void 0 ? void 0 : muteVideoElement.addEventListener('click', (e) => {\n if (muteVideoElement.getAttribute('aria-pressed') === 'true') {\n muteVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.volume(0);\n }\n else {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.volume(1);\n }\n });\n }\n }\n const threeColumnMultimedia = playerEl.closest('.three-column-multimedia');\n if (threeColumnMultimedia) {\n this.pauseVideoElement = threeColumnMultimedia.querySelector('[data-pause]');\n if (this.pauseVideoElement) {\n this.pauseVideoElement.dataset.pause = `${parseInt(this.pauseVideoElement.dataset.pause) + 1}`;\n this.pauseVideoElement.dataset.totalVideos = `${parseInt(this.pauseVideoElement.dataset.totalVideos) + 1}`;\n (_g = this.pauseVideoElement) === null || _g === void 0 ? void 0 : _g.addEventListener('click', (e) => {\n e.preventDefault();\n if (this.pauseVideoElement.getAttribute('aria-pressed') === 'true') {\n this.pauseVideoElement.dataset.pause = `${parseInt(this.pauseVideoElement.dataset.pause) + 1}`;\n playerInstance.play();\n if (this.pauseVideoElement.dataset.pause === `${this.pauseVideoElement.dataset.totalVideos}`) {\n this.pauseVideoElement.setAttribute('aria-pressed', 'false');\n }\n }\n else {\n this.pauseVideoElement.dataset.pause = `${parseInt(this.pauseVideoElement.dataset.pause) - 1}`;\n playerInstance.pause();\n if (this.pauseVideoElement.dataset.pause === '0') {\n this.pauseVideoElement.setAttribute('aria-pressed', 'true');\n }\n }\n });\n }\n const muteVideoElement = threeColumnMultimedia.querySelector('[data-mute]');\n if (muteVideoElement) {\n muteVideoElement.dataset.mute = `${parseInt(muteVideoElement.dataset.mute) + 1}`;\n muteVideoElement.dataset.totalVideos = `${parseInt(muteVideoElement.dataset.totalVideos) + 1}`;\n muteVideoElement.addEventListener('click', () => {\n playerInstance.volume(0);\n if (muteVideoElement.getAttribute('aria-pressed') === 'true') {\n muteVideoElement.dataset.mute = `${parseInt(muteVideoElement.dataset.mute) + 1}`;\n if (muteVideoElement.dataset.mute === `${muteVideoElement.dataset.totalVideos}`) {\n muteVideoElement.setAttribute('aria-pressed', 'false');\n }\n }\n else {\n playerInstance.volume(1);\n muteVideoElement.dataset.mute = `${parseInt(muteVideoElement.dataset.mute) - 1}`;\n if (muteVideoElement.dataset.mute === '0') {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n }\n }\n });\n }\n }\n const technicalVideoWrapper = playerEl.closest('.technical-video-wrapper');\n if (technicalVideoWrapper) {\n const playVideoElement = technicalVideoWrapper.querySelector('[data-play]');\n const muteVideoElement = technicalVideoWrapper.querySelector('[data-mute]');\n // set initial state of the buttons\n if (options.autoplay) {\n technicalVideoWrapper.classList.add('video-played');\n technicalVideoWrapper.classList.add('show-controls');\n }\n if (!options.muted) {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n }\n let timeoutInMiliseconds = 3000;\n let timeoutId = 0;\n technicalVideoWrapper === null || technicalVideoWrapper === void 0 ? void 0 : technicalVideoWrapper.addEventListener('click', (e) => {\n let target = e.target;\n if (target.classList.contains('btn--volume'))\n return;\n // metto in pausa\n if (technicalVideoWrapper.classList.contains('video-played')) {\n playVideoElement.setAttribute('aria-pressed', 'true');\n technicalVideoWrapper.classList.remove('video-played');\n playerInstance.pause();\n }\n else {\n playVideoElement.setAttribute('aria-pressed', 'false');\n technicalVideoWrapper.classList.add('video-played');\n playerInstance.play();\n }\n });\n muteVideoElement === null || muteVideoElement === void 0 ? void 0 : muteVideoElement.addEventListener('click', () => {\n if (muteVideoElement.getAttribute('aria-pressed') === 'true') {\n muteVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.volume(0);\n }\n else {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.volume(1);\n }\n });\n technicalVideoWrapper.addEventListener('mousemove', (e) => {\n window.clearTimeout(timeoutId);\n if (technicalVideoWrapper.classList.contains('video-played')) {\n technicalVideoWrapper.classList.add('show-controls');\n timeoutId = window.setTimeout(() => {\n technicalVideoWrapper.classList.remove('show-controls');\n }, timeoutInMiliseconds);\n }\n });\n }\n const productVideoGeneric = playerEl.closest('.wrapper-product-video');\n if (productVideoGeneric) {\n this.pauseVideoElement = productVideoGeneric.querySelector('[data-pause]');\n this.pauseVideo(this.pauseVideoElement, playerInstance);\n }\n const videoContainer = playerEl.closest('.video-container');\n if (videoContainer) {\n if (!options.muted) {\n // penso non sia corretto fare partire il video con l'audio\n playerInstance.volume(1);\n }\n this.pauseVideoElement = videoContainer.querySelector('[data-pause]');\n this.pauseVideo(this.pauseVideoElement, playerInstance);\n const muteVideoElement = videoContainer.querySelector('[data-mute]');\n muteVideoElement === null || muteVideoElement === void 0 ? void 0 : muteVideoElement.addEventListener('click', () => {\n if (muteVideoElement.getAttribute('aria-pressed') === 'true') {\n muteVideoElement.setAttribute('aria-pressed', 'false');\n playerInstance.volume(0);\n }\n else {\n muteVideoElement.setAttribute('aria-pressed', 'true');\n playerInstance.volume(1);\n }\n });\n }\n if (this.onContentReady) {\n this.onContentReady(playerInstance);\n }\n // workaround in case autoplay dont work (mobile)\n // if (playerEl.dataset.optionAutoplay) {\n // setTimeout(() => {\n // playerInstance.play();\n // }, 500);\n // }\n });\n }\n changeContent(id) {\n if (!this.playerInstance) {\n return;\n }\n const brandOptions = BRANDCONFIGS[window.brandId || 'MO'];\n const options = Object.assign(Object.assign(Object.assign(Object.assign({}, this.defaultOptions), { xcontentId: id }), brandOptions), this.$options);\n this.playerInstance.content(options);\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","THRON_DNAME","ST","MO","BRANDCONFIGS","video","clientId","sessId","audio","waveColor","waveProgressColor","audioResponsive","ThronIntegrationComponent","mediatype","defaultOptions","noSkin","mouseWheelZoom","autoplay","loop","muted","disableUserProfiling","ignoreUserBehavior","pauseOtherPlayers","isFirstPlay","onPauseCallback","onPlayCallback","onCompleteCallback","onInitCallback","onTimeUpdate","window","thronInitTracker","scriptSrc","brandId","document","querySelector","script","createElement","src","head","appendChild","initPlayerWhenAvailable","interval","setInterval","THRONContentExperience","clearInterval","initPlayer","match","max","min","maxString","minString","parseFloat","mqObj","matchMedia","matches","playerEl","actualDisplayed","optionMobileId","undefined","sizeCheck","id","optionId","bindPlayer","player","pauseVideo","pauseVideoElement","playerInstance","_a","addEventListener","preventDefault","getAttribute","play","pause","randomNumber","Math","floor","random","optionBackground","classList","add","parentElement","style","position","height","brandOptions","xcontentId","destroy","dateStart","Date","completeTimeStart","getHours","getMinutes","getSeconds","getMilliseconds","on","loopTimes","onCompleteFunction","off","_b","_c","_d","_e","_f","_g","dateEnd","completeTimeEnd","timeDiff","getTime","push","timeBegin","timeEnd","executionTime","productVideo","closest","contains","galleryVideo","hero","muteVideoElement","volume","heroCarousel","slideIndex","threeColumnMultimedia","parseInt","totalVideos","mute","technicalVideoWrapper","playVideoElement","timeoutInMiliseconds","timeoutId","target","remove","clearTimeout","setTimeout","productVideoGeneric","videoContainer","onContentReady","changeContent","content"],"sourceRoot":""}