{"version":3,"file":"js/5494.js","mappings":"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","sources":["webpack:///./resources/js/components/base/CarouselVideo.jsx","webpack:///./resources/js/components/blades/carouselBlade2/carouselNav.jsx","webpack:///./resources/js/components/blades/carouselBlade2/CarouselBlade2.jsx"],"sourcesContent":["import { css } from \"@emotion/react\";\nimport PropTypes from \"prop-types\";\nimport {useRef, useEffect} from \"react\";\n\nconst Video = ({ video_provider, video_id, autoplay, unmute, background, onVideoEnd, activate, paused, onVideoLoad }) => {\n\n const rawVideoRef = useRef();\n\n /** if the parent wants to watch for video end **/\n\n useEffect(()=>{\n\n if(onVideoEnd){\n\n let rawRefValue = null\n\n if(rawVideoRef.current){\n rawVideoRef.current.addEventListener('ended',onVideoEnd,false);\n rawRefValue = rawVideoRef.current\n }\n\n /** TODO, should the active change also remove this event listner? **/\n\n return ()=> {\n if(rawRefValue) rawRefValue.removeEventListener('ended',onVideoEnd,false);\n }\n\n }\n\n }, [onVideoEnd])\n\n useEffect(()=>{\n\n if(onVideoLoad){\n\n let rawRefValue = null\n\n const calcDims = (e) => {\n onVideoLoad(e.target.videoWidth,e.target.videoHeight)\n }\n\n if(rawVideoRef.current){\n rawVideoRef.current.addEventListener('loadedmetadata',calcDims,false);\n rawRefValue = rawVideoRef.current\n }\n\n /** TODO, should the active change also remove this event listner? **/\n\n return ()=> {\n if(rawRefValue) rawRefValue.removeEventListener('ended',calcDims,false);\n }\n\n }\n\n }, [onVideoLoad])\n\n /** if the parent needs to restart a video **/\n useEffect(()=>{\n if(rawVideoRef.current){\n\n if(activate){\n rawVideoRef.current.currentTime = 0;\n rawVideoRef.current.play();\n } else {\n rawVideoRef.current.pause();\n }\n }\n }, [activate])\n\n useEffect(()=>{\n if(rawVideoRef.current){\n if(paused){\n rawVideoRef.current.pause();\n } else {\n rawVideoRef.current.play();\n }\n }\n }, [paused])\n\n const frameCss = css(`\n position: absolute;\n top:0;\n left:0;\n ${!background ? 'width:100%;' : ''}\n height:100%;\n background-color:black;\n ${background ? 'object-fit: cover;' : ''}\n `);\n\n const ekoEmbed = id => {\n const attributes = {\n height: \"100%\",\n src: `https://video.eko.com/v/${id}/embed?autoplay=${autoplay ? \"true\" : \"false\"}`,\n allow: \"autoplay; fullscreen\"\n };\n\n if(!background) attributes.width = '100%';\n\n return \n };\n\n const youtubeEmbed = id => {\n\n const urlArgs = {\n modestbranding: 1,\n rel: 0,\n \"iv_load_policy\": 3,\n showsearch: 0,\n autohide: 0,\n }\n\n // by coincidence this is pretty similar to the vimeo autoplay method, i suggest keeping this broken out to not kneecap any new video provider's ability to autoplay.\n if (autoplay) {\n urlArgs.autoplay = 1;\n urlArgs.controls = 1;\n urlArgs.showinfo = 0;\n }\n\n if(autoplay && !unmute){\n urlArgs.mute = 1;\n urlArgs.playsinline = 1;\n }\n\n // Turn our k=>v object into a nice http GET formatted string.\n const finalArgs = Object.keys(urlArgs).map(i => `${i}=${urlArgs[i]}`).join(\"&\");\n\n const attributes = {\n height: \"100%\",\n src: `https://www.youtube.com/embed/${id}?${finalArgs}`,\n frameBorder: 0,\n allow: \"autoplay; fullscreen\"\n };\n\n if(!background) attributes.width = '100%';\n\n return \n };\n\n const vimeoEmbed = id => {\n\n const urlArgs = {\n color: \"ffffff\"\n }\n\n // by coincidence this is pretty similar to the youtube autoplay method, i suggest keeping this broken out to not kneecap any new video provider's ability to autoplay.\n if (autoplay) {\n urlArgs.autoplay = 1;\n urlArgs.controls = 0;\n urlArgs.showinfo = 0;\n }\n\n if(autoplay && !unmute){\n urlArgs.muted = 1;\n }\n\n if(background){\n urlArgs.background = 1\n }\n\n // Turn our k=>v object into a nice http GET formatted string.\n const finalArgs = Object.keys(urlArgs).map(i => `${i}=${urlArgs[i]}`).join(\"&\");\n\n const attributes = {\n height: \"100%\",\n src: `https://player.vimeo.com/video/${id}?${finalArgs}`,\n frameBorder: 0,\n allow: \"autoplay; fullscreen\"\n };\n\n if(!background) attributes.width = '100%';\n\n return \n };\n\n const vzaarEmbed = id => {\n const attributes = {\n height: \"100%\",\n src: `https://view.vzaar.com/${id}/player?GAOn=${autoplay ? \"true\" : \"false\"}`,\n frameBorder: 0,\n allow: \"autoplay; fullscreen\"\n };\n\n if(!background) attributes.width = '100%';\n\n return \n };\n\n const getRawEmbedCode = id => {\n\n const attributes = {\n width: \"100%\",\n height: 'auto',\n muted: !unmute,\n autoPlay: autoplay,\n // loop: autoplay,\n controls: !background,\n playsInline: true\n }\n\n /* eslint-disable jsx-a11y/media-has-caption */\n return (\n \n )\n }\n\n const showEmbed = (video_provider, video_id) => {\n const embedMap = {\n eko: ekoEmbed,\n vimeo: vimeoEmbed,\n youtube: youtubeEmbed,\n vzaar: vzaarEmbed,\n raw_url: getRawEmbedCode\n };\n if (embedMap[video_provider]) return embedMap[video_provider](video_id);\n console.warn(`No Video Provider for ${video_provider}/${video_id}`)\n return null\n }\n\n const aspectRatioWrap = () => {\n if(!background){\n return css(`\n padding-bottom: 56.25%; // 16:9\n width:100%;\n height:auto;\n position: relative;\n `);\n }\n }\n\n const centerVertically = css(`\n height: 100%;\n width: 100%;\n align-items: center;\n display: flex;\n justify-content: center;\n `)\n\n return
\n {showEmbed(video_provider, video_id)}\n {/*{JSON.stringify([video_provider, video_id], false, '\\t')}*/}\n
\n};\n\nVideo.propTypes = {\n video_provider: PropTypes.string,\n video_id: PropTypes.string,\n autoplay: PropTypes.bool,\n unmute: PropTypes.bool,\n background: PropTypes.bool,\n onVideoEnd: PropTypes.func,\n activate: PropTypes.bool,\n paused: PropTypes.bool,\n onVideoLoad: PropTypes.func,\n};\n\n\nexport default Video;\n","import { ButtonPill } from \"@/base\";\nimport { css, useTheme } from \"@emotion/react\";\nimport useBreakpoints from \"@util/breakpoints\";\nimport useWindowResized from \"@/helpers/useWindowResized\";\nimport { useEffect, useRef } from \"react\";\n\nconst CarouselNav = ({ slides, setActiveCarousel, activeCarousel }) => {\n const theme = useTheme();\n\n const rowRef = useRef();\n const spacerRef = useRef();\n const pillsRef = useRef([]);\n\n useWindowResized(() => {\n let display = rowRef.current.scrollWidth > rowRef.current.clientWidth;\n spacerRef.current.style.display = display ? \"block\" : \"none\";\n });\n\n const rowFlex = useBreakpoints([theme.breakpoint.md])({\n order: [\"2\", \"3\"],\n });\n\n let rowStyles = css(`\n \n .buttonsRow{\n overflow-x: scroll;\n -ms-overflow-style: none;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: none;\n &::-webkit-scrollbar {\n display: none;\n }\n }\n \n .spacer, .showMore {\n display: block;\n min-width: 100px;\n height: 100%;\n }\n \n .showMore {\n position: absolute;\n text-align: right;\n top: -1px;\n right: 0;\n height: calc(100% + 2px); \n background: linear-gradient(to right, rgba(255,255,255,0) 0, rgba(255,255,255,1) 40%);\n border: none;\n pointer-events: all;\n \n }\n .showMoreLeft {\n position: absolute;\n text-align: left;\n top: -1px;\n left: 0;\n height: calc(100% + 2px); \n background: linear-gradient(to right, rgba(255,255,255,0) 0, rgba(255,255,255,1) 40%);\n border: none;\n pointer-events: all;\n \n }\n \n svg {\n position: relative;\n height: calc(100% - 2px);\n top: 1px;\n right: 0px;\n }\n \n `);\n\n const fetchTitles = () => {\n let buttonRow = slides.map((slide, slideIndex) => {\n let parentTitle = slide.value.elements.find(\n (el) => el.render_name === \"title\"\n );\n if (!parentTitle) return;\n return (\n { pillsRef.current[slideIndex] = el; }}>\n setActiveCarousel(slideIndex)}\n buttonTheme={\"grey-rev\"}\n className={`text-nowrap ${slideIndex === activeCarousel ? \"active\" : \"\"\n }`}\n >\n {parentTitle.value}\n \n \n );\n });\n\n return (\n
\n
\n {buttonRow}\n \n  \n \n
\n
\n );\n };\n\n\n useEffect(() => {\n // rowRef.current.scrollLeft = itemOffset;\n const wrapWidth = rowRef.current.offsetWidth;\n const itemWidth = pillsRef.current[activeCarousel].offsetWidth;\n const itemOffset = pillsRef.current[activeCarousel].offsetLeft - (wrapWidth/2) + (itemWidth/2);\n rowRef.current.scrollTo({left: itemOffset, behavior:\"smooth\"});\n // console.log(rowRef);\n }, [activeCarousel])\n\n return fetchTitles();\n};\n\nexport default CarouselNav;\n","import PropTypes from \"prop-types\";\nimport {ButtonPill, Kicker} from \"@/base\";\nimport {useState, useRef, useEffect, useCallback} from \"react\";\nimport CmsImageLoader from \"@/base/CmsImageLoader\";\nimport useBreakpoints from \"@util/breakpoints\";\nimport {css, useTheme} from \"@emotion/react\";\nimport Header from \"../../base/Header\";\n\nimport CarouselNav from \"@/blades/carouselBlade2/carouselNav\";\nimport CarouselVideo from \"@/base/CarouselVideo\";\n\nconst CarouselBlade2 = ({entity}) => {\n\n const [activeCarousel, setActiveCarousel] = useState(0);\n const activeCarouselRef = useRef(0)\n const [inView, setInView] = useState(false);\n \n const hasEnded = useRef(false);\n const copyWidth = 390;\n const aspectRatios = useRef(['16/9'])\n\n const slideTime = 4000;\n\n const carouselWrapper = useRef();\n const slideCount = useRef(0);\n const slideTimer = useRef();\n const remainingTime = useRef(slideTime)\n const startTime = useRef()\n\n const mediaType = useRef();\n\n const isElementInViewport = useCallback(() => {\n\n let rect = carouselWrapper.current.getBoundingClientRect();\n let windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n\n let margin = 200; // may look into adding value of data-aos-offset if used\n\n let hasEntered = (\n rect.top < (windowHeight-margin) && rect.bottom > margin\n );\n\n if(inView !== hasEntered ){\n setInView(hasEntered);\n }\n\n }, [setInView, inView]);\n\n /** Add your event listeners to detect if element is in view **/\n\n useEffect(()=>{\n\n window.addEventListener('scroll', isElementInViewport);\n isElementInViewport();\n return ()=>window.removeEventListener('scroll', isElementInViewport);\n\n },[isElementInViewport]);\n\n const pauseTimer = () => {\n\n clearTimeout(slideTimer.current)\n if(startTime.current) {\n remainingTime.current -= Date.now() - startTime.current;\n } else {\n remainingTime.current = slideTime\n }\n\n }\n\n const startTimer = useCallback(() => {\n\n startTime.current = Date.now();\n slideTimer.current = setTimeout(()=>{\n imageSlideUpdate()\n }, remainingTime.current)\n\n }, [imageSlideUpdate]);\n\n const restartTimer = useCallback(() => {\n\n if(slideTimer.current) {\n\n remainingTime.current = slideTime;\n startTime.current = null;\n clearTimeout(slideTimer.current)\n\n }\n\n startTimer()\n\n }, [startTimer])\n\n useEffect(()=>{\n\n // view change, start or pause timer\n if(inView) {\n if(mediaType.current === 'image') startTimer();\n } else {\n if(mediaType.current === 'image') pauseTimer();\n }\n\n }, [inView, startTimer])\n\n useEffect(()=>{\n\n // carousel change, full restart image timer\n if(activeCarouselRef.current !== activeCarousel){\n if(mediaType.current === 'image') restartTimer()\n activeCarouselRef.current = activeCarousel;\n hasEnded.current = false;\n }\n\n }, [activeCarousel, restartTimer])\n\n const changeSlide = ()=> {\n setActiveCarousel((current=>{\n return current === slideCount.current-1 ? 0 : current+1\n }))\n }\n\n const videoEndUpdate = () => {\n \n changeSlide();\n hasEnded.current = true;\n }\n\n const imageSlideUpdate = useCallback(() => {\n changeSlide()\n }, [])\n\n const theme = useTheme();\n\n const mediaFlex = useBreakpoints([theme.breakpoint.md])({\n width: ['100%', `calc(100% - ${copyWidth}px)`],\n order: 1,\n // minHeight: size,\n position: 'relative',\n background: '#000',\n // 'img, iframe': {\n 'iframe': {\n position: 'absolute',\n top: '0',\n width:'100%',\n height:'100%',\n objectFit: 'cover',\n }\n })\n\n const fillCopy = useBreakpoints([theme.breakpoint.md])({\n position: 'relative',\n pointerEvents: 'none'\n })\n\n \n\n \n\n const renderMedia = (el, slideIndex) => {\n\n if(slideIndex === activeCarousel) mediaType.current = el.render_name;\n\n let media;\n\n let fillPosition = css(`\n position: absolute;\n height: 100%;\n width: 100%;\n display: flex;\n\n img, video {\n width: 100%;\n height: auto;\n }\n `)\n \n if(el.render_name === 'video_url'){\n\n const videoLoaded = (width, height) => {\n aspectRatios.current[slideIndex] = `${width}/${height}`\n }\n\n media = (\n \n )\n }\n\n if(el.render_name === 'video'){\n\n //IFRAMES NEED MORE\n aspectRatios.current[slideIndex] = `16/9`\n\n fillPosition = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n width: '100%',\n height: '100%'\n }\n\n let video_id = el.value.elements.find(el=>el.render_name==='video_id');\n let video_provider = el.value.elements.find(el=>el.render_name==='video_provider');\n\n media = (\n \n )\n }\n\n if(el.render_name === 'image'){\n\n \n\n let image_url = el.value.elements.find(el=>el.render_name==='image_url');\n let alt_text = el.value.elements.find(el=>el.render_name==='alt_text');\n\n const dimensions = (width, height) => {\n aspectRatios.current[slideIndex] = `${width}/${height}`\n }\n\n media = (\n \n )\n }\n\n let animateClass = slideIndex === activeCarousel ? 'fade-in' : 'fade-out';\n\n return (\n
\n {media}\n
\n )\n\n }\n\n\n const renderButton = (button) => {\n if(button){\n\n let buttonUrl = button.value.elements.find(el=>el.render_name==='button_url');\n let buttonText = button.value.elements.find(el=>el.render_name==='button_text');\n let buttonTheme = button.value.elements.find(el=>el.render_name==='button_theme');\n\n return (\n {buttonText.value}\n )\n }\n }\n\n const copyStyle = useBreakpoints([theme.breakpoint.md])({\n minWidth: ['100%', `${copyWidth}px`],\n width: ['100%', `${copyWidth}px`],\n order: [\"3\",\"2\"],\n position: 'relative',\n // minHeight: ['100%', '660px']\n })\n\n const renderContent = (parent, slideIndex) => {\n\n let kicker = parent.value.elements.find(el=>el.render_name==='kicker');\n let title = parent.value.elements.find(el=>el.render_name==='title');\n let copy = parent.value.elements.find(el=>el.render_name==='product_info');\n let button = parent.value.elements.find(el=>el.render_name==='call_to_action');\n\n let animateClass = slideIndex === activeCarousel ? 'fade-in' : 'fade-out';\n\n return (\n
\n\n {kicker && {kicker.value}}\n\n {title &&
{title.value}
}\n\n {copy &&
}\n\n {renderButton(button)}\n\n
\n )\n }\n\n \n\n let renderSlides= () => {\n\n let slides = entity.value.elements.filter(el=>el.render_name!=='gated_flags');\n\n slideCount.current = 0\n\n if(slides) {\n\n let newSlides = slides.map((slide, slideIndex)=>{\n\n slideCount.current++;\n\n let mediaItem = slide.value.elements.find(item=>{\n if(item.render_name === 'video_url' || item.render_name === 'image' || item.render_name === 'video') return item;\n });\n\n return {\n copy: renderContent(slide, slideIndex),\n media: renderMedia(mediaItem, slideIndex)\n }\n })\n\n return (\n
\n\n
pauseCarousel(true)}\n // onFocus={()=>pauseCarousel(true)}\n // onMouseOut={()=>pauseCarousel(false)}\n // onBlur={()=>pauseCarousel(false)}\n >\n {newSlides.map((media)=>media.media)}\n
\n\n \n\n
pauseCarousel(true)}\n // onFocus={()=>pauseCarousel(true)}\n // onMouseOut={()=>pauseCarousel(false)}\n // onBlur={()=>pauseCarousel(false)}\n >\n {newSlides.map((copy)=>copy.copy)}\n
\n\n
\n\n )\n }\n }\n\n return renderSlides()\n};\n\nCarouselBlade2.propTypes = {\n entity: PropTypes.object\n};\n\nexport default CarouselBlade2;\n"],"names":["Video","_ref","video_provider","video_id","autoplay","unmute","background","onVideoEnd","activate","paused","onVideoLoad","rawVideoRef","useRef","useEffect","rawRefValue","current","addEventListener","removeEventListener","calcDims","e","target","videoWidth","videoHeight","currentTime","play","pause","frameCss","css","concat","ekoEmbed","id","attributes","height","src","allow","width","_jsx","_objectSpread","title","youtubeEmbed","urlArgs","modestbranding","rel","showsearch","autohide","controls","showinfo","mute","playsinline","finalArgs","Object","keys","map","i","join","frameBorder","vimeoEmbed","color","muted","vzaarEmbed","getRawEmbedCode","autoPlay","playsInline","ref","children","type","centerVertically","embedMap","eko","vimeo","youtube","vzaar","raw_url","console","warn","showEmbed","propTypes","PropTypes","slides","setActiveCarousel","activeCarousel","theme","useTheme","rowRef","spacerRef","pillsRef","useWindowResized","display","scrollWidth","clientWidth","style","buttonRow","rowFlex","useBreakpoints","breakpoint","md","order","rowStyles","wrapWidth","offsetWidth","itemWidth","itemOffset","offsetLeft","scrollTo","left","behavior","slide","slideIndex","parentTitle","value","elements","find","el","render_name","className","ButtonPill","onClick","buttonTheme","_jsxs","CarouselBlade2","entity","_useState2","_slicedToArray","useState","activeCarouselRef","_useState4","inView","setInView","hasEnded","aspectRatios","slideTime","carouselWrapper","slideCount","slideTimer","remainingTime","startTime","mediaType","isElementInViewport","useCallback","rect","getBoundingClientRect","windowHeight","window","innerHeight","document","documentElement","clientHeight","hasEntered","top","bottom","startTimer","Date","now","setTimeout","imageSlideUpdate","restartTimer","clearTimeout","changeSlide","videoEndUpdate","mediaFlex","position","objectFit","fillCopy","pointerEvents","renderMedia","media","fillPosition","CarouselVideo","right","image_url","alt_text","CmsImageLoader","url","alt","dimensions","animateClass","renderButton","button","buttonUrl","buttonText","to","stretch","copyStyle","minWidth","renderContent","parent","kicker","copy","Kicker","Header","tag","dangerouslySetInnerHTML","__html","filter","newSlides","mediaItem","item","aspectRatio","CarouselNav","renderSlides"],"sourceRoot":""}