{"version":3,"file":"72add255ff5a053f965b0bbbfa8572eb39c28edd-e26ecfbab8d67b9caa29.js","mappings":"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","sources":["webpack://reduct-dot-video/./src/components/Accordion/BlueEdgeAccordion.js","webpack://reduct-dot-video/./src/components/Accordion/BlueEdgeAccordionWithTitleOnly.js","webpack://reduct-dot-video/./src/components/Accordion/MediaWithAccordion.js","webpack://reduct-dot-video/./src/components/Accordion/index.js","webpack://reduct-dot-video/./src/components/Home/HeroSection.jsx","webpack://reduct-dot-video/./src/components/Pill.js","webpack://reduct-dot-video/./src/components/Vs/Rev/Industry.js","webpack://reduct-dot-video/./src/assets/images/homepage/LegalIndustryImageHomePage.webp","webpack://reduct-dot-video/./src/assets/images/homepage/MarketingIndustryImageHomePage.webp","webpack://reduct-dot-video/./src/assets/images/homepage/EducationIndustryImageHomePage.webp","webpack://reduct-dot-video/./src/assets/images/homepage/FilmmakingIndustryImageHomePage.webp","webpack://reduct-dot-video/./src/assets/images/homepage/ResearchIndustryImageHomePage.webp","webpack://reduct-dot-video/./src/constants/homepage/constants.js","webpack://reduct-dot-video/./src/assets/images/hero-section-banner.webp","webpack://reduct-dot-video/./src/assets/images/hero-section-banner-mobile.webp","webpack://reduct-dot-video/./src/components/TranscriptVideo/TranscribedCaptions.js","webpack://reduct-dot-video/./src/templates/blog/transcribe.js","webpack://reduct-dot-video/./src/assets/icons/accordion-minus-inactive.svg","webpack://reduct-dot-video/./src/assets/icons/accordion-plus-active.svg"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { updateAccordionHeight } from '../../utils/helpers';\n\nimport AccordionActiveIcon from '../../assets/icons/accordion-plus-active.svg';\nimport AccordionInActiveIcon from '../../assets/icons/accordion-minus-inactive.svg';\nimport { AccordionMedia } from './MediaWithAccordion';\nimport { AccordionIcon } from './BlueEdgeAccordionWithTitleOnly';\n\nexport const AnswerContainer = ({ ans }) => {\n if (typeof ans === 'string') {\n return

{ans}

;\n }\n\n // doing this to avoid valid dom nesting warnings\n return
{ans}
;\n};\n\nexport const BlueEdgeAccordion = ({\n copy,\n accordionIndex,\n setAccordionIndex,\n}) => {\n const accordionElementsref = useRef([]);\n const [isActive, setIsActive] = useState([0]);\n\n useEffect(() => {\n if (!accordionElementsref.current.length) return;\n\n updateAccordionHeight(accordionElementsref, isActive, true);\n\n if (window.innerWidth <= 1024) {\n return;\n }\n //recalculate height when the screen width changes\n window.addEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, true)\n );\n\n return () => {\n window.removeEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, true)\n );\n };\n }, []);\n\n const handleActiveAccordion = (key) => {\n if (window.screen.width > 1080) {\n updateAccordionHeight(accordionElementsref, [key], true);\n setIsActive([key]);\n return;\n }\n\n let updatedIndexArr;\n\n if (isActive.includes(key)) {\n updatedIndexArr = isActive.filter((index) => index !== key);\n } else {\n updatedIndexArr = [...isActive, key];\n }\n updateAccordionHeight(accordionElementsref, updatedIndexArr, true);\n setIsActive(updatedIndexArr);\n };\n\n useEffect(() => {\n if (!accordionIndex) return;\n\n setAccordionIndex(isActive);\n }, [isActive]);\n\n return (\n
\n {copy.map((accordion, index) => (\n (accordionElementsref.current[index] = el)}\n >\n {\n handleActiveAccordion(index);\n }}\n >\n \n {accordion.icon && (\n \n )}\n {accordion.question}\n
\n
\n \n
\n \n
\n
\n {isActive.includes(index) && }\n
\n \n
\n \n ))}\n \n );\n};\n\nAnswerContainer.propTypes = {\n ans: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n};\n\nBlueEdgeAccordion.propTypes = {\n copy: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.string),\n question: PropTypes.string,\n answer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n img: PropTypes.any,\n reel: PropTypes.string,\n })\n ),\n accordionIndex: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.arrayOf(PropTypes.number),\n ]),\n setAccordionIndex: PropTypes.any,\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { updateAccordionHeight } from '../../utils/helpers';\n\nexport const AccordionIcon = ({ isActive, accordion }) => {\n if (isActive) {\n return \"accordiontitle;\n }\n\n return \"accordion;\n};\n\nexport const BlueEdgeAccordionWithTitleOnly = ({\n copy,\n accordionIndex,\n setAccordionIndex,\n}) => {\n const accordionElementsref = useRef([]);\n const [isActive, setIsActive] = useState([0]);\n\n useEffect(() => {\n if (!accordionElementsref.current.length) return;\n\n updateAccordionHeight(accordionElementsref, isActive, true);\n\n if (window.innerWidth <= 1024) {\n return;\n }\n\n //recalculate height when the screen width changes\n window.addEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, true)\n );\n\n return () => {\n window.removeEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, true)\n );\n };\n }, []);\n\n const handleActiveAccordion = (key) => {\n if (window.screen.width < 1080) {\n updateAccordionHeight(accordionElementsref, [key], true);\n setIsActive([key]);\n return;\n }\n\n setIsActive([key]);\n };\n\n useEffect(() => {\n if (!accordionIndex) return;\n\n setAccordionIndex(isActive);\n }, [isActive]);\n\n return (\n
\n {copy.map((accordion, index) => (\n (accordionElementsref.current[index] = el)}\n onClick={() => {\n handleActiveAccordion(index);\n }}\n >\n {accordion.icon && (\n \n )}\n {accordion.question}\n
\n ))}\n \n );\n};\n\nAccordionIcon.propTypes = {\n isActive: PropTypes.bool,\n accordion: PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.any),\n question: PropTypes.string,\n thumbnail: PropTypes.any,\n reel: PropTypes.string,\n media: PropTypes.string,\n }),\n};\n\nBlueEdgeAccordionWithTitleOnly.propTypes = {\n copy: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.any),\n question: PropTypes.string,\n thumbnail: PropTypes.any,\n reel: PropTypes.string,\n media: PropTypes.string,\n })\n ),\n accordionIndex: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.number),\n PropTypes.number,\n ]),\n setAccordionIndex: PropTypes.any,\n};\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport ReductTranscribe from '../../templates/blog/transcribe';\n\nimport { BlueEdgeAccordionWithTitleOnly } from './BlueEdgeAccordionWithTitleOnly';\nimport { BlueEdgeAccordion } from './BlueEdgeAccordion';\n\nexport const AccordionMedia = ({ isActive, media }) => {\n if (media.reel) {\n if (media.thumbnail) {\n return (\n \n );\n }\n\n return ;\n }\n return \"Reduct;\n};\n\nconst TitleAndTagBlock = ({ title, tag, titleClassName }) => {\n if (tag) {\n return (\n
\n

{title}

\n
\n {tag}\n
\n
\n );\n }\n\n return

