{"version":3,"file":"js/videojs.183b9f0ab77187cdbc1b.min.js","mappings":"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","sources":["webpack:///./scripts/common/utilities.js","webpack:///../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack:///../node_modules/@babel/runtime/helpers/esm/construct.js","webpack:///../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack:///../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack:///./scripts/video/YouTube.js","webpack:///./scripts/video/Vimeo.js","webpack:///./scripts/video/Video.js","webpack:///../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///../node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"],"sourcesContent":["\"user strict\"\r\nexport const utilities = {\r\n options: {\r\n scrollTop: 0,\r\n scrollLeft: 0\r\n },\r\n\r\n debounce(func, wait, immediate) {\r\n var timeout;\r\n return function () {\r\n var context = this,\r\n args = arguments;\r\n var later = function () {\r\n timeout = null;\r\n if (!immediate) func.apply(context, args);\r\n };\r\n var callNow = immediate && !timeout;\r\n clearTimeout(timeout);\r\n timeout = setTimeout(later, wait);\r\n if (callNow) func.apply(context, args);\r\n }\r\n },\r\n\r\n isIE() {\r\n\r\n var ua = window.navigator.userAgent;\r\n\r\n var msie = ua.indexOf('MSIE ');\r\n if (msie > 0) {\r\n // IE 10 or older => return version number\r\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\r\n }\r\n\r\n var trident = ua.indexOf('Trident/');\r\n if (trident > 0) {\r\n // IE 11 => return version number\r\n var rv = ua.indexOf('rv:');\r\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\r\n }\r\n\r\n var edge = ua.indexOf('Edge/');\r\n if (edge > 0) {\r\n // Edge (IE 12+) => return version number\r\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\r\n }\r\n\r\n\r\n\r\n // other browser\r\n return false;\r\n\r\n },\r\n\r\n isFuIOS() {\r\n var iosQuirkPresent = function () {\r\n var audio = new Audio();\r\n \r\n audio.volume = 0.5;\r\n return audio.volume === 1; // volume cannot be changed from \"1\" on iOS 12 and below\r\n };\r\n \r\n var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent);\r\n var isAppleDevice = navigator.userAgent.includes('Macintosh');\r\n var isTouchScreen = navigator.maxTouchPoints >= 1; // true for iOS 13 (and hopefully beyond)\r\n \r\n return isIOS || (isAppleDevice && (isTouchScreen || iosQuirkPresent()));\r\n },\r\n\r\n isMobile() {\r\n return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ? true : false\r\n },\r\n\r\n async loadImage(src) {\r\n const img = new Image()\r\n img.src = src\r\n const imgLoadPromise = await new Promise((resolve, reject) => {\r\n img.onload = function () {\r\n resolve('loaded')\r\n }\r\n img.onerror = function (err) {\r\n reject(err)\r\n }\r\n })\r\n\r\n return imgLoadPromise\r\n },\r\n\r\n loadScript(src, id) {\r\n let scriptTag = document.querySelector(`[id*=\"${id}\"]`)\r\n \r\n return new Promise((resolve, reject) => {\r\n if(window[`${id}ScriptLoaded`]) {\r\n resolve()\r\n return\r\n }\r\n\r\n if(!scriptTag) {\r\n scriptTag = document.createElement('script')\r\n scriptTag.setAttribute('id', `${id}`)\r\n scriptTag.src = `${src}`\r\n document.body.append(scriptTag)\r\n }\r\n\r\n scriptTag?.addEventListener('load', () => {\r\n window[`${id}ScriptLoaded`] = true\r\n resolve()\r\n })\r\n scriptTag?.addEventListener('error', reject)\r\n })\r\n },\r\n\r\n getStyle(e, styleName) {\r\n var styleValue = \"\";\r\n if (document.defaultView && document.defaultView.getComputedStyle) {\r\n styleValue = document.defaultView.getComputedStyle(e, \"\").getPropertyValue(styleName);\r\n } else if (e.currentStyle) {\r\n styleName = styleName.replace(/\\-(\\w)/g, function (strMatch, p1) {\r\n return p1.toUpperCase();\r\n });\r\n styleValue = e.currentStyle[styleName];\r\n }\r\n return styleValue;\r\n },\r\n\r\n triggerFocus(element) {\r\n var eventType = \"onfocusin\" in element ? \"focusin\" : \"focus\",\r\n bubbles = \"onfocusin\" in element,\r\n event;\r\n\r\n if (\"createEvent\" in document) {\r\n event = document.createEvent(\"Event\");\r\n event.initEvent(eventType, bubbles, true);\r\n }\r\n else if (\"Event\" in window) {\r\n event = new Event(eventType, { bubbles: bubbles, cancelable: true });\r\n }\r\n\r\n element.focus();\r\n element.dispatchEvent(event);\r\n },\r\n\r\n toggleWindowScroll(scroll) {\r\n if (!scroll) {\r\n utilities.options.scrollTop = window.pageYOffset || document.documentElement.scrollTop\r\n utilities.options.scrollLeft = window.pageXOffset || document.documentElement.scrollLeft\r\n window.addEventListener('scroll', utilities.disableScroll)\r\n } else {\r\n utilities.options.scrollTop = 0\r\n utilities.options.scrollLeft = 0\r\n window.removeEventListener('scroll', utilities.disableScroll)\r\n }\r\n },\r\n\r\n disableScroll(e) {\r\n window.scrollTo(utilities.options.scrollLeft, utilities.options.scrollTop)\r\n },\r\n\r\n\r\n createNodeParsing(s) {\r\n return new DOMParser().parseFromString(s, 'text/html').body.firstElementChild\r\n },\r\n\r\n rootCssVariables() {\r\n document.documentElement.style\r\n .setProperty('--mobile-breakpoint', `${site.settings.breakpoints.mobile}px`);\r\n },\r\n\r\n isJson(data) {\r\n try {\r\n JSON.parse(data);\r\n } catch (e) {\r\n return false;\r\n }\r\n return true;\r\n },\r\n\r\n getGsapTargets(timeline) {\r\n\r\n function addTargets(list, target) {\r\n\r\n if (Array.isArray(target)) target.forEach(checkTarget);\r\n else if (target.nodeType === 1) list.push(target);\r\n else if (target.jquery) target.each(function () { list.push(this); });\r\n\r\n function checkTarget(el) {\r\n if (el.jquery) list.push(el[0]);\r\n else if (el.nodeType === 1) list.push(el);\r\n else if (typeof el === \"string\") list.push(document.querySelector(el));\r\n }\r\n return list;\r\n }\r\n\r\n return timeline\r\n .getChildren(true, true, false)\r\n .map(function (tween) { return tween.target; })\r\n .reduce(addTargets, [])\r\n .filter(function (target, i, list) { return list.indexOf(target) === i; });\r\n },\r\n\r\n formatDateForApi(dateString) {\r\n return moment(dateString, site.settings.dateDisplayFormat).format(site.settings.dateAPIFormat)\r\n },\r\n\r\n noOfDays(startDate, endDate) {\r\n if (!startDate || !endDate) return null\r\n return (new Date(utilities.formatDateForApi(endDate)).getTime() -\r\n new Date(utilities.formatDateForApi(startDate)).getTime()) / (1000 * 3600 * 24)\r\n },\r\n\r\n formatTimeForSlots(dateTimeString) {\r\n const formatedTime = dateTimeString.split('+')[0]\r\n return moment(formatedTime).format('hh:mm')\r\n },\r\n\r\n windowPanel(href, windowName, { width = 400, height = 400 }) {\r\n var myWindow = window.open(`${href}`, `${windowName}`, `width=${width},height=${height}`)\r\n if (!myWindow || myWindow.closed || typeof myWindow.closed == 'undefined') {\r\n alert('Pop-up Blocker is enabled! Please add this site to your exception list.')\r\n }\r\n return myWindow\r\n },\r\n\r\n resizePlayer(container, aspectRatio) {\r\n const iframe = container.querySelector('iframe')\r\n\r\n if (!iframe) return\r\n\r\n let win = container,\r\n width = win.clientWidth,\r\n playerWidth,\r\n height = win.clientHeight,\r\n playerHeight,\r\n ratio = aspectRatio || 16 / 9\r\n\r\n if (width / ratio < height) {\r\n playerWidth = Math.ceil(height * ratio)\r\n Object.assign(\r\n iframe.style,\r\n {\r\n width: `${playerWidth}px`,\r\n height: `${height}px`,\r\n left: `${(width - playerWidth) / 2}px`,\r\n top: 0\r\n }\r\n )\r\n\r\n\r\n } else {\r\n playerHeight = Math.ceil(width / ratio)\r\n\r\n Object.assign(\r\n iframe.style,\r\n {\r\n width: `${width}px`,\r\n height: `${playerHeight}px`,\r\n left: 0,\r\n top: `${(height - playerHeight) / 2}px`\r\n }\r\n )\r\n }\r\n },\r\n\r\n isNodeEle(ele) {\r\n return ele instanceof Element || ele instanceof HTMLDocument\r\n }\r\n}\r\n\r\nexport const formUtils = {\r\n isEmpty(val) {\r\n return !val && /^\\s*$/.test(val)\r\n },\r\n\r\n isEmail(mail) {\r\n return /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)+$/.test(mail)\r\n },\r\n\r\n isPhone(phone) {\r\n return /^(\\d){1}(-|\\s)?(\\d){3}(-|\\s)?(\\d){3}(-|\\s)?(\\d){4}$/.test(phone)\r\n },\r\n\r\n sanitizeString(val) {\r\n let str = val\r\n str = str.replace(/\\s+[^a-zA-Z0-9]/g, \"\")\r\n return str\r\n }\r\n}\r\n\r\n\r\n\r\nclass WM {\r\n constructor(init) {\r\n this._wm = new WeakMap(init);\r\n }\r\n clear() {\r\n this._wm = new WeakMap();\r\n }\r\n delete(k) {\r\n return this._wm.delete(k);\r\n }\r\n get(k) {\r\n return this._wm.get(k);\r\n }\r\n has(k) {\r\n return this._wm.has(k);\r\n }\r\n set(k, v) {\r\n this._wm.set(k, v);\r\n return this;\r\n }\r\n}\r\n\r\nexport { WM }\r\n\r\nexport default utilities","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}","export const YoutubeApi = (function () {\r\n\r\n class YtPlayer extends EventTarget {\r\n constructor(container, player) {\r\n super()\r\n this.container = container\r\n this.videoPlayer = player || container\r\n this.videoID = this.videoPlayer.dataset.videoId || null\r\n this.player = null\r\n this.playerReady = false\r\n this.events = []\r\n this._init()\r\n }\r\n\r\n async _init() {\r\n if(window.YT === undefined) {\r\n await new LoadYtScript().loadScript()\r\n this.createEvents()\r\n this.callApi()\r\n return\r\n }\r\n this.createEvents()\r\n this.callApi()\r\n }\r\n\r\n createEvents() {\r\n this.events['loaded'] = new CustomEvent('loaded', {\r\n bubbles: true,\r\n detail: {\r\n getValue: () => this.videoPlayer\r\n }\r\n })\r\n this.events['play'] = new CustomEvent('play', { bubbles: true })\r\n this.events['pause'] = new CustomEvent('pause', { bubbles: true })\r\n this.events['ended'] = new CustomEvent('ended', { bubbles: true })\r\n }\r\n\r\n async callApi() {\r\n const target = await this.createPlayer()\r\n this.playerReady = true\r\n this.dispatchEvent(this.events['loaded'])\r\n }\r\n\r\n createPlayer() {\r\n return new Promise((resolve, reject) => {\r\n this.player = new YT.Player(this.videoPlayer, {\r\n height: '100%',\r\n width: '100%',\r\n videoId: `${this.videoID}`,\r\n playerVars: {\r\n 'playsinline': 1,\r\n // 'autoplay': 0,\r\n 'controls': 0,\r\n 'autohide': 1,\r\n // 'wmode': 'opaque',\r\n },\r\n events: {\r\n 'onReady': (e) => {\r\n resolve(e.target)\r\n this.onPlayerReady(e)\r\n },\r\n 'onStateChange': (e) => this.onPlayerStateChange(e)\r\n },\r\n\r\n })\r\n })\r\n\r\n }\r\n\r\n\r\n\r\n // Generic methods\r\n onPlayerReady(e) {\r\n //console.log(e.target.playVideo())\r\n }\r\n\r\n onPlayerStateChange(e) {\r\n this.playing = (this.player.getPlayerState() === 1) ? true : false\r\n switch (this.player.getPlayerState()) {\r\n case 1:\r\n this.dispatchEvent(this.events['play'])\r\n break\r\n default:\r\n this.dispatchEvent(this.events['pause'])\r\n }\r\n }\r\n\r\n // callbacks\r\n play() {\r\n this.player.playVideo()\r\n }\r\n pause() {\r\n this.player.pauseVideo()\r\n }\r\n stop() {\r\n this.player.stopVideo()\r\n }\r\n }\r\n\r\n function LoadYtScript() {\r\n this.scriptTag = document.querySelector('[id*=\"youtube-api\"]')\r\n }\r\n\r\n LoadYtScript.prototype = {\r\n\r\n loadScript() {\r\n return new Promise((resolve, reject) => {\r\n if(!this.scriptTag) {\r\n this.scriptTag = document.createElement('script')\r\n this.scriptTag.setAttribute('id', `youtube-api--${Math.round(Math.random() * 10000)}`)\r\n this.scriptTag.src = \"https://www.youtube.com/iframe_api\"\r\n document.body.append(this.scriptTag)\r\n }\r\n\r\n this.scriptTag?.addEventListener('load', function() {\r\n setTimeout(() => resolve(), 1000)\r\n })\r\n this.scriptTag?.addEventListener('error', reject)\r\n })\r\n }\r\n }\r\n\r\n return {\r\n YtPlayer,\r\n LoadYtScript\r\n }\r\n\r\n})()\r\n\r\nexport default YoutubeApi","import VimeoPlayer from \"@vimeo/player\"\r\nexport const VimeoApi = (function () {\r\n\r\n class Player extends EventTarget{\r\n constructor(container, player, options) {\r\n super()\r\n \r\n this.container = container\r\n this.videoPlayer = player || container\r\n this.videoID = this.videoPlayer.dataset.videoId || null\r\n this.player = null\r\n this.playerReady = false\r\n this.events = []\r\n\r\n this.options = Object.assign({\r\n autoplay: false,\r\n background: false\r\n }, {\r\n ...options,\r\n background: this.container.dataset.background === \"1\",\r\n autoplay: this.container.dataset.autoplay === \"1\" && !this.container.closest('.card-carousel'),\r\n loop: this.container.dataset.loop === \"1\"\r\n })\r\n this._init()\r\n }\r\n\r\n _init() {\r\n this.createEvents()\r\n this.callApi()\r\n }\r\n\r\n createEvents() {\r\n this.events['loaded'] = new CustomEvent('loaded', {\r\n bubbles: true,\r\n detail: {\r\n getValue: () => this.videoPlayer\r\n }\r\n })\r\n this.events['play'] = new CustomEvent('play', {bubbles: true})\r\n this.events['vimeo-fallback-play'] = new CustomEvent('vimeo-fallbackplay', {bubbles: true})\r\n this.events['pause'] = new CustomEvent('pause', {bubbles: true})\r\n this.events['vimeo-fallback-pause'] = new CustomEvent('vimeo-fallback-pause', {bubbles: true})\r\n this.events['ended'] = new CustomEvent('ended', {bubbles: true})\r\n }\r\n\r\n async callApi() {\r\n await this.createPlayer()\r\n this.playerReady = true\r\n \r\n this.player.on('loaded', () => this.dispatchEvent(this.events['loaded']))\r\n \r\n }\r\n\r\n createPlayer() {\r\n\r\n this.player = new VimeoPlayer(this.videoPlayer, {\r\n height: '100%',\r\n width: '100%',\r\n playsinline: false,\r\n responsive: true,\r\n controls: false,\r\n id: `${this.videoID}`,\r\n byline: false,\r\n background: this.options.background,\r\n loop: this.options.loop,\r\n autoplay: false,\r\n dnt: true\r\n })\r\n this.addPlayerListeners()\r\n return this.player.ready()\r\n \r\n }\r\n\r\n // callbacks\r\n async play() {\r\n await this.player.play()\r\n this.dispatchEvent(this.events['play'])\r\n }\r\n async pause() {\r\n await this.player.pause()\r\n this.dispatchEvent(this.events['pause'])\r\n }\r\n async stop() {\r\n await this.player.pause()\r\n this.dispatchEvent(this.events['pause'])\r\n }\r\n seek(dur) {\r\n this.player.setCurrentTime(dur)\r\n }\r\n\r\n // Adding listeners\r\n addPlayerListeners() {\r\n this.player.on('play', () => {\r\n this.playing = true\r\n this.dispatchEvent(this.events['play'])\r\n this.container.dispatchEvent(this.events['vimeo-fallback-play'])\r\n })\r\n this.player.on('bufferend', () => {\r\n this.playing = true\r\n this.dispatchEvent(this.events['play'])\r\n this.container.dispatchEvent(this.events['vimeo-fallback-play'])\r\n })\r\n this.player.on('pause', () => {\r\n this.playing = false\r\n this.dispatchEvent(this.events['pause'])\r\n this.container.dispatchEvent(this.events['vimeo-fallback-play'])\r\n })\r\n this.player.on('ended', () => {\r\n this.playing = false\r\n this.dispatchEvent(this.events['ended'])\r\n })\r\n }\r\n }\r\n\r\n return {\r\n Player\r\n }\r\n\r\n})()\r\n\r\nexport default VimeoApi\r\n","import { gsap } from 'gsap'\r\nimport { ScrollTrigger } from \"gsap/ScrollTrigger\"\r\nimport { utilities } from \"@/scripts/common/utilities\"\r\nimport { YoutubeApi } from \"./YouTube\"\r\nimport { VimeoApi } from \"./Vimeo\"\r\ngsap.registerPlugin(ScrollTrigger)\r\n\r\n\r\nexport const Video = (() => {\r\n\r\n class VideoBanner {\r\n constructor(container, options) {\r\n this.$videoContainer = container\r\n this.$videoNative = this.$videoContainer.querySelector('.bg-vid')\r\n this.$videoIframe = this.$videoContainer.querySelector('.bg-iframe')\r\n this.$videoPlayer = this.$videoContainer.querySelector('.bg-vid__player')\r\n this.$videoControls = this.$videoContainer.querySelector('.bg-vid__controls')\r\n this.$videoPlayBtn = this.$videoContainer.querySelector('.bg-vid__controls-play')\r\n this.$articleElems = gsap.utils.toArray(this.$videoContainer.querySelectorAll('.article-generic > *'))\r\n this.isMobile = window.innerWidth < site.settings.breakpoints.mobile\r\n this.videoPlaying = false\r\n this.videoType = this.$videoContainer.dataset.videoType || 'native'\r\n if (this.videoType === 'html5') this.videoType = 'native'\r\n this.playerReady = false\r\n this.Player = null\r\n this.controlRevealTimeoutFunc = null\r\n this.mainTl = null\r\n this.controlRevealTime = 5000\r\n this.scrollController = null\r\n this.loadingSpinner = ''\r\n\r\n this.options = Object.assign({\r\n fitIframe: true,\r\n hoverListener: this.$videoContainer.dataset.hoverListener ? true : false\r\n },\r\n {\r\n ...options\r\n }\r\n )\r\n\r\n this.scrollOptions = {\r\n trigger: this.$videoContainer,\r\n start: 'top bottom',\r\n onToggle: self => {\r\n if (this.options.background) {\r\n !self.isActive ? this._pauseVideo() : this._playVideo()\r\n return\r\n }\r\n if (!self.isActive) this._pauseVideo()\r\n }\r\n }\r\n this.init()\r\n }\r\n\r\n init() {\r\n this.makePlayer()\r\n this.makeAnim()\r\n this.$videoContainer.getVideo = () => this\r\n }\r\n\r\n // Iframe size\r\n makeIframeFit() {\r\n utilities.resizePlayer(this.$videoContainer)\r\n }\r\n\r\n // Iframe utilities\r\n toIframePlayer(player, command) {\r\n if (player == null || command == null || player.contentWindow == null) return\r\n player.contentWindow.postMessage(JSON.stringify(command), \"*\");\r\n }\r\n\r\n // Making player\r\n async makePlayer() {\r\n switch (this.videoType) {\r\n case 'youtube':\r\n this.Player = await this.ytLoader()\r\n this.playerReady = true\r\n if (this.options.fitIframe) this.makeIframeFit()\r\n this.addingListener()\r\n this.$videoContainer.classList.add('player-ready')\r\n break\r\n case 'vimeo':\r\n this.Player = await this.vmLoader()\r\n this.playerReady = true\r\n this.addingListener()\r\n if (this.options.fitIframe) this.makeIframeFit()\r\n this.$videoContainer.classList.add('player-ready')\r\n break\r\n default:\r\n this.Player = this.$videoNative\r\n this.playerReady = true\r\n this.$videoContainer.classList.add('player-ready')\r\n this.addingListener()\r\n }\r\n }\r\n\r\n ytLoader() {\r\n return new Promise((resolve, reject) => {\r\n const player = new YoutubeApi.YtPlayer(this.$videoContainer, this.$videoPlayer, this.options)\r\n player.addEventListener('loaded', () => {\r\n resolve(player)\r\n })\r\n })\r\n }\r\n\r\n vmLoader() {\r\n return new Promise((resolve, reject) => {\r\n const player = new VimeoApi.Player(this.$videoContainer, this.$videoPlayer, this.options)\r\n player.addEventListener('loaded', () => {\r\n resolve(player)\r\n })\r\n })\r\n }\r\n\r\n _playVideo() {\r\n if (!this.Player) return\r\n this.videoPlaying = true\r\n this.loadingState(true)\r\n this.Player?.play()\r\n }\r\n\r\n _pauseVideo() {\r\n if (!this.Player) return\r\n this.videoPlaying = false\r\n this.Player?.pause()\r\n }\r\n\r\n // Animation\r\n makeAnim() {\r\n this.mainTl = gsap.timeline({ paused: true })\r\n if (this.$videoPlayBtn)\r\n this.mainTl.to(this.$videoPlayBtn, {\r\n duration: 0.4,\r\n scale: 1.2,\r\n ease: 'power2.inOut',\r\n autoAlpha: 0\r\n })\r\n if (this.$articleElems.length) {\r\n this.mainTl.to(this.$articleElems, {\r\n stagger: -0.05,\r\n y: 50,\r\n autoAlpha: 0,\r\n ease: 'power2.inOut',\r\n display: 'none'\r\n }, 0)\r\n }\r\n }\r\n\r\n // Controls\r\n toggleVideo() {\r\n this.videoPlaying ? this._pauseVideo() : this._playVideo()\r\n }\r\n\r\n // UI updates\r\n updateUI() {\r\n if (this.videoPlaying) {\r\n this.$videoContainer.classList.add('playing')\r\n this.$videoContainer.classList.remove('paused')\r\n this.mainTl.play()\r\n this.loadingState(false)\r\n return\r\n }\r\n this.$videoContainer.classList.remove('playing')\r\n this.$videoContainer.classList.add('paused')\r\n this.mainTl.reverse()\r\n\r\n }\r\n\r\n loadingState(add) {\r\n if (this.loadingSpinner) {\r\n this.$videoContainer.removeChild(this.loadingSpinner)\r\n this.$videoContainer.classList.remove('loading')\r\n this.loadingSpinner = ''\r\n }\r\n if (!add) return\r\n this.loadingSpinner = document.createElement('div')\r\n this.loadingSpinner.classList.add('banner-video__spinner')\r\n this.loadingSpinner.innerHTML = ``\r\n this.$videoContainer.appendChild(this.loadingSpinner)\r\n this.$videoContainer.classList.add('loading')\r\n }\r\n\r\n // Callbacks\r\n updatePlay(play) {\r\n this.videoPlaying = play\r\n this.updateUI()\r\n }\r\n\r\n // endScreenUpdate() {\r\n // if(this.videoType === 'vimeo' && !this.options.loop) {\r\n // this.Player?.seek(0)\r\n // this.Player.play()\r\n // }\r\n // }\r\n\r\n // Resize Callbacks\r\n resizeFunc() {\r\n return utilities.debounce(() => {\r\n if (this.options.fitIframe) this.makeIframeFit()\r\n }, 250)\r\n }\r\n\r\n // Assign Congtrol\r\n assignControl(e) {\r\n let action = 'pause'\r\n action = this.$videoPlayBtn.contains(e.target) || e.target === this.$videoPlayBtn ? 'play' : action\r\n switch (action) {\r\n case 'play':\r\n !this.videoPlaying && this._playVideo()\r\n break\r\n case 'pause':\r\n this.videoPlaying && this._pauseVideo()\r\n break\r\n }\r\n }\r\n\r\n // addingFallbackListeners() {\r\n // this.$videoContainer.addEventListener('play', () => this.updatePlay(true))\r\n // this.$videoContainer.addEventListener('pause', () => this.updatePlay(false))\r\n // this.$videoContainer.addEventListener('ended', () => this.updatePlay(false))\r\n // }\r\n\r\n addingListener() {\r\n \r\n this.Player?.addEventListener('play', () => this.updatePlay(true))\r\n this.Player?.addEventListener('pause', () => this.updatePlay(false))\r\n this.Player?.addEventListener('ended', () => this.updatePlay(false))\r\n //if(this.videoType === \"vimeo\") this.Player?.addEventListener('ended', () => this.endScreenUpdate())\r\n this.scrollController = ScrollTrigger.create(this.scrollOptions)\r\n\r\n if(this.options.hoverListener && !this.isMobile) {\r\n this.$videoContainer.addEventListener('mouseenter', () => !this.videoPlaying && this._playVideo())\r\n this.$videoContainer.addEventListener('mouseleave', () => this.videoPlaying && this._pauseVideo())\r\n }\r\n\r\n this.$videoControls?.addEventListener('click', (e) => this.assignControl(e))\r\n\r\n window.addEventListener('resize', this.resizeFunc())\r\n }\r\n }\r\n\r\n return {\r\n VideoBanner\r\n }\r\n})()\r\n\r\nexport default Video","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import _typeof from \"@babel/runtime/helpers/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}"],"names":["utilities","options","scrollTop","scrollLeft","debounce","func","wait","immediate","timeout","context","this","args","arguments","later","apply","callNow","clearTimeout","setTimeout","isIE","ua","window","navigator","userAgent","msie","indexOf","parseInt","substring","rv","edge","isFuIOS","audio","isIOS","test","isAppleDevice","includes","isTouchScreen","maxTouchPoints","Audio","volume","isMobile","loadImage","src","img","Image","Promise","resolve","reject","onload","onerror","err","imgLoadPromise","loadScript","id","scriptTag","document","querySelector","createElement","setAttribute","body","append","addEventListener","getStyle","e","styleName","styleValue","defaultView","getComputedStyle","getPropertyValue","currentStyle","replace","strMatch","p1","toUpperCase","triggerFocus","element","event","eventType","bubbles","createEvent","initEvent","Event","cancelable","focus","dispatchEvent","toggleWindowScroll","scroll","removeEventListener","disableScroll","pageYOffset","documentElement","pageXOffset","scrollTo","createNodeParsing","s","DOMParser","parseFromString","firstElementChild","rootCssVariables","style","setProperty","site","settings","breakpoints","mobile","isJson","data","JSON","parse","getGsapTargets","timeline","getChildren","map","tween","target","reduce","list","Array","isArray","forEach","el","jquery","push","nodeType","each","filter","i","formatDateForApi","dateString","moment","dateDisplayFormat","format","dateAPIFormat","noOfDays","startDate","endDate","Date","getTime","formatTimeForSlots","dateTimeString","formatedTime","split","windowPanel","href","windowName","width","height","myWindow","open","closed","alert","resizePlayer","container","aspectRatio","iframe","playerWidth","playerHeight","win","clientWidth","clientHeight","ratio","Math","ceil","Object","assign","left","top","isNodeEle","ele","Element","HTMLDocument","_isNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","prototype","valueOf","call","_construct","Parent","Class","a","instance","Function","bind","setPrototypeOf","_wrapNativeSuper","_cache","Map","undefined","fn","toString","TypeError","has","get","set","Wrapper","getPrototypeOf","constructor","create","value","enumerable","writable","configurable","YoutubeApi","YtPlayer","player","videoPlayer","videoID","dataset","videoId","playerReady","events","_init","YT","LoadYtScript","createEvents","callApi","CustomEvent","detail","getValue","createPlayer","Player","playerVars","onPlayerReady","onPlayerStateChange","playing","getPlayerState","playVideo","pauseVideo","stopVideo","EventTarget","round","random","VimeoApi","autoplay","background","closest","loop","on","VimeoPlayer","playsinline","responsive","controls","byline","dnt","addPlayerListeners","ready","play","pause","dur","setCurrentTime","gsap","ScrollTrigger","VideoBanner","Video","$videoContainer","$videoNative","$videoIframe","$videoPlayer","$videoControls","$videoPlayBtn","$articleElems","querySelectorAll","innerWidth","videoPlaying","videoType","controlRevealTimeoutFunc","mainTl","controlRevealTime","scrollController","loadingSpinner","fitIframe","hoverListener","scrollOptions","trigger","start","onToggle","self","isActive","_playVideo","_pauseVideo","init","makePlayer","makeAnim","getVideo","command","contentWindow","postMessage","stringify","ytLoader","makeIframeFit","addingListener","classList","add","vmLoader","loadingState","paused","to","duration","scale","ease","autoAlpha","length","stagger","y","display","remove","reverse","removeChild","innerHTML","appendChild","updateUI","action","contains","updatePlay","assignControl","resizeFunc","_defineProperty","obj","key","defineProperty","_getPrototypeOf","o","__proto__","_inherits","subClass","superClass","_typeof","Symbol","iterator","_possibleConstructorReturn","ReferenceError","_setPrototypeOf","p"],"sourceRoot":""}