{"version":3,"file":"js/plugins/overlay-jwplayer.b7d675b5f4fef810d166.js","mappings":"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","sources":["webpack://@template/frontend/./scripts/libraries/_helpers/index.js","webpack://@template/frontend/./scripts/libraries/_plugins/overlay-jwplayer.js"],"sourcesContent":["export const x = (selector, context = document) => context.querySelectorAll(selector);\n\nexport const x0 = (selector, context = document) => context.querySelector(selector);\n\nexport const isTouch = (() =>\n 'ontouchstart' in window || navigator.MaxTouchPoints > 0 || navigator.msMaxTouchPoints > 0)();\n\nexport const getOffsetTop = (elem) => {\n let offsetTop = 0;\n do {\n if (!isNaN(elem.offsetTop)) {\n offsetTop += elem.offsetTop;\n }\n } while ((elem = elem.offsetParent));\n return offsetTop;\n};\n\nexport const getScrollTop = () => {\n if (typeof pageYOffset != 'undefined') {\n return pageYOffset;\n } else {\n let doc = document,\n B = doc.body,\n D = doc.documentElement;\n\n D = D.clientHeight ? D : B;\n return D.scrollTop;\n }\n};\n\nexport const encodeURLComponent = (str) => {\n return encodeURIComponent(str).replace(/[!'()*]/g, escape);\n};\n\nexport const getParametersFromURL = () => {\n let re = /(?:\\?|&(?:amp;)?)([^=&#]+)(?:=?([^&#]*))/g,\n match,\n params = {},\n url = document.location.href,\n decode = (s) => decodeURIComponent(s.replace(/\\+/g, ' '));\n\n while ((match = re.exec(url))) {\n if (!params[decode(match[1])]) {\n params[decode(match[1])] = [];\n }\n params[decode(match[1])].push(decode(match[2]));\n }\n\n return params;\n};\n\nexport const closest = (el, parentClass) => {\n do {\n if (el.classList && el.classList.contains(parentClass)) {\n return el;\n }\n } while ((el = el.parentNode));\n\n return null;\n};\n\nexport const minmax = (value, min, max) => {\n if (parseInt(value) < min || isNaN(parseInt(value))) return min;\n else if (parseInt(value) > max) return max;\n else return value;\n};\n\nexport const setScrollTop = (offset = 0) => {\n document.documentElement.scrollTop = document.body.scrollTop = offset;\n};\n\nexport const getSiblings = (elem) => {\n const siblings = [];\n let sibling = elem.parentNode.firstChild;\n while (sibling) {\n if (sibling.nodeType === 1) {\n siblings.push(sibling);\n }\n sibling = sibling.nextSibling;\n }\n return siblings;\n};\n\nexport const capitalize = (string) => {\n return string.charAt(0).toUpperCase() + string.toLowerCase().slice(1);\n};\n\nexport const isDarkMode = () => window.matchMedia('(prefers-color-scheme: light)').matches;\n\nexport const isDesktop = () => window.innerWidth >= 1024;\nexport const isLargeDesktop = () => window.innerWidth >= 1440;\nexport const isSmallDesktop = () => window.innerWidth >= 1024 && window.innerWidth < 1440;\nexport const isMobile = () => window.innerWidth <= 768;\nexport const isSmallMobile = () => window.innerWidth <= 430;\nexport const isTablet = () => window.innerWidth <= 1024 && window.innerWidth > 768;\nexport const isIOS = (() => /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream)();\nexport const isIE11 = !!(\n navigator.userAgent.match(/Trident/) && navigator.userAgent.match(/rv[ :]11/)\n);\nexport const localLangVal = () => x0('html').lang;\n\nexport const horizontalScrollTo = (element, left, behavior = 'smooth') => document.querySelector(element).scrollTo({ left: left, behavior: behavior });\nexport const verticalScrollTo = (top) => window.scrollTo({ top: top, behavior: 'smooth' });\n\nexport const yieldToMain = () => {\n return new Promise(resolve => {\n setTimeout(resolve, 0);\n });\n}\n","import { isMobile } from \"../_helpers\";\n\nexport default class OverlayJWPlayer {\n constructor() {\n const _this = this;\n \n _this.videoItem = $(\".-jwplayervideo\", \"#main-content\");\n\n if (_this.videoItem.length === 0 || !window.jwplayer()) return;\n\n _this.overlay = $(\".vbw-jwplayer-iframe-overlay-wrap\");\n }\n\n init() {\n const _this = this;\n \n // On Video Element click\n _this.videoItem.each(function () {\n $(this)\n .find(\".fm-card__content\")\n .on(\"click\", (e) => _this.openOverlay(e));\n });\n\n // On Video Overlay Close button click\n $(\".vbw-overlay-close\").on(\"click\", () => _this.closeOverlay());\n\n // Disable video card anchor click\n _this.videoItem.each(function () {\n $(this).on(\"click\", (event) => event.preventDefault());\n });\n\n // play static videos setup\n _this.videoListPlayer();\n }\n\n openOverlay(e) {\n const _this = this;\n const $elem = $(e.currentTarget);\n e.stopPropagation();\n\n const overlayIframe = _this.overlay.find(\".oc-o-iframe__content\");\n overlayIframe.attr(\"src\", $elem.attr(\"data-url\"));\n overlayIframe.attr(\"title\", $elem.attr(\"data-title\"));\n\n if ($elem.attr(\"data-roofline\")) {\n _this.overlay\n .find(\".vbw-video-roofline p\")\n .text($elem.attr(\"data-roofline\"));\n } else {\n _this.overlay.find(\".vbw-video-roofline\").hide();\n }\n\n _this.overlay.find(\".vbw-video-title h2\").text($elem.attr(\"data-title\"));\n _this.overlay.find(\".vbw-video-desc p\").text($elem.attr(\"data-desc\"));\n _this.overlay\n .find(\".vbw-video-date .date-text\")\n .text($elem.attr(\"data-date\"));\n _this.overlay.show();\n\n e.preventDefault();\n }\n\n closeOverlay() {\n const _this = this;\n\n _this.overlay.hide();\n _this.overlay.find(\".oc-o-iframe__content\").attr(\"src\", \"\");\n _this.overlay.find(\".vbw-video-roofline p\").text(\"\");\n _this.overlay.find(\".vbw-video-title h2\").text(\"\");\n _this.overlay.find(\".vbw-video-desc p\").text(\"\");\n _this.overlay.find(\".vbw-video-date .date-text\").text(\"\");\n }\n\n videoListPlayer() {\n const _this = this;\n\n if (_this.videoItem.first().find(\".jwplayer-video\").length === 0) return;\n\n _this.videoItem.each(function () {\n const _video = this;\n const videoPlayer = $(\"[js-jwplayer-static-video]\", _video);\n\n if (videoPlayer.length > 0) {\n const videoId = videoPlayer.attr(\"data-video-id\");\n const mediaUrl = videoPlayer.attr(\"data-media-url\");\n \n if ($(_video).parent().is(\":first-child\") || isMobile()) {\n window\n .jwplayer(`video-player-content-${videoId}`)\n .setup({\n playlist: mediaUrl + videoId,\n autostart: \"viewable\",\n mute: true,\n })\n // eslint-disable-next-line handle-callback-err\n .on(\"complete\", function () {\n const nextVideoId = $($(_video)?.parent()?.next())\n .find(\"[js-jwplayer-static-video]\")\n .attr(\"data-video-id\");\n\n if (nextVideoId) {\n window.jwplayer(`video-player-content-${nextVideoId}`).play();\n }\n });\n } else {\n window.jwplayer(`video-player-content-${videoId}`).setup({\n playlist: mediaUrl + videoId,\n autostart: false,\n mute: true,\n });\n }\n }\n });\n }\n}\n"],"names":["x","selector","arguments","length","undefined","document","querySelectorAll","x0","querySelector","isTouch","window","navigator","MaxTouchPoints","msMaxTouchPoints","isDesktop","innerWidth","isMobile","isSmallMobile","isTablet","localLangVal","test","userAgent","MSStream","match","lang","horizontalScrollTo","element","left","behavior","scrollTo","OverlayJWPlayer","_classCallCheck","_this","this","videoItem","$","jwplayer","overlay","_createClass","key","value","each","find","on","e","openOverlay","closeOverlay","event","preventDefault","videoListPlayer","$elem","currentTarget","stopPropagation","overlayIframe","attr","text","hide","show","first","_video","videoPlayer","videoId","mediaUrl","parent","is","concat","setup","playlist","autostart","mute","_$","nextVideoId","next","play"],"sourceRoot":""}