{title}

;\n};\n\nconst AccordionDesktop = ({\n accordionWithTitleOnly,\n copy,\n accordionIndex,\n setAccordionIndex,\n}) => {\n if (accordionWithTitleOnly) {\n return (\n \n );\n }\n\n return (\n \n );\n};\n\nexport const MediaWithAccordion = ({\n copy,\n titleClassName = 'b-header',\n mediaOnLeft = false,\n accordionWithTitleOnly = false,\n}) => {\n const { title, tag, items } = copy;\n const [accordionIndex, setAccordionIndex] = useState([0]);\n\n return (\n
\n
\n \n {/* desktop view */}\n \n
\n {items.map((media, index) => (\n \n \n
\n ))}\n
\n
\n \n
\n
\n {/* mobile view */}\n
\n \n
\n \n \n );\n};\n\nMediaWithAccordion.propTypes = {\n copy: PropTypes.shape({\n title: PropTypes.string,\n tag: PropTypes.node,\n hasAnswer: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.string),\n question: PropTypes.string,\n answer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n img: PropTypes.any,\n reel: PropTypes.string,\n })\n ),\n }),\n titleClassName: PropTypes.string,\n mediaOnLeft: PropTypes.bool,\n accordionWithTitleOnly: PropTypes.bool,\n};\n\nAccordionMedia.propTypes = {\n isActive: PropTypes.bool,\n media: PropTypes.shape({\n reel: PropTypes.string,\n img: PropTypes.string,\n thumbnail: PropTypes.any,\n }),\n};\n\nTitleAndTagBlock.propTypes = {\n title: PropTypes.string,\n tag: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n titleClassName: PropTypes.string,\n};\n\nAccordionDesktop.propTypes = {\n accordionWithTitleOnly: PropTypes.bool,\n copy: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.string),\n question: PropTypes.string,\n answer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n img: PropTypes.any,\n reel: PropTypes.string,\n })\n ),\n accordionIndex: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.arrayOf(PropTypes.number),\n ]),\n setAccordionIndex: PropTypes.any,\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { updateAccordionHeight } from '../../utils/helpers';\nimport { AnswerContainer } from './BlueEdgeAccordion';\nimport { AccordionMedia } from './MediaWithAccordion';\nimport { AccordionIcon } from './BlueEdgeAccordionWithTitleOnly';\n\nimport AccordionActiveIcon from '../../assets/icons/accordion-plus-active.svg';\nimport AccordionInActiveIcon from '../../assets/icons/accordion-minus-inactive.svg';\n\nexport const Accordion = ({\n copy,\n accordionIndex,\n setAccordionIndex,\n onlyOpenOneAccordion = false,\n isBlog = false,\n expandFirstAccordion = false,\n}) => {\n const accordionElementsref = useRef([]);\n const [isActive, setIsActive] = useState(expandFirstAccordion ? [0] : []);\n\n useEffect(() => {\n if (!accordionElementsref.current.length) return;\n\n updateAccordionHeight(accordionElementsref, isActive, false);\n\n if (window.innerWidth <= 1024) {\n return;\n }\n //recalculate height when the screen width changes\n window.addEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, false)\n );\n\n return () => {\n window.removeEventListener('resize', () =>\n updateAccordionHeight(accordionElementsref, isActive, false)\n );\n };\n }, []);\n\n const handleActiveAccordion = (key) => {\n if (window.screen.width > 1080 && onlyOpenOneAccordion) {\n updateAccordionHeight(accordionElementsref, [key], false);\n setIsActive([key]);\n return;\n }\n\n let updatedIndexArr;\n\n if (isActive.includes(key)) {\n updatedIndexArr = isActive.filter((index) => index !== key);\n } else {\n updatedIndexArr = [...isActive, key];\n }\n updateAccordionHeight(accordionElementsref, updatedIndexArr, false);\n setIsActive(updatedIndexArr);\n };\n\n useEffect(() => {\n if (!accordionIndex) return;\n\n setAccordionIndex(isActive);\n }, [isActive]);\n\n useEffect(() => {\n if (!accordionIndex) return;\n\n setAccordionIndex(isActive);\n }, [isActive]);\n\n return (\n
\n {copy.map((accordion, index) => (\n (accordionElementsref.current[index] = el)}\n >\n {\n handleActiveAccordion(index);\n }}\n >\n \n {accordion.icon && (\n \n )}\n {accordion.question}\n
\n\n
\n \n
\n \n
\n {isActive.includes(index) && accordion.img && (\n \n )}\n \n
\n \n ))}\n \n );\n};\n\nAccordion.propTypes = {\n copy: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.arrayOf(PropTypes.string),\n question: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.node,\n ]),\n answer: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n PropTypes.node,\n ]),\n img: PropTypes.any,\n reel: PropTypes.string,\n })\n ),\n accordionIndex: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.arrayOf(PropTypes.number),\n ]),\n setAccordionIndex: PropTypes.any,\n onlyOpenOneAccordion: PropTypes.bool,\n isBlog: PropTypes.bool,\n expandFirstAccordion: PropTypes.bool,\n};\n","import React, { useState, useEffect, useContext } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { TalkToSalesForm } from './CTA';\nimport ContentProvider from '../ContentProvider';\nimport { TABLE_NAME } from '../../constants/airTablename';\nimport ReductVideoSignUpButton from '../ReductVideoSignUpButton';\nimport { CalendlyPopup } from '../../utils/CalendarlyPopup';\nimport { FlagsContext } from '../../context/FlagsContext';\n\nconst HeroSection = ({ copy }) => {\n const [modalState, setModalState] = useState(false);\n const { media, mediaForMobileView } = copy;\n\n const { isFreeTrialCtaDisabled } = useContext(FlagsContext);\n\n useEffect(() => {\n const hash = window?.location?.hash;\n const queryText = window?.location?.search;\n\n if (hash === '#talk-to-sales' || queryText.includes('talk-to-sales')) {\n setModalState(true);\n }\n }, []);\n\n return (\n
\n
\n
\n
\n

\n \n Ctrl{' '}\n {' '}\n +{' '}\n \n F{' '}\n \n for video\n

\n

\n \n

\n
\n {modalState ? (\n setModalState(false)} />\n ) : (\n ''\n )}\n
\n {!isFreeTrialCtaDisabled && (\n \n )}\n \n Request a demo\n \n
\n
\n \n \n
\n
\n
\n );\n};\n\nexport default HeroSection;\n\nHeroSection.propTypes = {\n copy: PropTypes.shape({\n media: PropTypes.string,\n mediaForMobileView: PropTypes.string,\n }),\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nexport const Pill = ({ text, className = '' }) => (\n \n {text}\n \n);\n\nPill.propTypes = {\n text: PropTypes.string,\n className: PropTypes.string,\n};\n","import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Player } from '@lottiefiles/react-lottie-player';\nimport { Accordion } from '../../Accordion';\n\nexport const AccordionMedia = ({\n lottie = false,\n media,\n isActiveIndex = true,\n}) => {\n if (lottie) {\n return (\n \n \n \n );\n }\n\n return (\n \n );\n};\n\nexport const Industry = ({ copy, gradientSeparator = true }) => {\n const { tag, title, accordion } = copy;\n const [accordionIndex, setAccordionIndex] = useState([0]);\n\n return (\n \n \n
\n
\n {tag}\n

{title}

\n
\n \n
\n \n \n \n );\n};\n\nAccordionMedia.propTypes = {\n lottie: PropTypes.bool,\n media: PropTypes.any,\n isActiveIndex: PropTypes.bool,\n};\n\nIndustry.propTypes = {\n copy: PropTypes.shape({\n tag: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n title: PropTypes.string,\n accordion: PropTypes.arrayOf(\n PropTypes.shape({\n question: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n answer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n lottie: PropTypes.bool,\n media: PropTypes.any,\n })\n ),\n }),\n gradientSeparator: PropTypes.bool,\n};\n","export default __webpack_public_path__ + \"static/LegalIndustryImageHomePage-ed7b41df9f8fc8436b1b148c71c644b5.webp\";","export default __webpack_public_path__ + \"static/MarketingIndustryImageHomePage-25c162f52804997f4112ac6c393f445a.webp\";","export default __webpack_public_path__ + \"static/EducationIndustryImageHomePage-a5e602b77aed66aec32f475cec4341a4.webp\";","export default __webpack_public_path__ + \"static/FilmmakingIndustryImageHomePage-999b081de442e1942763ebb1e6e928f3.webp\";","export default __webpack_public_path__ + \"static/ResearchIndustryImageHomePage-b4d4f7b3c900aed16da9beaa92cd3d07.webp\";","import React from 'react';\nimport Link from 'components/Link';\n\nimport { Pill } from '../../components/Pill';\nimport { AccordionMedia } from '../../components/Vs/Rev/Industry';\n\nimport LegalIndustryImage from '../../assets/images/homepage/LegalIndustryImageHomePage.webp';\nimport MarketingIndustryImage from '../../assets/images/homepage/MarketingIndustryImageHomePage.webp';\nimport EducationIndustryImage from '../../assets/images/homepage/EducationIndustryImageHomePage.webp';\nimport FilmmakingIndustryImage from '../../assets/images/homepage/FilmmakingIndustryImageHomePage.webp';\nimport ResearchIndustryImage from '../../assets/images/homepage/ResearchIndustryImageHomePage.webp';\n\nimport HeroSectionBanner from 'assets/images/hero-section-banner.webp';\nimport HeroSectionBannerMobile from 'assets/images/hero-section-banner-mobile.webp';\n\nexport const HERO_SECTION_COPY = {\n media: HeroSectionBanner,\n mediaForMobileView: HeroSectionBannerMobile,\n};\n\nexport const INDUSTRY_COPY = {\n title: 'Industries we serve',\n accordion: [\n {\n question: (\n
\n
\n Public Defense & Legal\n
\n ),\n answer: (\n
\n
\n {[\n 'Body-worn camera',\n 'Police interrogations',\n 'Surveillance footage',\n 'Dash cam',\n 'Jail calls',\n '9-1-1 calls',\n 'Cell-phone recordings',\n ].map((pill, id) => (\n \n ))}\n
\n
\n \n
\n

\n Transcribe hours of audio and video discovery, find key moments\n quickly, and export captioned clips for trial just by selecting\n text, all as easy as using Google Docs.\n

\n \n Reduct for Legal →\n \n
\n ),\n media: LegalIndustryImage,\n },\n {\n question: (\n
\n
\n Qualitative Research\n
\n ),\n answer: (\n
\n
\n {[\n 'Research interviews',\n 'Focus groups',\n 'Webinars',\n 'Customer calls',\n 'User feedback',\n 'User testing sessions',\n ].map((pill, id) => (\n \n ))}\n
\n
\n \n
\n

\n Build a searchable interview repository for your team, add\n highlights and tags, share video insights out to the company Slack\n with just a link and increase the visibility and impact of research.\n

\n \n Reduct for Research →\n \n
\n ),\n media: ResearchIndustryImage,\n },\n {\n question: (\n
\n
\n Marketing\n
\n ),\n answer: (\n
\n
\n {[\n 'Customer testimonials',\n 'Product demos',\n 'Sales calls',\n 'Webinars',\n 'Live events',\n 'Podcasts',\n ].map((pill, id) => (\n \n ))}\n
\n
\n \n
\n

\n Create endless streams of content from your interviews, podcasts,\n and event recordings. Highlight shareable quotes from customers, and\n clip captioned videos directly from the transcript to share on\n social media.\n

\n \n Reduct for Marketing →\n \n
\n ),\n media: MarketingIndustryImage,\n },\n {\n question: (\n
\n
\n Education & Training\n
\n ),\n answer: (\n
\n
\n {[\n 'Lecture recordings',\n 'Student presentations',\n 'Workshops',\n 'Peer teaching sessions',\n 'Webinars',\n 'Demonstration videos',\n ].map((pill, id) => (\n \n ))}\n
\n
\n \n
\n

\n Add captions to your lecture videos for accessibility, easily remove\n tangents and crosstalk, and prepare a clean recording to share with\n your students or for remote learners. We also offer discounts for\n class use and academic research, such as teaching social sciences\n methods.\n

\n \n Reduct for Education →\n \n
\n ),\n media: EducationIndustryImage,\n },\n {\n question: (\n
\n
\n Filmmaking & Video Production\n
\n ),\n answer: (\n
\n
\n {[\n 'Unscripted content',\n 'Documentary',\n 'Rough cuts',\n 'Promotional videos',\n 'Script readings',\n 'Media analysis',\n ].map((pill, id) => (\n \n ))}\n
\n
\n \n
\n

\n Speed up footage review and logging, and then rapidly assemble a\n rough cut by editing video using transcripts. Share scenes with your\n team and with partners for real-time feedback. Bring your rough cut\n to Premiere Pro or Final Cut Pro and focus on what you love—crafting\n a compelling narrative.\n

\n \n Reduct for Filmmaking →\n \n
\n ),\n media: FilmmakingIndustryImage,\n },\n ],\n};\n","export default __webpack_public_path__ + \"static/hero-section-banner-c593fe2a7b44a3a57f59c2c54eac921d.webp\";","export default __webpack_public_path__ + \"static/hero-section-banner-mobile-60d92714a64f3b1fd52709417536e914.webp\";","import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport SimpleBar from 'simplebar-react';\n\nimport { loadReductApiScript, waitForScriptLoad } from '../../utils/api';\nimport { getDurationFromManifest } from '../../utils/embed';\nimport { scrollToContentForCC } from '../../utils/helpers';\n\nconst TranscribedCaptions = ({\n sharePath,\n videoRef,\n transcriptWrapperClass,\n preload,\n thumbnail,\n start = 0,\n end = 0,\n setIsLoading,\n}) => {\n const transcibeContainer = useRef();\n\n const didInit = useRef(false);\n\n const [tx, setTx] = useState();\n\n const init = async () => {\n let shareUrl = sharePath;\n let transcript,\n duration = 0;\n\n if (shareUrl[shareUrl.length - 1] === '/') {\n shareUrl = shareUrl.slice(0, shareUrl.length - 1);\n }\n\n if (!window.Reduct) {\n window.Reduct = {};\n await loadReductApiScript();\n }\n\n if (!window.Reduct.getSharePlayerFromManifest) {\n await waitForScriptLoad();\n }\n\n const $vid = videoRef.current;\n $vid.poster = thumbnail ? thumbnail : `${shareUrl}/posterframe.jpg`;\n\n const loadManifest = async () => {\n const url = shareUrl.endsWith('/')\n ? shareUrl.substr(0, shareUrl.length - 1)\n : shareUrl;\n const manifestRet = await fetch(`${url}/burn?type=json`);\n const manifest = await manifestRet.json();\n // Initialize Reduct player\n\n // global Reduct\n window.Reduct.getSharePlayerFromManifest($vid, manifest, `${url}/`);\n $vid.currentTime = start || 0;\n duration = getDurationFromManifest(manifest);\n };\n\n const loadTranscript = async (start, end) => {\n const transRet = await fetch(`${shareUrl}/transcript.json`);\n transcript = await transRet.json();\n\n if ((start || start === 0) && end) {\n transcript = {\n segments: transcript.segments\n .map((paragraph) => {\n const { wdlist } = paragraph;\n\n const filteredWdlist = wdlist.filter((wd) => {\n const afterStart = start ? start < wd.start : true;\n const beforeEnd = end ? end > wd.end : true;\n return afterStart && beforeEnd;\n });\n const newStartTime = filteredWdlist[0]?.start;\n return {\n ...paragraph,\n wdlist: filteredWdlist,\n start: newStartTime,\n };\n })\n .filter((paragraph) => paragraph.wdlist.length),\n };\n }\n // Now that transcript.json response includes titles, filter them away\n setTx({\n segments: transcript.segments,\n });\n };\n\n if (preload) {\n didInit.current = true;\n await loadManifest();\n }\n\n const transcriptStart = start;\n const transcriptEnd = end || duration;\n await loadTranscript(transcriptStart, transcriptEnd);\n\n $vid.onplay = () => {\n if (!didInit.current) {\n didInit.current = true;\n loadManifest();\n }\n };\n\n $vid.ontimeupdate = () => {\n if (!transcript) return;\n\n if (end && $vid.currentTime > end) $vid.pause();\n\n const t = $vid.currentTime;\n\n let found = false;\n transcript.segments.forEach((seg) => {\n seg.wdlist.forEach(({ $elt }) => {\n if ($elt) $elt.style.background = 'transparent';\n });\n\n if (seg.end < t) {\n return;\n }\n if (found) {\n return;\n }\n\n seg.wdlist.forEach(({ $elt, end }) => {\n if (found) {\n return;\n }\n if (!$elt) {\n return;\n }\n\n if (end - 0.1 > t) {\n $elt.style.backgroundColor = '#8599E8';\n $elt.style.borderRadius = '5px';\n $elt.style.transitionProperty = 'left, top, width, height';\n $elt.style.transitionDuration = '0.1s';\n\n scrollToContentForCC($elt, transcibeContainer?.current);\n\n found = true;\n }\n });\n });\n };\n setIsLoading(false);\n };\n\n useEffect(() => {\n init();\n }, []);\n\n if (videoRef.current && videoRef.current.paused) return;\n\n return (\n
\n \n {tx &&\n tx.segments.map((seg, segIdx) => {\n return (\n
\n {seg.wdlist.map((word, wordIdx) => {\n return (\n {\n word.$elt = $elt; // eslint-disable-line no-param-reassign\n }}\n data-speaker-name={seg.speaker_name}\n >\n {word.word}\n \n );\n })}\n
\n );\n })}\n \n
\n );\n};\n\nTranscribedCaptions.propTypes = {\n sharePath: PropTypes.string.isRequired,\n videoRef: PropTypes.shape({\n current: PropTypes.shape({\n muted: PropTypes.bool,\n currentTime: PropTypes.number,\n poster: PropTypes.string,\n ontimeupdate: PropTypes.func,\n onplay: PropTypes.func,\n onpause: PropTypes.func,\n play: PropTypes.func,\n pause: PropTypes.func,\n onVideoRender: PropTypes.func,\n addEventListener: PropTypes.func,\n removeEventListener: PropTypes.func,\n offsetHeight: PropTypes.number,\n offsetWidth: PropTypes.number,\n duration: PropTypes.number,\n getAttribute: PropTypes.func,\n paused: PropTypes.bool,\n }),\n }).isRequired,\n transcriptWrapperClass: PropTypes.string,\n preload: PropTypes.bool,\n thumbnail: PropTypes.string,\n start: PropTypes.number,\n end: PropTypes.number,\n setIsLoading: PropTypes.any,\n};\n\nexport default TranscribedCaptions;\n","import React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport TranscribedText from '../../components/TranscriptVideo/TranscribedText';\nimport TranscribedVideo from '../../components/TranscriptVideo/TranscribedVideo';\nimport TranscribedCaptions from '../../components/TranscriptVideo/TranscribedCaptions';\nimport { VideoWithTimeOnLeftSideOfSeeker } from '../../components/VideoTime';\n\nconst ReductTranscribe = ({\n src,\n cc = false,\n page = '',\n tx = true,\n thumbnail = null,\n sideBySide = false,\n hasReelBeenSwitched = null,\n setHasReelBeenSwitched,\n setVisibleReel,\n hideTime = false,\n testimonial = null,\n isInViewMode = true,\n}) => {\n const videoRef = useRef(null);\n const timeoutRef = useRef(null);\n\n const [showVideoSeekSlider, setShowVideoSeekSlider] = useState(false);\n const [currentPlayTime, setCurrentPlayTime] = useState(0);\n const [isLoading, setIsLoading] = useState(true);\n\n const handleVideoSeekerVisibility = (hoverStatus) => {\n if (videoRef.current && videoRef.current.paused) {\n setShowVideoSeekSlider(false);\n return;\n }\n\n setShowVideoSeekSlider(hoverStatus);\n\n if (hoverStatus) {\n clearTimeout(timeoutRef.current);\n\n timeoutRef.current = setTimeout(() => {\n setShowVideoSeekSlider(false);\n }, 2000);\n } else {\n clearTimeout(timeoutRef.current);\n }\n };\n\n useEffect(() => {\n return () => {\n clearTimeout(timeoutRef.current);\n };\n }, []);\n\n useEffect(() => {\n if (hasReelBeenSwitched && setVisibleReel) {\n videoRef.current.pause();\n setVisibleReel(hasReelBeenSwitched);\n setHasReelBeenSwitched(null);\n }\n }, [hasReelBeenSwitched]);\n\n useEffect(() => {\n if (isInViewMode || !videoRef.current) return;\n\n videoRef.current.pause();\n }, [isInViewMode]);\n\n if (cc) {\n return (\n handleVideoSeekerVisibility(true)}\n onMouseLeave={() => handleVideoSeekerVisibility(false)}\n onMouseMove={() => handleVideoSeekerVisibility(true)}\n >\n \n \n \n \n {videoRef.current && (\n \n \n {\n videoRef.current.currentTime = e.target.value;\n }}\n />\n \n )}\n \n );\n }\n\n return (\n
\n \n \n \n
\n \n );\n};\n\nReductTranscribe.propTypes = {\n src: PropTypes.string.isRequired,\n cc: PropTypes.bool,\n page: PropTypes.string,\n tx: PropTypes.bool,\n thumbnail: PropTypes.any,\n sideBySide: PropTypes.bool,\n hasReelBeenSwitched: PropTypes.string,\n setHasReelBeenSwitched: PropTypes.func,\n setVisibleReel: PropTypes.func,\n hideTime: PropTypes.bool,\n testimonial: PropTypes.shape({\n customer: PropTypes.string,\n designation: PropTypes.string,\n }),\n isInViewMode: PropTypes.bool,\n};\n\nexport default ReductTranscribe;\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4IDEySDYiIHN0cm9rZT0iIzM1MzUzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPHBhdGggZD0iTTEyIDZWMTgiIHN0cm9rZT0iIzM1MzUzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+CgoK\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE4IDEySDYiIHN0cm9rZT0iIzM1MzUzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+Cg==\""],"names":["AnswerContainer","_ref","ans","React","className","BlueEdgeAccordion","_ref2","copy","accordionIndex","setAccordionIndex","accordionElementsref","useRef","isActive","setIsActive","useState","useEffect","current","length","updateAccordionHeight","window","innerWidth","addEventListener","removeEventListener","map","accordion","index","key","includes","ref","el","onClick","screen","width","updatedIndexArr","filter","concat","_toConsumableArray","handleActiveAccordion","icon","AccordionIcon","question","src","AccordionActiveIcon","AccordionInActiveIcon","alt","AccordionMedia","media","answer","BlueEdgeAccordionWithTitleOnly","reel","thumbnail","ReductTranscribe","isInViewMode","img","TitleAndTagBlock","title","tag","titleClassName","AccordionDesktop","_ref3","accordionWithTitleOnly","MediaWithAccordion","_ref4","mediaOnLeft","items","Accordion","onlyOpenOneAccordion","isBlog","expandFirstAccordion","modalState","setModalState","mediaForMobileView","isFreeTrialCtaDisabled","useContext","FlagsContext","_window","_window$location","_window2","_window2$location","hash","location","queryText","search","ContentProvider","page","TABLE_NAME","HOMEPAGE","field","TalkToSalesForm","hideModal","ReductVideoSignUpButton","text","CalendlyPopup","Pill","lottie","isActiveIndex","Player","loop","style","maxHeight","maxWidth","autoplay","loading","Industry","gradientSeparator","acc","HERO_SECTION_COPY","INDUSTRY_COPY","pill","id","LegalIndustryImage","Link","to","ResearchIndustryImage","MarketingIndustryImage","EducationIndustryImage","FilmmakingIndustryImage","sharePath","videoRef","transcriptWrapperClass","preload","start","end","setIsLoading","transcibeContainer","didInit","tx","setTx","async","transcript","shareUrl","duration","slice","Reduct","loadReductApiScript","getSharePlayerFromManifest","waitForScriptLoad","$vid","poster","loadManifest","url","endsWith","substr","manifestRet","fetch","manifest","json","currentTime","getDurationFromManifest","transcriptStart","transcriptEnd","transRet","segments","paragraph","_filteredWdlist$","wdlist","filteredWdlist","wd","afterStart","beforeEnd","newStartTime","loadTranscript","onplay","ontimeupdate","pause","t","found","forEach","seg","$elt","background","backgroundColor","borderRadius","transitionProperty","transitionDuration","scrollToContentForCC","init","paused","SimpleBar","scrollableNodeProps","segIdx","word","wordIdx","speaker_name","cc","sideBySide","hasReelBeenSwitched","setHasReelBeenSwitched","setVisibleReel","hideTime","testimonial","timeoutRef","showVideoSeekSlider","setShowVideoSeekSlider","currentPlayTime","setCurrentPlayTime","isLoading","handleVideoSeekerVisibility","hoverStatus","clearTimeout","setTimeout","onMouseEnter","onMouseLeave","onMouseMove","TranscribedVideo","containerClass","source","hideVideoTime","TranscribedCaptions","VideoWithTimeOnLeftSideOfSeeker","type","min","max","value","onChange","e","target","TranscribedText"],"sourceRoot":""}