{"version":3,"file":"video.3e4659c9ac995fb1ec0c.min.js","mappings":"uKAEe,MAAMA,EACjBC,WAAAA,CAAYC,GACR,MAAMC,EAAOC,KAmBb,GAjBAA,KAAKF,UAAYA,EACjBE,KAAKC,WAAaD,KAAKF,UAAUI,aAAa,kBAC9CF,KAAKG,UAAYH,KAAKI,eACtBJ,KAAKK,aAAeL,KAAKF,UAAUQ,cAAc,sBACjDN,KAAKO,WAAaP,KAAKF,UAAUQ,cAAc,sBAC/CN,KAAKQ,WAAaR,KAAKF,UAAUQ,cAAc,qBAC/CN,KAAKS,eAAeT,KAAKF,UAAUY,aAAa,uBAEhDV,KAAKW,OAAS,KACdX,KAAKY,aAAe,KAEhBZ,KAAKG,WAAaH,KAAKQ,YACvBR,KAAKQ,WAAWK,iBAAiB,SAAS,KACtCb,KAAKc,OAAOf,EAAK,IAIrBC,KAAKS,aAAc,CACnB,MAAMM,EAAaf,KAAKF,UAAUkB,QAAQ,UACrBD,EAAWE,iBAAiB,uBAAuBF,EAAWG,QAEtEC,SAAQC,IACjBA,EAAKP,iBAAiB,SAAS,KAC3Bb,KAAKqB,QAAQtB,EAAK,GACpB,IAGNC,KAAKsB,gBAAkBC,SAASjB,cAAc,aAE9CN,KAAKsB,gBAAgBT,iBAAiB,SAAS,KAC3Cb,KAAKqB,QAAQtB,EAAK,GAE1B,CACJ,CAEAK,YAAAA,GACI,GAAKJ,KAAKC,WAEV,OAAOD,KAAKC,WAAWuB,OAAOxB,KAAKC,WAAWwB,QAAQ,OAAS,EACnE,CAEAX,MAAAA,CAAOf,GACH2B,IAAAA,MAAyB,SAASC,GAC9B5B,EAAKa,aAAe,IAAIe,EAAGC,OAAO7B,EAAKM,aAAaa,GAAI,CACpDW,OAAQ,OACRC,MAAO,OACPC,QAAShC,EAAKI,UACd6B,OAAQ,CACJ,QAAWjC,EAAKkC,iBAIxBlC,EAAKD,UAAUoC,UAAUC,IAAI,aACjC,IAEAC,YAAW,KACPrC,EAAKY,OAASX,KAAKF,UAAUQ,cAAc,SAAS,GACrD,IACP,CAEAe,OAAAA,CAAQtB,GACAA,EAAKY,SACLZ,EAAKY,OAAO0B,mBAAmB,WAAY,YAAYtC,EAAKM,aAAaa,+BACzEnB,EAAKY,OAAO2B,SAEpB,CAEAL,aAAAA,CAAcM,GACVA,EAAMC,OAAOC,WACjB,E,YC3EH,SAASC,GACT,IAAIhB,EAAsB,CACzBiB,IAAK,qCACLC,SAAS,EACTC,QAAQ,EACRC,UAAW,GAEXC,KAAM,SAASC,GACd,IAAIC,EAAQjD,KAGZ,GAFAA,KAAK8C,UAAUI,KAAKF,GAEjBhD,KAAK6C,OACPT,YAAW,WACVa,EAAME,MACP,SAID,IAAGnD,KAAK4C,QAAR,CAIA5C,KAAK4C,SAAU,EAEfF,EAAOU,wBAA0B,WAChCH,EAAMJ,QAAS,EACfI,EAAME,MACP,EAEA,IAAIE,EAAS9B,SAAS+B,cAAc,UACpCD,EAAOE,KAAO,kBACdF,EAAOV,IAAM3C,KAAK2C,IAClBpB,SAASiC,KAAKC,YAAYJ,EAZ1B,CAaD,EAEAF,KAAM,WAGL,WAFOT,EAAOU,wBAERpD,KAAK8C,UAAUY,QACpB1D,KAAK8C,UAAUa,KAAf3D,CAAqB0C,EAAOf,GAE9B,GAGmCiC,EAAOC,QAC1CD,EAAOC,QAAUnC,EAEjBgB,EAAOhB,oBAAsBA,CAE/B,CAjDA,CAiDEgB,O","sources":["webpack://intracto-deheus/./Frontend/js/components/video/index.js","webpack://intracto-deheus/./node_modules/youtube-iframe/index.js"],"sourcesContent":["import YouTubeIframeLoader from 'youtube-iframe';\r\n\r\nexport default class Video {\r\n constructor(component) {\r\n const root = this;\r\n\r\n this.component = component;\r\n this.youtubeUrl = this.component.getAttribute('data-video-url');\r\n this.youtubeId = this.getYoutubeId();\r\n this.youtubeFrame = this.component.querySelector('[data-video-frame]');\r\n this.videoImage = this.component.querySelector('[data-video-image]');\r\n this.playButton = this.component.querySelector('[data-video-play]');\r\n this.videoInModal = this.component.hasAttribute('data-video-in-modal') ? true : false;\r\n \r\n this.iframe = null;\r\n this.videoElement = null;\r\n\r\n if (this.youtubeId && this.playButton) {\r\n this.playButton.addEventListener('click', () => {\r\n this.create(root);\r\n })\r\n }\r\n\r\n if (this.videoInModal) {\r\n const videoModal = this.component.closest('.modal');\r\n const modalclosers = videoModal.querySelectorAll(`[data-modal-close=\"#${videoModal.id}\"]`);\r\n\r\n modalclosers.forEach(item => {\r\n item.addEventListener('click', () => {\r\n this.destroy(root)\r\n });\r\n });\r\n\r\n this.backdropElement = document.querySelector('.backdrop');\r\n \r\n this.backdropElement.addEventListener('click', () => {\r\n this.destroy(root)\r\n });\r\n }\r\n }\r\n\r\n getYoutubeId() {\r\n if (!this.youtubeUrl) return;\r\n\r\n return this.youtubeUrl.substr(this.youtubeUrl.indexOf('?v=') + 3);\r\n }\r\n\r\n create(root) {\r\n YouTubeIframeLoader.load(function(YT) {\r\n root.videoElement = new YT.Player(root.youtubeFrame.id, {\r\n height: '1600',\r\n width: '1280',\r\n videoId: root.youtubeId,\r\n events: {\r\n 'onReady': root.onPlayerReady\r\n }\r\n });\r\n\r\n root.component.classList.add('is-playing');\r\n });\r\n\r\n setTimeout(() => {\r\n root.iframe = this.component.querySelector('iframe');\r\n }, 500);\r\n }\r\n\r\n destroy(root) {\r\n if (root.iframe) {\r\n root.iframe.insertAdjacentHTML('afterend', `
`);\r\n root.iframe.remove();\r\n }\r\n }\r\n\r\n onPlayerReady(event) {\r\n event.target.playVideo();\r\n }\r\n}","(function(window) {\n\tvar YouTubeIframeLoader = {\n\t\tsrc: 'https://www.youtube.com/iframe_api',\n\t\tloading: false,\n\t\tloaded: false,\n\t\tlisteners: [],\n\n\t\tload: function(callback) {\n\t\t\tvar _this = this;\n\t\t\tthis.listeners.push(callback);\n\n\t\t\tif(this.loaded) {\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t_this.done();\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif(this.loading) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.loading = true;\n\n\t\t\twindow.onYouTubeIframeAPIReady = function() {\n\t\t\t\t_this.loaded = true;\n\t\t\t\t_this.done();\n\t\t\t};\n\n\t\t\tvar script = document.createElement('script');\n\t\t\tscript.type = 'text/javascript';\n\t\t\tscript.src = this.src;\n\t\t\tdocument.body.appendChild(script);\n\t\t},\n\n\t\tdone: function() {\n\t\t\tdelete window.onYouTubeIframeAPIReady;\n\n\t\t\twhile(this.listeners.length) {\n\t\t\t\tthis.listeners.pop()(window.YT);\n\t\t\t}\n\t\t}\n\t};\n\n\tif(typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = YouTubeIframeLoader;\n\t} else {\n\t\twindow.YouTubeIframeLoader = YouTubeIframeLoader;\n\t}\n}(window));\n"],"names":["Video","constructor","component","root","this","youtubeUrl","getAttribute","youtubeId","getYoutubeId","youtubeFrame","querySelector","videoImage","playButton","videoInModal","hasAttribute","iframe","videoElement","addEventListener","create","videoModal","closest","querySelectorAll","id","forEach","item","destroy","backdropElement","document","substr","indexOf","YouTubeIframeLoader","YT","Player","height","width","videoId","events","onPlayerReady","classList","add","setTimeout","insertAdjacentHTML","remove","event","target","playVideo","window","src","loading","loaded","listeners","load","callback","_this","push","done","onYouTubeIframeAPIReady","script","createElement","type","body","appendChild","length","pop","module","exports"],"sourceRoot":""}