{"version":3,"sources":["webpack:///./src/js/components/qu-today-video-masthead.js","webpack:///./src/js/utils/vimeo.js"],"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","_toPropertyKey","toPrimitive","String","Number","_toPrimitive","_callSuper","_getPrototypeOf","self","ReferenceError","_assertThisInitialized","_possibleConstructorReturn","Boolean","valueOf","Reflect","construct","_isNativeReflectConstruct","apply","bind","_setPrototypeOf","QuTodayVideoMasthead","_Component","arguments","subClass","superClass","_inherits","protoProps","_this$el$dataset$noAu","_this$el$dataset","_this$el$dataset$loop","_this$el$dataset2","_this$el$dataset$play","_this$el$dataset3","_this$el$dataset4","this","dom","$image","el","_$","$mediaWrapper","containerId","concat","nanoid","playButtonLabel","dataset","pauseButtonLabel","videoId","videoURL","videoReferenceUrl","videoTitle","noAudioLabel","loop","playButtonPosition","videoProvider","mediaType","getVideoType","addVideoPlayer","addSocialNetworkPlayer","classList","add","_this","_on","togglePlayPauseVideo","handleSocialNetworkPlayerClick","window","addEventListener","playButton","$button","innerWidth","breakpoints","lg","setTabIndex","youtubeVideo","getState","_this$dom","$iframe","removeAttribute","isIE","src","play","focus","parentNode","removeChild","_this2","_this$dom2","playerMarkup","getTikTokIframe","event","_event$data","origin","data","querySelector","contentWindow","postMessage","getVimeoIframe","getYoutubeIframe","getInstagramIframe","insertAdjacentHTML","getYoutubePlayButton","vimeoVideoPlayer","options","undefined","Player","_objectSpread","id","createPlayer","responsive","module","YTPlayer","default","element","related","modestBranding","host","load","document","$buttonWrapper","closest","iframe","$span","previousElementSibling","style","display","removeButton","removeImage","hideGradient","getVideo","getPlayButton","$video","_this3","initialFocusDone","section","setAttribute","focusableElements","querySelectorAll","originalTabindex","index","tabindex","getAttribute","handleLastElementKeydown","handleFocusOut","shiftKey","preventDefault","contains","relatedTarget","item","sources","trim","paused","playVideo","fn","_callee","_this$dom3","_context","muted","toggleButtonIconVisibility","_playVideo","args","err","controls","_this$dom4","pause","_$$","$icon","toggle","video","ariaHidden","staticProps","Component"],"mappings":"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","file":"62.c9dfd6.js","sourcesContent":["import { Component } from '@verndale/core';\nimport { nanoid } from 'nanoid';\nimport { isIE } from '../utils/browsers';\nimport breakpoints from '../utils/breakpoints';\nimport { createPlayer } from '../utils/vimeo';\n\nclass QuTodayVideoMasthead extends Component {\n  setupDefaults() {\n    this.dom = {\n      $image: this.el._$('img.qu-today-videos__video-media'),\n      $mediaWrapper: this.el._$('.qu-today-videos__video-wrapper')\n    };\n    this.containerId = `video-${nanoid()}`;\n    this.playButtonLabel = this.el.dataset.playButtonLabel;\n    this.pauseButtonLabel = this.el.dataset.pauseButtonLabel;\n    this.videoId = this.el.dataset.videoId;\n    this.videoURL = this.el.dataset.videoReferenceUrl;\n    this.videoTitle = this.el.dataset.videoTitle;\n    this.noAudioLabel = this.el.dataset?.noAudioLabel ?? '';\n    this.loop = this.el.dataset?.loop ?? false;\n    this.playButtonPosition = this.el.dataset?.playButtonPosition ?? 'center';\n    this.videoProvider = this.el.dataset?.videoProvider;\n\n    this.mediaType = this.getVideoType(); // Checks if the video is from URL or Youtube\n\n    if (this.mediaType === 'video') {\n      this.addVideoPlayer();\n    } else if (\n      this.mediaType === 'vimeo' ||\n      this.mediaType === 'tiktok' ||\n      this.mediaType === 'youtube' ||\n      this.mediaType === 'instagram'\n    ) {\n      this.addSocialNetworkPlayer();\n    }\n\n    // if playButtonPosition is not center, it will be added to the class\n    if (this.playButtonPosition !== 'center') {\n      if (this.playButtonPosition === 'bottom-left') {\n        this.el.classList.add('qu-today-videos__video-wrapper--bottom-left');\n      }\n      if (this.playButtonPosition === 'bottom-right') {\n        this.el.classList.add('qu-today-videos__video-wrapper--bottom-right');\n      }\n    }\n  }\n\n  getVideoType() {\n    let mediaType = 'image'; // image, video, youtube\n    if (this.videoId) {\n      mediaType = this.videoProvider;\n    }\n    // if there is a videoURL, it will be considered a video\n    if (this.videoURL) {\n      mediaType = 'video';\n    }\n    return mediaType;\n  }\n\n  addListeners() {\n    const { $mediaWrapper } = this.dom;\n\n    if (this.mediaType === 'video') {\n      $mediaWrapper._on('click', this.togglePlayPauseVideo.bind(this));\n    } else if (\n      this.mediaType === 'youtube' ||\n      this.mediaType === 'vimeo' ||\n      this.mediaType === 'tiktok' ||\n      this.mediaType === 'instagram'\n    ) {\n      $mediaWrapper._on(\n        'click',\n        this.handleSocialNetworkPlayerClick.bind(this)\n      );\n    }\n\n    //if window resizes, call the setTabIndex function\n    window.addEventListener('resize', () => {\n      if (this.mediaType === 'video') {\n        const playButton = this.dom.$button;\n        if (playButton) {\n          //if viewport is < 1280px, set tabindex to play button\n          if (window.innerWidth < breakpoints.lg) {\n            this.setTabIndex(playButton);\n          }\n        }\n      } else {\n        const playButton = this.el._$('.qu-today-videos__video-play-button');\n      }\n    });\n  }\n\n  getState() {\n    const { youtubeVideo } = this.dom;\n\n    return youtubeVideo?.getState();\n  }\n\n  removeButton($button) {\n    if ($button) {\n      const { youtubeVideo, $mediaWrapper } = this.dom;\n      const $iframe = $mediaWrapper._$('iframe');\n      $iframe.removeAttribute('tabindex');\n\n      if (isIE) {\n        $iframe.src = `${$iframe.src}?autoplay=1&rel=0`;\n      } else {\n        youtubeVideo?.play();\n      }\n\n      $iframe.focus();\n      $button.parentNode.removeChild($button);\n    }\n  }\n\n  removeImage() {\n    const { $image } = this.dom;\n\n    if ($image) {\n      if ($image.parentNode) {\n        $image.parentNode.removeChild($image);\n      }\n    }\n  }\n\n  addSocialNetworkPlayer() {\n    const type = this.videoProvider;\n\n    const { $mediaWrapper, $image } = this.dom;\n\n    let playerMarkup = '';\n\n    if (type === 'tiktok') {\n      playerMarkup = this.getTikTokIframe();\n\n      window.addEventListener('message', (event) => {\n        if (\n          event.origin === 'https://www.tiktok.com' &&\n          event.data?.type === 'onPlayerReady'\n        ) {\n          const iframe = this.el.querySelector(\n            '.qu-today-videos__video-media--iframe iframe'\n          );\n\n          iframe.contentWindow.postMessage(\n            { type: 'mute', 'x-tiktok-player': true },\n            '*'\n          );\n        }\n      });\n    }\n\n    if (type === 'vimeo') {\n      playerMarkup = this.getVimeoIframe();\n    }\n\n    if (type === 'youtube') {\n      playerMarkup = this.getYoutubeIframe();\n    }\n\n    if (type === 'instagram') {\n      playerMarkup = this.getInstagramIframe();\n    }\n\n    $mediaWrapper.insertAdjacentHTML('afterbegin', playerMarkup);\n    if ($image) {\n      $mediaWrapper.insertAdjacentHTML(\n        'beforeend',\n        this.getYoutubePlayButton()\n      );\n    }\n\n    if (type === 'vimeo') {\n      this.vimeoVideoPlayer = createPlayer(this.videoId, {\n        responsive: true\n      });\n    }\n\n    if (type === 'youtube') {\n      import('yt-player').then((module) => {\n        const YTPlayer = module.default;\n        const element = this.el._$(`.${this.containerId}`);\n\n        this.dom.youtubeVideo = new YTPlayer(element, {\n          related: false,\n          modestBranding: true,\n          host: '//youtube.com'\n        });\n        this.dom.youtubeVideo.load(this.videoId);\n      });\n    }\n\n    const playButton = document.querySelector(\n      '.qu-today-videos__video-play-button'\n    );\n\n    if (playButton) {\n      //if viewport is < 1280px, set tabindex to play button\n      if (window.innerWidth < breakpoints.lg) {\n        this.setTabIndex(playButton);\n      }\n    }\n  }\n\n  getInstagramIframe() {\n    return `\n      <div class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\" aria-hidden=\"true\">\n        <iframe\n          class=\"qu-today-videos__instagram-iframe\"\n          title=\"${this.videoTitle}\"\n          src=\"https://www.instagram.com/p/${this.videoId}/embed/\"\n          frameborder=\"0\"\n          width=\"100%\"\n          height=\"100%\"\n        ></iframe>\n      </div>`;\n  }\n\n  getTikTokIframe() {\n    return `\n      <div class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\" aria-hidden=\"true\">\n        <iframe\n          title=\"${this.videoTitle}\"\n          src=\"https://www.tiktok.com/player/v1/${this.videoId}?rel=0\"\n          frameborder=\"0\"\n          width=\"100%\"\n          height=\"100%\"\n        ></iframe>\n      </div>`;\n  }\n\n  getVimeoIframe() {\n    return `\n      <div id=\"${this.videoId}\" class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\" aria-hidden=\"true\">\n      </div>`;\n  }\n\n  getYoutubeIframe() {\n    return isIE\n      ? `\n    <div class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\" aria-hidden=\"true\">\n      <iframe\n        loading=\"lazy\"\n        src=\"https://www.youtube.com/embed/${this.videoId}\"\n        frameborder=\"0\"\n        allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n        allowfullscreen=\"allowfullscreen\"\n        msallowfullscreen=\"msallowfullscreen\"\n        webkitallowfullscreen=\"webkitallowfullscreen\"\n        title=\"${this.videoTitle}\"\n        tabindex=\"-1\"\n      ></iframe>\n    </div>\n  `\n      : `\n    <div class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\" aria-hidden=\"true\">\n      <div class=\"${this.containerId}\" tabindex=\"-1\"></div>\n    </div>\n  `;\n  }\n\n  getYoutubePlayButton() {\n    return `\n    <div class=\"home-media__play-button-wrapper qu-today-videos__play-pause-button-wrapper\">\n      <span>${this.noAudioLabel}</span>\n      <button class=\"home-media__play-button qu-today-videos__play-button \" aria-label=\"${this.playButtonLabel}\">\n        <svg aria-hidden=\"true\">\n          <use xlink:href=\"#play-outline\" />\n        </svg>\n      </button>\n    </div>\n  `;\n  }\n\n  handleSocialNetworkPlayerClick(e) {\n    const $buttonWrapper = e.target.closest('.home-media__play-button-wrapper');\n    const $button = e.target.closest('.qu-today-videos__play-button');\n    const iframe = this.el.querySelector(\n      '.qu-today-videos__video-media--iframe iframe'\n    );\n\n    //hide the closest span\n    const $span = $button.previousElementSibling;\n    if ($span) {\n      $span.style.display = 'none';\n    }\n\n    if ($button) {\n      $buttonWrapper.style.display = 'none';\n      this.removeButton($button);\n      this.removeImage();\n      this.el.dataset.hideGradient = 'true';\n\n      if (this.videoProvider === 'tiktok') {\n        iframe.contentWindow.postMessage(\n          { type: 'play', 'x-tiktok-player': true },\n          '*'\n        );\n      }\n\n      if (this.videoProvider === 'vimeo') {\n        this.vimeoVideoPlayer.play();\n      }\n\n      iframe.focus();\n    }\n  }\n\n  // URL Video Functions\n\n  addVideoPlayer() {\n    const { $mediaWrapper } = this.dom;\n\n    $mediaWrapper.insertAdjacentHTML('beforeend', this.getVideo());\n    $mediaWrapper.insertAdjacentHTML('beforeend', this.getPlayButton());\n\n    this.dom.$button = this.el._$('.home-media__play-button');\n    this.dom.$video = this.el._$('.home-media__video');\n\n    const playButton = this.dom.$button;\n\n    if (playButton) {\n      //if viewport is < 1280px, set tabindex to play button\n      if (window.innerWidth < breakpoints.lg) {\n        this.setTabIndex(playButton);\n      }\n    }\n    // this.playVideo();\n  }\n\n  setTabIndex(playButton) {\n    let initialFocusDone = false;\n\n    // Get the entire section from the document .qu-today-landing-masthead\n    const section = document.querySelector('.qu-today-landing-masthead');\n\n    section.addEventListener('focusin', () => {\n      // Modify the tabindex of the play button\n      playButton.setAttribute('tabindex', '1');\n\n      if (!initialFocusDone) {\n        playButton.focus();\n      }\n\n      // Get all focusable elements within the section\n      const focusableElements = section.querySelectorAll(\n        'a, button, input, textarea, select, details, [tabindex]'\n      );\n\n      // Store original tabindex values to restore them later\n      const originalTabindex = [];\n\n      focusableElements.forEach((element, index) => {\n        // Store the original tabindex value\n        originalTabindex.push({\n          element,\n          tabindex: element.getAttribute('tabindex')\n        });\n\n        // Skip setting tabindex for the play button as it's already set\n        if (element !== playButton) {\n          // Set tabindex starting from 2 (play button is 1)\n          element.setAttribute('tabindex', index + 2);\n        }\n      });\n\n      // Add event listener to handle tabbing out of the section\n      const lastElement = focusableElements[focusableElements.length - 1];\n      lastElement.addEventListener(\n        'keydown',\n        this.handleLastElementKeydown.bind(null, playButton)\n      );\n\n      // Restore original tabindex values when focus leaves the section\n      section.addEventListener(\n        'focusout',\n        this.handleFocusOut.bind(null, section, originalTabindex)\n      );\n\n      initialFocusDone = true;\n    });\n  }\n\n  // Handle tabbing out of the section\n  handleLastElementKeydown(playButton, e) {\n    if (e.key === 'Tab' && !e.shiftKey) {\n      e.preventDefault();\n      playButton.focus();\n    }\n  }\n\n  // Restore original tabindex values when focus leaves the section\n  handleFocusOut(section, originalTabindex, e) {\n    if (!section.contains(e.relatedTarget)) {\n      originalTabindex.forEach((item) => {\n        if (item.tabindex === null) {\n          item.element.removeAttribute('tabindex');\n        } else {\n          item.element.setAttribute('tabindex', item.tabindex);\n        }\n      });\n    }\n  }\n\n  getVideo() {\n    const sources = `<source src=\"${this.videoURL.trim()}\">`;\n    return `\n      <div class=\"qu-today-videos__video-media qu-today-videos__video-media--iframe\">\n        <video controls loop class=\"home-media__video\" aria-hidden=\"true\" tabindex=\"-1\">\n          ${sources}\n          Sorry, your browser doesn't support embedded videos.\n        </video>\n      </div>\n    `;\n  }\n\n  getPlayButton() {\n    return `\n      <div class=\"home-media__play-button-wrapper qu-today-videos__play-pause-button-wrapper\">\n        <span>${this.noAudioLabel}</span>\n        <button class=\"home-media__play-button qu-today-videos__play-button\" aria-label=\"${this.playButtonLabel}\">\n          <svg class=\"hidden\" aria-hidden=\"true\">\n            <use xlink:href=\"#pause-outline\" />\n          </svg>\n          <svg aria-hidden=\"true\">\n            <use xlink:href=\"#play-outline\" />\n          </svg>\n        </button>\n      </div>\n    `;\n  }\n\n  togglePlayPauseVideo(e) {\n    //set focus on the video element\n    const { $video } = this.dom;\n    $video.focus();\n\n    const { $button } = this.dom;\n    if (!$video || !$button) return;\n\n    const $span = $button.previousElementSibling;\n\n    if ($video.paused) {\n      this.playVideo();\n      $button.style.display = 'none';\n      if ($span) {\n        $span.style.display = 'none';\n      }\n      // set the tab focus to the video\n      $video.setAttribute('tabindex', '0');\n      $video.focus();\n\n      //if the event.key is enter, then focus to the video\n      if (e.key === 'Enter') {\n        $video.setAttribute('tabindex', '0');\n        $video.focus();\n      }\n    } else {\n      this.playVideo();\n    }\n  }\n\n  async playVideo() {\n    const { $video, $button } = this.dom;\n    $video.muted = true;\n    await $video.play();\n    $button.setAttribute('aria-label', this.pauseButtonLabel);\n    this.toggleButtonIconVisibility();\n    this.removeImage();\n  }\n\n  showHideControls(e) {\n    const { $video } = this.dom;\n\n    //if event is mouse enter and video is playing, then show controls\n    if (e.type === 'mouseenter') {\n      // pause the video if it is playing\n      if (!$video.paused) {\n        $video.controls = true;\n      }\n      $video.setAttribute('controls', '');\n    }\n\n    //if event is mouse leave, then hide controls\n    if (e.type === 'mouseleave') {\n      // play the video if the user haven't clicked on it before\n      $video.controls = false;\n      $video.removeAttribute('controls');\n    }\n  }\n\n  pauseVideo() {\n    const { $video, $button } = this.dom;\n    $video.pause();\n    $button.setAttribute('aria-label', this.playButtonLabel);\n    this.toggleButtonIconVisibility();\n  }\n\n  toggleButtonIconVisibility() {\n    const { $button } = this.dom;\n    $button._$$('svg').forEach(($icon) => $icon.classList.toggle('hidden'));\n    const video = this.el.querySelector('video');\n    video.ariaHidden = false;\n    video.removeAttribute('tabindex');\n  }\n}\n\nexport default QuTodayVideoMasthead;\n","import * as Player from '@vimeo/player/dist/player.js';\n\nexport const createPlayer = (videoId, options = {}) => {\n  return new Player(videoId, {\n    id: videoId,\n    ...options\n  });\n};\n"],"sourceRoot":""}