{"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 clientId: 'moncler',\n sessId: 'ymo4nq',\n },\n ST: {\n sessId: 'ujzayc',\n clientId: 'stoneisland',\n },\n};\nexport default class ThronIntegrationComponent extends BaseComponent {\n constructor(element, 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.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'];\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 // video.min.js would sometimes fire a \"console.warning\" that doesn't exist\n //@ts-ignore\n window.console.warning = window.console.warning || window.console.warn;\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 playerEl.classList.add('video-started');\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 player.on('canPlay', (playerInstance) => {\n const hero = playerEl.closest('.hero__hero-column');\n if (hero) {\n const wrapper = hero.closest('.hero') || hero.closest('.hero-carousel');\n wrapper === null || wrapper === void 0 ? void 0 : wrapper.classList.add('video-loaded');\n }\n if (this.onInitCallback) {\n this.onInitCallback(playerInstance);\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 console.log('volume attivato');\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 const curatorVideoContainer = playerEl.closest('.curator-video');\n if (curatorVideoContainer) {\n let videoEl = playerEl.querySelector('video');\n if (videoEl) {\n // only if page is loaded\n videoEl.addEventListener('canplay', () => {\n videoEl.addEventListener('volumechange', () => {\n console.log('volumechange', videoEl.volume);\n if (videoEl.volume === 1) {\n document.querySelectorAll('video').forEach((el) => {\n if (el !== videoEl) {\n el.volume = 0;\n }\n });\n }\n });\n });\n }\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","clientId","sessId","ThronIntegrationComponent","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","console","warning","warn","on","loopTimes","onCompleteFunction","off","hero","closest","wrapper","_b","_c","_d","_e","_f","_g","dateEnd","completeTimeEnd","timeDiff","getTime","push","timeBegin","timeEnd","executionTime","productVideo","contains","galleryVideo","muteVideoElement","volume","log","heroCarousel","slideIndex","threeColumnMultimedia","parseInt","totalVideos","mute","technicalVideoWrapper","playVideoElement","timeoutInMiliseconds","timeoutId","target","remove","clearTimeout","setTimeout","productVideoGeneric","videoContainer","videoEl","querySelectorAll","el","changeContent","content"],"sourceRoot":""}