{"version":3,"sources":["node_modules/browser-pack/_prelude.js","frontend/Common/js/common/scrollIntoView.js","frontend/Common/js/common/useClickAway.js","frontend/Common/js/components/ArrowLink/ArrowLink.jsx","frontend/Common/js/components/Icon/Icon.jsx","frontend/Common/js/components/ImageElement/ImageElement.jsx","frontend/Common/js/components/SCTracking/sc-tracking.js","frontend/Common/js/components/YouTubeVideo/YouTubeVideoApp.jsx","frontend/Common/js/components/YouTubeVideo/youtubeService.js","frontend/Common/js/modules/MultiContentSlideshow/MultiContentSlideshowApp.jsx","frontend/Common/js/modules/MultiContentSlideshow/SlideshowItem.jsx","frontend/Common/js/modules/MultiContentSlideshow/entry/multi-content-slideshow.js","frontend/Common/js/modules/MultiContentSlideshow/renderMultiContentSlideshow.jsx"],"names":["r","e","n","t","o","i","f","c","require","u","a","Error","code","p","exports","call","length","1","module","_lodash","__esModule","default","isScrolledIntoView","el","all","rect","getBoundingClientRect","elemTop","top","elemBottom","bottom","window","innerHeight","initScrolledIntoView","index","scrollAll","dataset","repeatAnimation","showComponent","classList","add","removeEventListener","remove","setTimeout","addEventListener","initSingleScrolledIntoView","nodelist","callback","let","activeIndex","newIndex","forEach","err","props","isOpen","setOpen","ref","disallow","fallbackRef","_react","useRef","dropdownRef","buttonRef","clickStartedInside","setClickStartedInside","useState","moveFocus","setMoveFocus","useEffect","handleClickAway","isOrContainsNode","current","target","handleKeydown","key","focus","handleMouseDown","handleFocusLoss","document","parent","child","contains","_interopRequireDefault","_propTypes","_classnames","_Icon","propTypes","arrowLinkPropTypes","href","string","isRequired","type","oneOf","text","title","className","reversed","bool","onKeyDown","func","lang","gtmElementLabel","focusRef","object","ArrowLink","download","iconName","createElement","hrefLang","arrow-link--reversed","rel","data-gtm-element","data-gtm-link","data-gtm-text","_extends","Object","assign","bind","arguments","hasOwnProperty","apply","Icon","otherProps","focusable","aria-label","aria-hidden","role","xlinkHref","assetsFolder","srcset","srcSet","height","width","alt","sizes","loading","defaultProps","ImageElement","style","--image-height","--image-width","event","params","url","email","goal","fetch","method","credentials","then","response","catch","error","console","_getRequireWildcardCache","has","get","__proto__","defineProperty","getOwnPropertyDescriptor","set","_interopRequireWildcard","_youtubeService","_scTracking","_scrollIntoView","_ArrowLink","_ImageElement","WeakMap","id","image","shape","transcriptLink","caption","credit","darkButton","smallButton","autoplay","language","Name","YouTubeVideo","videoStarted","setVideoStarted","player","setPlayer","playerReady","setPlayerReady","rootRef","playerId","useMemo","init","useCallback","config","videoId","playerVars","cc_lang_pref","hl","value","result","URLSearchParams","paramsToObject","onPlayerReady","mute","YT","loaded","newPlayer","createPlayer","onYouTubeIframeAPIReady","loadScript","root","observer","IntersectionObserver","entries","entry","isIntersecting","unobserve","observe","playVideo","pausedByObserver","getPlayerState","PlayerState","PLAYING","pauseVideo","threshold","youtube-video--video-started","youtube-video__poster-button--dark","youtube-video__poster-button--small","onClick","src","querySelector","tag","firstScriptTag","getElementsByTagName","parentNode","insertBefore","cb","defaults","host","Player","events","onReady","_useClickAway","_SlideshowItem","imageRight","items","arrayOf","description","video","MultiContentSlideshow","setActiveIndex","containerRef","multi-content-slideshow__video--active","Fragment","frameBorder","allowFullScreen","multi-content-slideshow__inner--reverse","map","item","multi-content-slideshow__poster-image--active","poster","small","medium","large","aria-expanded","handleItemClick","_reactAnimateHeight","_YouTubeVideoApp","SlideshowItem","isMobile","setIsMobile","determineMobile","innerWidth","posterImage","filter","imageUrl","imageSize","join","multi-content-slideshow__item--active","disabled","aria-controls","duration","_renderMultiContentSlideshow","querySelectorAll","mount","data","JSON","parse","getAttribute","_reactDom","render","_MultiContentSlideshowApp"],"mappings":"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","file":"multi-content-slideshow-generated.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i {\r\n const rect = el.getBoundingClientRect();\r\n const elemTop = rect.top;\r\n const elemBottom = rect.bottom;\r\n\r\n if (all) {\r\n // Only completely visible elements return true:\r\n return elemTop <= 0 && elemBottom > window.innerHeight;\r\n } else {\r\n // Partially visible elements return true:\r\n return (\r\n elemTop <= window.innerHeight / 2 + 100 &&\r\n elemBottom > window.innerHeight / 2 - 100\r\n );\r\n }\r\n};\r\n\r\nexport const initScrolledIntoView = (el, index) => {\r\n const scrollAll =\r\n (el.dataset.scrollAll && el.dataset.scrollAll === \"true\") || false;\r\n\r\n const repeatAnimation =\r\n (el.dataset.repeatAnimation && el.dataset.repeatAnimation === \"true\") ||\r\n false;\r\n\r\n const showComponent = throttle(() => {\r\n if (isScrolledIntoView(el, scrollAll)) {\r\n el.classList.add(\"scrolled-into-view\");\r\n if (!repeatAnimation) {\r\n window.removeEventListener(\"scroll\", showComponent);\r\n }\r\n } else {\r\n el.classList.remove(\"scrolled-into-view\");\r\n }\r\n }, 50);\r\n\r\n setTimeout(showComponent, 1000);\r\n\r\n window.addEventListener(\"scroll\", showComponent);\r\n};\r\n\r\nexport const initSingleScrolledIntoView = (nodelist, callback) => {\r\n if (nodelist?.length < 1) {\r\n return;\r\n }\r\n\r\n let activeIndex = -1;\r\n let newIndex = -1;\r\n\r\n const showComponent = throttle(() => {\r\n nodelist.forEach((el, index) => {\r\n if (isScrolledIntoView(el) && index !== activeIndex) {\r\n newIndex = index;\r\n }\r\n });\r\n\r\n if (newIndex !== activeIndex) {\r\n activeIndex = newIndex;\r\n nodelist.forEach((el, index) => {\r\n el.classList.remove(\"scrolled-into-view\");\r\n });\r\n\r\n nodelist[activeIndex].classList.add(\"scrolled-into-view\");\r\n\r\n try {\r\n callback(activeIndex);\r\n } catch (err) {\r\n //not a function\r\n }\r\n }\r\n }, 100);\r\n\r\n setTimeout(showComponent, 1000);\r\n\r\n window.addEventListener(\"scroll\", showComponent);\r\n};\r\n","import { useEffect, useState, useRef } from \"react\";\r\n\r\n/**\r\n *\r\n * @param {object} props\r\n * @param {boolean} props.isOpen\r\n * @param {function} props.setOpen\r\n * @param {React.RefObject} props.ref\r\n * @param {boolean | undefined} [disallow] - Optional boolean to disallow click away in certain circumstances\r\n * @returns {React.RefObject}\r\n */\r\nexport default function useClickAway(props) {\r\n const { isOpen, setOpen, ref, disallow } = props;\r\n\r\n const fallbackRef = useRef();\r\n const dropdownRef = ref || fallbackRef;\r\n const buttonRef = props.buttonRef || fallbackRef;\r\n\r\n // if the click originated inside, don't close it when the \"click\" event\r\n // happens outside\r\n const [clickStartedInside, setClickStartedInside] = useState(false);\r\n\r\n const [moveFocus, setMoveFocus] = useState(true);\r\n\r\n useEffect(() => {\r\n if (disallow) {\r\n return;\r\n }\r\n\r\n if (isOpen) {\r\n const handleClickAway = (e) => {\r\n if (\r\n !isOrContainsNode(dropdownRef.current, e.target) &&\r\n !clickStartedInside\r\n ) {\r\n setOpen(false);\r\n }\r\n\r\n setClickStartedInside(false); // reset\r\n };\r\n\r\n const handleKeydown = (e) => {\r\n if (e.key === \"Esc\" || e.key === \"Escape\") {\r\n setOpen(false);\r\n\r\n if (moveFocus) {\r\n buttonRef.current.focus();\r\n }\r\n }\r\n };\r\n\r\n const handleMouseDown = (e) => {\r\n if (isOrContainsNode(dropdownRef.current, e.target)) {\r\n setClickStartedInside(true);\r\n }\r\n };\r\n\r\n const handleFocusLoss = (e) => {\r\n setMoveFocus(isOrContainsNode(dropdownRef.current, e.target));\r\n };\r\n\r\n document.addEventListener(\"click\", handleClickAway, true);\r\n document.addEventListener(\"keydown\", handleKeydown);\r\n document.addEventListener(\"mousedown\", handleMouseDown);\r\n document.addEventListener(\"focusin\", handleFocusLoss);\r\n\r\n return () => {\r\n document.removeEventListener(\"click\", handleClickAway, true);\r\n document.removeEventListener(\"keydown\", handleKeydown);\r\n document.removeEventListener(\"mousedown\", handleMouseDown);\r\n document.removeEventListener(\"focusin\", handleFocusLoss);\r\n };\r\n }\r\n }, [\r\n clickStartedInside,\r\n dropdownRef,\r\n isOpen,\r\n setOpen,\r\n buttonRef,\r\n moveFocus,\r\n disallow,\r\n ]);\r\n\r\n return dropdownRef;\r\n}\r\n\r\n/* https://github.com/downshift-js/downshift/blob/046e4abf4468fead3bf3adadb1352279532345ed/src/utils.js#L41-L48*/\r\n/**\r\n * @param {HTMLElement} parent the parent node\r\n * @param {HTMLElement} child the child node\r\n * @return {Boolean} whether the parent is the child or the child is in the parent\r\n */\r\nfunction isOrContainsNode(parent, child) {\r\n return (\r\n !parent || parent === child || (parent.contains && parent.contains(child))\r\n );\r\n}\r\n","// *****\r\n// Sitecore link types are: internal, external, anchor, media, mailto, javascript\r\n// type mailto links already have the `mailto:` string prepended\r\n// *****\r\n\r\nimport React from \"react\";\r\nimport { string, oneOf, bool, func, object } from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\nimport Icon from \"../Icon/Icon.jsx\";\r\n\r\nconst propTypes = {\r\n href: string.isRequired,\r\n type: oneOf([\r\n \"\",\r\n \"internal\",\r\n \"external\",\r\n \"anchor\",\r\n \"mailto\",\r\n \"media\",\r\n \"download\",\r\n \"arrow\",\r\n ]),\r\n text: string,\r\n title: string,\r\n className: string,\r\n reversed: bool,\r\n onKeyDown: func,\r\n lang: string,\r\n gtmElementLabel: string,\r\n focusRef: object,\r\n};\r\n\r\nconst ArrowLink = (props) => {\r\n const {\r\n href,\r\n type,\r\n text,\r\n title,\r\n className,\r\n lang,\r\n reversed = false,\r\n gtmElementLabel,\r\n focusRef,\r\n } = props;\r\n\r\n let download = false;\r\n let iconName = \"\";\r\n\r\n switch (type) {\r\n case \"download\":\r\n case \"media\":\r\n download = true;\r\n iconName = \"download\";\r\n break;\r\n case \"external\":\r\n iconName = \"external\";\r\n break;\r\n case \"anchor\":\r\n case \"arrow\":\r\n iconName = reversed ? \"arrow-left\" : \"arrow-right\";\r\n break;\r\n default:\r\n }\r\n\r\n const classModifier = type ? `arrow-link--${type}` : \"\";\r\n\r\n return (\r\n // eslint-disable-next-line react/jsx-no-target-blank\r\n \r\n {reversed && iconName && }\r\n {text}\r\n {!reversed && iconName && }\r\n \r\n );\r\n};\r\nArrowLink.propTypes = propTypes;\r\nexport { propTypes as arrowLinkPropTypes };\r\nexport default ArrowLink;\r\n","import React from \"react\";\r\nimport { string } from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\nconst propTypes = {\r\n iconName: string,\r\n className: string,\r\n title: string,\r\n};\r\n\r\nconst Icon = (props) => {\r\n const { iconName, className, title, ...otherProps } = props;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nIcon.propTypes = propTypes;\r\nexport default Icon;\r\n","import React from \"react\";\r\nimport { string } from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\nconst propTypes = {\r\n srcset: string,\r\n srcSet: string,\r\n height: string,\r\n width: string,\r\n alt: string,\r\n sizes: string,\r\n className: string,\r\n loading: string,\r\n};\r\n\r\nconst defaultProps = {\r\n srcset: `\r\n https://via.placeholder.com/400x300 400w,\r\n https://via.placeholder.com/800x600 800w,\r\n https://via.placeholder.com/1200x900 1200w,\r\n https://via.placeholder.com/1600x1200 1600w,\r\n https://via.placeholder.com/2000x1500 2000w,\r\n https://via.placeholder.com/2400x1800 2400w,\r\n https://via.placeholder.com/2800x2100 2800w,\r\n https://via.placeholder.com/3200x2400 3200w\"\r\n `,\r\n alt: \"\",\r\n sizes: \"(min-width: 1230px) 1170px, 100vw\",\r\n className: \"\",\r\n loading: \"lazy\", // put this here so it can be overridden\r\n height: \"2400\",\r\n width: \"3200\",\r\n};\r\n\r\nconst ImageElement = (props) => {\r\n const { alt, sizes, className, loading, height, width } = props;\r\n const srcset = props.srcSet ? props.srcSet : props.srcset; // fallback srcset makes more sense\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nImageElement.propTypes = propTypes;\r\nImageElement.defaultProps = defaultProps;\r\n\r\nexport { propTypes };\r\nexport default ImageElement;\r\n","export default function scTracking(event, params) {\r\n if (!event) return false;\r\n\r\n var url = \"\";\r\n\r\n switch (event) {\r\n case \"share\":\r\n url = \"/api/tracking/share\";\r\n break;\r\n case \"socialfollow\":\r\n url = \"/api/tracking/socialfollow\";\r\n break;\r\n case \"download\":\r\n url = \"/api/tracking/download\";\r\n break;\r\n case \"videoplay\":\r\n url = \"/api/tracking/videoplay\";\r\n break;\r\n case \"interstitialtriggered\":\r\n url = \"/api/tracking/interstitialtriggered\";\r\n break;\r\n case \"email1\":\r\n url = `/api/tracking/email?email=${params.email}&goalId=${params.goal}`;\r\n break;\r\n case \"email2\":\r\n url = \"/api/tracking/email?goalId=\" + params.goal;\r\n break;\r\n default:\r\n return false;\r\n }\r\n\r\n fetch(url, {\r\n method: \"GET\",\r\n credentials: \"same-origin\",\r\n })\r\n .then((response) => {\r\n return;\r\n })\r\n .catch((error) => {\r\n console.error(\"SC Tracking Error: \", error);\r\n });\r\n}\r\n","import uniqueId from \"lodash.uniqueid\";\r\nimport cx from \"classnames\";\r\nimport React, {\r\n useState,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useCallback,\r\n} from \"react\";\r\n\r\nimport { loadScript, createPlayer } from \"./youtubeService.js\";\r\nimport scTracking from \"../SCTracking/sc-tracking.js\";\r\nimport { isScrolledIntoView } from \"../../common/scrollIntoView.js\";\r\n\r\nimport ArrowLink from \"../ArrowLink/ArrowLink.jsx\";\r\nimport Icon from \"../Icon/Icon.jsx\";\r\nimport ImageElement from \"../ImageElement/ImageElement.jsx\";\r\n\r\nimport { object, string, bool, shape } from \"prop-types\";\r\n\r\nconst propTypes = {\r\n id: string.isRequired,\r\n params: string,\r\n image: shape({\r\n srcSet: string,\r\n }),\r\n transcriptLink: object,\r\n title: string,\r\n caption: string,\r\n credit: string,\r\n darkButton: bool,\r\n smallButton: bool,\r\n autoplay: bool,\r\n language: shape({\r\n Name: string,\r\n }),\r\n};\r\n\r\nconst YouTubeVideo = (props) => {\r\n const {\r\n id,\r\n params,\r\n image,\r\n transcriptLink,\r\n title,\r\n caption,\r\n credit,\r\n darkButton,\r\n smallButton,\r\n autoplay,\r\n language,\r\n } = props;\r\n\r\n const [videoStarted, setVideoStarted] = useState(autoplay);\r\n const [player, setPlayer] = useState(null);\r\n const [playerReady, setPlayerReady] = useState(false);\r\n const rootRef = useRef(null);\r\n\r\n const playerId = useMemo(() => uniqueId(), []);\r\n\r\n const init = useCallback(() => {\r\n const config = {\r\n videoId: id,\r\n playerVars: {\r\n autoplay: autoplay ? 1 : 0,\r\n cc_lang_pref: language?.Name || \"en\",\r\n hl: language?.Name || \"en\",\r\n },\r\n };\r\n\r\n const paramsToObject = (params) => {\r\n const entries = new URLSearchParams(params);\r\n\r\n const result = {};\r\n for (const [key, value] of entries) {\r\n // each 'entry' is a [key, value] tupple\r\n result[key] = value;\r\n }\r\n return result;\r\n };\r\n\r\n if (params && params !== \"\") {\r\n config.playerVars = { ...config.playerVars, ...paramsToObject(params) };\r\n }\r\n\r\n const onPlayerReady = (e) => {\r\n if (autoplay) {\r\n e.target.mute();\r\n }\r\n setPlayerReady(true);\r\n };\r\n\r\n // Check if window.onYouTubeIframeAPIReady already exists\r\n if (window.YT && window.YT.loaded) {\r\n const newPlayer = createPlayer(playerId, config, onPlayerReady);\r\n setPlayer(newPlayer);\r\n } else {\r\n // after onYouTubeIframeAPIReady is executed, create a new player\r\n const callback = window.onYouTubeIframeAPIReady;\r\n window.onYouTubeIframeAPIReady = () => {\r\n if (callback) {\r\n callback();\r\n }\r\n\r\n const newPlayer = createPlayer(playerId, config, onPlayerReady);\r\n setPlayer(newPlayer);\r\n };\r\n }\r\n }, [id, autoplay, language, params, playerId]);\r\n\r\n useEffect(() => {\r\n // On mount, check to see if the API script is already loaded\r\n loadScript();\r\n\r\n const root = rootRef.current;\r\n\r\n // Lazy load initialization of the YouTube player\r\n const observer = new IntersectionObserver((entries, observer) => {\r\n entries.forEach((entry) => {\r\n if (entry.isIntersecting) {\r\n init();\r\n observer.unobserve(root);\r\n }\r\n });\r\n });\r\n\r\n if (root && isScrolledIntoView(root)) {\r\n init();\r\n } else {\r\n observer.observe(root);\r\n }\r\n\r\n return () => {\r\n observer.unobserve(root);\r\n };\r\n }, [init]);\r\n\r\n useEffect(() => {\r\n // If video's started but player is not ready, play video when ready\r\n if (videoStarted && playerReady) {\r\n player.playVideo();\r\n }\r\n }, [player, playerReady, videoStarted]);\r\n\r\n const playVideo = () => {\r\n setVideoStarted(true);\r\n scTracking(\"videoplay\");\r\n\r\n if (playerReady) {\r\n player.playVideo();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (!player || !rootRef.current) return;\r\n\r\n const root = rootRef.current;\r\n\r\n const pausedByObserver = new WeakMap();\r\n\r\n const observer = new IntersectionObserver(\r\n /**\r\n * If video is playing when it leaves the viewport, pause it.\r\n * If video then re-enters the viewport, play it.\r\n */\r\n (entries) => {\r\n entries.forEach((entry) => {\r\n if (entry.isIntersecting) {\r\n // Video is entering the viewport - play it if it was paused\r\n // by the observer.\r\n if (pausedByObserver.get(root)) {\r\n player.playVideo();\r\n pausedByObserver.set(root, false);\r\n }\r\n } else {\r\n // Video is leaving the viewport - pause it and track that it was\r\n // paused by the observer.\r\n // https://developers.google.com/youtube/iframe_api_reference#Playback_status\r\n if (\r\n player &&\r\n player.getPlayerState &&\r\n player.getPlayerState() === window.YT.PlayerState.PLAYING\r\n ) {\r\n player.pauseVideo();\r\n pausedByObserver.set(root, true);\r\n }\r\n }\r\n });\r\n },\r\n { threshold: 0.5 },\r\n );\r\n\r\n observer.observe(root);\r\n\r\n return () => {\r\n observer.unobserve(root);\r\n };\r\n }, [player]);\r\n\r\n return (\r\n \r\n
\r\n
\r\n \r\n {image && image.srcSet ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {(title || caption || credit) && (\r\n
\r\n {title && (\r\n

{title}

\r\n )}\r\n {caption && (\r\n {caption}\r\n )}\r\n {credit && (\r\n {credit}\r\n )}\r\n
\r\n )}\r\n {transcriptLink && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nYouTubeVideo.propTypes = propTypes;\r\n\r\nexport default YouTubeVideo;\r\n","// Handles YouTube API\r\n\r\nexport const loadScript = () => {\r\n if (!document.querySelector(\"#js-youtube-iframe-api\")) {\r\n // If not, load the script asynchronously\r\n const tag = document.createElement(\"script\");\r\n tag.src = \"https://www.youtube.com/iframe_api\";\r\n tag.id = \"js-youtube-iframe-api\";\r\n\r\n const firstScriptTag = document.getElementsByTagName(\"script\")[0];\r\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\r\n }\r\n};\r\n\r\nexport const createPlayer = (playerId, config, cb) => {\r\n const defaults = {\r\n width: \"auto\",\r\n height: \"auto\",\r\n host: \"https://www.youtube-nocookie.com\",\r\n playerVars: {\r\n rel: 0,\r\n },\r\n };\r\n\r\n return new window.YT.Player(\r\n playerId,\r\n Object.assign({ events: { onReady: cb } }, defaults, config, {\r\n playerVars: { ...defaults.playerVars, ...config.playerVars },\r\n }),\r\n );\r\n};\r\n","import React, { useState } from \"react\";\r\nimport { arrayOf, shape, string, object, bool } from \"prop-types\";\r\nimport cx from \"classnames\";\r\n\r\nimport useClickAway from \"../../common/useClickAway.js\";\r\nimport SlideshowItem from \"./SlideshowItem.jsx\";\r\nimport Icon from \"../../components/Icon/Icon.jsx\";\r\n\r\nconst propTypes = {\r\n imageRight: bool,\r\n items: arrayOf(\r\n shape({\r\n title: string,\r\n description: string,\r\n video: object,\r\n }),\r\n ),\r\n};\r\n\r\nconst MultiContentSlideshow = (props) => {\r\n const [activeIndex, setActiveIndex] = useState(0);\r\n const [isOpen, setOpen] = useState(false);\r\n const containerRef = useClickAway({ isOpen, setOpen });\r\n\r\n const { imageRight, items } = props;\r\n\r\n return (\r\n
\r\n \r\n {isOpen && (\r\n <>\r\n setOpen(false)}\r\n type=\"button\"\r\n >\r\n \r\n Close video\r\n \r\n \r\n \r\n )}\r\n \r\n\r\n \r\n
\r\n {items &&\r\n items.map((item, i) =>\r\n item.video.id ? (\r\n \r\n \r\n\r\n {!isOpen && (\r\n {\r\n setOpen(true);\r\n }}\r\n aria-expanded={isOpen}\r\n className=\"multi-content-slideshow__video-trigger video-button\"\r\n type=\"button\"\r\n >\r\n Play or Pause the Video\r\n \r\n )}\r\n
\r\n ) : (\r\n \r\n \r\n \r\n ),\r\n )}\r\n \r\n
\r\n {items &&\r\n items.map((item, i) => (\r\n setActiveIndex(i)}\r\n title={item.title}\r\n description={item.description}\r\n video={item.video}\r\n />\r\n ))}\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nMultiContentSlideshow.propTypes = propTypes;\r\nexport default MultiContentSlideshow;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { bool, string, object, func } from \"prop-types\";\r\nimport AnimateHeight from \"react-animate-height\";\r\nimport YouTubeVideo from \"../../components/YouTubeVideo/YouTubeVideoApp.jsx\";\r\nimport cx from \"classnames\";\r\nimport uniqueId from \"lodash.uniqueid\";\r\n\r\nconst propTypes = {\r\n isOpen: bool.isRequired,\r\n handleItemClick: func.isRequired,\r\n title: string.isRequired,\r\n description: string,\r\n video: object,\r\n};\r\n\r\nconst SlideshowItem = (props) => {\r\n const { isOpen, handleItemClick, title, description, video } = props;\r\n\r\n const [isMobile, setIsMobile] = useState(false);\r\n const id = uniqueId(\"mc-slide-\");\r\n\r\n const determineMobile = () => {\r\n window.innerWidth >= 781 ? setIsMobile(false) : setIsMobile(true);\r\n };\r\n\r\n useEffect(() => {\r\n determineMobile();\r\n window.addEventListener(\"resize\", determineMobile);\r\n return () => window.removeEventListener(\"resize\", determineMobile);\r\n }, []);\r\n\r\n const calculateHeight = (isOpen, isMobile) => {\r\n return isOpen ? (isMobile ? \"auto\" : 400) : 0;\r\n };\r\n\r\n let posterImage;\r\n if (video.poster) {\r\n posterImage = {\r\n alt: video.poster.alt,\r\n srcSet: [\r\n [video.poster.small, \"480w\"],\r\n [video.poster.medium, \"680w\"],\r\n [video.poster.large, \"1292w\"],\r\n ]\r\n .filter(([imageUrl]) => typeof imageUrl === \"string\")\r\n .map(([imageUrl, imageSize]) => {\r\n return `${imageUrl} ${imageSize}`;\r\n })\r\n .join(\",\"),\r\n sizes: \"300px\",\r\n };\r\n }\r\n\r\n return (\r\n \r\n \r\n {title}\r\n \r\n \r\n
\r\n {description}\r\n
\r\n {isMobile && video.id && isOpen && (\r\n
\r\n \r\n
\r\n )}\r\n {isMobile && !video.id && (\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nSlideshowItem.propTypes = propTypes;\r\nexport default SlideshowItem;\r\n","import renderMultiContentSlideshow from \"../renderMultiContentSlideshow.jsx\";\r\n\r\ndocument.addEventListener(\"DOMContentLoaded\", () => {\r\n renderMultiContentSlideshow();\r\n});\r\n","import React from \"react\";\r\nimport ReactDom from \"react-dom\";\r\nimport MultiContentSlideshow from \"./MultiContentSlideshowApp.jsx\";\r\n\r\nexport default function renderMultiContentSlideshow() {\r\n document\r\n .querySelectorAll(\".js-multi-content-slideshow-mount\")\r\n .forEach((mount) => {\r\n const data = JSON.parse(mount.getAttribute(\"data-model\"));\r\n\r\n ReactDom.render(, mount);\r\n });\r\n}\r\n"]}